2 /************************************************************************/
\r
4 /************************************************************************/
\r
5 /* Copyright (c) 2002-2010 */
\r
6 /* Inclusive Design Institute */
\r
7 /* http://atutor.ca */
\r
9 /* This program is free software. You can redistribute it and/or */
\r
10 /* modify it under the terms of the GNU General Public License */
\r
11 /* as published by the Free Software Foundation. */
\r
12 /************************************************************************/
\r
15 /************************************************************************/
\r
17 /* This script is called by gradebook/grade_scale_add.php, gradebook/grade_scale_edit.php
\r
18 /* to add/edit grade scales
\r
20 /* Required parameter: $action: "add" or "edit"
\r
22 /************************************************************************/
\r
24 $page = 'gradebook';
\r
26 define('AT_INCLUDE_PATH', '../../../include/');
\r
27 require (AT_INCLUDE_PATH.'vitals.inc.php');
\r
28 authenticate(AT_PRIV_GRADEBOOK);
\r
30 require('lib/gradebook.inc.php');
\r
32 if (isset($_POST['action'])) $action = $_POST['action'];
\r
34 if (isset($_POST['cancel']))
\r
36 $msg->addFeedback('CANCELLED');
\r
37 header('Location: grade_scale.php');
\r
40 else if (isset($_POST['submit']))
\r
42 $_POST['scale_name'] = trim($_POST['scale_name']);
\r
44 $empty_fields = array();
\r
45 if ($_POST['scale_value'][0] == '')
\r
47 $empty_fields[] = _AT('scale_value').' at line 1';
\r
50 if ($_POST['percentage_from'][0] == '')
\r
52 $empty_fields[] = _AT('percentage_from').' at line 1';
\r
55 if ($_POST['percentage_to'][0] == '')
\r
57 $empty_fields[] = _AT('percentage_to').' at line 1';
\r
60 if (!empty($empty_fields))
\r
62 $msg->addError(array('EMPTY_FIELDS', implode(', ', $empty_fields)));
\r
65 if (!$msg->containsErrors())
\r
67 $_POST['scale_name'] = $addslashes($_POST['scale_name']);
\r
69 if ($action == "add")
\r
71 $sql = "INSERT INTO ".TABLE_PREFIX."grade_scales
\r
72 (member_id, scale_name, created_date)
\r
73 VALUES (" . $_SESSION["member_id"] . ", '". $_POST["scale_name"] ."', now())";
\r
74 $result = mysql_query($sql, $db) or die(mysql_error());
\r
76 $grade_scale_id = mysql_insert_id();
\r
78 else if ($action == "edit" && isset($_POST["grade_scale_id"]))
\r
80 $grade_scale_id = $_POST["grade_scale_id"];
\r
82 $sql = "UPDATE ".TABLE_PREFIX."grade_scales
\r
83 SET scale_name = '".$_POST["scale_name"]."'
\r
84 WHERE grade_scale_id = ". $grade_scale_id;
\r
85 $result = mysql_query($sql, $db) or die(mysql_error());
\r
87 // clean up scale details for new insertions
\r
88 $sql = "DELETE FROM ".TABLE_PREFIX."grade_scales_detail WHERE grade_scale_id = ". $grade_scale_id;
\r
89 $result = mysql_query($sql, $db) or die(mysql_error());
\r
92 for ($i=0; $i<10; $i++)
\r
94 if ($_POST['scale_value'][$i] <> "")
\r
96 $_POST['scale_value'][$i] = $addslashes(trim($_POST['scale_value'][$i]));
\r
97 $_POST['percentage_from'][$i] = intval($_POST['percentage_from'][$i]);
\r
98 $_POST['percentage_to'][$i] = intval($_POST['percentage_to'][$i]);
\r
100 $sql = "INSERT INTO ".TABLE_PREFIX."grade_scales_detail
\r
101 (grade_scale_id, scale_value, percentage_from, percentage_to)
\r
102 VALUES (" . $grade_scale_id . ", '". $_POST['scale_value'][$i] ."', ".$_POST['percentage_from'][$i].", ".$_POST['percentage_to'][$i].")";
\r
105 $result = mysql_query($sql, $db) or die(mysql_error());
\r
109 $msg->addFeedback('ACTION_COMPLETED_SUCCESSFULLY');
\r
110 header('Location: grade_scale.php');
\r
114 else if (isset($_POST['preset']) || ($action == 'edit' && isset($_REQUEST['grade_scale_id'])))
\r
116 if (isset($_POST['selected_grade_scale_id']))
\r
118 // clean up values preset previously
\r
119 unset($_POST["scale_value"]);
\r
120 unset($_POST["percentage_from"]);
\r
121 unset($_POST["percentage_to"]);
\r
124 if (!$msg->containsErrors() && $_POST['selected_grade_scale_id'] > 0)
\r
127 $_POST['selected_grade_scale_id'] = intval($_POST['selected_grade_scale_id']);
\r
128 $sql = "SELECT * FROM ".TABLE_PREFIX."grade_scales_detail d, ".TABLE_PREFIX."grade_scales g WHERE d.grade_scale_id = g.grade_scale_id AND d.grade_scale_id=".$_POST[selected_grade_scale_id]." ORDER BY percentage_to DESC";
\r
130 else if ($action == 'edit' && isset($_REQUEST['grade_scale_id']))
\r
133 $sql = "SELECT * FROM ".TABLE_PREFIX."grade_scales_detail d, ".TABLE_PREFIX."grade_scales g WHERE d.grade_scale_id = g.grade_scale_id AND d.grade_scale_id=".$_REQUEST['grade_scale_id']." ORDER BY percentage_to DESC";
\r
136 $result = mysql_query($sql, $db) or die(mysql_error());
\r
139 while ($row = mysql_fetch_assoc($result))
\r
141 $_POST["scale_name"] = $row["scale_name"];
\r
142 $_POST["scale_value"][$i] = $row["scale_value"];
\r
143 $_POST["percentage_from"][$i] = $row["percentage_from"];
\r
144 $_POST["percentage_to"][$i] = $row["percentage_to"];
\r
150 $onload = 'document.form.selected_grade_scale_id.focus();';
\r
152 require(AT_INCLUDE_PATH.'header.inc.php');
\r
155 <form action="<?php echo $_SERVER['PHP_SELF'] . (isset($_REQUEST['grade_scale_id'])? "?grade_scale_id=".$_REQUEST['grade_scale_id'] : ""); ?>" method="post" name="form">
\r
156 <input type="hidden" name="grade_scale_id" value="<?php echo $_REQUEST['grade_scale_id']; ?>" />
\r
157 <input type="hidden" name="action" value="<?php echo $action; ?>" />
\r
159 <div class="input-form">
\r
160 <fieldset class="group_form"><legend class="group_form"><?php echo _AT('preset_scales'); ?></legend>
\r
163 <?php print_grade_scale_selectbox($_POST["selected_grade_scale_id"]); ?>
\r
166 <div class="row buttons">
\r
167 <input type="submit" name="preset" value="<?php echo _AT('set_preset'); ?>" class="button" />
\r
171 <fieldset class="group_form"><legend class="group_form"><?php echo _AT('grade_scale'); ?></legend>
\r
174 <label for="scale_name"><?php echo _AT('name'); ?></label><br />
\r
175 <input type="text" id="scale_name" size="30" name="scale_name" value="<?php echo htmlspecialchars(stripslashes($_POST['scale_name'])); ?>" /><br /><br />
\r
178 <?php for ($i=0; $i<10; $i++) { ?>
\r
183 <?php if ($i==0) { ?>
\r
184 <span class="required" title="<?php echo _AT('required_field'); ?>">*</span>
\r
186 <?php echo _AT('scale_value'); ?>
\r
190 <?php if ($i==0) { ?>
\r
191 <span class="required" title="<?php echo _AT('required_field'); ?>">*</span>
\r
193 <?php echo _AT('percentage_from'); ?>
\r
197 <?php if ($i==0) { ?>
\r
198 <span class="required" title="<?php echo _AT('required_field'); ?>">*</span>
\r
200 <?php echo _AT('percentage_to'); ?>
\r
205 <td><?php echo $i+1; ?></td>
\r
206 <td><input type="text" id="scale_value_<?php echo $i; ?>" size="40" name="scale_value[<?php echo $i; ?>]" value="<?php echo htmlspecialchars(stripslashes($_POST['scale_value'][$i])); ?>" /></td>
\r
207 <td><input type="text" id="percentage_from_<?php echo $i; ?>" size="10" name="percentage_from[<?php echo $i; ?>]" value="<?php echo htmlspecialchars(stripslashes($_POST['percentage_from'][$i])); ?>" />%</td>
\r
208 <td><input type="text" id="percentage_to_<?php echo $i; ?>" size="10" name="percentage_to[<?php echo $i; ?>]" value="<?php echo htmlspecialchars(stripslashes($_POST['percentage_to'][$i])); ?>" />%</td>
\r
213 <div class="row buttons">
\r
214 <input type="submit" value="<?php echo _AT('save'); ?>" name="submit" accesskey="s" />
\r
215 <input type="submit" value="<?php echo _AT('cancel'); ?>" name="cancel" />
\r
221 <?php require (AT_INCLUDE_PATH.'footer.inc.php'); ?>