You can subscribe to this list here.
2005 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
(486) |
Jul
(201) |
Aug
(194) |
Sep
(87) |
Oct
(72) |
Nov
(72) |
Dec
(4) |
---|---|---|---|---|---|---|---|---|---|---|---|---|
2006 |
Jan
(6) |
Feb
(41) |
Mar
(22) |
Apr
(4) |
May
(12) |
Jun
|
Jul
|
Aug
(42) |
Sep
(21) |
Oct
(14) |
Nov
(10) |
Dec
|
2007 |
Jan
(14) |
Feb
(34) |
Mar
(61) |
Apr
(54) |
May
(140) |
Jun
(184) |
Jul
(164) |
Aug
(130) |
Sep
(241) |
Oct
(175) |
Nov
(148) |
Dec
(96) |
2008 |
Jan
(5) |
Feb
(38) |
Mar
(30) |
Apr
(46) |
May
(25) |
Jun
(22) |
Jul
(5) |
Aug
(17) |
Sep
(2) |
Oct
(100) |
Nov
(83) |
Dec
(33) |
2009 |
Jan
(127) |
Feb
(43) |
Mar
(86) |
Apr
(34) |
May
(50) |
Jun
(168) |
Jul
(48) |
Aug
(66) |
Sep
(38) |
Oct
(75) |
Nov
(113) |
Dec
(72) |
2010 |
Jan
(123) |
Feb
(68) |
Mar
(26) |
Apr
(11) |
May
(39) |
Jun
(131) |
Jul
(56) |
Aug
(79) |
Sep
(69) |
Oct
(17) |
Nov
(166) |
Dec
(32) |
2011 |
Jan
(21) |
Feb
|
Mar
|
Apr
|
May
(1) |
Jun
|
Jul
|
Aug
(2) |
Sep
|
Oct
(1) |
Nov
(8) |
Dec
|
2012 |
Jan
(2) |
Feb
|
Mar
|
Apr
(1) |
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
From: Chris S. <san...@us...> - 2005-07-04 16:15:13
|
Update of /cvsroot/stack/stack-1-0/scripts In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv30071/scripts Modified Files: stackDatabase.php Log Message: Index: stackDatabase.php =================================================================== RCS file: /cvsroot/stack/stack-1-0/scripts/stackDatabase.php,v retrieving revision 1.26 retrieving revision 1.27 diff -C2 -d -r1.26 -r1.27 *** stackDatabase.php 3 Jul 2005 16:24:23 -0000 1.26 --- stackDatabase.php 4 Jul 2005 16:15:02 -0000 1.27 *************** *** 78,82 **** if (!$connection=mysql_connect($host,$user,$pswd)) { $msg = mysql_error(); ! echo "<b>MYSQL Error ".mysql_errno().": ".mysql_error()."</b>"; die(); } --- 78,82 ---- if (!$connection=mysql_connect($host,$user,$pswd)) { $msg = mysql_error(); ! echo "<b>Could not connet to the MYSQL database on host '$host', as user '$user'. The attempt to connect generated the MYSQL Error ".mysql_errno().": ".mysql_error()."</b>"; die(); } *************** *** 88,91 **** --- 88,93 ---- if(0 == $result) { echo '<b>MYSQL Error '.mysql_errno().': '.mysql_error().'</b>'; + echo "<p>The query which generated this error is <pre>$query</pre></p>"; + echo "<p>You are trying to connect to the database '$stackdb' on host '$host' as user '$user'.</p>"; } else if (0 == @mysql_num_rows($result)) |
From: Chris S. <san...@us...> - 2005-07-04 16:15:12
|
Update of /cvsroot/stack/stack-1-0/lang/en In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv30071/lang/en Modified Files: stack.php Log Message: Index: stack.php =================================================================== RCS file: /cvsroot/stack/stack-1-0/lang/en/stack.php,v retrieving revision 1.5 retrieving revision 1.6 diff -C2 -d -r1.5 -r1.6 *** stack.php 22 Jun 2005 13:14:35 -0000 1.5 --- stack.php 4 Jul 2005 16:15:02 -0000 1.6 *************** *** 229,232 **** --- 229,233 ---- $string['menu_CAS_Fn'] = 'CAS functions'; $string['menu_CAS_OL'] = 'CAS online'; + $string['menu_CAS_OLML'] = 'MathML demo'; $string['menu_Install'] = 'Install'; $string['menu_Develop'] = 'Develop'; |
From: Chris S. <san...@us...> - 2005-07-04 16:15:11
|
Update of /cvsroot/stack/stack-1-0/doc In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv30071/doc Modified Files: about_install.php Log Message: Index: about_install.php =================================================================== RCS file: /cvsroot/stack/stack-1-0/doc/about_install.php,v retrieving revision 1.2 retrieving revision 1.3 diff -C2 -d -r1.2 -r1.3 *** about_install.php 20 Jun 2005 15:42:55 -0000 1.2 --- about_install.php 4 Jul 2005 16:15:01 -0000 1.3 *************** *** 38,42 **** <li>A web server, such as <a href="http://www.apache.org/">Apache</a>, running <a href="http://www.php.net/">PHP</a> (at least version 4.3.9), <!--(version 5 if using the CAS Pool)--></li> ! and <a href="http://www.mysql.com/">MySQL</a> server (at least version 4).<br /> Windows users could use <a href="http://www.easyphp.org/">EasyPHP</a>.</li> <li>You need to convex LaTeX to HTML with <a href="http://hutchinson.belmont.ma.us/tth/">TtH</a>. --- 38,42 ---- <li>A web server, such as <a href="http://www.apache.org/">Apache</a>, running <a href="http://www.php.net/">PHP</a> (at least version 4.3.9), <!--(version 5 if using the CAS Pool)--></li> ! and <a href="http://www.mysql.com/">MySQL</a> server (at least version 4.1).<br /> Windows users could use <a href="http://www.easyphp.org/">EasyPHP</a>.</li> <li>You need to convex LaTeX to HTML with <a href="http://hutchinson.belmont.ma.us/tth/">TtH</a>. |
From: Chris S. <san...@us...> - 2005-07-03 16:49:23
|
Update of /cvsroot/stack/stack-1-0/scripts/maxima/format In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv24171/scripts/maxima/format Added Files: format.pdf Removed Files: format.ps Log Message: --- NEW FILE: format.pdf --- (This appears to be a binary file; contents omitted.) --- format.ps DELETED --- |
From: Chris S. <san...@us...> - 2005-07-03 16:24:32
|
Update of /cvsroot/stack/stack-1-0/scripts In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv10792/scripts Modified Files: stackDatabase.php Log Message: Index: stackDatabase.php =================================================================== RCS file: /cvsroot/stack/stack-1-0/scripts/stackDatabase.php,v retrieving revision 1.25 retrieving revision 1.26 diff -C2 -d -r1.25 -r1.26 *** stackDatabase.php 3 Jul 2005 15:56:32 -0000 1.25 --- stackDatabase.php 3 Jul 2005 16:24:23 -0000 1.26 *************** *** 440,453 **** // SEARCH over the keywords ! if ('' != $filter_kw) { $filter_needed = TRUE; $filter = explode(',',$filter_kw); ! foreach ($filter as $key => $val) { $val = trim($val); if ('' != $val) { if ('Any' == $filter_any) { ! $dispQ = max(strpos($kw,$val),$dispQ); } else { ! $dispQ = min(strpos($kw,$val),$dispQ); } } --- 440,459 ---- // SEARCH over the keywords ! if ('' != trim($filter_kw)) { $filter_needed = TRUE; $filter = explode(',',$filter_kw); ! foreach ($filter as $val) { $val = trim($val); if ('' != $val) { + // We have to be careful with strpos. It can return values that look like FALSE, such as zero, + $matched = TRUE; + if (FALSE === strpos($kw,$val)) { + $matched = FALSE; + } + if ('Any' == $filter_any) { ! $dispQ = max($matched,$dispQ); } else { ! $dispQ = min($matched,$dispQ); } } *************** *** 455,468 **** } ! if ('' != $filter_name) { $filter_needed = TRUE; $filter = explode(',',$filter_name); ! foreach ($filter as $key => $val) { $val = trim($val); if ('' != $val) { if ('Any' == $filter_any) { ! $dispQ = max(strpos($name,$val),$dispQ); } else { ! $dispQ = min(strpos($name,$val),$dispQ); } } --- 461,480 ---- } ! if ('' != trim($filter_name)) { $filter_needed = TRUE; $filter = explode(',',$filter_name); ! foreach ($filter as $val) { $val = trim($val); if ('' != $val) { + // We have to be careful with strpos. It can return values that look like FALSE, such as zero, + $matched = TRUE; + if (FALSE === strpos($name,$val)) { + $matched = FALSE; + } + if ('Any' == $filter_any) { ! $dispQ = max($matched,$dispQ); } else { ! $dispQ = min($matched,$dispQ); } } *************** *** 475,479 **** } ! return($dispQ); } --- 487,491 ---- } ! return ($dispQ); } |
From: Chris S. <san...@us...> - 2005-07-03 15:56:43
|
Update of /cvsroot/stack/stack-1-0/html In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv27920/html Modified Files: qselectform.php Log Message: Index: qselectform.php =================================================================== RCS file: /cvsroot/stack/stack-1-0/html/qselectform.php,v retrieving revision 1.4 retrieving revision 1.5 diff -C2 -d -r1.4 -r1.5 *** qselectform.php 3 Jul 2005 15:49:04 -0000 1.4 --- qselectform.php 3 Jul 2005 15:56:32 -0000 1.5 *************** *** 13,31 **** f.submit(); }; - - function selectAll(formObj, isInverse) - { - for (var i=0;i < formObj.length;i++) - { - fldObj = formObj.elements[i]; - if (fldObj.type == 'checkbox' && fldObj.name != 'bank_filter[case_sense]' && fldObj.name != 'bank_filter[show_descript]') - { - if(isInverse) - fldObj.checked = (fldObj.checked) ? false : true; - else fldObj.checked = true; - } - } - } - </script> --- 13,16 ---- |
From: Chris S. <san...@us...> - 2005-07-03 15:56:43
|
Update of /cvsroot/stack/stack-1-0/scripts In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv27920/scripts Modified Files: stackDatabase.php Log Message: Index: stackDatabase.php =================================================================== RCS file: /cvsroot/stack/stack-1-0/scripts/stackDatabase.php,v retrieving revision 1.24 retrieving revision 1.25 diff -C2 -d -r1.24 -r1.25 *** stackDatabase.php 3 Jul 2005 15:49:04 -0000 1.24 --- stackDatabase.php 3 Jul 2005 15:56:32 -0000 1.25 *************** *** 266,270 **** echo '<input type="hidden" name="action" value="quiz_edit" />'; ! echo "<input type=\"submit\" value=\"Add\" />\n<input type='checkbox' name='checkall' onclick=\"checkUncheckAll(this);\"/></form>\n"; } else { --- 266,273 ---- echo '<input type="hidden" name="action" value="quiz_edit" />'; ! echo '<input type="radio" name="selectall" onclick="selectAll(this.form,0);" />Select All<br />'; ! echo '<input type="radio" name="selectall" onclick="selectAll(this.form,1);" />Inverse All<br />'; ! echo '<input type="submit" value="Add" /></form>'; ! } else { *************** *** 314,317 **** --- 317,333 ---- function stack_db_question_filter_tablehead($action,$filter,$quizid=0) { + // The following is JAVA script to select all the questions in a quiz. + // Note the fix to prevent all check boxes being selected. + echo "<script> + function selectAll(formObj, isInverse) { + for (var i=0;i < formObj.length;i++) { + fldObj = formObj.elements[i]; + if (fldObj.type == 'checkbox' && fldObj.name != 'bank_filter[case_sense]' && fldObj.name != 'bank_filter[show_descript]') { + if(isInverse) + fldObj.checked = (fldObj.checked) ? false : true; + else fldObj.checked = true; + } } } + </script>"; + echo "<thead>\n"; |
From: Chris S. <san...@us...> - 2005-07-03 15:49:14
|
Update of /cvsroot/stack/stack-1-0/scripts In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv23922/scripts Modified Files: stackDatabase.php Log Message: Index: stackDatabase.php =================================================================== RCS file: /cvsroot/stack/stack-1-0/scripts/stackDatabase.php,v retrieving revision 1.23 retrieving revision 1.24 diff -C2 -d -r1.23 -r1.24 *** stackDatabase.php 3 Jul 2005 14:50:15 -0000 1.23 --- stackDatabase.php 3 Jul 2005 15:49:04 -0000 1.24 *************** *** 196,200 **** } ! echo "</tbody></table>\n</form>"; } else --- 196,203 ---- } ! echo "</tbody></table>\n"; ! echo '<input type="radio" name="selectall" onclick="selectAll(this.form,0);" />Select All<br />'; ! echo '<input type="radio" name="selectall" onclick="selectAll(this.form,1);" />Inverse All'; ! echo '</form>'; } else *************** *** 263,267 **** echo '<input type="hidden" name="action" value="quiz_edit" />'; ! echo "<input type=\"submit\" value=\"Add\" />\n</form>\n"; } else { --- 266,270 ---- echo '<input type="hidden" name="action" value="quiz_edit" />'; ! echo "<input type=\"submit\" value=\"Add\" />\n<input type='checkbox' name='checkall' onclick=\"checkUncheckAll(this);\"/></form>\n"; } else { *************** *** 351,355 **** ! foreach ($fields2 as $no => $fn){ echo "<tr><th>{$fields3[$no]} </th>\n"; echo '<th colspan="2"><select name="bank_filter['.$fn.']">'; --- 354,358 ---- ! foreach ($fields2 as $no => $fn){ echo "<tr><th>{$fields3[$no]} </th>\n"; echo '<th colspan="2"><select name="bank_filter['.$fn.']">'; *************** *** 363,390 **** echo "\n</select></th>\n"; echo "<th>{$fields4[$no]} </th>\n</tr>\n"; ! } ! echo "<tr>\n"; ! if ('edit'==$action) { ! echo '<th></th><th>ID</th><th>Name</th> <th>Key words</th> <th></th><th>Last edit</th>'; ! } else { ! echo '<th></th><th>ID</th><th>Name</th> <th>Key words</th> <th></th><th></th><th></th>'; ! } ! echo "</tr>\n"; ! echo "\n<tr>\n<th>"; ! if ('edit_metadata' == $action) { ! echo "<a href=\"javascript:SelectQs('edit_metadata');\">Filter</a>"; ! } else if ('add_quiz' == $action) { ! echo "<a href=\"javascript:takeaction('filter',{$quizid});\">Filter</a>"; ! } else { ! echo "<a href=\"javascript:SelectQs('questionbank_screen');\">Filter</a>"; ! } ! echo '</th><th></th>'; ! echo '<th><input type="text" name="bank_filter[name]" value="'.$filter['name'].'" /></th>'; ! echo '<th><input type="text" name="bank_filter[kw]" value="'.$filter['kw'].'" /></th>'; ! echo "</tr>\n"; ! } ! echo "</thead>\n"; } --- 366,397 ---- echo "\n</select></th>\n"; echo "<th>{$fields4[$no]} </th>\n</tr>\n"; ! } ! echo "\n<tr>\n<th>"; ! if ('edit_metadata' == $action) { ! echo "<a href=\"javascript:SelectQs('edit_metadata');\">Filter</a>"; ! } else if ('add_quiz' == $action) { ! echo "<a href=\"javascript:takeaction('filter',{$quizid});\">Filter</a>"; ! } else { ! echo "<a href=\"javascript:SelectQs('questionbank_screen');\">Filter</a>"; ! } ! echo '</th><th></th>'; ! echo '<th><input type="text" name="bank_filter[name]" value="'.$filter['name'].'" /></th>'; ! echo '<th><input type="text" name="bank_filter[kw]" value="'.$filter['kw'].'" /></th>'; ! echo "</tr>\n"; ! ! echo "</thead>\n"; ! ! echo "<tr>\n<td></td>\n<td><b>ID</b></td><td align='center'><b>Name</b></td> <td align='center'><b>Key words</b></td> <td></td>"; ! if ('edit'==$action) { ! echo "<td align='center'><b>Last edit</b></td>"; ! } else { ! echo '<td></td><td></td>'; ! } ! ! echo "</tr>\n"; ! ! } // End of major if 'edit' } |
From: Chris S. <san...@us...> - 2005-07-03 15:49:14
|
Update of /cvsroot/stack/stack-1-0/html In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv23922/html Modified Files: qselectform.php Log Message: Index: qselectform.php =================================================================== RCS file: /cvsroot/stack/stack-1-0/html/qselectform.php,v retrieving revision 1.3 retrieving revision 1.4 diff -C2 -d -r1.3 -r1.4 *** qselectform.php 4 Apr 2005 18:34:22 -0000 1.3 --- qselectform.php 3 Jul 2005 15:49:04 -0000 1.4 *************** *** 13,16 **** --- 13,31 ---- f.submit(); }; + + function selectAll(formObj, isInverse) + { + for (var i=0;i < formObj.length;i++) + { + fldObj = formObj.elements[i]; + if (fldObj.type == 'checkbox' && fldObj.name != 'bank_filter[case_sense]' && fldObj.name != 'bank_filter[show_descript]') + { + if(isInverse) + fldObj.checked = (fldObj.checked) ? false : true; + else fldObj.checked = true; + } + } + } + </script> |
From: Chris S. <san...@us...> - 2005-07-03 14:50:23
|
Update of /cvsroot/stack/stack-1-0/frontend_general In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv25853/frontend_general Modified Files: frontend_util.php Log Message: Index: frontend_util.php =================================================================== RCS file: /cvsroot/stack/stack-1-0/frontend_general/frontend_util.php,v retrieving revision 1.5 retrieving revision 1.6 diff -C2 -d -r1.5 -r1.6 *** frontend_util.php 3 Jul 2005 13:52:56 -0000 1.5 --- frontend_util.php 3 Jul 2005 14:50:15 -0000 1.6 *************** *** 124,127 **** --- 124,128 ---- $question_bank_filter['case_sense'] = FALSE; $question_bank_filter['show_descript'] = TRUE; + $question_bank_filter['any'] = 'Any'; $question_bank_filter['order1'] = 'questionName'; $question_bank_filter['order2'] = 'questionKeywords'; |
From: Chris S. <san...@us...> - 2005-07-03 14:50:23
|
Update of /cvsroot/stack/stack-1-0/scripts In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv25853/scripts Modified Files: stackDatabase.php Log Message: Index: stackDatabase.php =================================================================== RCS file: /cvsroot/stack/stack-1-0/scripts/stackDatabase.php,v retrieving revision 1.22 retrieving revision 1.23 diff -C2 -d -r1.22 -r1.23 *** stackDatabase.php 3 Jul 2005 13:52:56 -0000 1.22 --- stackDatabase.php 3 Jul 2005 14:50:15 -0000 1.23 *************** *** 127,131 **** echo "<h2>Question bank</h2>\n"; ! echo "<font size='-2'>Search the question bank using comma separated lists of search terms in the Name and Keywords fields. Any match will display the question. Leave both blank to display all questions in the question bank. White space is ignored.</font>"; echo "<form name='stackquestionsform' action='{$_PHP_SELF}' method='POST'>\n"; echo "<input type='hidden' name='action' value='edit' />"; --- 127,131 ---- echo "<h2>Question bank</h2>\n"; ! echo "<font size='-2'>Search the question bank using comma separated lists of search terms in the Name and Keywords fields. Choose to match either 'Any' or 'All' of these to display the questions. Leave both blank to display all questions in the question bank. White space is ignored.</font>"; echo "<form name='stackquestionsform' action='{$_PHP_SELF}' method='POST'>\n"; echo "<input type='hidden' name='action' value='edit' />"; *************** *** 148,152 **** // Decide how to filter questions ! $dispQ = stack_db_question_filter($qname,$qkeywords,$filter['name'],$filter['kw'],$filter['case_sense']); if (FALSE !== $dispQ) { --- 148,152 ---- // Decide how to filter questions ! $dispQ = stack_db_question_filter($qname,$qkeywords,$filter['name'],$filter['kw'],$filter['any'],$filter['case_sense']); if (FALSE !== $dispQ) { *************** *** 235,239 **** $name = stripslashes($row[1]); $qkw = stripslashes($row[2]); ! $dispQ = stack_db_question_filter($name,$qkw,$filter['name'],$filter['kw'],$filter['case_sense']); if (FALSE !== $dispQ) { --- 235,239 ---- $name = stripslashes($row[1]); $qkw = stripslashes($row[2]); ! $dispQ = stack_db_question_filter($name,$qkw,$filter['name'],$filter['kw'],$filter['any'],$filter['case_sense']); if (FALSE !== $dispQ) { *************** *** 338,341 **** --- 338,354 ---- } + // Add different search methods. + $fields5 = array('Any','All'); + $fields4[2] = "<th colspan='2'>Match terms\n<select name='bank_filter[any]'>"; + foreach ($fields5 as $no => $key) { + if ($key == $filter['any']) { + $fields4[2] .= "\n <option value='$key' selected>".$fields5[$no]."</option>"; + } else { + $fields4[2] .= "\n <option value='$key'>".$fields5[$no]."</option>"; + } + } + $fields4[2] .= "\n</select></th>\n"; + + foreach ($fields2 as $no => $fn){ echo "<tr><th>{$fields3[$no]} </th>\n"; *************** *** 385,389 **** * @return $dispQ boolean */ ! function stack_db_question_filter($name,$kw,$filter_name,$filter_kw,$filter_case=FALSE) { // If we are case insensitive then we should make everything lower case. --- 398,402 ---- * @return $dispQ boolean */ ! function stack_db_question_filter($name,$kw,$filter_name,$filter_kw,$filter_any,$filter_case=FALSE) { // If we are case insensitive then we should make everything lower case. *************** *** 398,401 **** --- 411,418 ---- $dispQ = FALSE; $filter_needed = FALSE; + if ('All' == $filter_any) { + $dispQ = TRUE; + } + // SEARCH over the keywords *************** *** 406,410 **** $val = trim($val); if ('' != $val) { ! $dispQ = max(strpos($kw,$val),$dispQ); } } --- 423,431 ---- $val = trim($val); if ('' != $val) { ! if ('Any' == $filter_any) { ! $dispQ = max(strpos($kw,$val),$dispQ); ! } else { ! $dispQ = min(strpos($kw,$val),$dispQ); ! } } } *************** *** 417,421 **** $val = trim($val); if ('' != $val) { ! $dispQ = max(strpos($name,$val),$dispQ); } } --- 438,446 ---- $val = trim($val); if ('' != $val) { ! if ('Any' == $filter_any) { ! $dispQ = max(strpos($name,$val),$dispQ); ! } else { ! $dispQ = min(strpos($name,$val),$dispQ); ! } } } |
From: Chris S. <san...@us...> - 2005-07-03 14:28:35
|
Update of /cvsroot/stack/stack-1-0/html In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv13890/html Modified Files: prehead.html Log Message: Index: prehead.html =================================================================== RCS file: /cvsroot/stack/stack-1-0/html/prehead.html,v retrieving revision 1.3 retrieving revision 1.4 diff -C2 -d -r1.3 -r1.4 *** prehead.html 11 Apr 2005 13:50:31 -0000 1.3 --- prehead.html 3 Jul 2005 14:28:27 -0000 1.4 *************** *** 13,16 **** --- 13,17 ---- <meta http-equiv="Content-Type" content="text/html" /> <title><?php echo $title ?></title> + <link rel="shortcut icon" href="pics/logo_sm.gif" /> </head> |
From: Chris S. <san...@us...> - 2005-07-03 14:20:34
|
Update of /cvsroot/stack/stack-1-0/html In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv9824 Modified Files: pagehead.php Log Message: Index: pagehead.php =================================================================== RCS file: /cvsroot/stack/stack-1-0/html/pagehead.php,v retrieving revision 1.8 retrieving revision 1.9 diff -C2 -d -r1.8 -r1.9 *** pagehead.php 3 Jul 2005 14:18:19 -0000 1.8 --- pagehead.php 3 Jul 2005 14:20:23 -0000 1.9 *************** *** 13,17 **** <head> <title>STACK - System for Teaching and Assessment using a Computer algebra Kernel</title> ! <link rel="shortcut icon" href="pics/logo_sm.ico" /> <style type="text/css"> @import url(html/stack.css); --- 13,17 ---- <head> <title>STACK - System for Teaching and Assessment using a Computer algebra Kernel</title> ! <link rel="shortcut icon" href="pics/logo_sm.gif" /> <style type="text/css"> @import url(html/stack.css); |
From: Chris S. <san...@us...> - 2005-07-03 14:18:31
|
Update of /cvsroot/stack/stack-1-0/pics In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv8634/pics Modified Files: logo_sm.png Added Files: logo_sm.gif Log Message: Index: logo_sm.png =================================================================== RCS file: /cvsroot/stack/stack-1-0/pics/logo_sm.png,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -d -r1.1 -r1.2 Binary files /tmp/cvsu2dLgP and /tmp/cvsSp2bKl differ --- NEW FILE: logo_sm.gif --- (This appears to be a binary file; contents omitted.) |
From: Chris S. <san...@us...> - 2005-07-03 14:18:31
|
Update of /cvsroot/stack/stack-1-0/html In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv8634/html Modified Files: pagehead.php Log Message: Index: pagehead.php =================================================================== RCS file: /cvsroot/stack/stack-1-0/html/pagehead.php,v retrieving revision 1.7 retrieving revision 1.8 diff -C2 -d -r1.7 -r1.8 *** pagehead.php 3 Jul 2005 14:03:02 -0000 1.7 --- pagehead.php 3 Jul 2005 14:18:19 -0000 1.8 *************** *** 13,17 **** <head> <title>STACK - System for Teaching and Assessment using a Computer algebra Kernel</title> ! <link rel="shortcut icon" href="/pics/logo.png" /> <style type="text/css"> @import url(html/stack.css); --- 13,17 ---- <head> <title>STACK - System for Teaching and Assessment using a Computer algebra Kernel</title> ! <link rel="shortcut icon" href="pics/logo_sm.ico" /> <style type="text/css"> @import url(html/stack.css); |
From: Chris S. <san...@us...> - 2005-07-03 14:03:11
|
Update of /cvsroot/stack/stack-1-0/html In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv1056/html Modified Files: pagehead.php Log Message: Index: pagehead.php =================================================================== RCS file: /cvsroot/stack/stack-1-0/html/pagehead.php,v retrieving revision 1.6 retrieving revision 1.7 diff -C2 -d -r1.6 -r1.7 *** pagehead.php 10 Jun 2005 15:08:19 -0000 1.6 --- pagehead.php 3 Jul 2005 14:03:02 -0000 1.7 *************** *** 13,16 **** --- 13,17 ---- <head> <title>STACK - System for Teaching and Assessment using a Computer algebra Kernel</title> + <link rel="shortcut icon" href="/pics/logo.png" /> <style type="text/css"> @import url(html/stack.css); |
From: Chris S. <san...@us...> - 2005-07-03 13:53:08
|
Update of /cvsroot/stack/stack-1-0/scripts In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv28200/scripts Modified Files: stackDatabase.php Log Message: Index: stackDatabase.php =================================================================== RCS file: /cvsroot/stack/stack-1-0/scripts/stackDatabase.php,v retrieving revision 1.21 retrieving revision 1.22 diff -C2 -d -r1.21 -r1.22 *** stackDatabase.php 21 Jun 2005 16:36:43 -0000 1.21 --- stackDatabase.php 3 Jul 2005 13:52:56 -0000 1.22 *************** *** 126,130 **** if(0 != mysql_num_rows($result)) { ! echo "<h2>Question bank</h2><form name='stackquestionsform' action='{$_PHP_SELF}' method='POST'>\n"; echo "<input type='hidden' name='action' value='edit' />"; echo '<table>'; --- 126,132 ---- if(0 != mysql_num_rows($result)) { ! echo "<h2>Question bank</h2>\n"; ! echo "<font size='-2'>Search the question bank using comma separated lists of search terms in the Name and Keywords fields. Any match will display the question. Leave both blank to display all questions in the question bank. White space is ignored.</font>"; ! echo "<form name='stackquestionsform' action='{$_PHP_SELF}' method='POST'>\n"; echo "<input type='hidden' name='action' value='edit' />"; echo '<table>'; *************** *** 169,174 **** // Descriptions on a new line. ! echo "<tr><td></td>\n"; ! echo "<td colspan='4'><font size='1'>".stripslashes($row[2])."</font></td></tr>\n"; } else { // Display the edit form to edit metadata. --- 171,179 ---- // Descriptions on a new line. ! if ($filter['show_descript']) { ! echo "<tr><td></td>\n"; ! echo "<td colspan='4'><font size='1'>".stripslashes($row[2])."</font></td></tr>\n"; ! } ! } else { // Display the edit form to edit metadata. *************** *** 243,246 **** --- 248,258 ---- echo "<tr><td><input type=\"checkbox\" name=\"questionsToAdd[$qID][add]\" value=\"ticked\" /></td>\n"; echo "<td>$qID</td><td>$name</td><td>$qkw</td> </tr>\n"; + + // Descriptions on a new line. + if ($filter['show_descript']) { + echo "<tr><td></td>\n"; + echo "<td colspan='4'><font size='1'>".stripslashes($row[2])."</font></td></tr>\n"; + } + } // End preg_match to display each line. *************** *** 298,302 **** */ function stack_db_question_filter_tablehead($action,$filter,$quizid=0) { ! echo "<thead>\n"; --- 310,314 ---- */ function stack_db_question_filter_tablehead($action,$filter,$quizid=0) { ! echo "<thead>\n"; *************** *** 311,314 **** --- 323,341 ---- $fields3 = array('1st','2nd','3rd'); + // Other fields in the table, to make use of the space. + $fields4 = array('','',''); + + if ($filter['case_sense']) { + $fields4[0] = "<th colspan='2'>Case sensitive <input type='checkbox' name='bank_filter[case_sense]' value='TRUE' checked='TRUE' /></th>"; + } else { + $fields4[0] = "<th colspan='2'>Case sensitive <input type='checkbox' name='bank_filter[case_sense]' value='TRUE' /></th>"; + } + + if ($filter['show_descript']) { + $fields4[1] = "<th colspan='2'>Show description <input type='checkbox' name='bank_filter[show_descript]' value='TRUE' checked='TRUE' /></th>"; + } else { + $fields4[1] = "<th colspan='2'>Show description <input type='checkbox' name='bank_filter[show_descript]' value='TRUE' /></th>"; + } + foreach ($fields2 as $no => $fn){ echo "<tr><th>{$fields3[$no]} </th>\n"; *************** *** 321,325 **** } } ! echo "\n</select></th>\n</tr>\n"; } --- 348,353 ---- } } ! echo "\n</select></th>\n"; ! echo "<th>{$fields4[$no]} </th>\n</tr>\n"; } *************** *** 343,351 **** echo '<th><input type="text" name="bank_filter[name]" value="'.$filter['name'].'" /></th>'; echo '<th><input type="text" name="bank_filter[kw]" value="'.$filter['kw'].'" /></th>'; - if ($filter['case_sense']) { - echo "<th colspan='2'>Case sensitive <input type='checkbox' name='bank_filter[case_sense]' value='TRUE' checked='TRUE' /></th>"; - } else { - echo "<th colspan='2'>Case sensitive <input type='checkbox' name='bank_filter[case_sense]' value='TRUE' /></th>"; - } echo "</tr>\n"; } --- 371,374 ---- *************** *** 364,391 **** function stack_db_question_filter($name,$kw,$filter_name,$filter_kw,$filter_case=FALSE) { ! $dispQ = TRUE; ! ! // This will need to wait for PHP 5 :-( ! // if ($filter_case) { ! // $foo = 'strpos'; ! // } else { ! // $foo = 'stripos'; ! // } ! if (!$filter_case) { ! $name = strtolower($name); ! $kw = strtolower($kw); $filter_name = strtolower($filter_name); ! $filter_kw = strtolower($filter_kw); } if ('' != $filter_kw) { ! if ('' != $filter_name) { ! $dispQ = max(strpos($kw,$filter_kw),strpos($name,$filter_name)); ! } else { ! $dispQ = strpos($kw,$filter_kw); } ! } else if ('' != $filter_name) { ! $dispQ = strpos($name,$filter_name); } --- 387,428 ---- function stack_db_question_filter($name,$kw,$filter_name,$filter_kw,$filter_case=FALSE) { ! // If we are case insensitive then we should make everything lower case. if (!$filter_case) { ! $name = strtolower($name); ! $kw = strtolower($kw); $filter_name = strtolower($filter_name); ! $filter_kw = strtolower($filter_kw); } + // Now perform the checks/ + $dispQ = FALSE; + $filter_needed = FALSE; + + // SEARCH over the keywords if ('' != $filter_kw) { ! $filter_needed = TRUE; ! $filter = explode(',',$filter_kw); ! foreach ($filter as $key => $val) { ! $val = trim($val); ! if ('' != $val) { ! $dispQ = max(strpos($kw,$val),$dispQ); ! } } ! } ! ! if ('' != $filter_name) { ! $filter_needed = TRUE; ! $filter = explode(',',$filter_name); ! foreach ($filter as $key => $val) { ! $val = trim($val); ! if ('' != $val) { ! $dispQ = max(strpos($name,$val),$dispQ); ! } ! } ! } ! ! // If no filters have been set, then just display the question anyway. ! if (!$filter_needed) { ! $dispQ = TRUE; } |
From: Chris S. <san...@us...> - 2005-07-03 13:53:08
|
Update of /cvsroot/stack/stack-1-0/frontend_general In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv28200/frontend_general Modified Files: frontend_util.php Log Message: Index: frontend_util.php =================================================================== RCS file: /cvsroot/stack/stack-1-0/frontend_general/frontend_util.php,v retrieving revision 1.4 retrieving revision 1.5 diff -C2 -d -r1.4 -r1.5 *** frontend_util.php 21 Jun 2005 15:43:16 -0000 1.4 --- frontend_util.php 3 Jul 2005 13:52:56 -0000 1.5 *************** *** 120,129 **** // Ensure all fields exist and are set. ! $question_bank_filter['name'] = ''; ! $question_bank_filter['kw'] = ''; ! $question_bank_filter['case_sense'] = FALSE; ! $question_bank_filter['order1'] = 'questionName'; ! $question_bank_filter['order2'] = 'questionKeywords'; ! $question_bank_filter['order3'] = 'questionID'; --- 120,130 ---- // Ensure all fields exist and are set. ! $question_bank_filter['name'] = ''; ! $question_bank_filter['kw'] = ''; ! $question_bank_filter['case_sense'] = FALSE; ! $question_bank_filter['show_descript'] = TRUE; ! $question_bank_filter['order1'] = 'questionName'; ! $question_bank_filter['order2'] = 'questionKeywords'; ! $question_bank_filter['order3'] = 'questionID'; *************** *** 137,140 **** --- 138,144 ---- $question_bank_filter['case_sense'] = FALSE; } + if (!array_key_exists('show_descript',$question_bank_filter)) { + $question_bank_filter['show_descript'] = FALSE; + } } |
From: Chris S. <san...@us...> - 2005-07-03 13:50:28
|
Update of /cvsroot/stack/stack-1-0/pics In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv26838/pics Added Files: logo_sm.png Log Message: --- NEW FILE: logo_sm.png --- (This appears to be a binary file; contents omitted.) |
From: Chris S. <san...@us...> - 2005-07-01 15:22:49
|
Update of /cvsroot/stack/stack-1-0/scripts/maxima In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv32203/scripts/maxima Modified Files: stackmaxima.mac Log Message: Problems with trig expansions in the Int Answer test. Index: stackmaxima.mac =================================================================== RCS file: /cvsroot/stack/stack-1-0/scripts/maxima/stackmaxima.mac,v retrieving revision 1.15 retrieving revision 1.16 diff -C2 -d -r1.15 -r1.16 *** stackmaxima.mac 21 Jun 2005 14:52:25 -0000 1.15 --- stackmaxima.mac 1 Jul 2005 15:22:40 -0000 1.16 *************** *** 578,582 **** /* sa is the students' ansewer, sbl is a list consisting of (1) the integrand, and (2) the variable */ ATInt(sa,sbl) := ! BLOCK([KEEPFLOAT,DEMOIVRE,TRIGEXPAND,RawMark,FeedBack,AnswerNote,str,da,db,dd,dc,sb,var,cont], RawMark:0, FeedBack:"", AnswerNote:"", /* SBL is a list: the teacher's answer, the variable, and whether formative feedback is to be provided. */ --- 578,582 ---- /* sa is the students' ansewer, sbl is a list consisting of (1) the integrand, and (2) the variable */ ATInt(sa,sbl) := ! BLOCK([KEEPFLOAT,DEMOIVRE,RawMark,FeedBack,AnswerNote,str,da,db,dd,dc,sb,var,cont,ans], RawMark:0, FeedBack:"", AnswerNote:"", /* SBL is a list: the teacher's answer, the variable, and whether formative feedback is to be provided. */ |
From: Chris S. <san...@us...> - 2005-07-01 15:22:49
|
Update of /cvsroot/stack/stack-1-0/scripts/install In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv32203/scripts/install Added Files: testsuite.php Log Message: Problems with trig expansions in the Int Answer test. --- NEW FILE: testsuite.php --- <?php /** * This file runs a testsuite against a particular answer test. * */ session_start(); require_once('../../../stackstd.php'); $docs = $stack_root.'/doc/en_doc.php'; include($docs); /** * Construct a test suite array object. */ function stack_testsuite_construct($at,$sa,$ta,$mark,$atops='',$notes=''){ $ts = array('AnswerTest'=>$at, 'SAns'=>$sa, 'TAns'=>$ta, 'AnsTestOpt'=>$atops, 'ExpectedScore'=> $mark, 'Notes' =>$notes,); return $ts; } // AlgEquiv Answer tests. $testsuite[] = stack_testsuite_construct('AlgEquiv','1/0','x^2-2*x+1',0,'',''); $testsuite[] = stack_testsuite_construct('AlgEquiv','4^(-1/2)','1/2',1,'','Numbers'); $testsuite[] = stack_testsuite_construct('AlgEquiv','4^(1/2)','sqrt(4)',1,'',''); $testsuite[] = stack_testsuite_construct('AlgEquiv','0.5','1/2',0,'','Mix of floats and rational numbers'); $testsuite[] = stack_testsuite_construct('AlgEquiv','0.333333333333333','1/3',0,'',''); $testsuite[] = stack_testsuite_construct('AlgEquiv','SQRT(-1)','%I',1,'','Powers and roots'); $testsuite[] = stack_testsuite_construct('AlgEquiv','x^(1/2)','sqrt(x)',1,'',''); $testsuite[] = stack_testsuite_construct('AlgEquiv','x','sqrt(x^2)',0,'',''); $testsuite[] = stack_testsuite_construct('AlgEquiv','abs(x)','sqrt(x^2)',1,'',''); $testsuite[] = stack_testsuite_construct('AlgEquiv','x-1','(x^2-1)/(x+1)',1,'',''); $testsuite[] = stack_testsuite_construct('AlgEquiv','(x-1)^2','x^2-2*x+1',1,'','Polynomials and rational function'); $testsuite[] = stack_testsuite_construct('AlgEquiv','(x-1)*(x^2+x+1)','x^3-1',1,'x',''); $testsuite[] = stack_testsuite_construct('AlgEquiv','(x-1)^(-2)','1/(x^2-2*x+1)',1,'',''); $testsuite[] = stack_testsuite_construct('AlgEquiv','1/n-1/(n+1)','1/(n*(n+1))',1,'x',''); $testsuite[] = stack_testsuite_construct('AlgEquiv','cos(x)','cos(-x)',1,'','Trig functions'); $testsuite[] = stack_testsuite_construct('AlgEquiv','cos(x)^2+sin(x)^2','1',1,'',''); $testsuite[] = stack_testsuite_construct('AlgEquiv','2*cos(x)^2-1','cos(2*x)',1,'',''); $testsuite[] = stack_testsuite_construct('AlgEquiv','EXP(%i*%pi)','-1',1,'',''); $testsuite[] = stack_testsuite_construct('AlgEquiv','LOG(a^2*b)','2*LOG(a)+LOG(b)',1,'','Logarithms'); $testsuite[] = stack_testsuite_construct('AlgEquiv','x','[1,2,3]',0,'','Lists'); $testsuite[] = stack_testsuite_construct('AlgEquiv','[1,2]','[1,2,3]',0,'',''); $testsuite[] = stack_testsuite_construct('AlgEquiv','[1,2,4]','[1,2,3]',0,'',''); $testsuite[] = stack_testsuite_construct('AlgEquiv','x','{1,2,3}',0,'','Sets'); $testsuite[] = stack_testsuite_construct('AlgEquiv','{1,2}','{1,2,3}',0,'',''); $testsuite[] = stack_testsuite_construct('AlgEquiv','[1,2,4]','[1,2,3]',0,'',''); $testsuite[] = stack_testsuite_construct('AlgEquiv','matrix([1,2],[2,3])','matrix([1,2],[2,3])',1,'','Matrices'); $testsuite[] = stack_testsuite_construct('AlgEquiv','matrix([1,2],[2,3])','matrix([1,2,3],[2,3,3])',0,'',''); $testsuite[] = stack_testsuite_construct('AlgEquiv','matrix([1,2],[2,3])','matrix([1,2],[2,5])',0,'',''); // Integration test $testsuite[] = stack_testsuite_construct('Int','1/0','x^2-2*x+1',0,'',''); $testsuite[] = stack_testsuite_construct('Int','1/0','x^2-2*x+1',0,'x',''); $testsuite[] = stack_testsuite_construct('Int','x^3/3','x^3/3',0,'x',''); $testsuite[] = stack_testsuite_construct('Int','x^3/3+1','x^3/3',0,'x',''); $testsuite[] = stack_testsuite_construct('Int','x^3/3+c','x^3/3',1,'x',''); $testsuite[] = stack_testsuite_construct('Int','2*x','x^3/3',0,'x',''); $testsuite[] = stack_testsuite_construct('Int','sin(2*x)','x^3/3',0,'x',''); $testsuite[] = stack_testsuite_construct('Int','(t-1)^5/5+c','(t-1)^5/5',1,'t',''); $testsuite[] = stack_testsuite_construct('Int','2*sin(x)*cos(x)','sin(2*x)+c',0,'x',''); $testsuite[] = stack_testsuite_construct('Int','-2*COS(3*x)/3-3*COS(2*x)/2','-2*COS(3*x)/3-3*COS(2*x)/2+c',0,'x',''); //$testsuite[] = stack_testsuite_construct('Int','-2*COS(3*x)/3-3*COS(2*x)/2+1','-2*COS(3*x)/3-3*COS(2*x)/2+c',0,'x',''); //$testsuite[] = stack_testsuite_construct('Int','-2*COS(3*x)/3-3*COS(2*x)/2+c','-2*COS(3*x)/3-3*COS(2*x)/2+c',1,'x',''); // Differentiation test $testsuite[] = stack_testsuite_construct('Diff','1/0','3*x^2',0,'',''); $testsuite[] = stack_testsuite_construct('Diff','1/0','3*x^2',0,'x',''); $testsuite[] = stack_testsuite_construct('Diff','3*x^2','3*x^2',1,'x',''); $testsuite[] = stack_testsuite_construct('Diff','x^4/4','3*x^2',0,'x',''); $testsuite[] = stack_testsuite_construct('Diff','x^4/4+1','3*x^2',0,'x',''); $testsuite[] = stack_testsuite_construct('Diff','x^4/4+c','3*x^2',0,'x',''); // Factored form $testsuite[] = stack_testsuite_construct('FacForm','1/0','x^2-2*x+1',0,'',''); $testsuite[] = stack_testsuite_construct('FacForm','1/0','x^2-2*x+1',0,'x',''); $testsuite[] = stack_testsuite_construct('FacForm','2*(x-1)','2*x-2',1,'x','Linear integer factors'); $testsuite[] = stack_testsuite_construct('FacForm','2*x-2','2*x-2',0,'x',''); $testsuite[] = stack_testsuite_construct('FacForm','2*(x+1)','2*x-2',0,'x',''); $testsuite[] = stack_testsuite_construct('FacForm','2*x+2','2*x-2',0,'x',''); $testsuite[] = stack_testsuite_construct('FacForm','2*(x+0.5)','2*x+1',0,'x',''); $testsuite[] = stack_testsuite_construct('FacForm','t*(2*x+1)','t*(2*x+1)',1,'x','Linear factors'); $testsuite[] = stack_testsuite_construct('FacForm','t*x+t','t*(x+1)',0,'x',''); $testsuite[] = stack_testsuite_construct('FacForm','2*x*(x-3)','2*x^2-6*x',1,'x','Quadratic, with no const'); $testsuite[] = stack_testsuite_construct('FacForm','2*(x^2-3*x)','2*x*(x-3)',0,'x',''); $testsuite[] = stack_testsuite_construct('FacForm','x*(2*x-6)','2*x*(x-3)',0,'x',''); $testsuite[] = stack_testsuite_construct('FacForm','(x+2)*(x+3)','(x+2)*(x+3)',1,'x','Quadratic'); $testsuite[] = stack_testsuite_construct('FacForm','(x+2)*(2*x+6)','2*(x+2)*(x+3)',0,'x',''); $testsuite[] = stack_testsuite_construct('FacForm','(z*x+z)*(2*x+6)','2*z*(x+1)*(x+3)',0,'x',''); $testsuite[] = stack_testsuite_construct('FacForm','(x+t)*(x-t)','x^2-t^2',1,'x',''); $testsuite[] = stack_testsuite_construct('FacForm','t^2-1','(t-1)*(t+1)',0,'t',''); $testsuite[] = stack_testsuite_construct('FacForm','(2-x)*(3-x)','(x-2)*(x-3)',1,'x','These are delicate cases!'); $testsuite[] = stack_testsuite_construct('FacForm','(1-x)^2','(x-1)^2',1,'x',''); $testsuite[] = stack_testsuite_construct('FacForm','-(1-x)^2','-(x-1)^2',1,'x',''); $testsuite[] = stack_testsuite_construct('FacForm','4*(1-x/2)^2','(x-2)^2',1,'x',''); $testsuite[] = stack_testsuite_construct('FacForm','(x-1)*(x^2+x+1)','x^3-1',1,'x','Cubics'); $testsuite[] = stack_testsuite_construct('FacForm','(1-x)*(2-x)*(3-x)','-x^3+6*x^2-11*x+6',1,'x',''); $testsuite[] = stack_testsuite_construct('FacForm','(x^2-3*x+2)*(3-x)','-x^3+6*x^2-11*x+6',0,'x',''); $testsuite[] = stack_testsuite_construct('FacForm','(sin(x)+1)*(sin(x)-1)','sin(x)^2-1',0,'sin(x)','Not polynomials in a variable'); $testsuite[] = stack_testsuite_construct('FacForm','7','7',1,'x',''); $testsuite[] = stack_testsuite_construct('FacForm','24*(x-1/4)','24*x-6',1,'x','Factors over other fields'); $testsuite[] = stack_testsuite_construct('FacForm','(x-sqrt(2))*(x+sqrt(2))','x^2-2',1,'x',''); $testsuite[] = stack_testsuite_construct('FacForm','(%i*x-2*%i)','%i*(x-2)',0,'x',''); $testsuite[] = stack_testsuite_construct('FacForm','%i*(x-2)','(%i*x-2*%i)',1,'x',''); $testsuite[] = stack_testsuite_construct('FacForm','(x-%i)*(x+%i)','x^2+1',1,'x',''); //$testsuite[] = stack_testsuite_construct('FacForm','(x-1)*(x+(1+sqrt(3)*%i)/2)*(x+(1-sqrt(3)*%i)/2)','x^3-1',1,'x',''); $testsuite[] = stack_testsuite_construct('SA_factored','1/0','0',0,'x',''); $testsuite[] = stack_testsuite_construct('SA_factored','2*(x-2)','0',1,'x','Linear integer factors'); $testsuite[] = stack_testsuite_construct('SA_factored','2*x-2','0',0,'x',''); $testsuite[] = stack_testsuite_construct('SA_factored','2*(x+0.5)','0',0,'x',''); $testsuite[] = stack_testsuite_construct('SA_factored','(2-x)*(3-x)','0',1,'x','These are delicate cases!'); $testsuite[] = stack_testsuite_construct('SA_factored','(1-x)^2','(x-1)^2',1,'x',''); $testsuite[] = stack_testsuite_construct('SA_expanded','1/0','0',1,'',''); $testsuite[] = stack_testsuite_construct('SA_expanded','x^2-1','0',1,'',''); $testsuite[] = stack_testsuite_construct('SA_expanded','(x-1)*(x+1)','0',0,'',''); //$AnswerTestlist = array('AlgEquiv','Diff','Int','FacForm','SA_factored','SA_expanded'); $AnswerTestlist = array('Int'); //$AnswerTestlist = array('FacForm','SA_factored'); // Now perform the tests, and display the results. $disp = 'LaTeX'; $errors = array(); echo "<h1>Test suite for the AnswerTests</h1>\n"; foreach( $AnswerTestlist as $atest) { echo "<h2>$atest</h2>\n"; echo $stackAnswerTest[$atest]['doc']; $all_passed = TRUE; echo "<table border='1' cellpadding='2'>\n\n"; // (4) Sort out and display the output echo "<tr> <th> pass? </th> <th> TAns </th> <th> SAns </th> <th> Ans </th> <th> Errors </th> <th> RawMark </th> <th> Expected </th> <th> FeedBack </th> <th> AnswerNote </th></tr>"; foreach ($testsuite as $ts) { // (0) Check this is the required AnswerTest. if ($ts['AnswerTest'] == $atest) { $err = ''; // (1) Apply the AnswerTest $this_attempt = stack_apply_answertest($ts['SAns'],$ts['TAns'],$ts['AnswerTest'],$ts['AnsTestOpt'],$disp,$err); // (2) Process $this_attempt $dispans = ''; $errans = ''; if (array_key_exists('Ans',$this_attempt)) { if (array_key_exists('display',$this_attempt['Ans'])) { $dispans=$this_attempt['Ans']['display']; } if (array_key_exists('error',$this_attempt['Ans'])) { $errans='<font color="red">'.$this_attempt['Ans']['error'].'</font>'; } } if (array_key_exists('Valid',$this_attempt)) { if ('false' == $this_attempt['Valid']) { $errans .= ' <font color="red">[invalid]</font>'; } } if (''!=$dispans) { $locs = array(); $dispans = stack_castext_to_display('$$'.$dispans.'$$', $locs , $disp,$errors); // Remove <br clear="all" /> from the beginning. if ('<br clear="all" />'==substr($dispans,0,18)) { $dispans = substr($dispans,18); } } $feedback = ''; if (array_key_exists('FeedBack',$this_attempt)) { $locs = array(); $feedback = stack_castext_to_display($this_attempt['FeedBack'], $locs , $disp,$errors); } if (array_key_exists('RawMark',$this_attempt)) { $rawmark = $this_attempt['RawMark']; } else { $rawmark = NULL; } if ( $ts['ExpectedScore'] == $rawmark ) { $outcome = '<font color="green">pass</font>'; } else { $all_passed = FALSE; $outcome = '<font color="red">fail</font>'; } // (3) Echo notes. echo "<tr>\n"; echo " <td colspan = \"9\">{$ts['Notes']}</td>\n"; echo "</tr>\n"; // (4) Construct the row. echo " <td> $outcome </td>\n"; echo " <td nowrap=\"nowrap\">".stack_s($ts['TAns'])." </td>\n "; echo " <td nowrap=\"nowrap\">".stack_s($ts['SAns'])." </td>\n "; echo " <td> $dispans </td>\n "; echo " <td> $errans </td>\n "; echo " <td> $rawmark </td>\n "; echo " <td> {$ts['ExpectedScore']} </td>\n"; echo " <td> $feedback </td>\n "; if (array_key_exists('AnswerNote',$this_attempt)) { echo " <td> {$this_attempt['AnswerNote']} </td>\n "; } else { echo " <td>   </td>\n "; } echo "</tr>\n"; } // End of check for which AnswerTest this is. } echo "</table></p>\n\n"; // (7) Overall, did all the tests pass if ( $all_passed ) { echo '<h2><font color="green">All tests passed!</font></h2>'; } else { echo '<h2><font color="red">Not all tests passed!</font></h2>'; } echo "<hr />\n"; } ?> |
From: Chris S. <san...@us...> - 2005-07-01 10:30:37
|
Update of /cvsroot/stack/stack-1-0/lang/en/doc In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv7839/lang/en/doc Modified Files: student_factsformula.php Log Message: Index: student_factsformula.php =================================================================== RCS file: /cvsroot/stack/stack-1-0/lang/en/doc/student_factsformula.php,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -d -r1.1 -r1.2 *** student_factsformula.php 27 Jun 2005 08:26:41 -0000 1.1 --- student_factsformula.php 1 Jul 2005 10:30:21 -0000 1.2 *************** *** 21,23 **** --- 21,33 ---- $$ or, using alternative notation, $$ (g(f(x)))\' = f\'(x)g\'(f(x)). $$'; + $stackFact['calc_quotient_rule']['name'] = 'The quotient rule'; + $stackFact['calc_quotient_rule']['fact'] = 'The quotient rule for differentiation states that for any two differentiable functions $f(x)$ and $g(x)$, + \[\frac{d}{dx}\left(\frac{f}{g}\right)=\frac{\frac{df}{dx}\cdot g - f\cdot \frac{dg}{dx}}{g^2}. \]'; + + // . concatinates (joins) strings together. + $stackFact['calc_rules']['name'] = 'Calculus rules'; + $stackFact['calc_rules']['fact'] = $stackFact['calc_product_rule']['fact'].'Another rule'.$stackFact['calc_quotient_rule']['fact']; + + //show_array($stackFact); + ?> |
From: Chris S. <san...@us...> - 2005-06-27 08:29:54
|
Update of /cvsroot/stack/stack-1-0 In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv29937 Modified Files: analysis.php chat.php chat_mathml.php Log Message: Index: chat.php =================================================================== RCS file: /cvsroot/stack/stack-1-0/chat.php,v retrieving revision 1.9 retrieving revision 1.10 diff -C2 -d -r1.9 -r1.10 *** chat.php 20 Jun 2005 15:42:52 -0000 1.9 --- chat.php 27 Jun 2005 08:29:40 -0000 1.10 *************** *** 20,23 **** --- 20,24 ---- + $options = stack_options_set(NULL); $options['Display']='LaTeX'; Index: chat_mathml.php =================================================================== RCS file: /cvsroot/stack/stack-1-0/chat_mathml.php,v retrieving revision 1.2 retrieving revision 1.3 diff -C2 -d -r1.2 -r1.3 *** chat_mathml.php 1 Apr 2005 18:59:22 -0000 1.2 --- chat_mathml.php 27 Jun 2005 08:29:40 -0000 1.3 *************** *** 33,36 **** --- 33,37 ---- } + $options = stack_options_set(NULL); if (array_key_exists('Display',$_POST)) { $options['Display'] = $_POST['Display']; Index: analysis.php =================================================================== RCS file: /cvsroot/stack/stack-1-0/analysis.php,v retrieving revision 1.12 retrieving revision 1.13 diff -C2 -d -r1.12 -r1.13 *** analysis.php 10 Jun 2005 20:23:56 -0000 1.12 --- analysis.php 27 Jun 2005 08:29:40 -0000 1.13 *************** *** 42,45 **** --- 42,46 ---- /////////////////////////////////////////////////// $errors = ''; + $options = stack_options_set(NULL); // Find out who is using the system. |
From: Chris S. <san...@us...> - 2005-06-27 08:26:56
|
Update of /cvsroot/stack/stack-1-0/doc In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv28391/doc Modified Files: about_develop.php help_popup.php Log Message: Hints added Index: about_develop.php =================================================================== RCS file: /cvsroot/stack/stack-1-0/doc/about_develop.php,v retrieving revision 1.2 retrieving revision 1.3 diff -C2 -d -r1.2 -r1.3 *** about_develop.php 20 Jun 2005 15:42:55 -0000 1.2 --- about_develop.php 27 Jun 2005 08:26:39 -0000 1.3 *************** *** 1,5 **** <?php /** ! * Details of how to Develop. * * @package documentation --- 1,5 ---- <?php /** ! * Details of how to Develop STACK. * * @package documentation *************** *** 195,197 **** </ol> <p> </p> - --- 195,196 ---- Index: help_popup.php =================================================================== RCS file: /cvsroot/stack/stack-1-0/doc/help_popup.php,v retrieving revision 1.2 retrieving revision 1.3 diff -C2 -d -r1.2 -r1.3 *** help_popup.php 20 Jun 2005 15:42:55 -0000 1.2 --- help_popup.php 27 Jun 2005 08:26:39 -0000 1.3 *************** *** 25,44 **** include("{$stack_root}/html/htmlstyle.html"); ?> </head> <body> - <div id=main> - <div id=SectionText> <?php ! $field = $_POST['field']; $variable = $_POST['variable']; if (array_key_exists('field',$_GET)) { ! $field = $_GET['field']; } if (array_key_exists('variable',$_GET)) { ! $variable = $_GET['variable']; } --- 25,48 ---- include("{$stack_root}/html/htmlstyle.html"); + + // HACK! + $lang = 'en'; + $disp_opt = 'LaTeX'; + ?> </head> <body> <?php ! ! $field = $_POST['field']; $variable = $_POST['variable']; if (array_key_exists('field',$_GET)) { ! $field = $_GET['field']; } if (array_key_exists('variable',$_GET)) { ! $variable = $_GET['variable']; } *************** *** 46,55 **** //echo $variable; ! if ('student'==$field) { ! include('student_input.php'); ! } else if('all'==$field) { // Then we would like a lot of documentation. $filename=$variable.'.php'; --- 50,75 ---- //echo $variable; ! if ('student' == $field) { ! include('student_input.php'); ! } else if('fact' == $variable) { ! //<a href="javascript:HelpPopup('calc_product_rule','fact');">A fact!</a> ! // These allow the student to ask for help in the popup window. ! $fn = $stack_root.'/lang/'.$lang.'/doc/student_factsformula.php'; ! ! include($fn); ! ! if (array_key_exists($field,$stackFact)) { ! $name = $stackFact[$field]['name']; ! $fact = $stackFact[$field]['fact']; ! $strout = stack_latex_to_html($fact); ! ! echo "<h2><img src='$stack_web_url/pics/logo_sm.png' /> $name</h2><p>$strout</p>"; ! } ! ! } else if('all' == $field) { // Then we would like a lot of documentation. + // This needs to come after 'fact' $filename=$variable.'.php'; *************** *** 82,84 **** ?> ! </div><br /></div></div></body></html> --- 102,104 ---- ?> ! </body></html> |
From: Chris S. <san...@us...> - 2005-06-27 08:26:55
|
Update of /cvsroot/stack/stack-1-0/lang/en/doc In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv28391/lang/en/doc Added Files: student_factsformula.php Log Message: Hints added --- NEW FILE: student_factsformula.php --- <?php /** * This file contains standard formulae and hints. * These are provided to allow a teacher to use materials and still have * a consistent look and feel to standard formulae and results. * * Each of these should be a static LaTeX string. * * This file contains a list of static strings which are used by docuementation.php * * @package documentation * @subpackage Stack */ $stackFact['calc_product_rule']['name'] = 'The Product Rule'; $stackFact['calc_product_rule']['fact'] = 'The following rule allows one to differentiate functions built up by compositions. Let us assume that we have some function which we can choose to write as a composition $g(f(x))$. Let $u=f(x)$, then $$ \frac{\mathrm{d}}{\mathrm{d}{x}} (g(f(x)) = \left(\frac{\mathrm{d}}{\mathrm{d}{x}} f(x)\right)\left(\frac{\mathrm{d}}{\mathrm{d}{u}} g(u)\right), $$ or, using alternative notation, $$ (g(f(x)))\' = f\'(x)g\'(f(x)). $$'; ?> |