[LON-CAPA-cvs] cvs: loncom / lonsql

matthew lon-capa-cvs@mail.lon-capa.org
Wed, 28 Jul 2004 20:46:28 -0000


matthew		Wed Jul 28 16:46:28 2004 EDT

  Modified files:              
    /loncom	lonsql 
  Log:
  Updates for activity log work.
  
  
Index: loncom/lonsql
diff -u loncom/lonsql:1.62 loncom/lonsql:1.63
--- loncom/lonsql:1.62	Tue Jun  8 18:09:44 2004
+++ loncom/lonsql	Wed Jul 28 16:46:28 2004
@@ -3,7 +3,7 @@
 # The LearningOnline Network
 # lonsql - LON TCP-MySQL-Server Daemon for handling database requests.
 #
-# $Id: lonsql,v 1.62 2004/06/08 22:09:44 raeburn Exp $
+# $Id: lonsql,v 1.63 2004/07/28 20:46:28 matthew Exp $
 #
 # Copyright Michigan State University Board of Trustees
 #
@@ -206,6 +206,40 @@
 my $perlvarref=LONCAPA::Configuration::read_conf('loncapa.conf');
 my %perlvar=%{$perlvarref};
 #
+# Write the /home/www/.my.cnf file 
+my $conf_file = '/home/www/.my.cnf';
+if (! -e $conf_file) {
+    if (open MYCNF, ">$conf_file") {
+        print MYCNF <<"ENDMYCNF";
+# Generated by LON-CAPA
+#
+# This file is edited automatically 
+# Put your configuration below the LON-CAPA configuration code
+#
+# BEGIN LON-CAPA Specific configuration code
+[client]
+user=www
+password=$perlvar{'lonSqlAccess'}
+# END LON-CAPA Specific configuration code 
+# 
+# Place your own configuration code below the next line
+#-------------------------------------------------
+ENDMYCNF
+
+        close MYCNF;
+    } else {
+        warn "Unable to write $conf_file, continuing";
+    }
+} else {
+    # it exists.  FIXME: Need to ensure we have current password in it...
+    # my @Original = `cat $conf_file`;
+    # if ($Original[0] =~ /^\# Generated by LON-CAPA/ ) {
+    # if (! open MYCNF, ">$conf_file") {
+    # }
+}
+
+
+#
 # Make sure that database can be accessed
 #
 my $dbh;
@@ -424,6 +458,18 @@
                 if ($locresult) {
                     $result .= &escape(join(':',map{$_.'='.$replies{$_}} keys %replies));
                 }
+            } elsif ($query eq 'prepare activity log') {
+                my ($cid,$domain) = map {&unescape($_);} ($arg1,$arg2);
+                my $command = 
+                    qq{parse_activity_log.pl -course=$cid -domain=$domain};
+                system($command);
+                my $returnvalue = $?>>8;
+                if ($returnvalue) {
+                    $result = 'error: parse_activity_log.pl returned '.
+                        $returnvalue;
+                } else {
+                    $result = 'success';
+                }
             } else {
                 # Do an sql query
                 $result = &do_sql_query($query,$arg1,$arg2);