mirror of
https://github.com/FH-Complete/FHC-Core.git
synced 2026-07-20 00:12:15 +00:00
Merge remote-tracking branch 'origin/master'
This commit is contained in:
@@ -3,7 +3,8 @@
|
||||
if (!defined('BASEPATH')) exit('No direct script access allowed');
|
||||
|
||||
/**
|
||||
*
|
||||
* This is the super class for all those controllers that can only be called from command line
|
||||
* It provides also an helper to display the possible calls
|
||||
*/
|
||||
abstract class CLI_Controller extends FHC_Controller
|
||||
{
|
||||
@@ -15,9 +16,9 @@ abstract class CLI_Controller extends FHC_Controller
|
||||
/**
|
||||
* Constructor
|
||||
*/
|
||||
public function __construct()
|
||||
public function __construct()
|
||||
{
|
||||
parent::__construct();
|
||||
parent::__construct();
|
||||
|
||||
// Checks if the controller is called from command line
|
||||
$this->_isAllowed();
|
||||
@@ -103,3 +104,4 @@ abstract class CLI_Controller extends FHC_Controller
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -3,26 +3,34 @@
|
||||
if (!defined('BASEPATH')) exit('No direct script access allowed');
|
||||
|
||||
/**
|
||||
*
|
||||
* This is the super class for a job.
|
||||
* All the controllers that extends this class can only be called from command line.
|
||||
* Provides utility methods to log into database
|
||||
*/
|
||||
abstract class JOB_Controller extends CLI_Controller
|
||||
{
|
||||
/**
|
||||
* Constructor
|
||||
*/
|
||||
public function __construct()
|
||||
public function __construct()
|
||||
{
|
||||
parent::__construct();
|
||||
parent::__construct();
|
||||
|
||||
// Loads LogLib with different debug trace levels to get data of the job that extends this class
|
||||
// It also specify parameters to set database fields
|
||||
$this->load->library('LogLib', array(
|
||||
'classIndex' => 5,
|
||||
'functionIndex' => 5,
|
||||
'lineIndex' => 4,
|
||||
'dbLogType' => 'job', // required
|
||||
'dbExecuteUser' => 'Cronjob system'
|
||||
));
|
||||
$this->load->library('LogLib',
|
||||
array(
|
||||
'classIndex' => 5,
|
||||
'functionIndex' => 5,
|
||||
'lineIndex' => 4,
|
||||
'dbLogType' => 'job', // required
|
||||
'dbExecuteUser' => 'Cronjob system',
|
||||
'requestId' => 'JOB',
|
||||
'requestDataFormatter' => function($data) {
|
||||
return json_encode($data);
|
||||
}
|
||||
)
|
||||
);
|
||||
}
|
||||
|
||||
//------------------------------------------------------------------------------------------------------------------
|
||||
@@ -33,7 +41,7 @@ abstract class JOB_Controller extends CLI_Controller
|
||||
*/
|
||||
protected function logInfo($response, $parameters = null)
|
||||
{
|
||||
$this->_log(LogLib::INFO, 'Cronjob info', $response, $parameters);
|
||||
$this->_log(LogLib::INFO, $response, $parameters);
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -41,7 +49,7 @@ abstract class JOB_Controller extends CLI_Controller
|
||||
*/
|
||||
protected function logDebug($response, $parameters = null)
|
||||
{
|
||||
$this->_log(LogLib::DEBUG, 'Cronjob debug', $response, $parameters);
|
||||
$this->_log(LogLib::DEBUG, $response, $parameters);
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -49,7 +57,7 @@ abstract class JOB_Controller extends CLI_Controller
|
||||
*/
|
||||
protected function logWarning($response, $parameters = null)
|
||||
{
|
||||
$this->_log(LogLib::WARNING, 'Cronjob warning', $response, $parameters);
|
||||
$this->_log(LogLib::WARNING, $response, $parameters);
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -57,7 +65,7 @@ abstract class JOB_Controller extends CLI_Controller
|
||||
*/
|
||||
protected function logError($response, $parameters = null)
|
||||
{
|
||||
$this->_log(LogLib::ERROR, 'Cronjob error', $response, $parameters);
|
||||
$this->_log(LogLib::ERROR, $response, $parameters);
|
||||
}
|
||||
|
||||
//------------------------------------------------------------------------------------------------------------------
|
||||
@@ -66,7 +74,7 @@ abstract class JOB_Controller extends CLI_Controller
|
||||
/**
|
||||
* Writes a log to database
|
||||
*/
|
||||
private function _log($level, $requestId, $response, $parameters)
|
||||
private function _log($level, $response, $parameters)
|
||||
{
|
||||
$data = new stdClass();
|
||||
|
||||
@@ -76,17 +84,18 @@ abstract class JOB_Controller extends CLI_Controller
|
||||
switch($level)
|
||||
{
|
||||
case LogLib::INFO:
|
||||
$this->loglib->logInfoDB($requestId, json_encode(success($data, LogLib::INFO)));
|
||||
$this->loglib->logInfoDB($data);
|
||||
break;
|
||||
case LogLib::DEBUG:
|
||||
$this->loglib->logDebugDB($requestId, json_encode(success($data, LogLib::DEBUG)));
|
||||
$this->loglib->logDebugDB($data);
|
||||
break;
|
||||
case LogLib::WARNING:
|
||||
$this->loglib->logWarningDB($requestId, json_encode(error($data, LogLib::WARNING)));
|
||||
$this->loglib->logWarningDB($data);
|
||||
break;
|
||||
case LogLib::ERROR:
|
||||
$this->loglib->logErrorDB($requestId, json_encode(error($data, LogLib::ERROR)));
|
||||
$this->loglib->logErrorDB($data);
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -5,9 +5,10 @@ if (!defined("BASEPATH")) exit("No direct script access allowed");
|
||||
/**
|
||||
* Job Queue Worker
|
||||
*
|
||||
* This controller acts as interface of the JobsQueueLib that contains all the needed functionalities to operate with
|
||||
* the Jobs Queue System
|
||||
* This is an abstract class that provide basic functionalities, it has to be extended to broaden its logic
|
||||
* This controller acts as interface of the JobsQueueLib that contains
|
||||
* all the needed functionalities to operate with the Jobs Queue System
|
||||
* This is an abstract class that provide basic functionalities,
|
||||
* it has to be extended to broaden its logic
|
||||
*/
|
||||
abstract class JQW_Controller extends JOB_Controller
|
||||
{
|
||||
@@ -18,14 +19,13 @@ abstract class JQW_Controller extends JOB_Controller
|
||||
{
|
||||
parent::__construct();
|
||||
|
||||
// Loads LogLib with different parameters
|
||||
$this->load->library('LogLib', array(
|
||||
'classIndex' => 5,
|
||||
'functionIndex' => 5,
|
||||
'lineIndex' => 4,
|
||||
'dbLogType' => 'job', // required
|
||||
'dbExecuteUser' => 'Jobs queue system'
|
||||
));
|
||||
// Changes the needed configs for LogLib
|
||||
$this->loglib->setConfigs(
|
||||
array(
|
||||
'dbExecuteUser' => 'Jobs queue system',
|
||||
'requestId' => 'JQW'
|
||||
)
|
||||
);
|
||||
|
||||
// Loads JobsQueueLib library
|
||||
$this->load->library('JobsQueueLib');
|
||||
|
||||
@@ -93,6 +93,7 @@ class FilterWidgetLib
|
||||
const OP_NOT_SET = 'nset';
|
||||
|
||||
// Filter options values
|
||||
const OPT_MINUTES = 'minutes';
|
||||
const OPT_HOURS = 'hours';
|
||||
const OPT_DAYS = 'days';
|
||||
const OPT_MONTHS = 'months';
|
||||
@@ -887,7 +888,8 @@ class FilterWidgetLib
|
||||
&& isset($filterDefinition->option)
|
||||
&& ($filterDefinition->option == self::OPT_HOURS
|
||||
|| $filterDefinition->option == self::OPT_DAYS
|
||||
|| $filterDefinition->option == self::OPT_MONTHS))
|
||||
|| $filterDefinition->option == self::OPT_MONTHS
|
||||
|| $filterDefinition->option == self::OPT_MINUTES))
|
||||
{
|
||||
$condition = '< (NOW() - \''.$filterDefinition->condition.' '.$filterDefinition->option.'\'::interval)';
|
||||
}
|
||||
@@ -903,7 +905,8 @@ class FilterWidgetLib
|
||||
&& isset($filterDefinition->option)
|
||||
&& ($filterDefinition->option == self::OPT_HOURS
|
||||
|| $filterDefinition->option == self::OPT_DAYS
|
||||
|| $filterDefinition->option == self::OPT_MONTHS))
|
||||
|| $filterDefinition->option == self::OPT_MONTHS
|
||||
|| $filterDefinition->option == self::OPT_MINUTES))
|
||||
{
|
||||
$condition = '> (NOW() - \''.$filterDefinition->condition.' '.$filterDefinition->option.'\'::interval)';
|
||||
}
|
||||
|
||||
@@ -42,6 +42,8 @@ class LogLib
|
||||
const P_NAME_LINE_INDEX = 'lineIndex';
|
||||
const P_NAME_DB_LOG_TYPE = 'dbLogType';
|
||||
const P_NAME_DB_EXECUTE_USER = 'dbExecuteUser';
|
||||
const P_NAME_REQUEST_ID = 'requestId';
|
||||
const P_NAME_REQUEST_DATA_FORMATTER = 'requestDataFormatter';
|
||||
|
||||
// Properties used to retrieve caller data
|
||||
private $_classIndex;
|
||||
@@ -52,6 +54,9 @@ class LogLib
|
||||
private $_dbLogType;
|
||||
private $_dbExecuteUser;
|
||||
|
||||
private $_requestId; // is it possible to specify a request id when loading this library
|
||||
private $_requestDataFormatter; // is possible to provide a function to format request data
|
||||
|
||||
/**
|
||||
* Set properties to a default value or overwrites them with the given parameters
|
||||
*/
|
||||
@@ -63,7 +68,18 @@ class LogLib
|
||||
$this->_lineIndex = self::LINE_INDEX;
|
||||
$this->_dbLogType = null;
|
||||
$this->_dbExecuteUser = self::DB_EXECUTE_USER;
|
||||
$this->_requestId = null;
|
||||
$this->_requestDataFormatter = null;
|
||||
|
||||
// If parameters are given then overwrite the default values
|
||||
if (!isEmptyArray($params)) $this->setConfigs($params);
|
||||
}
|
||||
|
||||
/**
|
||||
* Store configuration parameters for this lib
|
||||
*/
|
||||
public function setConfigs($params)
|
||||
{
|
||||
// If parameters are given then overwrite the default values
|
||||
if (!isEmptyArray($params))
|
||||
{
|
||||
@@ -72,6 +88,8 @@ class LogLib
|
||||
if (isset($params[self::P_NAME_LINE_INDEX])) $this->_lineIndex = $params[self::P_NAME_LINE_INDEX];
|
||||
if (isset($params[self::P_NAME_DB_LOG_TYPE])) $this->_dbLogType = $params[self::P_NAME_DB_LOG_TYPE];
|
||||
if (isset($params[self::P_NAME_DB_EXECUTE_USER])) $this->_dbExecuteUser = $params[self::P_NAME_DB_EXECUTE_USER];
|
||||
if (isset($params[self::P_NAME_REQUEST_ID])) $this->_requestId = $params[self::P_NAME_REQUEST_ID];
|
||||
if (isset($params[self::P_NAME_REQUEST_DATA_FORMATTER])) $this->_requestDataFormatter = $params[self::P_NAME_REQUEST_DATA_FORMATTER];
|
||||
}
|
||||
}
|
||||
|
||||
@@ -108,33 +126,33 @@ class LogLib
|
||||
/**
|
||||
* Writes an info log to database
|
||||
*/
|
||||
public function logInfoDB($requestId, $data)
|
||||
public function logInfoDB($data, $requestId = null)
|
||||
{
|
||||
$this->_logDB(self::INFO, $requestId, $data);
|
||||
$this->_logDB(self::INFO, $data, $requestId);
|
||||
}
|
||||
|
||||
/**
|
||||
* Writes a debug log to database
|
||||
*/
|
||||
public function logDebugDB($requestId, $data)
|
||||
public function logDebugDB($data, $requestId = null)
|
||||
{
|
||||
$this->_logDB(self::DEBUG, $requestId, $data);
|
||||
$this->_logDB(self::DEBUG, $data, $requestId);
|
||||
}
|
||||
|
||||
/**
|
||||
* Writes an warning log to database
|
||||
*/
|
||||
public function logWarningDB($requestId, $data)
|
||||
public function logWarningDB($data, $requestId = null)
|
||||
{
|
||||
$this->_logDB(self::WARNING, $requestId, $data);
|
||||
$this->_logDB(self::WARNING, $data, $requestId);
|
||||
}
|
||||
|
||||
/**
|
||||
* Writes an error log to database
|
||||
*/
|
||||
public function logErrorDB($requestId, $data)
|
||||
public function logErrorDB($data, $requestId = null)
|
||||
{
|
||||
$this->_logDB(self::ERROR, $requestId, $data);
|
||||
$this->_logDB(self::ERROR, $data, $requestId);
|
||||
}
|
||||
|
||||
// --------------------------------------------------------------------------------------------------------------
|
||||
@@ -151,8 +169,15 @@ class LogLib
|
||||
/**
|
||||
* Writes logs to database
|
||||
*/
|
||||
private function _logDB($level, $requestId, $data)
|
||||
private function _logDB($level, $data, $requestId, $executionTime = null)
|
||||
{
|
||||
// If there isn't a valid request id provided during the loading of this library or when any log to db method is called
|
||||
// NOTE: this message will be displayed only to the developer AND stops the execution
|
||||
if (isEmptyString($this->_requestId) && isEmptyString($requestId))
|
||||
{
|
||||
show_error('To log to database you need to specify or give the "'.self::P_NAME_REQUEST_ID.'" parameter when the LogLib is loaded or when log'.ucfirst($level).'DB is called');
|
||||
}
|
||||
|
||||
// If the _dbLogType parameter was not given when this library was loaded
|
||||
// NOTE: this message will be displayed only to the developer AND stops the execution
|
||||
if ($this->_dbLogType == null)
|
||||
@@ -175,14 +200,21 @@ class LogLib
|
||||
// Get caller data
|
||||
$callerData = $this->_getCaller();
|
||||
|
||||
// If a request data formatter was defined then use it
|
||||
$request_data = $data;
|
||||
if ($this->_requestDataFormatter != null && is_callable($this->_requestDataFormatter))
|
||||
{
|
||||
$request_data = call_user_func_array($this->_requestDataFormatter, array($data));
|
||||
}
|
||||
|
||||
// Writes a log to database
|
||||
$ci->WebservicelogModel->insert(array(
|
||||
'webservicetyp_kurzbz' => $this->_dbLogType,
|
||||
'request_id' => $requestId,
|
||||
'request_id' => (!isEmptyString($requestId) ? $requestId : $this->_requestId).' - '.$level,
|
||||
'beschreibung' => $this->_getDatabaseDescription($callerData),
|
||||
'request_data' => $data,
|
||||
'request_data' => $request_data,
|
||||
'execute_user' => $this->_dbExecuteUser,
|
||||
'execute_time' => 'NOW()' // current time
|
||||
'execute_time' => $executionTime == null ? 'NOW()' : $executionTime // default current time, if not otherwise specified
|
||||
));
|
||||
}
|
||||
}
|
||||
@@ -251,3 +283,4 @@ class LogLib
|
||||
return $formatted;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -48,17 +48,20 @@ class Konto_model extends DB_Model
|
||||
'studiengang_kz' => $buchung->studiengang_kz,
|
||||
'studiensemester_kurzbz' => $buchung->studiensemester_kurzbz,
|
||||
'buchungsnr_verweis' => $buchungsnr,
|
||||
'betrag' => $betragOffen*(-1),
|
||||
'betrag' => str_replace(',','.',$betragOffen*(-1)),
|
||||
'buchungsdatum' => date('Y-m-d'),
|
||||
'buchungstext' => $buchung->buchungstext,
|
||||
'insertamum' => date('Y-m-d H:i:s'),
|
||||
'insertvon' => '',
|
||||
'buchungstyp_kurzbz' => $buchung->buchungstyp_kurzbz,
|
||||
);
|
||||
|
||||
return $this->insert($data);
|
||||
}
|
||||
else
|
||||
{
|
||||
return error('Failed to load Payment');
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
|
||||
@@ -25,7 +25,7 @@
|
||||
),
|
||||
'formatRow' => function($datasetRaw) {
|
||||
|
||||
$datasetRaw->ExecutionTime = date_format(date_create($datasetRaw->ExecutionTime), 'd.m.Y H:i:s');
|
||||
$datasetRaw->ExecutionTime = date_format(date_create($datasetRaw->ExecutionTime), 'd.m.Y H:i:s:u');
|
||||
|
||||
return $datasetRaw;
|
||||
},
|
||||
@@ -33,22 +33,22 @@
|
||||
|
||||
$mark = '';
|
||||
|
||||
if ($datasetRaw->RequestId == 'Cronjob error')
|
||||
if (strpos($datasetRaw->RequestId, 'error') != false)
|
||||
{
|
||||
$mark = 'text-red';
|
||||
}
|
||||
|
||||
if ($datasetRaw->RequestId == 'Cronjob info')
|
||||
if (strpos($datasetRaw->RequestId, 'info') != false)
|
||||
{
|
||||
$mark = 'text-green';
|
||||
}
|
||||
|
||||
if ($datasetRaw->RequestId == 'Cronjob warning')
|
||||
if (strpos($datasetRaw->RequestId, 'warning') != false)
|
||||
{
|
||||
$mark = 'text-orange';
|
||||
}
|
||||
|
||||
if ($datasetRaw->RequestId == 'Cronjob debug')
|
||||
if (strpos($datasetRaw->RequestId, 'debug') != false)
|
||||
{
|
||||
$mark = 'text-info';
|
||||
}
|
||||
@@ -63,3 +63,4 @@
|
||||
|
||||
echo $this->widgetlib->widget('FilterWidget', $filterWidgetArray);
|
||||
?>
|
||||
|
||||
|
||||
@@ -31,7 +31,10 @@ class Organisationseinheit_widget extends DropdownWidget
|
||||
{
|
||||
// NOTE: no need to call addSelectToModel because getRecursiveList already returns
|
||||
// the correct names of the fields
|
||||
$this->setElementsArray($this->OrganisationseinheitModel->getRecursiveList());
|
||||
$this->setElementsArray($this->OrganisationseinheitModel->getRecursiveList(),
|
||||
true,
|
||||
$this->p->t('lehre', 'organisationseinheit'),
|
||||
'No organisational unit found');
|
||||
}
|
||||
|
||||
$this->loadDropDownView($widgetData);
|
||||
|
||||
@@ -156,7 +156,7 @@ function getPruefungByLv($aktStudiensemester = null, $uid = null)
|
||||
}
|
||||
$lehrveranstaltungen=$lvIds;
|
||||
$pruefung = new pruefungCis();
|
||||
if($pruefung->getPruefungByLv($lehrveranstaltungen))
|
||||
if($pruefung->getPruefungByLv($lehrveranstaltungen, $uid))
|
||||
{
|
||||
$pruefungen = array();
|
||||
foreach($pruefung->lehrveranstaltungen as $key=>$lv)
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
<?php
|
||||
$url = "http://xgnd.bsz-bw.de/";
|
||||
$url = "https://xgnd.bsz-bw.de/";
|
||||
$zielfeld = "kontrollschlagwoerter";
|
||||
$url = $url."?zielfeld=".$zielfeld;
|
||||
header('Content-Type: text/html; charset=utf-8');
|
||||
|
||||
@@ -38,6 +38,7 @@ require_once('../../include/student.class.php');
|
||||
require_once('../../include/prestudent.class.php');
|
||||
require_once('../../include/dokument_export.class.php');
|
||||
require_once('../../include/person.class.php');
|
||||
require_once('../../include/webservicelog.class.php');
|
||||
|
||||
if (!$db = new basis_db())
|
||||
die('Fehler beim Oeffnen der Datenbankverbindung');
|
||||
@@ -139,6 +140,21 @@ if (isset($_GET['all']))
|
||||
if (isset($_GET['xsl_oe_kurzbz']))
|
||||
$params .= '&xsl_oe_kurzbz='. $_GET['xsl_oe_kurzbz'];
|
||||
|
||||
// Logeintrag bei Download von Zahlungsbestaetigungen
|
||||
if (isset($_GET['xsl']) && $_GET['xsl'] == 'Zahlung')
|
||||
{
|
||||
$requestdata = $_SERVER['QUERY_STRING'];
|
||||
|
||||
$log = new Webservicelog();
|
||||
$log->webservicetyp_kurzbz = 'content';
|
||||
$log->request_id = isset($_GET['buchungsnummern']) && !empty($_GET['buchungsnummern']) ? $_GET['buchungsnummern'] : NULL;
|
||||
$log->beschreibung = 'Zahlungsbestaetigungsdownload';
|
||||
$log->request_data = $requestdata;
|
||||
$log->execute_user = $user;
|
||||
|
||||
$log->save(true);
|
||||
}
|
||||
|
||||
//OE fuer Output ermitteln
|
||||
|
||||
if ($xsl_oe_kurzbz != '')
|
||||
|
||||
@@ -217,12 +217,20 @@ echo ' <script type="text/javascript" src="../../../vendor/components/jqueryui
|
||||
foreach ($konto->result as $row)
|
||||
{
|
||||
$i=0; //Zaehler fuer Anzahl Gegenbuchungen
|
||||
$count_studiengangszahlung = 0;
|
||||
$buchungsnummern='';
|
||||
|
||||
// Für die FHTW sollen nur Zahlungsbestaetigungen von FHTW-Studien angezeigt werden. (Nicht von Lehrgaengen)
|
||||
if (defined('ZAHLUNGSBESTAETIGUNG_ANZEIGEN_FUER_LEHRGAENGE') && !ZAHLUNGSBESTAETIGUNG_ANZEIGEN_FUER_LEHRGAENGE)
|
||||
{
|
||||
$is_lehrgang = $row['parent']->studiengang_kz < 0 ? true : false;
|
||||
if ($is_lehrgang) continue;
|
||||
}
|
||||
|
||||
if(!isset($row['parent']))
|
||||
continue;
|
||||
$betrag = $row['parent']->betrag;
|
||||
|
||||
$count_studiengangszahlung ++;
|
||||
|
||||
if(isset($row['childs']))
|
||||
{
|
||||
@@ -230,7 +238,8 @@ echo ' <script type="text/javascript" src="../../../vendor/components/jqueryui
|
||||
{
|
||||
$betrag += $row_child->betrag;
|
||||
$betrag = round($betrag, 2);
|
||||
$buchungsnummern .= ';'.$row['childs'][$key]->buchungsnr;
|
||||
$buchungsnummern = !empty($buchungsnummern) ? ';' : '';
|
||||
$buchungsnummern .= $row['childs'][$key]->buchungsnr;
|
||||
$i = $key; //Zaehler auf letzten Gegenbuchungseintrag setzen
|
||||
}
|
||||
}
|
||||
@@ -271,6 +280,13 @@ echo ' <script type="text/javascript" src="../../../vendor/components/jqueryui
|
||||
}
|
||||
echo '</tr>';
|
||||
}
|
||||
|
||||
// Wenn die Tabelle keine Eintraege hat, wird eine Tabellenzeile mit entsprechender Information angezeigt.
|
||||
if ($count_studiengangszahlung == 0)
|
||||
{
|
||||
echo "<tr><td colspan='7' style='background-color: white;'>" .$p->t('tools/keineZahlungenVorhanden'). "</td></tr>";
|
||||
}
|
||||
|
||||
echo '</tbody></table>';
|
||||
}
|
||||
else
|
||||
|
||||
@@ -15,9 +15,10 @@
|
||||
* along with this program; if not, write to the Free Software
|
||||
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA.
|
||||
*
|
||||
* Authors: Martin Tatzber <tatzberm@technikum-wien.at>,
|
||||
* Authors: Martin Tatzber <tatzberm@technikum-wien.at>,
|
||||
*/
|
||||
require_once('../../../config/cis.config.inc.php');
|
||||
require_once('../../../config/global.config.inc.php');
|
||||
require_once('../../../include/functions.inc.php');
|
||||
require_once('../../../include/konto.class.php');
|
||||
require_once('../../../include/bankverbindung.class.php');
|
||||
@@ -28,7 +29,7 @@ require_once('../../../include/benutzer.class.php');
|
||||
require_once('../../../include/benutzerberechtigung.class.php');
|
||||
require_once('../../../include/student.class.php');
|
||||
require_once('../../../include/prestudent.class.php');
|
||||
|
||||
|
||||
$uid = get_uid();
|
||||
|
||||
if(isset($_GET['uid']))
|
||||
@@ -48,7 +49,7 @@ if(isset($_GET['uid']))
|
||||
}
|
||||
else
|
||||
$getParam='';
|
||||
|
||||
|
||||
$benutzer = new benutzer();
|
||||
if(!$benutzer->load($uid))
|
||||
die('Benutzer nicht gefunden');
|
||||
@@ -88,7 +89,7 @@ $oe=new organisationseinheit();
|
||||
$oe->load($studiengang->oe_kurzbz);
|
||||
|
||||
$konto->getBuchungstyp();
|
||||
$buchungstyp = array();
|
||||
$buchungstyp = array();
|
||||
foreach ($konto->result as $row)
|
||||
$buchungstyp[$row->buchungstyp_kurzbz]=$row->beschreibung;
|
||||
|
||||
@@ -153,7 +154,13 @@ if($bic!='')
|
||||
<td>'.$bic.'</td>
|
||||
</tr>';
|
||||
}
|
||||
if($konto->zahlungsreferenz!='')
|
||||
if ($konto->zahlungsreferenz != ''
|
||||
&&
|
||||
(
|
||||
!defined('ZAHLUNGSBESTAETIGUNG_ZAHLUNGSREFERENZ_ANZEIGEN')
|
||||
|| ZAHLUNGSBESTAETIGUNG_ZAHLUNGSREFERENZ_ANZEIGEN == true
|
||||
)
|
||||
)
|
||||
{
|
||||
echo '
|
||||
<tr>
|
||||
@@ -189,7 +196,7 @@ foreach($addon->result as $a)
|
||||
</tbody>
|
||||
</table>';
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
|
||||
echo '</body></html>';
|
||||
|
||||
@@ -518,7 +518,7 @@ if(count($zeit->result)>0)
|
||||
$row_vertretung = $db->db_fetch_object($result_vertretung);
|
||||
$content_table.= "<tr class='liste".($i%2)."'>
|
||||
<td>$row->bezeichnung</td>
|
||||
<td>$row->zeitsperretyp_kurzbz</td>
|
||||
<td>$row->zeitsperretyp_beschreibung</td>
|
||||
<td nowrap>".$datum_obj->convertISODate($row->vondatum)." ".($row->vonstunde!=''?'('.$row->vonstunde.')':'')."</td>
|
||||
<td nowrap>".$datum_obj->convertISODate($row->bisdatum)." ".($row->bisstunde!=''?'('.$row->bisstunde.')':'')."</td>
|
||||
<td>".(isset($row_vertretung->kurzbz)?$row_vertretung->kurzbz:'')."</td>
|
||||
@@ -587,15 +587,15 @@ $content_form.= '<form method="POST" name="zeitsperre_form" action="'.$action.'"
|
||||
$content_form.= "<table>\n";
|
||||
$content_form.= '<tr><td style="width:150px">'.$p->t('zeitsperre/grund').'</td><td colspan="2" style="width:450px"><SELECT name="zeitsperretyp_kurzbz"'.$style.' onchange="showHideBezeichnungDropDown()" class="dd_breit">';
|
||||
//dropdown fuer zeitsperretyp
|
||||
$qry = "SELECT * FROM campus.tbl_zeitsperretyp ORDER BY zeitsperretyp_kurzbz";
|
||||
$qry = "SELECT * FROM campus.tbl_zeitsperretyp ORDER BY beschreibung";
|
||||
if($result = $db->db_query($qry))
|
||||
{
|
||||
while($row=$db->db_fetch_object($result))
|
||||
{
|
||||
if($zeitsperre->zeitsperretyp_kurzbz == $row->zeitsperretyp_kurzbz)
|
||||
$content_form.= "<OPTION value='$row->zeitsperretyp_kurzbz' selected>$row->zeitsperretyp_kurzbz - $row->beschreibung</OPTION>";
|
||||
$content_form.= "<OPTION value='$row->zeitsperretyp_kurzbz' selected>$row->beschreibung</OPTION>";
|
||||
else
|
||||
$content_form.= "<OPTION value='$row->zeitsperretyp_kurzbz'$disabled>$row->zeitsperretyp_kurzbz - $row->beschreibung</OPTION>";
|
||||
$content_form.= "<OPTION value='$row->zeitsperretyp_kurzbz'$disabled>$row->beschreibung</OPTION>";
|
||||
}
|
||||
}
|
||||
$content_form.= '</SELECT></td></tr>';
|
||||
|
||||
@@ -300,4 +300,10 @@ define('BUCHUNGEN_CHECK_SAP', true);
|
||||
|
||||
// Gibt an, ob im FAS die Zahlungsbestaetigungen zum Download / im CIS generell die Zahlungen angezeigt werden
|
||||
define ('ZAHLUNGSBESTAETIGUNG_ANZEIGEN', true);
|
||||
|
||||
// Gibt an, ob im CIS die Zahlungsbestaetigungen fuer Lehrgaenge zum Download angezeigt werden
|
||||
define ('ZAHLUNGSBESTAETIGUNG_ANZEIGEN_FUER_LEHRGAENGE', true);
|
||||
|
||||
// Gibt an, ob im CIS die Zahlungsreferenz angezeigt wird
|
||||
define ('ZAHLUNGSBESTAETIGUNG_ZAHLUNGSREFERENZ_ANZEIGEN', false);
|
||||
?>
|
||||
|
||||
@@ -280,6 +280,51 @@ function NotePruefungAnlegen($studiensemester_kurzbz, $student_uid, $lehrveranst
|
||||
}
|
||||
}
|
||||
|
||||
function deleteFromSAP($buchung)
|
||||
{
|
||||
global $db, $user;
|
||||
|
||||
if(defined('BUCHUNGEN_CHECK_SAP') && BUCHUNGEN_CHECK_SAP == true)
|
||||
{
|
||||
$qry = "SELECT * FROM sync.tbl_sap_salesorder WHERE buchungsnr=".$db->db_add_param($buchung->buchungsnr);
|
||||
if($result = $db->db_query($qry))
|
||||
{
|
||||
if($row = $db->db_fetch_object($result))
|
||||
{
|
||||
$qry = "DELETE FROM sync.tbl_sap_salesorder WHERE buchungsnr=".$db->db_add_param($buchung->buchungsnr);
|
||||
if($db->db_query($qry))
|
||||
{
|
||||
$log = new log();
|
||||
$log->mitarbeiter_uid = $user;
|
||||
$log->beschreibung = 'Buchungszuordnung SAP geloescht: SalesOrder:'.$row->sap_sales_order_id;
|
||||
$log->sql = $qry;
|
||||
if(!$log->save(true))
|
||||
{
|
||||
echo "Fehler beim Schreiben des Log".$log->errormsg;
|
||||
return false;
|
||||
}
|
||||
return true;
|
||||
}
|
||||
else
|
||||
{
|
||||
echo "Fehler beim Löschen der Zahlungszuordnung";
|
||||
return false;
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
//Gegenbuchung
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
echo "Zahlung nicht gefunden";
|
||||
return false;
|
||||
}
|
||||
}
|
||||
return true;
|
||||
}
|
||||
|
||||
/**
|
||||
* Prueft ob die Kontobuchung bereits ins SAP Ubertragen wurde oder noch geändert werden darf
|
||||
*/
|
||||
@@ -1981,7 +2026,8 @@ if(!$error)
|
||||
}
|
||||
else
|
||||
{
|
||||
if(isBuchungAllowedToChange($buchung))
|
||||
if(isBuchungAllowedToChange($buchung)
|
||||
|| $rechte->isBerechtigt('student/zahlungAdmin',$buchung->studiengang_kz,'suid'))
|
||||
{
|
||||
$buchung->betrag = $_POST['betrag'];
|
||||
$buchung->buchungsdatum = $_POST['buchungsdatum'];
|
||||
@@ -2062,7 +2108,8 @@ if(!$error)
|
||||
{
|
||||
if($buchung->buchungsnr_verweis=='')
|
||||
{
|
||||
if(isBuchungAllowedToChange($buchung))
|
||||
if(isBuchungAllowedToChange($buchung)
|
||||
|| $rechte->isBerechtigt('student/zahlungAdmin',$buchung->studiengang_kz,'suid'))
|
||||
{
|
||||
$kto = new konto();
|
||||
//$buchung->betrag*(-1);
|
||||
@@ -2139,8 +2186,17 @@ if(!$error)
|
||||
}
|
||||
else
|
||||
{
|
||||
if(isBuchungAllowedToChange($buchung))
|
||||
$isAllowedToChange = isBuchungAllowedToChange($buchung);
|
||||
if($isAllowedToChange
|
||||
|| $rechte->isBerechtigt('student/zahlungAdmin',$buchung->studiengang_kz,'suid')
|
||||
)
|
||||
{
|
||||
if(!$isAllowedToChange)
|
||||
{
|
||||
// Buchung aus SAP Zwischentabelle loeschen
|
||||
deleteFromSAP($buchung);
|
||||
}
|
||||
|
||||
if($buchung->delete($_POST['buchungsnr']))
|
||||
{
|
||||
$return = true;
|
||||
|
||||
@@ -368,6 +368,47 @@ class betriebsmittel_betriebsmittelstatus extends basis_db
|
||||
$this->errormsg = 'Fehler beim Entfernen des Betriebsmittel Betriebsmittelstatus-Datensatzes';
|
||||
return false;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Laedt den letzten Stauts eines Betriebsmittels
|
||||
* @param $betriebsmittel_id
|
||||
* @return betriebsmittelstatus_kurzbz wenn ok, false im Fehlerfall
|
||||
*/
|
||||
public function load_last_status_by_betriebsmittel_id($betriebsmittel_id)
|
||||
{
|
||||
$this->result=array();
|
||||
$this->errormsg='';
|
||||
if ($betriebsmittel_id)
|
||||
$this->betriebsmittel_id=$betriebsmittel_id;
|
||||
|
||||
if(!is_numeric($this->betriebsmittel_id))
|
||||
{
|
||||
$this->errormsg = 'Betriebsmittel_id ist ungueltig';
|
||||
return false;
|
||||
}
|
||||
|
||||
$qry=' SELECT * FROM wawi.tbl_betriebsmittel_betriebsmittelstatus
|
||||
WHERE betriebsmittel_id='.$this->db_add_param(trim($this->betriebsmittel_id), FHC_INTEGER).'
|
||||
ORDER BY betriebsmittelbetriebsmittelstatus_id DESC LIMIT 1';
|
||||
|
||||
if($this->db_query($qry))
|
||||
{
|
||||
if($row = $this->db_fetch_object())
|
||||
{
|
||||
return $row->betriebsmittelstatus_kurzbz;
|
||||
}
|
||||
else
|
||||
{
|
||||
$this->errormsg='Es wurde kein Eintrag gefunden';
|
||||
return false;
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
$this->errormsg = 'Fehler beim Laden der Daten';
|
||||
return false;
|
||||
}
|
||||
}
|
||||
}
|
||||
?>
|
||||
|
||||
@@ -188,6 +188,7 @@ class dvb extends basis_db
|
||||
AND tbl_benutzer.aktiv
|
||||
AND tbl_prestudentstatus.status_kurzbz in('Student','Incoming')
|
||||
AND tbl_prestudent.bismelden
|
||||
AND tbl_prestudent.studiengang_kz<10000
|
||||
ORDER BY tbl_prestudentstatus.datum desc LIMIT 1
|
||||
";
|
||||
|
||||
|
||||
@@ -590,7 +590,7 @@ class pruefungCis extends basis_db
|
||||
* @param String|Array $lehrveranstaltung_IDs einzelne ID einer Lehrveranstaltung oder ein Array von IDs
|
||||
* @return boolean true, wenn ok; false, im Fehlerfall
|
||||
*/
|
||||
public function getPruefungByLv($lehrveranstaltung_IDs)
|
||||
public function getPruefungByLv($lehrveranstaltung_IDs, $uid = null)
|
||||
{
|
||||
if(empty($lehrveranstaltung_IDs))
|
||||
{
|
||||
@@ -612,7 +612,24 @@ class pruefungCis extends basis_db
|
||||
$in = $lehrveranstaltung_IDs;
|
||||
}
|
||||
|
||||
$qry = 'SELECT * FROM campus.tbl_lehrveranstaltung_pruefung WHERE lehrveranstaltung_id IN ('.$in.');';
|
||||
$qry = 'SELECT * FROM campus.tbl_lehrveranstaltung_pruefung WHERE lehrveranstaltung_id IN ('.$in.')';
|
||||
|
||||
if ($uid !== null)
|
||||
{
|
||||
// LVs entfernen wo schon eine positive Note für UID vorhanden ist
|
||||
$qry .= " AND lehrveranstaltung_id NOT IN (
|
||||
SELECT lehrveranstaltung_id
|
||||
FROM lehre.tbl_pruefung
|
||||
JOIN lehre.tbl_lehreinheit USING(lehreinheit_id)
|
||||
WHERE student_uid = " . $this->db_add_param($uid) . "
|
||||
AND note NOT IN (5, 7, 9, 11, 13, 14)
|
||||
UNION
|
||||
SELECT lehrveranstaltung_id
|
||||
FROM lehre.tbl_zeugnisnote
|
||||
WHERE student_uid = " . $this->db_add_param($uid) . "
|
||||
AND note NOT IN (5, 7, 9, 11, 13, 14)
|
||||
);";
|
||||
}
|
||||
|
||||
if($this->db_query($qry))
|
||||
{
|
||||
|
||||
@@ -824,6 +824,8 @@ var FHC_FilterWidget = {
|
||||
html += "</span>";
|
||||
html += "<span>";
|
||||
html += " <select class='" + classOption + "' " + disabled + ">";
|
||||
html += " <option value='minutes' " + (appliedFilter.option == "minutes" ? "selected" : "") + ">Minutes</option>";
|
||||
html += " <option value='hours' " + (appliedFilter.option == "hours" ? "selected" : "") + ">Hours</option>";
|
||||
html += " <option value='days' " + (appliedFilter.option == "days" ? "selected" : "") + ">Days</option>";
|
||||
html += " <option value='months' " + (appliedFilter.option == "months" ? "selected" : "") + ">Months</option>";
|
||||
html += " </select>";
|
||||
|
||||
@@ -195,6 +195,7 @@ $berechtigungen = array(
|
||||
array('student/noten','Notenverwaltung'),
|
||||
array('student/stammdaten','Stammdaten der Studenten'),
|
||||
array('student/vorrueckung','Studentenvorrückung'),
|
||||
array('student/zahlungAdmin','Zahlungsadministration'),
|
||||
array('system/developer','Anzeige zusätzlicher Developerinfos'),
|
||||
array('system/loginasuser','Berechtigung zum Einloggen als anderer User'),
|
||||
array('system/phrase','Bearbeiten von Textphrasen'),
|
||||
|
||||
+141
-19
@@ -438,13 +438,13 @@ $filters = array(
|
||||
array(
|
||||
'app' => 'core',
|
||||
'dataset_name' => 'logs',
|
||||
'filter_kurzbz' => 'last7days',
|
||||
'description' => '{Last 7 days logs}',
|
||||
'filter_kurzbz' => 'last1min',
|
||||
'description' => '{Last minute logs}',
|
||||
'sort' => 1,
|
||||
'default_filter' => true,
|
||||
'filter' => '
|
||||
{
|
||||
"name": "All logs from the last 7 days",
|
||||
"name": "All logs from the last minute",
|
||||
"columns": [
|
||||
{"name": "RequestId"},
|
||||
{"name": "ExecutionTime"},
|
||||
@@ -456,8 +456,8 @@ $filters = array(
|
||||
{
|
||||
"name": "ExecutionTime",
|
||||
"operation": "lt",
|
||||
"condition": "7",
|
||||
"option": "days"
|
||||
"condition": "1",
|
||||
"option": "minutes"
|
||||
}
|
||||
]
|
||||
}
|
||||
@@ -467,13 +467,13 @@ $filters = array(
|
||||
array(
|
||||
'app' => 'core',
|
||||
'dataset_name' => 'logs',
|
||||
'filter_kurzbz' => 'jobs14days',
|
||||
'description' => '{Last 14 days jobs logs}',
|
||||
'filter_kurzbz' => 'jobs24hours',
|
||||
'description' => '{Last 24 hours jobs logs}',
|
||||
'sort' => 2,
|
||||
'default_filter' => false,
|
||||
'filter' => '
|
||||
{
|
||||
"name": "All jobs logs from the last 14 days",
|
||||
"name": "All jobs logs from the last 24 hours",
|
||||
"columns": [
|
||||
{"name": "RequestId"},
|
||||
{"name": "ExecutionTime"},
|
||||
@@ -487,11 +487,133 @@ $filters = array(
|
||||
"operation": "contains",
|
||||
"condition": "job"
|
||||
},
|
||||
{
|
||||
"name": "RequestId",
|
||||
"operation": "contains",
|
||||
"condition": "JOB"
|
||||
},
|
||||
{
|
||||
"name": "ExecutionTime",
|
||||
"operation": "lt",
|
||||
"condition": "14",
|
||||
"option": "days"
|
||||
"condition": "24",
|
||||
"option": "hours"
|
||||
}
|
||||
]
|
||||
}
|
||||
',
|
||||
'oe_kurzbz' => null,
|
||||
),
|
||||
array(
|
||||
'app' => 'core',
|
||||
'dataset_name' => 'logs',
|
||||
'filter_kurzbz' => 'jobs48hours',
|
||||
'description' => '{Last 48 hours jobs logs}',
|
||||
'sort' => 2,
|
||||
'default_filter' => false,
|
||||
'filter' => '
|
||||
{
|
||||
"name": "All jobs logs from the last 48 hours",
|
||||
"columns": [
|
||||
{"name": "RequestId"},
|
||||
{"name": "ExecutionTime"},
|
||||
{"name": "ExecutedBy"},
|
||||
{"name": "Description"},
|
||||
{"name": "Data"}
|
||||
],
|
||||
"filters": [
|
||||
{
|
||||
"name": "WebserviceType",
|
||||
"operation": "contains",
|
||||
"condition": "job"
|
||||
},
|
||||
{
|
||||
"name": "RequestId",
|
||||
"operation": "contains",
|
||||
"condition": "JOB"
|
||||
},
|
||||
{
|
||||
"name": "ExecutionTime",
|
||||
"operation": "lt",
|
||||
"condition": "48",
|
||||
"option": "hours"
|
||||
}
|
||||
]
|
||||
}
|
||||
',
|
||||
'oe_kurzbz' => null,
|
||||
),
|
||||
array(
|
||||
'app' => 'core',
|
||||
'dataset_name' => 'logs',
|
||||
'filter_kurzbz' => 'jqws24hours',
|
||||
'description' => '{Last 24 hours JQWs logs}',
|
||||
'sort' => 2,
|
||||
'default_filter' => false,
|
||||
'filter' => '
|
||||
{
|
||||
"name": "All Job Queue Workers logs from the last 24 hours",
|
||||
"columns": [
|
||||
{"name": "RequestId"},
|
||||
{"name": "ExecutionTime"},
|
||||
{"name": "ExecutedBy"},
|
||||
{"name": "Description"},
|
||||
{"name": "Data"}
|
||||
],
|
||||
"filters": [
|
||||
{
|
||||
"name": "WebserviceType",
|
||||
"operation": "contains",
|
||||
"condition": "job"
|
||||
},
|
||||
{
|
||||
"name": "RequestId",
|
||||
"operation": "contains",
|
||||
"condition": "JQW"
|
||||
},
|
||||
{
|
||||
"name": "ExecutionTime",
|
||||
"operation": "lt",
|
||||
"condition": "24",
|
||||
"option": "hours"
|
||||
}
|
||||
]
|
||||
}
|
||||
',
|
||||
'oe_kurzbz' => null,
|
||||
),
|
||||
array(
|
||||
'app' => 'core',
|
||||
'dataset_name' => 'logs',
|
||||
'filter_kurzbz' => 'jqws48hours',
|
||||
'description' => '{Last 48 hours JQWs logs}',
|
||||
'sort' => 2,
|
||||
'default_filter' => false,
|
||||
'filter' => '
|
||||
{
|
||||
"name": "All Job Queue Workers logs from the last 48 hours",
|
||||
"columns": [
|
||||
{"name": "RequestId"},
|
||||
{"name": "ExecutionTime"},
|
||||
{"name": "ExecutedBy"},
|
||||
{"name": "Description"},
|
||||
{"name": "Data"}
|
||||
],
|
||||
"filters": [
|
||||
{
|
||||
"name": "WebserviceType",
|
||||
"operation": "contains",
|
||||
"condition": "job"
|
||||
},
|
||||
{
|
||||
"name": "RequestId",
|
||||
"operation": "contains",
|
||||
"condition": "JQW"
|
||||
},
|
||||
{
|
||||
"name": "ExecutionTime",
|
||||
"operation": "lt",
|
||||
"condition": "48",
|
||||
"option": "hours"
|
||||
}
|
||||
]
|
||||
}
|
||||
@@ -535,13 +657,13 @@ $filters = array(
|
||||
array(
|
||||
'app' => 'core',
|
||||
'dataset_name' => 'logs',
|
||||
'filter_kurzbz' => 'content3days',
|
||||
'description' => '{Last 3 days content logs}',
|
||||
'filter_kurzbz' => 'content3minutes',
|
||||
'description' => '{Last 3 minutes content logs}',
|
||||
'sort' => 4,
|
||||
'default_filter' => false,
|
||||
'filter' => '
|
||||
{
|
||||
"name": "All content logs from the last 3 days",
|
||||
"name": "All content logs from the last 3 minutes",
|
||||
"columns": [
|
||||
{"name": "RequestId"},
|
||||
{"name": "ExecutionTime"},
|
||||
@@ -559,7 +681,7 @@ $filters = array(
|
||||
"name": "ExecutionTime",
|
||||
"operation": "lt",
|
||||
"condition": "3",
|
||||
"option": "days"
|
||||
"option": "minutes"
|
||||
}
|
||||
]
|
||||
}
|
||||
@@ -569,13 +691,13 @@ $filters = array(
|
||||
array(
|
||||
'app' => 'core',
|
||||
'dataset_name' => 'logs',
|
||||
'filter_kurzbz' => 'wienerlinien7days',
|
||||
'description' => '{Last 7 days wiener linien logs}',
|
||||
'filter_kurzbz' => 'wienerlinien24hours',
|
||||
'description' => '{Last 24 hours Wiener Linien logs}',
|
||||
'sort' => 5,
|
||||
'default_filter' => false,
|
||||
'filter' => '
|
||||
{
|
||||
"name": "All wiener linien logs from the last 7 days",
|
||||
"name": "All Wiener Linien logs from the last 24 hours",
|
||||
"columns": [
|
||||
{"name": "RequestId"},
|
||||
{"name": "ExecutionTime"},
|
||||
@@ -592,8 +714,8 @@ $filters = array(
|
||||
{
|
||||
"name": "ExecutionTime",
|
||||
"operation": "lt",
|
||||
"condition": "7",
|
||||
"option": "days"
|
||||
"condition": "24",
|
||||
"option": "hours"
|
||||
}
|
||||
]
|
||||
}
|
||||
|
||||
@@ -334,11 +334,11 @@ if (!$uid = get_uid())
|
||||
|
||||
<link rel="stylesheet" href="../../include/js/tablesort/table.css" type="text/css">
|
||||
<script src="../../include/js/tablesort/table.js" type="text/javascript"></script>
|
||||
<!-- <link rel="stylesheet" type="text/css" href="../../skin/jquery-ui-1.9.2.custom.min.css">
|
||||
<script type="text/javascript" src="../../vendor/jquery/jqueryV1/jquery-1.12.4.min.js"></script>
|
||||
<script type="text/javascript" src="../../vendor/christianbach/tablesorter/jquery.tablesorter.min.js"></script>
|
||||
<script type="text/javascript" src="../../vendor/components/jqueryui/jquery-ui.min.js"></script>
|
||||
<script type="text/javascript" src="../../include/js/jquery.ui.datepicker.translation.js"></script>
|
||||
<!-- <link rel="stylesheet" type="text/css" href="../../skin/jquery-ui-1.9.2.custom.min.css">
|
||||
<script type="text/javascript" src="../../vendor/jquery/jqueryV1/jquery-1.12.4.min.js"></script>
|
||||
<script type="text/javascript" src="../../vendor/christianbach/tablesorter/jquery.tablesorter.min.js"></script>
|
||||
<script type="text/javascript" src="../../vendor/components/jqueryui/jquery-ui.min.js"></script>
|
||||
<script type="text/javascript" src="../../include/js/jquery.ui.datepicker.translation.js"></script>
|
||||
<script type="text/javascript" src="../../vendor/jquery/sizzle/sizzle.js"></script> -->
|
||||
<script type="text/javascript" src="../../vendor/jquery/jqueryV1/jquery-1.12.4.min.js"></script>
|
||||
<script type="text/javascript" src="../../vendor/christianbach/tablesorter/jquery.tablesorter.min.js"></script>
|
||||
@@ -1007,7 +1007,10 @@ function output_inventar($debug=false,$resultBetriebsmittel=null,$resultBetriebs
|
||||
|
||||
$htmlstring.='<td>';
|
||||
// mit Berechtigung ist der Status zum bearbeiten
|
||||
$betriebsmittelstatus_kurzbz_select=trim($resultBetriebsmittel[$pos]->betriebsmittelstatus_kurzbz);
|
||||
$betriebsmittel_betriebsmittelstatus = new betriebsmittel_betriebsmittelstatus();
|
||||
$status = $betriebsmittel_betriebsmittelstatus->load_last_status_by_betriebsmittel_id($resultBetriebsmittel[$pos]->betriebsmittel_id);
|
||||
$betriebsmittelstatus_kurzbz_select = trim($status);
|
||||
//$resultBetriebsmittel[$pos]->betriebsmittelstatus_kurzbz;
|
||||
if (!$schreib_recht)
|
||||
$htmlstring.=$betriebsmittelstatus_kurzbz_select;
|
||||
else
|
||||
|
||||
@@ -34,6 +34,7 @@ if(!$rechte->isBerechtigt('lehre/studienordnung', null, 's'))
|
||||
|
||||
$studiengang_kz = isset($_GET['studiengang_kz'])?$_GET['studiengang_kz']:'';
|
||||
$orgform_kurzbz = isset($_GET['orgform_kurzbz'])?$_GET['orgform_kurzbz']:'';
|
||||
$farbe = isset($_GET['farbe'])?true:false;
|
||||
$db = new basis_db();
|
||||
|
||||
echo '<!doctype html>
|
||||
@@ -51,7 +52,7 @@ echo '
|
||||
{
|
||||
$("#t1").tablesorter(
|
||||
{
|
||||
widgets: ["zebra"]
|
||||
/*widgets: ["zebra"]*/
|
||||
});
|
||||
});
|
||||
</script>
|
||||
@@ -95,7 +96,7 @@ foreach ($orgform->result as $of)
|
||||
|
||||
echo '<OPTION value="'.$db->convert_html_chars($of->orgform_kurzbz).'" '.$selected.'>'.$db->convert_html_chars($of->orgform_kurzbz).' - '.$db->convert_html_chars($of->bezeichnung).'</OPTION>';
|
||||
}
|
||||
echo '</select>
|
||||
echo '</select><input type="checkbox" name="farbe" '.($farbe==true?'checked':'').'><span style="font-size: small">Unterschiede farblich hervorheben</span>
|
||||
<input type="submit" value="Anzeigen">
|
||||
</form>';
|
||||
|
||||
@@ -127,6 +128,7 @@ echo '</tr>
|
||||
</thead>
|
||||
<tbody>';
|
||||
$start=0;
|
||||
$color = 'black';
|
||||
foreach($studiensemester->studiensemester as $row_stsem)
|
||||
{
|
||||
|
||||
@@ -141,7 +143,12 @@ foreach($studiensemester->studiensemester as $row_stsem)
|
||||
foreach($gueltigkeit[$row_stsem->studiensemester_kurzbz][$i] as $row_studienplan)
|
||||
{
|
||||
$start=true;
|
||||
$row .= $row_studienplan.'<br>';
|
||||
// Die Farbe des Studienplans ist immer gleich bleibend nach der Bezeichnung des Studienplans
|
||||
if ($farbe == true)
|
||||
{
|
||||
$color = 'hsl('.abs((crc32($row_studienplan))*2 % 360).', 90%, 40%)';
|
||||
}
|
||||
$row .= '<span style="color: '.$color.'">'.$row_studienplan.'</span><br>';
|
||||
}
|
||||
}
|
||||
$row .= '</td>';
|
||||
|
||||
Reference in New Issue
Block a user