2 /************************************************************************
3 * Mailer v0.2.1-FINAL Start: 10/21/2012 *
4 * =================== Last change: 10/21/2012 *
6 * -------------------------------------------------------------------- *
7 * File : grade_functions.php *
8 * -------------------------------------------------------------------- *
9 * Short description : Functions for ext- *
10 * -------------------------------------------------------------------- *
11 * Kurzbeschreibung : Funktionen fuer ext- *
12 * -------------------------------------------------------------------- *
15 * $Tag:: 0.2.1-FINAL $ *
17 * -------------------------------------------------------------------- *
18 * Copyright (c) 2003 - 2009 by Roland Haeder *
19 * Copyright (c) 2009 - 2013 by Mailer Developer Team *
20 * For more information visit: http://mxchange.org *
22 * This program is free software; you can redistribute it and/or modify *
23 * it under the terms of the GNU General Public License as published by *
24 * the Free Software Foundation; either version 2 of the License, or *
25 * (at your option) any later version. *
27 * This program is distributed in the hope that it will be useful, *
28 * but WITHOUT ANY WARRANTY; without even the implied warranty of *
29 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the *
30 * GNU General Public License for more details. *
32 * You should have received a copy of the GNU General Public License *
33 * along with this program; if not, write to the Free Software *
34 * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, *
36 ************************************************************************/
38 // Some security stuff...
39 if (!defined('__SECURITY')) {
43 // Generates a option "list" for all created grade ids
44 function generateGradeDataIdOptions ($defaultId = NULL) {
46 if (!isset($GLOBALS[__FUNCTION__][$defaultId])) {
48 $grades = getArrayFromTable('grade_data', array('grade_id', 'grade_name'), 'grade_id');
50 // Init entries arrays
52 $gradeValues = array();
55 foreach ($grades as $grade) {
57 array_push($gradeKeys , $grade['grade_id']);
58 array_push($gradeValues, $grade['grade_name']);
61 // Generate option "list"
62 $GLOBALS[__FUNCTION__][$defaultId] = generateOptions(
77 return $GLOBALS[__FUNCTION__][$defaultId];
80 // Generates a option "list" for all created "parent" grade ids
81 function generateGradeDataParentIdOptions ($defaultId = NULL) {
83 if (!isset($GLOBALS[__FUNCTION__][$defaultId])) {
84 // Default is no parent (NULL)
88 if (!is_null($defaultId)) {
90 $whereStatement = sprintf('WHERE `grade_id` != %s', bigintval($defaultId));
94 $grades = getArrayFromTable('grade_data', array('grade_id', 'grade_name'), 'grade_id', 'ASC', $whereStatement);
96 // Init entries arrays
98 $gradeValues = array();
100 // Are there entries?
101 foreach ($grades as $grade) {
103 array_push($gradeKeys , $grade['grade_id']);
104 array_push($gradeValues, $grade['grade_name']);
107 // Generate option "list"
108 $GLOBALS[__FUNCTION__][$defaultId] = generateOptions(
117 return $GLOBALS[__FUNCTION__][$defaultId];
120 // Generates a selection box for grades
121 function generateAdminGradeDataSelectionBox ($gradeId, $defaultId = NULL) {
122 // May only be called as admin
124 assert(isValidId($gradeId));
127 return generateSelectionBoxFromArray(getArrayFromTable('grade_data', array('grade_id', 'grade_name'), 'grade_id'), 'grade_parent_id', $defaultId, '', '', '', $defaultId, '', TRUE, TRUE);
130 // ----------------------------------------------------------------------------
131 // XML call-back functions
132 // ----------------------------------------------------------------------------
134 // For 'doing' add grade data, the column-index is required
135 function addXmlSpecialAdminAddDoGradeData () {
136 // So set it all here
137 $GLOBALS['__COLUMN_INDEX']['doXmlCallbackFunction'] = 'column';
138 $GLOBALS['__XML_ARGUMENTS']['doXmlCallbackFunction']['column_index'] = 'column';