summaryrefslogtreecommitdiffstats
path: root/linhes/linhes-web/website/contents/count.py
diff options
context:
space:
mode:
Diffstat (limited to 'linhes/linhes-web/website/contents/count.py')
-rw-r--r--linhes/linhes-web/website/contents/count.py100
1 files changed, 100 insertions, 0 deletions
diff --git a/linhes/linhes-web/website/contents/count.py b/linhes/linhes-web/website/contents/count.py
new file mode 100644
index 0000000..76d18e8
--- /dev/null
+++ b/linhes/linhes-web/website/contents/count.py
@@ -0,0 +1,100 @@
+#!/usr/bin/python2
+# import MySQL module
+
+import MySQLdb
+import sys
+import getopt
+import socket
+
+
+def main(argv):
+ #get LinHES version
+ verfile = open('/etc/LinHES-release', 'r')
+ verLH = verfile.read()
+ verfile.close()
+
+ grandtotal=0
+ grandtotal_current=0
+ db = MySQLdb.connect(host="localhost", user="mythtv", passwd="mythtv", db="mythconverg")
+ # create a cursor
+ cursor = db.cursor()
+ # execute SQL statement
+ cursor.execute("SELECT unix_timestamp(starttime),unix_timestamp(endtime),title FROM oldrecorded where oldrecorded.recstatus = -3 ORDER by starttime;")
+ result = cursor.fetchall()
+
+ for row in result:
+ # print row[0], row[1] ,row [2]
+ start=row[0]
+ end=row[1]
+ if ( end > start ):
+ total = (end - start) /60
+ grandtotal+=total
+ hours = grandtotal / 60.0
+ days = hours / 24.0
+
+ cursor.execute("SELECT unix_timestamp(starttime),unix_timestamp(endtime),title FROM recorded where not (recgroup=(%s)) ORDER by starttime",("LiveTV"))
+ result_current = cursor.fetchall()
+ for row in result_current:
+ start=row[0]
+ end=row[1]
+ if ( end > start ):
+ total = (end - start) /60
+ grandtotal_current+=total
+ hours_current = grandtotal_current / 60.0
+ days_current = hours_current / 24.0
+
+ print '<div id="header">'
+ print "<h3>Welcome to</h3>"
+ print "<h1>" , verLH , "</h1>"
+ print "<h3>on " , socket.gethostname() , "</h3>"
+ print "</br>"
+ print "<table>"
+ print " <tr>"
+ print " <td>Currently there are " , len(result_current) , " recorded programs, with a viewing time of %.2f days or %.2f hours.</td>" %(days_current,hours_current)
+ print " </tr>"
+ print "</table>"
+ print "</br> "
+
+ print "<table>"
+ print " <tr>"
+ print " <td>Overall there have been " , len(result) , "shows recorded, with a viewing time of %.2f days or %.2f hours.</td>"%(days,hours)
+ print " </tr>"
+ print "</table>"
+ print '</div>'
+ print "</br> </br> "
+#Top shows
+ print '<div id="content"> <p></p>'
+ print '<table class="sample">'
+ print "Top 20 Shows"
+ cursor.execute("select title,count(title),category as numtitle from oldrecorded where oldrecorded.recstatus = -3 group by title having (COUNT(title) > 0 ) order by (COUNT(title)) DESC limit 20;" )
+ result = cursor.fetchall()
+ for row in result:
+ print " <tr>"
+ print " <td>",row[0],"</td>"
+ print " <td>",row[2],"</td>"
+ print " <td>",row[1],"</td>"
+ print " </tr>"
+ # print "%40s %26s %10s" %(row[0],row[2],row[1])
+ print "</table>"
+ print "</div>"
+#Top categories
+
+ print '<div id="column">'
+ print '<table class="sample">'
+ print "Top 20 Categories"
+ cursor.execute("select category,count(category) as numtitle from oldrecorded where oldrecorded.recstatus = -3 group by category having (COUNT(category) > 0 ) order by (COUNT(category)) DESC limit 20; " )
+ result = cursor.fetchall()
+ for row in result:
+ category = row[0]
+ if category == "":
+ category = "Unknown"
+ print " <tr>"
+ print " <td>",category,"</td>"
+ print " <td>",row[1],"</td>"
+ print " </tr>"
+ #print "%16s %16s" %(row[0],row[1])
+ print "</table>"
+ print "</div>"
+
+if __name__ == "__main__":
+ main(sys.argv[1:])