mirror of
https://github.com/FH-Complete/FHC-Core.git
synced 2026-07-24 02:12:17 +00:00
Merge branch 'master' of https://github.com/FH-Complete/FHC-Core
This commit is contained in:
+1678
-995
File diff suppressed because it is too large
Load Diff
+3142
-3079
File diff suppressed because it is too large
Load Diff
@@ -59,11 +59,14 @@ $error_msg='';
|
||||
|
||||
$stsem_obj = new studiensemester();
|
||||
|
||||
/*
|
||||
if(mb_substr($studiensemester,0,1)=='W')
|
||||
$stsem2 = $stsem_obj->getPreviousFrom($studiensemester);
|
||||
else
|
||||
$stsem2 = $stsem_obj->getNextFrom($studiensemester);
|
||||
|
||||
*/
|
||||
$stsem2 = $stsem_obj->getNearestFrom($studiensemester);
|
||||
|
||||
function setGeneriert($gruppe)
|
||||
{
|
||||
$db = new basis_db();
|
||||
@@ -104,6 +107,40 @@ $error_msg='';
|
||||
echo '-';
|
||||
flush();
|
||||
}
|
||||
|
||||
// **************************************************************
|
||||
// Weibliche Mitarbeiterinnen Verteiler abgleichen
|
||||
$mlist_name='tw_ma_w';
|
||||
setGeneriert($mlist_name);
|
||||
// MitarbeiterInnen holen die nicht mehr in den Verteiler gehoeren
|
||||
echo $mlist_name.' wird abgeglichen!<BR>';
|
||||
flush();
|
||||
$sql_query="SELECT uid FROM public.tbl_benutzergruppe WHERE UPPER(gruppe_kurzbz)=UPPER(".$db->db_add_param($mlist_name).") AND uid NOT IN (SELECT mitarbeiter_uid FROM public.tbl_mitarbeiter JOIN public.tbl_benutzer ON (mitarbeiter_uid=uid) JOIN public.tbl_person USING(person_id) WHERE tbl_benutzer.aktiv AND geschlecht='w' AND personalnummer >=0)";
|
||||
|
||||
if(!($result = $db->db_query($sql_query)))
|
||||
$error_msg.=$db->db_last_error();
|
||||
|
||||
while($row = $db->db_fetch_object($result))
|
||||
{
|
||||
$sql_query="DELETE FROM public.tbl_benutzergruppe WHERE UPPER(gruppe_kurzbz)=UPPER(".$db->db_add_param($mlist_name).") AND uid=".$db->db_add_param($row->uid);
|
||||
if(!$db->db_query($sql_query))
|
||||
$error_msg.=$db->db_last_error().$sql_query;
|
||||
echo '-';
|
||||
flush();
|
||||
}
|
||||
// MitarbeiterInnen holen die nicht im Verteiler sind
|
||||
echo '<BR>';
|
||||
$sql_query="SELECT mitarbeiter_uid AS uid FROM public.tbl_mitarbeiter JOIN public.tbl_benutzer ON (mitarbeiter_uid=uid) JOIN public.tbl_person USING(person_id) WHERE tbl_benutzer.aktiv AND geschlecht='w' AND personalnummer >=0 AND mitarbeiter_uid NOT IN (SELECT uid FROM public.tbl_benutzergruppe WHERE UPPER(gruppe_kurzbz)=UPPER(".$db->db_add_param($mlist_name)."))";
|
||||
if(!($result = $db->db_query($sql_query)))
|
||||
$error_msg.= $db->db_last_error();
|
||||
while($row = $db->db_fetch_object($result))
|
||||
{
|
||||
$sql_query="INSERT INTO public.tbl_benutzergruppe(uid, gruppe_kurzbz, insertamum, insertvon) VALUES (".$db->db_add_param($row->uid).",".$db->db_add_param(strtoupper($mlist_name)).", now(), 'mlists_generate')";
|
||||
if(!$db->db_query($sql_query))
|
||||
$error_msg.=$db->db_last_error().$sql_query;
|
||||
echo '-';
|
||||
flush();
|
||||
}
|
||||
|
||||
// **************************************************************
|
||||
// LektorenVerteiler abgleichen
|
||||
@@ -349,7 +386,7 @@ $error_msg='';
|
||||
echo '<BR>Lektoren-Verteiler der Studiengaenge werden abgeglichen!<BR>';
|
||||
flush();
|
||||
$sql_query="SELECT uid, gruppe_kurzbz FROM public.tbl_benutzergruppe
|
||||
WHERE gruppe_kurzbz LIKE '%\\\\_LKT' AND UPPER(gruppe_kurzbz)!=UPPER('tw_lkt') AND UPPER(gruppe_kurzbz)!=UPPER('tw_fix_lkt') AND UPPER(gruppe_kurzbz)!=UPPER('tw_ext_lkt')
|
||||
WHERE gruppe_kurzbz LIKE '%\\\\_LKT' AND UPPER(gruppe_kurzbz)!=UPPER('tw_lkt') AND UPPER(gruppe_kurzbz)!=UPPER('tw_fix_lkt') AND UPPER(gruppe_kurzbz)!=UPPER('tw_ext_lkt') AND UPPER(gruppe_kurzbz)!=UPPER('moodle_lkt')
|
||||
AND (uid,UPPER(gruppe_kurzbz)) NOT IN
|
||||
(SELECT mitarbeiter_uid,UPPER(typ::varchar(1) || tbl_studiengang.kurzbz || '_lkt')
|
||||
FROM lehre.tbl_lehrveranstaltung, lehre.tbl_lehreinheit, lehre.tbl_lehreinheitmitarbeiter, public.tbl_studiengang
|
||||
@@ -678,6 +715,7 @@ WHERE
|
||||
$error_msg.=$db->db_last_error().' '.$sql_querys;
|
||||
}
|
||||
|
||||
$sql_query.=" AND NOT EXISTS(SELECT 1 FROM public.tbl_benutzergruppe WHERE gruppe_kurzbz=UPPER(".$db->db_add_param($mlist_name).") AND uid=vw_lehreinheit.mitarbeiter_uid)";
|
||||
if(!($result = $db->db_query($sql_query)))
|
||||
$error_msg.=$db->db_last_error().' '.$sql_query;
|
||||
// Lektoren holen die nicht im Verteiler sind
|
||||
|
||||
@@ -32,7 +32,10 @@ class local_fhcompletews_external extends external_api
|
||||
public static function get_course_grades_parameters()
|
||||
{
|
||||
return new external_function_parameters(
|
||||
array('courseid' => new external_value(PARAM_INT, 'CourseID')), 'ID of the Course'
|
||||
array(
|
||||
'courseid' => new external_value(PARAM_INT, 'Moodle CourseID'),
|
||||
'type' => new external_value(PARAM_INT,'Type 1=Punkte, 2=Prozent, 3=Endnote lt Skala')
|
||||
), 'Get Course Grades'
|
||||
);
|
||||
}
|
||||
|
||||
@@ -41,7 +44,7 @@ class local_fhcompletews_external extends external_api
|
||||
* @param int courseid
|
||||
* @return array
|
||||
*/
|
||||
public static function get_course_grades($courseid)
|
||||
public static function get_course_grades($courseid, $type)
|
||||
{
|
||||
global $CFG, $DB;
|
||||
require_once($CFG->dirroot . "/course/lib.php");
|
||||
@@ -49,9 +52,10 @@ class local_fhcompletews_external extends external_api
|
||||
|
||||
//validate parameter
|
||||
$params = self::validate_parameters(self::get_course_grades_parameters(),
|
||||
array('courseid' => $courseid));
|
||||
array('courseid' => $courseid, 'type'=>$type));
|
||||
|
||||
$notenart=3; // 2=Prozent; 3=Endnote nach Skala
|
||||
$notenart = $type;
|
||||
//$notenart=3; // 1=Punkte, 2=Prozent; 3=Endnote nach Skala
|
||||
$gui=array();
|
||||
$final_id='';
|
||||
$data = array();
|
||||
@@ -121,6 +125,10 @@ class local_fhcompletews_external extends external_api
|
||||
$gradestr = $export->format_grade($userdata->grades[$final_id]);
|
||||
$user_item['note']=$gradestr;
|
||||
|
||||
// Wenn Prozent dann Prozentzeichen entfernen
|
||||
if(strpos($user_item['note'],'%')!==false)
|
||||
$user_item['note']=trim(str_replace('%','',$user_item['note']));
|
||||
|
||||
// nur zurueckliefern wenn eine Note gefunden wurde und diese nicht '-' ist
|
||||
if($user_item['note']!='-')
|
||||
$data[]=$user_item;
|
||||
|
||||
@@ -12,7 +12,7 @@
|
||||
// You should have received a copy of the GNU General Public License
|
||||
// along with Moodle. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
$plugin->version = 2014030605; // The (date) version of this module + 2 extra digital for daily versions
|
||||
$plugin->version = 2015020401; // The (date) version of this module + 2 extra digital for daily versions
|
||||
// This version number is displayed into /admin/forms.php
|
||||
// TODO: if ever this plugin get branched, the old branch number
|
||||
// will not be updated to the current date but just incremented. We will
|
||||
@@ -20,5 +20,5 @@ $plugin->version = 2014030605; // The (date) version of this module + 2 extra
|
||||
// display this version number with userdate (dev friendly)
|
||||
$plugin->requires = 2010112400; // Requires this Moodle version - at least 2.0
|
||||
$plugin->cron = 0;
|
||||
$plugin->release = '1.0 (Build: 2014030605)';
|
||||
$plugin->release = '1.2 (Build: 2015020401)';
|
||||
$plugin->maturity = MATURITY_STABLE;
|
||||
|
||||
@@ -32,7 +32,10 @@ class local_fhcompletews_external extends external_api
|
||||
public static function get_course_grades_parameters()
|
||||
{
|
||||
return new external_function_parameters(
|
||||
array('courseid' => new external_value(PARAM_INT, 'CourseID')), 'ID of the Course'
|
||||
array(
|
||||
'courseid' => new external_value(PARAM_INT, 'Moodle CourseID'),
|
||||
'type' => new external_value(PARAM_INT,'Type 1=Punkte, 2=Prozent, 3=Endnote lt Skala')
|
||||
), 'Get Course Grades'
|
||||
);
|
||||
}
|
||||
|
||||
@@ -41,7 +44,7 @@ class local_fhcompletews_external extends external_api
|
||||
* @param int courseid
|
||||
* @return array
|
||||
*/
|
||||
public static function get_course_grades($courseid)
|
||||
public static function get_course_grades($courseid, $type)
|
||||
{
|
||||
global $CFG, $DB;
|
||||
require_once($CFG->dirroot . "/course/lib.php");
|
||||
@@ -49,9 +52,10 @@ class local_fhcompletews_external extends external_api
|
||||
|
||||
//validate parameter
|
||||
$params = self::validate_parameters(self::get_course_grades_parameters(),
|
||||
array('courseid' => $courseid));
|
||||
array('courseid' => $courseid, 'type'=>$type));
|
||||
|
||||
$notenart=3; // 2=Prozent; 3=Endnote nach Skala
|
||||
$notenart = $type;
|
||||
//$notenart=2; // 1=Punkte; 2=Prozent; 3=Endnote nach Skala
|
||||
$gui=array();
|
||||
$final_id='';
|
||||
$data = array();
|
||||
@@ -72,12 +76,41 @@ class local_fhcompletews_external extends external_api
|
||||
$context = get_context_instance(CONTEXT_COURSE, $courseid);
|
||||
require_once($CFG->dirroot.'/grade/export/ods/grade_export_ods.php');
|
||||
|
||||
if (!$export = new grade_export_ods($course, 0, 0, false, false, $notenart, 2))
|
||||
$moodle28=false;
|
||||
|
||||
try
|
||||
{
|
||||
$method = new ReflectionMethod('grade_export_ods','__construct');
|
||||
|
||||
if(count($method->getParameters())==3)
|
||||
$moodle28=true;
|
||||
}
|
||||
catch(ReflectionException $e)
|
||||
{
|
||||
throw new moodle_exception('Fehler', '', '', null, "Moodle-Kurs ".$id." ".$shortname." - keine Export Information gefunden");
|
||||
return false;
|
||||
}
|
||||
|
||||
if($moodle28)
|
||||
{
|
||||
//ab Moodle 2.8 hat grade_export_ods nur noch 3 Parameter
|
||||
$formdata = new stdClass();
|
||||
$formdata->display=$notenart;
|
||||
$formdata->itemids=0;
|
||||
$formdata->decimals=2;
|
||||
$formdata->export_feedback=false;
|
||||
if (!$export = new grade_export_ods($course, 0, $formdata))
|
||||
{
|
||||
throw new moodle_exception('Fehler', '', '', null, "Moodle-Kurs ".$id." ".$shortname." - keine Export Information gefunden");
|
||||
return false;
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
if (!$export = new grade_export_ods($course, 0, 0, false, false, $notenart, 2))
|
||||
{
|
||||
throw new moodle_exception('Fehler', '', '', null, "Moodle-Kurs ".$id." ".$shortname." - keine Export Information gefunden");
|
||||
return false;
|
||||
}
|
||||
}
|
||||
$grad =$export->columns;
|
||||
|
||||
// Im Export sind die Noten fuer alle Abgaben, Quiz, etc enthalten
|
||||
@@ -120,6 +153,10 @@ class local_fhcompletews_external extends external_api
|
||||
{
|
||||
$gradestr = $export->format_grade($userdata->grades[$final_id]);
|
||||
$user_item['note']=$gradestr;
|
||||
|
||||
// Wenn Prozent dann Prozentzeichen entfernen
|
||||
if(strpos($user_item['note'],'%')!==false)
|
||||
$user_item['note']=trim(str_replace('%','',$user_item['note']));
|
||||
|
||||
// nur zurueckliefern wenn eine Note gefunden wurde und diese nicht '-' ist
|
||||
if($user_item['note']!='-')
|
||||
|
||||
+3
-3
@@ -15,11 +15,11 @@
|
||||
// along with Moodle. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
/**
|
||||
* Web service template plugin related strings
|
||||
* @package localwstemplate
|
||||
* plugin related strings
|
||||
* @package localfhcompletws
|
||||
* @copyright 2011 Moodle Pty Ltd (http://moodle.com)
|
||||
* @author Jerome Mouneyrac
|
||||
* @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
|
||||
*/
|
||||
|
||||
$string['pluginname'] = 'FH Complete Web service Plugin';
|
||||
$string['pluginname'] = 'FH-Complete Webservice Plugin';
|
||||
@@ -12,7 +12,7 @@
|
||||
// You should have received a copy of the GNU General Public License
|
||||
// along with Moodle. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
$plugin->version = 2014061103; // The (date) version of this module + 2 extra digital for daily versions
|
||||
$plugin->version = 2015020404; // The (date) version of this module + 2 extra digital for daily versions
|
||||
// This version number is displayed into /admin/forms.php
|
||||
// TODO: if ever this plugin get branched, the old branch number
|
||||
// will not be updated to the current date but just incremented. We will
|
||||
@@ -20,5 +20,5 @@ $plugin->version = 2014061103; // The (date) version of this module + 2 extra
|
||||
// display this version number with userdate (dev friendly)
|
||||
$plugin->requires = 2013051400; // Requires this Moodle version - at least 2.5
|
||||
$plugin->cron = 0;
|
||||
$plugin->release = '1.1 (Build: 2014061103)';
|
||||
$plugin->release = '1.2 (Build: 2015020404)';
|
||||
$plugin->maturity = MATURITY_STABLE;
|
||||
|
||||
Reference in New Issue
Block a user