Merge remote-tracking branch 'origin/master'

This commit is contained in:
Manfred Kindl
2019-05-03 16:47:39 +02:00
39 changed files with 1184 additions and 906 deletions
+9 -35
View File
@@ -11,12 +11,13 @@
* @filesource
*/
if (! defined('BASEPATH'))
exit('No direct script access allowed');
if (!defined('BASEPATH')) exit('No direct script access allowed');
class AmpelMail extends FHC_Controller
class AmpelMail extends CLI_Controller
{
private $CIS_AMPELVERWALTUNG_URL;
const CIS_AMPELVERWALTUNG_URL = CIS_ROOT. "cis/index.php?menu=".
CIS_ROOT. "cis/menu.php?content_id=&content=".
CIS_ROOT. "cis/private/tools/ampelverwaltung.php";
/**
* Constructor
@@ -25,39 +26,12 @@ class AmpelMail extends FHC_Controller
{
parent::__construct();
// Allow script execution only from CLI
if ($this->input->is_cli_request())
{
$cli = true;
}
else
{
$this->output->set_status_header(403, 'Jobs must be run from the CLI');
echo "Jobs must be run from the CLI";
exit;
}
$this->CIS_AMPELVERWALTUNG_URL = CIS_ROOT. "cis/index.php?menu=".
CIS_ROOT. "cis/menu.php?content_id=&content=".
CIS_ROOT. "cis/private/tools/ampelverwaltung.php";
// Load helpers
$this->load->helper('hlp_sancho');
// Load models
$this->load->model('content/Ampel_model', 'AmpelModel');
$this->load->model('person/Person_model', 'PersonModel');
// Load helpers
$this->load->helper('hlp_sancho');
}
/**
* Main function index as help
*
* @return void
*/
public function index()
{
$result = "The following are the available command line interface commands\n\n";
$result .= "php index.ci.php jobs/AmpelMail generateAmpelMail";
echo $result. PHP_EOL;
}
/**
@@ -210,7 +184,7 @@ class AmpelMail extends FHC_Controller
'uid' => $uid,
'firstName' => $firstName,
'ampel_list' => $html_text,
'link' => $this->CIS_AMPELVERWALTUNG_URL
'link' => self::CIS_AMPELVERWALTUNG_URL
);
}
return $ampel_data_arr;
+3 -29
View File
@@ -17,10 +17,9 @@
*
* Authors: Andreas Oesterreicher <andreas.oesterreicher@technikum-wien.at>
*/
if (! defined('BASEPATH'))
exit('No direct script access allowed');
if (!defined('BASEPATH')) exit('No direct script access allowed');
class LVPlanJob extends FHC_Controller
class LVPlanJob extends CLI_Controller
{
/**
* Initialize LVPlanJob Class
@@ -29,32 +28,7 @@ class LVPlanJob extends FHC_Controller
*/
public function __construct()
{
// An empty array as parameter will ensure that this controller is ONLY callable from command line
parent::__construct(array());
if ($this->input->is_cli_request())
{
$cli = true;
}
else
{
$this->output->set_status_header(403, 'Jobs must be run from the CLI');
echo "Jobs must be run from the CLI";
exit;
}
}
/**
* Main function index as help
*
* @return void
*/
public function index()
{
$result = "The following are the available command line interface commands\n\n";
$result .= "php ".$this->config->item('index_page')." jobs/LVPlanJob AddDirectGroups";
echo $result.PHP_EOL;
parent::__construct();
}
/**
@@ -7,8 +7,7 @@ if (! defined('BASEPATH'))
* Database Class
*
*/
class Prestudentstatus extends FHC_Controller
class Prestudentstatus extends CLI_Controller
{
/**
* Initialize Prestudentstatus Class
@@ -17,32 +16,7 @@ class Prestudentstatus extends FHC_Controller
*/
public function __construct()
{
// An empty array as parameter will ensure that this controller is ONLY callable from command line
parent::__construct(array());
if ($this->input->is_cli_request())
{
$cli = true;
}
else
{
$this->output->set_status_header(403, 'Jobs must be run from the CLI');
echo "Jobs must be run from the CLI";
exit;
}
}
/**
* Main function index as help
*
* @return void
*/
public function index()
{
$result = "The following are the available command line interface commands\n\n";
$result .= "php ".$this->config->item('index_page')." jobs/Prestudentstatus CorrectStudienplan";
echo $result.PHP_EOL;
parent::__construct();
}
/**
@@ -1,11 +1,9 @@
<?php
if (! defined('BASEPATH')) exit('No direct script access allowed');
if (!defined('BASEPATH')) exit('No direct script access allowed');
class ReihungstestJob extends FHC_Controller
class ReihungstestJob extends CLI_Controller
{
private $VILESCI_RT_VERWALTUNGS_URL;
/**
* Constructor
*/
@@ -13,20 +11,6 @@ class ReihungstestJob extends FHC_Controller
{
parent::__construct();
// Allow script execution only from CLI
if ($this->input->is_cli_request())
{
$cli = true;
}
else
{
$this->output->set_status_header(403, 'Jobs must be run from the CLI');
echo "Jobs must be run from the CLI";
exit;
}
$this->VILESCI_RT_VERWALTUNGS_URL = site_url('/organisation/Reihungstest');
// Load models
$this->load->model('crm/Reihungstest_model', 'ReihungstestModel');
$this->load->model('crm/RtStudienplan_model', 'RtStudienplanModel');
@@ -38,18 +22,8 @@ class ReihungstestJob extends FHC_Controller
}
/**
* Main function index as help
*
* @return void
* runReihungstestJob
*/
public function index()
{
$result = "The following are the available command line interface commands\n\n";
$result .= "php index.ci.php jobs/ReihungstestJob runReihungstestInfo";
echo $result. PHP_EOL;
}
public function runReihungstestJob()
{
// Get study plans that have no assigned placement tests yet
@@ -92,6 +66,9 @@ class ReihungstestJob extends FHC_Controller
}
}
/**
* runZentraleReihungstestAnmeldefristAssistenzJob
*/
public function runZentraleReihungstestAnmeldefristAssistenzJob()
{
// Get placement tests where registration date was yesterday
@@ -198,7 +175,6 @@ class ReihungstestJob extends FHC_Controller
$mailcontent .= '<p style="font-family: verdana, sans-serif;"><a href="mailto:?bcc=' . $mailReceipients . '">Mail an alle schicken</a></p>';
}
$mailcontent_data_arr['table'] = $mailcontent;
//$mailcontent_data_arr['link'] = $this->VILESCI_RT_VERWALTUNGS_URL;
// Send email in Sancho design
if (!isEmptyString($mailcontent))
@@ -215,7 +191,9 @@ class ReihungstestJob extends FHC_Controller
}
}
// Checks, if an applicant was assigned to a test after Anmeldefrist
/**
* Checks, if an applicant was assigned to a test after Anmeldefrist
*/
public function runZentraleReihungstestNachtraeglichHinzugefuegtJob()
{
// Get applicants that have been added to a test after Anmeldefrist
@@ -510,8 +488,7 @@ class ReihungstestJob extends FHC_Controller
// Set associative array with the prepared HTML tables and URL be used by the template's variables
$content_data_arr['studienplan_list'] = $studienplan_list;
$content_data_arr['freie_plaetze_list'] = $freie_plaetze_list;
$content_data_arr['link'] = $this->VILESCI_RT_VERWALTUNGS_URL;
;
$content_data_arr['link'] = site_url('/organisation/Reihungstest');
return $content_data_arr;
}
+9 -1
View File
@@ -133,6 +133,11 @@ class Gradelist extends Auth_Controller
if (in_array($row_status->status_kurzbz,
array('Student','Diplomand','Incoming','Abbrecher','Unterbrecher','Absolvent')))
{
// Wenn das Semester schon vorhanden ist dann ueberspringen
// (bei mehreren Statuseintraegen im selben Semester (zB Absolvent / Diplomand)
if(isset($courses['semester'][$row_status->studiensemester_kurzbz]))
continue;
// LVs fuer das Semester holen lt Studienplan
$lvtree = $this->studienplanlib->getLehrveranstaltungTree(
$row_status->studienplan_id,
@@ -184,7 +189,10 @@ class Gradelist extends Auth_Controller
$courses['semester'][$row_noten->studiensemester_kurzbz]['lvs_nonstpl'][] = array(
'lehrveranstaltung_id' => $row_noten->lehrveranstaltung_id,
'lehrtyp_kurzbz' => $result_lv->retval[0]->lehrtyp_kurzbz,
'lehrform_kurzbz' => $result_lv->retval[0]->lehrform_kurzbz,
'pflicht' => false,
'sws' => $result_lv->retval[0]->sws,
'zeugnis' => $result_lv->retval[0]->zeugnis,
'bezeichnung' => $result_lv->retval[0]->bezeichnung,
'ects' => $result_lv->retval[0]->ects,
'note' => $row_noten->note,
@@ -316,7 +324,7 @@ class Gradelist extends Auth_Controller
);
}
if ($row['childs'])
if (isset($row['childs']))
{
$childgrades = $this->getGrades($row['childs']);
$grades = array_merge($grades, $childgrades);
+4 -4
View File
@@ -35,7 +35,7 @@ class Filters extends FHC_Controller
// Public methods
/**
* Retrives data about the current filter from the session and will be written on the output in JSON format
* Retrieves data about the current filter from the session and will be written on the output in JSON format
*/
public function getFilter()
{
@@ -43,7 +43,7 @@ class Filters extends FHC_Controller
}
/**
* Retrives the number of records present in the current dataset and will be written on the output in JSON format
* Retrieves the number of records present in the current dataset and will be written on the output in JSON format
*/
public function rowNumber()
{
@@ -243,11 +243,11 @@ class Filters extends FHC_Controller
// If it is present in the HTTP GET
if (isset($_GET[self::FILTER_PAGE_PARAM]))
{
$filterPage = $this->input->get(self::FILTER_PAGE_PARAM); // is retrived from the HTTP GET
$filterPage = $this->input->get(self::FILTER_PAGE_PARAM); // is retrieved from the HTTP GET
}
elseif (isset($_POST[self::FILTER_PAGE_PARAM])) // Else if it is present in the HTTP POST
{
$filterPage = $this->input->post(self::FILTER_PAGE_PARAM); // is retrived from the HTTP POST
$filterPage = $this->input->post(self::FILTER_PAGE_PARAM); // is retrieved from the HTTP POST
}
// Loads the FiltersLib that contains all the used logic
@@ -69,11 +69,11 @@ class Navigation extends Auth_Controller
// If it is present in the HTTP GET
if (isset($_GET[self::NAVIGATION_PAGE_PARAM]))
{
$navigationPage = $this->input->get(self::NAVIGATION_PAGE_PARAM); // is retrived from the HTTP GET
$navigationPage = $this->input->get(self::NAVIGATION_PAGE_PARAM); // is retrieved from the HTTP GET
}
elseif (isset($_POST[self::NAVIGATION_PAGE_PARAM])) // Else if it is present in the HTTP POST
{
$navigationPage = $this->input->post(self::NAVIGATION_PAGE_PARAM); // is retrived from the HTTP POST
$navigationPage = $this->input->post(self::NAVIGATION_PAGE_PARAM); // is retrieved from the HTTP POST
}
// Loads the NavigationLib that contains all the used logic
@@ -0,0 +1,36 @@
<?php
if (!defined('BASEPATH')) exit('No direct script access allowed');
/**
*
*/
class CLI_Manager extends CLI_Controller
{
/**
*
*/
public function __construct()
{
parent::__construct();
// Load helpers to upload files
$this->load->helper('form');
// Loads the extensions library
$this->load->library('ExtensionsLib');
}
/**
* Installiert eine Extension.
* Es wird davon ausgegangen, dass die Extension ueber einen Fileupload hochgeladen wird.
* alternativ kann hier auch der Name und Filename uebergeben werden um die installation ueber
* die Commandline ohne Upload durchzufuehren.
* @param $extensioName string Name der Extension
* @param $filename Url Encoded Pfad zum tgz File der Extension
*/
public function uploadExtension($extensionName = null, $filename = null)
{
$this->extensionslib->installExtension($extensionName, urldecode($filename));
}
}
+1 -1
View File
@@ -34,7 +34,7 @@ class Auth_Controller extends FHC_Controller
// Checks if this user is entitled to access to this content
if (!$this->permissionlib->isEntitled($requiredPermissions, $this->router->method))
{
header('HTTP/1.0 401 Unauthorized'); // set the HTTP header as unauthorized
$this->output->set_status_header(REST_Controller::HTTP_UNAUTHORIZED); // set the HTTP header as unauthorized
$this->load->library('EPrintfLib'); // loads the EPrintfLib to format the output
+102
View File
@@ -0,0 +1,102 @@
<?php
if (!defined('BASEPATH')) exit('No direct script access allowed');
class CLI_Controller extends FHC_Controller
{
const INFO_FORMAT = '%s %s %s %s'; // Info message format
const REQUIRED_PARAM_FORMAT = ' %s'; // Info message required method parameter format
const OPTIONAL_PARAM_FORMAT = ' (%s)'; // Info message optional method parameter format
const BLACKLIST_METHODS = array('__construct', 'index', 'get_instance'); // Methods to NOT display with _printHelp
/**
* Constructor
*/
public function __construct()
{
parent::__construct();
// Checks if the controller is called from command line
$this->_isAllowed();
}
/**
* By default the index is used to print the help message to explain how to call them from command line
*/
public function index()
{
$this->printHelp();
}
/**
* Retrieves all the public methods of the called controller and display
* a help message to explain how to call them from command line
*/
protected function printHelp()
{
$this->load->library('EPrintfLib'); // loads the EPrintfLib to format the output
$this->eprintflib->printInfo('The following are the available commands:');
$this->eprintflib->printInfo('');
// Gets a list of public methods of the called controller
$reflectionClass = new ReflectionClass($this->router->class);
$methods = $reflectionClass->getMethods(ReflectionMethod::IS_PUBLIC);
// Loops through them
foreach ($methods as $method)
{
// Disascard the black listed methods
if (!in_array($method->name, self::BLACKLIST_METHODS))
{
// Formatted message
$info = sprintf(
self::INFO_FORMAT, // Message format
PHP_BINARY, // PHP binary name
index_page(), // CI index page name
$this->router->class, // The called controller name
$method->name // The called controller current method name
);
// Retrieves the parameter names for the current method
$reflectionMethod = new ReflectionMethod($this->router->class, $method->name);
$parameters = $reflectionMethod->getParameters();
// Loops through them
foreach ($parameters as $parameter)
{
$info .= sprintf(
$parameter->isOptional() ? self::OPTIONAL_PARAM_FORMAT : self::REQUIRED_PARAM_FORMAT, // Parameter message format required/optional
$parameter->getName() // Current method parameter name
);
}
// Print the info message
$this->eprintflib->printInfo($info);
$this->eprintflib->printInfo('');
}
}
}
/**
* Checks if the controller is called from the command line, if NOT the execution is immediately stopped
*/
private function _isAllowed()
{
if (!$this->input->is_cli_request())
{
$this->output->set_status_header(REST_Controller::HTTP_UNAUTHORIZED);
$this->load->library('EPrintfLib'); // loads the EPrintfLib to format the output
// Prints the main error message
$this->eprintflib->printError('You are not authorized to access this content');
// Prints the called controller name
$this->eprintflib->printInfo('Controller name: '.$this->router->class);
// Prints the called controller method name
$this->eprintflib->printInfo('Method name: '.$this->router->method);
exit;
}
}
}
+2 -2
View File
@@ -704,7 +704,7 @@ class DB_Model extends FHC_Model
}
/**
* Get meda data info about the retrived fields after having executed a query
* Get meda data info about the retrieved fields after having executed a query
*/
public function getExecutedQueryMetaData()
{
@@ -861,7 +861,7 @@ class DB_Model extends FHC_Model
$toBeConverterdArray = array(); // Fields to be converted
$this->executedQueryMetaData = $result->field_data(); // Fields information
$this->executedQueryListFields = $result->list_fields(); // List of the retrived fields
$this->executedQueryListFields = $result->list_fields(); // List of the retrieved fields
for ($i = 0; $i < count($this->executedQueryMetaData); $i++) // Looking for booleans and arrays
{
+4 -4
View File
@@ -17,8 +17,8 @@ if (! defined('BASEPATH')) exit('No direct script access allowed');
// ------------------------------------------------------------------------
/**
* Function to retrive the language of the logged user
* If is not possible to retrive it, then the default system language is returnd
* Function to retrieve the language of the logged user
* If is not possible to retrieve it, then the default system language is returnd
* If as parameter is given a valid language the it's returned useful to avoid
* to write the same control structures for the language
*/
@@ -28,9 +28,9 @@ function getUserLanguage($language = null)
$ci =& get_instance(); // get CI instance
// Use the default system language, if it's possible retrives the language for the logged user
// Use the default system language, if it's possible retrieves the language for the logged user
$language = DEFAULT_LANGUAGE;
// Checks if the user is authenticated to retrive the users's language
// Checks if the user is authenticated to retrieve the users's language
// NOTE: this helper could be called when the user is not logged in the system
// so this is why is checked if the function getAuthUID exists
if (function_exists('getAuthUID'))
+3 -1
View File
@@ -305,7 +305,7 @@ class AuthLib
*/
private function _showInvalidAuthentication()
{
header('HTTP/1.0 401 Unauthorized'); // set the HTTP header as unauthorized
$this->_ci->output->set_status_header(REST_Controller::HTTP_UNAUTHORIZED); // set the HTTP header as unauthorized
unset($_SERVER['PHP_AUTH_USER']);
$this->_ci->load->library('EPrintfLib'); // loads the EPrintfLib to format the output
@@ -325,6 +325,8 @@ class AuthLib
*/
private function _showError($errorMessage)
{
$this->_ci->output->set_status_header(REST_Controller::HTTP_UNAUTHORIZED); // set the HTTP header as unauthorized
$this->_ci->load->library('EPrintfLib'); // loads the EPrintfLib to format the output
$this->_ci->load->library('LogLib'); // Loads the logs library
+3 -3
View File
@@ -7,7 +7,7 @@ if (! defined('BASEPATH')) exit('No direct script access allowed');
*/
class ExtensionsLib
{
const SQL_DIRECTORY = 'sql'; // directory where to retrive SQL scripts
const SQL_DIRECTORY = 'sql'; // directory where to retrieve SQL scripts
const SQL_FILE_EXTENSION = '.sql'; // SQL scripts file extension
const FILE_INPUT_NAME = 'extension'; // name of the HTTP parameter containing the archive data
@@ -200,7 +200,7 @@ class ExtensionsLib
}
/**
* Retrive the list of all the installed extensions
* Retrieve the list of all the installed extensions
*/
public function getInstalledExtensions()
{
@@ -253,7 +253,7 @@ class ExtensionsLib
// If the upload was a success
if ($this->_ci->upload->do_upload(ExtensionsLib::FILE_INPUT_NAME))
{
$uploadData = $this->_ci->upload->data(); // retrives data about the uploaded file
$uploadData = $this->_ci->upload->data(); // retrieves data about the uploaded file
// Checks the file extension
$uploadedFileExtension = '.'.pathinfo($uploadData['full_path'], PATHINFO_EXTENSION);
if (!in_array($uploadedFileExtension, $this->ARCHIVE_EXTENSIONS))
+19 -19
View File
@@ -23,7 +23,7 @@ class FiltersLib
const SESSION_DATASET_REPRESENTATION = 'datasetRepresentation';
const SESSION_DATASET_REP_OPTIONS = 'datasetRepresentationOptions';
// Alias for the dynamic table used to retrive the dataset
// Alias for the dynamic table used to retrieve the dataset
const DATASET_TABLE_ALIAS = 'datasetFilterTable';
// Parameters names...
@@ -40,7 +40,7 @@ class FiltersLib
// ...to specify permissions that are needed to use this FilterWidget
const REQUIRED_PERMISSIONS_PARAMETER = 'requiredPermissions';
// ...stament to retrive the dataset
// ...stament to retrieve the dataset
const QUERY_PARAMETER = 'query';
// ...to specify more columns or aliases for them
@@ -136,7 +136,7 @@ class FiltersLib
}
/**
* Wrapper method to the session helper funtions to retrive the whole session for this filter
* Wrapper method to the session helper funtions to retrieve the whole session for this filter
*/
public function getSession()
{
@@ -144,7 +144,7 @@ class FiltersLib
}
/**
* Wrapper method to the session helper funtions to retrive one element from the session of this filter
* Wrapper method to the session helper funtions to retrieve one element from the session of this filter
*/
public function getSessionElement($name)
{
@@ -192,7 +192,7 @@ class FiltersLib
$this->_ci->FiltersModel->addJoin('public.tbl_benutzer', 'person_id', 'LEFT'); // left join with benutzer table
$this->_ci->FiltersModel->addSelect('system.tbl_filters.*'); // select only from table filters
$this->_ci->FiltersModel->addOrder('sort', 'ASC'); // sort on column sort
$this->_ci->FiltersModel->addLimit(1); // if more than one filter is set as default only one will be retrived
$this->_ci->FiltersModel->addLimit(1); // if more than one filter is set as default only one will be retrieved
$definition = null;
$whereParameters = null; // where clause parameters
@@ -206,7 +206,7 @@ class FiltersLib
}
else
{
// If we can univocally retrive a filter
// If we can univocally retrieve a filter
if ($app != null && $datasetName != null && $filterKurzbz != null)
{
$whereParameters = array(
@@ -280,7 +280,7 @@ class FiltersLib
}
/**
* Generate the query to retrive the dataset for a filter
* Generate the query to retrieve the dataset for a filter
*/
public function generateDatasetQuery($query, $filters)
{
@@ -316,7 +316,7 @@ class FiltersLib
}
/**
* Retrives the dataset from the DB
* Retrieves the dataset from the DB
*/
public function getDataset($datasetQuery)
{
@@ -368,7 +368,7 @@ class FiltersLib
// Checks the parameter selectedFields
if (isset($selectedFields) && is_array($selectedFields) && count($selectedFields) > 0)
{
// Retrives all the used fields by the current filter
// Retrieves all the used fields by the current filter
$fields = $this->getSessionElement(self::SESSION_FIELDS);
// Checks that the given selected fields are present in all the used fields by the current filter
@@ -393,9 +393,9 @@ class FiltersLib
// Checks the parameter selectedField
if (!isEmptyString($selectedField))
{
// Retrives all the used fields by the current filter
// Retrieves all the used fields by the current filter
$fields = $this->getSessionElement(self::SESSION_FIELDS);
// Retrives the selected fields by the current filter
// Retrieves the selected fields by the current filter
$selectedFields = $this->getSessionElement(self::SESSION_SELECTED_FIELDS);
// Checks that the given selected field is present in the list of all the used fields by the current filter
@@ -427,9 +427,9 @@ class FiltersLib
// Checks the parameter selectedField
if (!isEmptyString($selectedField))
{
// Retrives all the used fields by the current filter
// Retrieves all the used fields by the current filter
$fields = $this->getSessionElement(self::SESSION_FIELDS);
// Retrives the selected fields by the current filter
// Retrieves the selected fields by the current filter
$selectedFields = $this->getSessionElement(self::SESSION_SELECTED_FIELDS);
// Checks that the given selected field is present in the list of all the used fields by the current filter
@@ -456,9 +456,9 @@ class FiltersLib
// Checks the parameter appliedFilter
if (!isEmptyString($appliedFilter))
{
// Retrives all the used fields by the current filter
// Retrieves all the used fields by the current filter
$fields = $this->getSessionElement(self::SESSION_FIELDS);
// Retrives the applied filters by the current filter
// Retrieves the applied filters by the current filter
$filters = $this->getSessionElement(self::SESSION_FILTERS);
// Checks that the given applied filter is present in the list of all the used fields by the current filter
@@ -493,7 +493,7 @@ class FiltersLib
if (isset($appliedFilters) && is_array($appliedFilters)
&& isset($appliedFiltersOperations) && is_array($appliedFiltersOperations))
{
$fields = $this->getSessionElement(self::SESSION_FIELDS); // Retrives all the used fields by the current filter
$fields = $this->getSessionElement(self::SESSION_FIELDS); // Retrieves all the used fields by the current filter
// Checks that the given applied filters are present in all the used fields by the current filter
if (!array_diff($appliedFilters, $fields))
@@ -544,9 +544,9 @@ class FiltersLib
// Checks the parameter filter
if (!isEmptyString($filter))
{
// Retrives all the used fields by the current filter
// Retrieves all the used fields by the current filter
$fields = $this->getSessionElement(self::SESSION_FIELDS);
// Retrives the applied filters by the current filter
// Retrieves the applied filters by the current filter
$filters = $this->getSessionElement(self::SESSION_FILTERS);
// Checks that the given applied filter is present in the list of all the used fields by the current filter
@@ -619,7 +619,7 @@ class FiltersLib
// Generates the "column" property
$jsonDeifinition->columns = array();
$selectedFields = $this->getSessionElement(self::SESSION_SELECTED_FIELDS); // retrived the selected fields
$selectedFields = $this->getSessionElement(self::SESSION_SELECTED_FIELDS); // retrieved the selected fields
for ($i = 0; $i < count($selectedFields); $i++)
{
// Each element is an object with a property called "name"
+1 -1
View File
@@ -297,7 +297,7 @@ class MessageLib
$result = $this->_ci->PersonModel->load($receiver_id);
if (hasData($result))
{
// Retrives the language of the logged user
// Retrieves the language of the logged user
$sprache = getUserLanguage();
// Loads template data
+4 -4
View File
@@ -88,7 +88,7 @@ class NavigationLib
}
/**
* Wrapper method to the session helper funtions to retrive the whole session for this navigation widget
* Wrapper method to the session helper funtions to retrieve the whole session for this navigation widget
*/
public function getSessionMenu()
{
@@ -103,7 +103,7 @@ class NavigationLib
}
/**
* Wrapper method to the session helper funtions to retrive the whole session for this navigation widget
* Wrapper method to the session helper funtions to retrieve the whole session for this navigation widget
*/
public function getSessionHeader()
{
@@ -118,7 +118,7 @@ class NavigationLib
}
/**
* Wrapper method to the session helper funtions to retrive one element from the session of this navigation widget
* Wrapper method to the session helper funtions to retrieve one element from the session of this navigation widget
*/
public function getSessionElementMenu($name)
{
@@ -133,7 +133,7 @@ class NavigationLib
}
/**
* Wrapper method to the session helper funtions to retrive one element from the session of this navigation widget
* Wrapper method to the session helper funtions to retrieve one element from the session of this navigation widget
*/
public function getSessionElementHeader($name)
{
+2 -2
View File
@@ -100,7 +100,7 @@ class PermissionLib
* - convert the required permissions to an array if needed
* - loops through the required permissions
* - checks if the permission is well formatted
* - retrives permission and required access type from the $requiredPermissions array
* - retrieves permission and required access type from the $requiredPermissions array
* - checks if the required access type is compliant with the HTTP method (GET => r, POST => w)
* - if the user has one of the permissions than exit the loop
* - checks if the user has the same required permissiond with the same required access type
@@ -142,7 +142,7 @@ class PermissionLib
// Checks if the permission is well formatted
if (strpos($permissions[$pCounter], PermissionLib::PERMISSION_SEPARATOR) !== false)
{
// Retrives permission and required access type from the $requiredPermissions array
// Retrieves permission and required access type from the $requiredPermissions array
list($permission, $requiredAccessType) = explode(PermissionLib::PERMISSION_SEPARATOR, $permissions[$pCounter]);
$accessType = '';
+4 -4
View File
@@ -5,7 +5,7 @@ if (! defined('BASEPATH')) exit('No direct script access allowed');
class PhrasesLib
{
private $_ci; // Code igniter instance
private $_phrases; // Contains the retrived phrases
private $_phrases; // Contains the retrieved phrases
/**
* Loads parser library
@@ -89,7 +89,7 @@ class PhrasesLib
}
/**
* getPhrases() - Retrives phrases from the DB
* getPhrases() - Retrieves phrases from the DB
* The given parameter are the same needed to read from the table system.tb_phrase
*/
public function getPhrases($app, $sprache, $phrase = null, $orgeinheit_kurzbz = null, $orgform_kurzbz = null, $blockTags = null)
@@ -177,7 +177,7 @@ class PhrasesLib
}
/**
* Retrives a phrases from the the property _phrases with the given parameters
* Retrieves a phrases from the the property _phrases with the given parameters
* It also replace parameters inside the phrase if they are provided
* @param string $category Category name which is used to categorize the phrase.
* @param string $phrase Phrase name.
@@ -241,7 +241,7 @@ class PhrasesLib
$categories = array($categories);
}
// Retrives the language of the logged user
// Retrieves the language of the logged user
$language = getUserLanguage(count($parameters) == 2 ? $parameters[1] : null);
// If only categories is not an empty array then loads phrases
+6
View File
@@ -32,7 +32,10 @@ class StudienplanLib
$treeitem = array(
'lehrveranstaltung_id' => $row->lehrveranstaltung_id,
'lehrtyp_kurzbz' => $row->lehrtyp_kurzbz,
'lehrform_kurzbz' => $row->lehrform_kurzbz,
'sws' => $row->sws,
'pflicht' => $row->pflicht,
'zeugnis' => $row->zeugnis,
'bezeichnung' => $row->bezeichnung,
'ects' => $row->ects
);
@@ -57,7 +60,10 @@ class StudienplanLib
$treeitem = array(
'lehrveranstaltung_id' => $row->lehrveranstaltung_id,
'lehrtyp_kurzbz' => $row->lehrtyp_kurzbz,
'lehrform_kurzbz' => $row->lehrform_kurzbz,
'sws' => $row->sws,
'pflicht' => $row->pflicht,
'zeugnis' => $row->zeugnis,
'bezeichnung' => $row->bezeichnung,
'ects' => $row->ects
);
+2 -2
View File
@@ -43,7 +43,7 @@ class UDFLib
const CHKBOX_TYPE = 'checkbox'; // UDF checkbox type
const PHRASES_APP_NAME = 'core'; // Name of the app parameter used to retrive phrases
const PHRASES_APP_NAME = 'core'; // Name of the app parameter used to retrieve phrases
private $_ci; // Code igniter instance
@@ -620,7 +620,7 @@ class UDFLib
{
$parameters = $jsonSchema->{UDFLib::LIST_VALUES}->enum;
}
// If the list of values to show should be retrived with a SQL statement
// If the list of values to show should be retrieved with a SQL statement
elseif (isset($jsonSchema->{UDFLib::LIST_VALUES}->sql))
{
// UDFModel is loaded in method _loadUDF that is called before the current method
@@ -103,14 +103,13 @@ class Lehreinheit_model extends DB_Model
*/
public function getStudenten($lehreinheit_id)
{
$query = 'SELECT uid, vorname, nachname '
$query = 'SELECT uid, vorname, nachname, prestudent_id '
. 'FROM campus.vw_student_lehrveranstaltung '
. 'JOIN campus.vw_student '
. 'USING (uid) '
. 'WHERE lehreinheit_id = ?'
. ' ORDER BY nachname';
return $this->execQuery($query, array($lehreinheit_id));
}
}
+1 -1
View File
@@ -200,7 +200,7 @@ class Person_model extends DB_Model
}
/**
* Retrives the language of the user by the UID
* Retrieves the language of the user by the UID
* Gets all the persons related to the given UID and starting from the most recent person in DB
* tries to find a valid language (!= null), if found is returned, otherwise is returned the
* default global language of the system
+1 -1
View File
@@ -57,7 +57,7 @@ class Phrase_model extends DB_Model
/**
* Loads phrases using category(s) and language as keys
* The retrived fields are category, phrase, orgeinheit_kurzbz, orgform_kurzbz and text
* The retrieved fields are category, phrase, orgeinheit_kurzbz, orgform_kurzbz and text
* They are ordered by p.category, p.phrase, pt.orgeinheit_kurzbz DESC and pt.orgform_kurzbz DESC'
*/
public function getPhrasesByCategoryAndLanguage($categories, $language)
+1 -1
View File
@@ -2,7 +2,7 @@
if (! defined('BASEPATH')) exit('No direct script access allowed');
// Retrives the name of the index page, the URL path of the called controller and the called controller
// Retrieves the name of the index page, the URL path of the called controller and the called controller
// NOTE: placed here because it doesn't work inside functions
$indexPage = $this->config->item('index_page');
$calledPath = $this->router->directory.$this->router->class;
+9 -9
View File
@@ -170,13 +170,13 @@ class FilterWidget extends Widget
$this->_datasetRepresentation = null;
$this->_datasetRepresentationOptions = null;
// Retrived the required permissions parameter if present
// Retrieved the required permissions parameter if present
if (isset($args[FiltersLib::REQUIRED_PERMISSIONS_PARAMETER]))
{
$this->_requiredPermissions = $args[FiltersLib::REQUIRED_PERMISSIONS_PARAMETER];
}
// Parameters needed to retrive univocally a filter from DB
// Parameters needed to retrieve univocally a filter from DB
if (isset($args[FiltersLib::APP_PARAMETER]))
{
$this->_app = $args[FiltersLib::APP_PARAMETER];
@@ -197,7 +197,7 @@ class FilterWidget extends Widget
$this->_filterId = $args[FiltersLib::FILTER_ID];
}
// How to retrive data for the filter: SQL statement or a result from DB
// How to retrieve data for the filter: SQL statement or a result from DB
if (isset($args[FiltersLib::QUERY_PARAMETER]))
{
$this->_query = $args[FiltersLib::QUERY_PARAMETER];
@@ -329,7 +329,7 @@ class FilterWidget extends Widget
// If session is NOT empty -> a filter was already loaded
if ($session != null)
{
// Retrive the filterId stored in the session
// Retrieve the filterId stored in the session
$sessionFilterId = $this->filterslib->getSessionElement(FiltersLib::FILTER_ID);
// If the filter loaded in session is NOT the same that is being requested then empty the session
@@ -355,7 +355,7 @@ class FilterWidget extends Widget
$this->filterslib->getSessionElement(FiltersLib::SESSION_FILTERS)
);
// Then retrive dataset from DB
// Then retrieve dataset from DB
$dataset = $this->filterslib->getDataset($datasetQuery);
// Save changes into session if data are valid
@@ -392,7 +392,7 @@ class FilterWidget extends Widget
// Generate dataset query
$datasetQuery = $this->filterslib->generateDatasetQuery($this->_query, $parsedFilterJson->filters);
// Then retrive dataset from DB
// Then retrieve dataset from DB
$dataset = $this->filterslib->getDataset($datasetQuery);
// Try to load the name of the filter using the PhrasesLib
@@ -448,7 +448,7 @@ class FilterWidget extends Widget
/**
* Calls the method _markRow and _formatRow to marks rows using markRow and format rowns using formatRow
* NOTE: this method operates directly on the retrived dataset: parameter passed by reference
* NOTE: this method operates directly on the retrieved dataset: parameter passed by reference
*/
private function _formatDataset(&$rawDataset)
{
@@ -471,7 +471,7 @@ class FilterWidget extends Widget
* - converts booleans into strings "true" and "false"
* - format dates using the format string defined in DEFAULT_DATE_FORMAT
* Calls the parameter formatRow if it was given and if it is a valid funtion
* NOTE: this method operates directly on the retrived dataset: parameter passed by reference
* NOTE: this method operates directly on the retrieved dataset: parameter passed by reference
*/
private function _formatRow(&$rawDatasetRow)
{
@@ -514,7 +514,7 @@ class FilterWidget extends Widget
}
/**
* Utility method that retrives the name of the columns present in a filter JSON definition
* Utility method that retrieves the name of the columns present in a filter JSON definition
*/
private function _getColumnsNames($columns)
{
+8 -4
View File
@@ -477,12 +477,14 @@ function drawTree($tree, $depth)
}
else
{
echo '<span>'.$p->t('studienplan/offen').'</span>';
if ($row_tree->benotung)
echo '<span>'.$p->t('studienplan/offen').'</span>';
}
}
else
{
echo '<span>'.$p->t('studienplan/offen').'</span>';
if ($row_tree->benotung)
echo '<span>'.$p->t('studienplan/offen').'</span>';
}
}
//check if compatible course has grade
@@ -498,7 +500,8 @@ function drawTree($tree, $depth)
}
else
{
echo '<span>'.$p->t('studienplan/offen').'</span>';
if ($row_tree->benotung)
echo '<span>'.$p->t('studienplan/offen').'</span>';
}
}
echo '</td>';
@@ -729,7 +732,8 @@ function checkKompatibleLvs($kompatibleLVs, $student, $row_tree, $noten_arr, $no
}
else
{
echo '<span>'.$p->t('studienplan/offen').'</span>';
if ($row_tree->benotung)
echo '<span>'.$p->t('studienplan/offen').'</span>';
}
}
}
+32 -11
View File
@@ -109,7 +109,10 @@ echo '
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml; charset=UTF-8" />
<link rel="stylesheet" href="../../vendor/twbs/bootstrap/dist/css/bootstrap.min.css" type="text/css"/>
<link href="../../skin/style.css.php" rel="stylesheet" type="text/css" />
<script type="text/javascript" src="../../vendor/components/jquery/jquery.min.js"></script>
<script type="text/javascript" src="../../vendor/twbs/bootstrap/dist/js/bootstrap.min.js"></script>
<script language="Javascript" type="text/javascript">
//<![CDATA[
function killChildNodes(an_element)
@@ -179,7 +182,7 @@ echo '
</script>
</head>
<body>
<body class='testtool-content'>
<?php
if(!isset($_SESSION['pruefling_id']))
die($p->t('testtool/bitteZuerstAnmelden'));
@@ -358,7 +361,8 @@ if($result_pruefling = $db->db_query($qry_pruefling))
{
if($row_pruefling = $db->db_fetch_object($result_pruefling))
{
$info = "$row_pruefling->vorname $row_pruefling->nachname, $row_pruefling->bezeichnung $row_pruefling->stg_bez";
/*$info = "$row_pruefling->vorname $row_pruefling->nachname, $row_pruefling->bezeichnung $row_pruefling->stg_bez";*/
$info = "$row_pruefling->vorname $row_pruefling->nachname";
}
}
@@ -400,13 +404,33 @@ if($levelgebiet)
}
//Zeit des Gebietes holen
echo '<table width="100%"><tr><td valign="top" width="50%">'.$info.'</td><td align="center">'.$fortschrittsbalken.'</td><td width="50%"></td></tr><tr><td colspan="3">';
echo '
<table width="100%">
<tr>
<td valign="top" width="50%">TeilnehmerIn: '.$info.'</td>
</tr>
<tr>
<td align="center">'.$fortschrittsbalken.'</td>
</tr>
<tr>
<td width="50%"></td>
</tr>
<tr>
<td>';
if($demo)
{
//Wenn es sich um ein Demobeispiel handelt, dann wird die Maximale Gesamtzeit angezeigt
echo "<input type=\"button\" value=\"".$p->t("testtool/gebietStarten")."\" onclick=\"GebietStarten('".$db->convert_html_chars($gebiet->bezeichnung)."','".$stunde."','".$minute."','".$sekunde."','".$gebiet_id."')\" /> ";
echo '<center>'.$p->t('testtool/bearbeitungszeit').': '.$stunde.'h '.$minute.'m '.$sekunde.'s</center>';
echo
$p->t('testtool/bearbeitungszeit').': '.$stunde.'h '.$minute.'m '.$sekunde.'s';
echo '
</td>
</tr>
<tr>
<td>
';
echo "
<input type=\"button\" class='btn btn-default btn-testtool' value=\"".$p->t("testtool/gebietStarten")."\" onclick=\"GebietStarten('".$db->convert_html_chars($gebiet->bezeichnung)."','".$stunde."','".$minute."','".$sekunde."','".$gebiet_id."')\" /> ";
}
else
{
@@ -630,7 +654,7 @@ if($frage->frage_id!='')
if(!$demo)
{
echo '<input style="width:180px; white-space:normal" type="submit" name="submitantwort" value="'.$p->t('testtool/speichernUndWeiter').'" />';
echo '<input style="width:180px; white-space:normal" class="btn btn-default btn-testtool" type="submit" name="submitantwort" value="'.$p->t('testtool/speichernUndWeiter').'" />';
}
else
{
@@ -639,7 +663,7 @@ if($frage->frage_id!='')
if($nextfrage)
{
echo " <a href='$PHP_SELF?gebiet_id=$gebiet_id&amp;frage_id=$nextfrage' class='Item'>".$p->t("testtool/demo")."</a>";
echo " <a href='$PHP_SELF?gebiet_id=$gebiet_id&amp;frage_id=$nextfrage' role='button' class='btn btn-default btn-testtool'>".$p->t("testtool/demo")."</a>";
}
else
{
@@ -655,7 +679,7 @@ if($frage->frage_id!='')
if($row->anzahl>1)
{
//Bei Demos den Weiter-Button nur anzeigen, wenn ausser der Startseite noch andere Demoseiten vorhanden sind
echo " <a href='$PHP_SELF?gebiet_id=$gebiet_id' class='Item'>".$p->t("testtool/zurueckZurStartseite")."</a>";
echo " <a href='$PHP_SELF?gebiet_id=$gebiet_id' role='button' class='btn btn-default btn-testtool'>".$p->t("testtool/zurueckZurStartseite")."</a>";
}
}
}
@@ -670,9 +694,6 @@ else
echo "<br/><br/><br/><center><b>".$p->t("testtool/startDrueckenUmZuBeginnen")."</b></center>";
}
?>
</body>
+2 -2
View File
@@ -6,11 +6,11 @@
<link href="../../skin/style.css.php" rel="stylesheet" type="text/css">
</head>
<frameset rows="77,*,1" cols="*" frameborder="NO" border="0" framespacing="0">
<frameset rows="13%,*" cols="*" frameborder="NO" border="0" framespacing="0">
<frame src="topbar.php" name="topbar" scrolling="NO" noresize>
<frameset rows="*" cols="200,*" framespacing="0" frameborder="NO" border="0">
<frame id="menu_testtool" src="menu.php" name="menu" scrolling="AUTO" noresize>
<frame id="content_testtool" style="padding-left: 10px;" src="login.php" name="content">
<frame id="content_testtool" style="padding: 20px 50px 0px 50px; overflow: hidden;" src="login.php" name="content">
</frameset>
<noframes>
<body>
+618 -524
View File
File diff suppressed because it is too large Load Diff
+113 -60
View File
@@ -84,7 +84,7 @@ session_start();
<link href="../../skin/style.css.php" rel="stylesheet" type="text/css">
</head>
<body>
<body scroll="no">
<?php
if (isset($_SESSION['pruefling_id']))
{
@@ -92,14 +92,26 @@ if (isset($_SESSION['pruefling_id']))
$qry = "SELECT content_id FROM testtool.tbl_ablauf_vorgaben WHERE studiengang_kz=".$db->db_add_param($_SESSION['studiengang_kz'])." LIMIT 1";
$result = $db->db_query($qry);
echo '<table width="100%" border="0" cellspacing="0" cellpadding="0" style="border-right-width:1px;border-right-color:#BCBCBC;">';
echo '<tr><td style="padding-left: 20px;" nowrap>
<a href="login.php" target="content">'.$p->t('testtool/startseite').'</a>
echo '<table width="100%" border="0" cellspacing="0" cellpadding="0" style="border-right-width:1px;border-right-color:#BCBCBC; border-collapse: separate;
border-spacing: 0 3px;">';
// Link zur Startseite
echo '<tr><td class="ItemTesttool" style="margin-left: 20px;" nowrap>
<a class="ItemTesttool navButton" href="login.php" target="content">'.$p->t('testtool/startseite').'</a>
</td></tr>';
// Link zur Einleitung
if ($content_id = $db->db_fetch_object($result))
{
if($content_id->content_id!='')
echo '<tr><td style="padding-left: 20px;"><a href="../../cms/content.php?content_id='.$content_id->content_id.'&sprache='.$sprache.'" target="content">'.$p->t('testtool/einleitung').'</a></td></tr>';
echo '<tr><td>&nbsp;</td></tr>';
{
echo '
<tr><td class="ItemTesttool" style="margin-left: 20px;" nowrap>
<a class="ItemTesttool navButton" href="../../cms/content.php?content_id='.$content_id->content_id.'&sprache='.$sprache.'" target="content">'.$p->t('testtool/einleitung').'</a>
</td></tr>
';
}
}
echo '<tr><td style="padding-left: 20px;" nowrap>';
$studiengang_kz = (isset($_SESSION['studiengang_kz'])) ? $_SESSION['studiengang_kz'] : '';
@@ -197,59 +209,70 @@ if (isset($_SESSION['pruefling_id']))
(gebiet_id, semester)
semester,
gebiet_id,
STRING_AGG(studiengang_kz::TEXT, ', ' ORDER BY studiengang_kz) AS studiengang_kz_list,
bezeichnung,
reihung,
". $bezeichnung_mehrsprachig_sel. "
FROM
(
(SELECT
prestudent_data.semester AS ps_sem,
gebiet_id,
bezeichnung,
tbl_ablauf.studienplan_id,
tbl_ablauf.studiengang_kz,
tbl_ablauf.semester,
tbl_ablauf.reihung,
".$bezeichnung_mehrsprachig. "
FROM
prestudent_data
JOIN
testtool.tbl_ablauf USING (studiengang_kz)
JOIN
testtool.tbl_gebiet USING (gebiet_id)
WHERE
(prestudent_data.semester= 1 AND tbl_ablauf.semester = 1)
OR
(prestudent_data.semester= 3 AND tbl_ablauf.semester IN (1,3))
)
UNION
(
SELECT
prestudent_data.semester AS ps_sem,
gebiet_id,
bezeichnung,
tbl_ablauf.studienplan_id,
tbl_ablauf.studiengang_kz,
tbl_ablauf.semester,
tbl_ablauf.reihung,
". $bezeichnung_mehrsprachig. "
FROM
prestudent_data
JOIN
testtool.tbl_ablauf USING (studienplan_id)
JOIN
testtool.tbl_gebiet USING (gebiet_id)
WHERE
(prestudent_data.semester= 1 AND tbl_ablauf.semester = 1)
OR
(prestudent_data.semester= 3 AND tbl_ablauf.semester IN (1,3))
)
ORDER BY
reihung
) temp
FROM (
SELECT
*
FROM (
(SELECT
prestudent_data.semester AS ps_sem,
gebiet_id,
bezeichnung,
tbl_ablauf.studienplan_id,
tbl_ablauf.studiengang_kz,
tbl_ablauf.semester,
tbl_ablauf.reihung,
".$bezeichnung_mehrsprachig. "
FROM
prestudent_data
JOIN
testtool.tbl_ablauf USING (studiengang_kz)
JOIN
testtool.tbl_gebiet USING (gebiet_id)
WHERE
(prestudent_data.semester= 1 AND tbl_ablauf.semester = 1)
OR
(prestudent_data.semester= 3 AND tbl_ablauf.semester IN (1,3))
)
UNION
(
SELECT
prestudent_data.semester AS ps_sem,
gebiet_id,
bezeichnung,
tbl_ablauf.studienplan_id,
tbl_ablauf.studiengang_kz,
tbl_ablauf.semester,
tbl_ablauf.reihung,
". $bezeichnung_mehrsprachig. "
FROM
prestudent_data
JOIN
testtool.tbl_ablauf USING (studienplan_id)
JOIN
testtool.tbl_gebiet USING (gebiet_id)
WHERE
(prestudent_data.semester= 1 AND tbl_ablauf.semester = 1)
OR
(prestudent_data.semester= 3 AND tbl_ablauf.semester IN (1,3))
)
) temp
) temp2
GROUP BY
semester,
gebiet_id,
bezeichnung,
reihung,
bezeichnung_mehrsprachig_1,
bezeichnung_mehrsprachig_2,
bezeichnung_mehrsprachig_3,
bezeichnung_mehrsprachig_4
ORDER BY
semester,
@@ -259,6 +282,7 @@ if (isset($_SESSION['pruefling_id']))
$result = $db->db_query($qry);
$lastsemester = '';
$quereinsteiger_stg = '';
while($row = $db->db_fetch_object($result))
{
@@ -272,9 +296,32 @@ if (isset($_SESSION['pruefling_id']))
}
$lastsemester = $row->semester;
echo '<table border="0" cellspacing="0" cellpadding="0" id="Gebiet" style="display: visible; border-collapse: separate; border-spacing: 0 6px;">';
echo '<tr><td class="HeaderTesttool">'.$row->semester.'. '.$p->t('testtool/semester').' '.($row->semester!='1'?$p->t('testtool/quereinstieg'):'').'</td></tr>';
echo '<table border="0" cellspacing="0" cellpadding="0" id="Gebiet" style="display: visible; border-collapse: separate; border-spacing: 0 3px;">';
/*echo '<tr><td class="HeaderTesttool">'.$row->semester.'. '.$p->t('testtool/semester').' '.($row->semester!='1'?$p->t('testtool/quereinstieg'):'').'</td></tr>';*/
echo '<tr><td class="HeaderTesttool">'. ($row->semester == '1' ? strtoupper($p->t('testtool/basic')) : strtoupper($p->t('testtool/quereinsteiger'))).'</td></tr>';
}
// Bei Quereinstiegsgebieten nach STG clustern und die STG anzeigen
if($row->semester != '1')
{
if($quereinsteiger_stg != $row->studiengang_kz_list)
{
//echo "<br>"; // Abstand zwischen Erstsemester- und Quereinstiegs-Gebietsblock
$quereinsteiger_stg = $row->studiengang_kz_list;
$quereinsteiger_stg_arr = explode(',', $row->studiengang_kz_list);
$quereinsteiger_stg_string = '';
$cnt = 0;
foreach ($quereinsteiger_stg_arr as $qe_stg)
{
$stg = new Studiengang($qe_stg);
$quereinsteiger_stg_string .= ($cnt > 0) ? ",<br>" : '';
$quereinsteiger_stg_string .= $stg->bezeichnung;
$cnt++;
}
echo '<tr><td class="HeaderTesttoolSTG">'. $quereinsteiger_stg_string. '</td></tr>';
}
}
$gebiet = new gebiet();
if($gebiet->check_gebiet($row->gebiet_id))
{
@@ -292,7 +339,7 @@ if (isset($_SESSION['pruefling_id']))
{
//Gebiet gestartet aber noch nicht zu ende
$style='';
$class='ItemTesttoolAktiv';
$class='ItemTesttool ItemTesttoolAktiv';
}
else
{
@@ -306,7 +353,7 @@ if (isset($_SESSION['pruefling_id']))
{
//Gebiet ist zu Ende
$style='';
$class='ItemTesttoolBeendet';
$class='ItemTesttool ItemTesttoolBeendet';
}
}
}
@@ -340,6 +387,12 @@ if (isset($_SESSION['pruefling_id']))
}
}
echo '</table>';
// Link zum Logout
echo '<tr><td class="ItemTesttool" style="margin-left: 20px;" nowrap>
<a class="ItemTesttool navButton" href="login.php?logout" target="content">Logout</a>
</td></tr>';
echo '</td></tr></table>';
}
else
+19 -11
View File
@@ -69,7 +69,6 @@ if(isset($_GET['sprache_user']))
$sprache_user = getSpracheUser();
$p = new phrasen($sprache_user);
?>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
@@ -77,7 +76,11 @@ $p = new phrasen($sprache_user);
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<link href="../../skin/style.css.php" rel="stylesheet" type="text/css">
<link rel="stylesheet" href="../../vendor/twbs/bootstrap/dist/css/bootstrap.min.css" type="text/css"/>
<script type="text/javascript" src="../../vendor/components/jquery/jquery.min.js"></script>
<script type="text/javascript" src="../../vendor/twbs/bootstrap/dist/js/bootstrap.min.js"></script>
</head>
<script type="text/javascript">
function changeSprache(sprache)
@@ -99,17 +102,22 @@ function changeSprache(sprache)
echo ' <table style="background-image: url(../../skin/images/header_testtool.png); background-repeat: repeat-x;" width="100%" height="100%" cellspacing="0" cellpadding="0">
<tr>
<td valign="top" align="left">
<a href="index.html" target="_top"><img class="header_logo" style="min-height:80%; left: 16px; top: 10%;" src="../../skin/styles/'.DEFAULT_STYLE.'/logo_250x130.png" alt="logo"></a>
<a href="index.html" target="_top"><img class="header_logo" style="min-height:65%; left: 16px; top: 10%;" src="../../skin/styles/'.DEFAULT_STYLE.'/logo_250x130.png" alt="logo"></a>
</td>
<td align="right">
<select style="text-align: left; color: #0086CC; border: 1;" name="select">';
$sprache = new sprache();
$sprache->getAll(true);
foreach($sprache->result as $row)
{
echo ' <option onclick="changeSprache(\''.$row->sprache.'\'); return false;" '.($row->sprache==$sprache_user?'selected':'').'>'.($row->bezeichnung_arr[getSprache()]).'&nbsp;&nbsp;</option>';
}
echo ' </select>&nbsp;&nbsp;</div>
<td valign="middle">
<div class="form-group form-inline pull-right">
<!-- <label for="select-sprache">Sprache Menü:&nbsp;&nbsp;</label>-->
<select id="select-sprache" class="form-control" style="width: 170px; margin-right: 50px;" onchange="if (typeof(this.value) != \'undefined\') changeSprache(this.value)">';
$sprache = new sprache();
$sprache->getAll(true);
foreach($sprache->result as $row)
{
echo ' <option value="'. $row->sprache. '" '.($row->sprache==$sprache_user?'selected':'').'>'.($row->bezeichnung_arr[getSprache()]).'&nbsp;&nbsp;</option>';
}
echo '
</select>
</div>
</td>
</tr>
</table>';
?>
@@ -18,18 +18,19 @@
* Authors: Cristina Hainberger hainberg@technikum-wien.at>.
*/
require_once('../../../config/cis.config.inc.php');
require_once('../../../include/dokument_export.class.php');
require_once('../../../include/functions.inc.php');
require_once('../../../include/person.class.php');
require_once('../../../include/lehreinheitmitarbeiter.class.php');
require_once('../../../include/lehreinheit.class.php');
require_once('../../../include/projektbetreuer.class.php');
require_once('../../../include/projektarbeit.class.php');
require_once('../../../include/bisverwendung.class.php');
require_once('../../../include/studiensemester.class.php');
require_once('../../../include/phrasen.class.php');
require_once('../../../include/benutzerberechtigung.class.php');
require_once('../../config/cis.config.inc.php');
require_once('../../include/dokument_export.class.php');
require_once('../../include/functions.inc.php');
require_once('../../include/person.class.php');
require_once('../../include/lehreinheitmitarbeiter.class.php');
require_once('../../include/lehreinheit.class.php');
require_once('../../include/projektbetreuer.class.php');
require_once('../../include/projektarbeit.class.php');
require_once('../../include/bisverwendung.class.php');
require_once('../../include/studiensemester.class.php');
require_once('../../include/phrasen.class.php');
require_once('../../include/benutzerberechtigung.class.php');
$user = get_uid();
$sprache = getSprache();
+46 -43
View File
@@ -1,43 +1,46 @@
<?php
$this->phrasen['testtool/titel']='';
$this->phrasen['testtool/login']='Login';
$this->phrasen['testtool/tag']='Tag';
$this->phrasen['testtool/monat']='Monat';
$this->phrasen['testtool/jahr']='Jahr';
$this->phrasen['testtool/willkommenstext']='Herzlich Willkommen zum Reihungstest.<br /><br />
Bitte warten Sie mit dem Login auf die Anweisung der Aufsichtsperson.<br /><br />
Wir wünschen Ihnen einen erfolgreichen Start ins Studium.';
$this->phrasen['testtool/nameAuswaehlen']='Name auswählen...';
$this->phrasen['testtool/quereinstieg']='(Quereinstieg)';
$this->phrasen['testtool/semester']='Semester';
$this->phrasen['testtool/reihungstestNichtFreigeschalten']='Der zuteilte Reihungstest ist noch nicht freigeschaltet';
$this->phrasen['testtool/reihungstestKannNichtGeladenWerden']='Der Reihungstest dem Sie zugeteilt sind, kann nicht geladen werden';
$this->phrasen['testtool/geburtsdatumStimmtNichtUeberein']='Ihr Geburtsdatum stimmt nicht mit unseren Daten überein. Bitte wenden Sie sich an die Aufsichtsperson';
$this->phrasen['testtool/home']='Home';
$this->phrasen['testtool/klickenSieAufEinTeilgebiet']='Klicken Sie links auf ein Teilgebiet';
$this->phrasen['testtool/gebietStarten']='Gebiet starten';
$this->phrasen['testtool/startseite']='Startseite';
$this->phrasen['testtool/zurueckZurStartseite']='Zurück zur Startseite';
$this->phrasen['testtool/begruessungstext']='Willkommen zum Reihungstest der Fachhochschule Technikum Wien. Sie sind mit folgenden Daten angemeldet:';
$this->phrasen['testtool/keineAntwort']='Keine Antwort';
$this->phrasen['testtool/speichernUndWeiter']='Speichern und weiter';
$this->phrasen['testtool/alleFragenBeantwortet']='GLÜCKWUNSCH! \n\nSie haben alle Fragen in der zur Verfügung stehenden Zeit beantwortet. \nNutzen Sie die verbleibende Zeit, um Ihre Antworten zu kontrollieren oder fahren Sie mit dem nächsten Teilgebiet fort';
$this->phrasen['testtool/zeitAbgelaufen']='Die Maximalzeit für dieses Gebiet ist abgelaufen, oder alle Fragen wurden beantwortet';
$this->phrasen['testtool/spracheDerTestfragen']='Gewünschte Sprache der Testfragen';
$this->phrasen['testtool/einleitung']='Einleitung';
$this->phrasen['testtool/blaettern']='Blättern';
$this->phrasen['testtool/demo']='Demobeispiel ansehen';
$this->phrasen['testtool/okKlickenUmZuStarten']='Klicken Sie OK um dieses Gebiet zu starten. \nSie haben für die Bearbeitung ein Zeitlimit von';
$this->phrasen['testtool/bitteZuerstAnmelden']='Bitte zuerst anmelden!';
$this->phrasen['testtool/fehlerBeimGenerierenDesFragenpools']='Fehler beim generieren des Fragenpools';
$this->phrasen['testtool/esWurdeKeineFrageGefunden']='Es wurde keine Frage gefunden';
$this->phrasen['testtool/fehler']='Fehler';
$this->phrasen['testtool/fehlerBeimStartvorgang']='Fehler beim Startvorgang';
$this->phrasen['testtool/beiDiesemGebietMuessenSieJedeFrageBeantworten']='Bei diesem Gebiet müssen Sie jede Frage beantworten';
$this->phrasen['testtool/bearbeitungszeit']='Bearbeitungszeit';
$this->phrasen['testtool/dieZeitIstAbgelaufen']='Die Zeit ist abgelaufen!<br /> Bitte aktivieren Sie Javascript in Ihrem Browser!';
$this->phrasen['testtool/dieseFrageIstNichtFuerSieBestimmt']='Diese Frage ist nicht für Sie bestimmt';
$this->phrasen['testtool/fehlerBeimSpeichernDerErstansicht']='Fehler beim Speichern der Erstansicht';
$this->phrasen['testtool/startDrueckenUmZuBeginnen']='Um dieses Teilgebiet zu starten, drücken Sie bitte links oben auf <b>Gebiet starten</b>.';
$this->phrasen['testtool/keinPrueflingseintragVorhanden']='Kein Prüflingseintrag vorhanden';
?>
<?php
$this->phrasen['testtool/titel']='';
$this->phrasen['testtool/login']='Login';
$this->phrasen['testtool/tag']='Tag';
$this->phrasen['testtool/monat']='Monat';
$this->phrasen['testtool/jahr']='Jahr';
$this->phrasen['testtool/willkommenstextTitel']='Herzlich Willkommen zum Reihungstest';
$this->phrasen['testtool/willkommenstext']='Bitte warten Sie mit dem Login auf die Anweisung der Aufsichtsperson.<br /><br />
Wir wünschen Ihnen einen erfolgreichen Start ins Studium.';
$this->phrasen['testtool/nameAuswaehlen']='Name auswählen...';
$this->phrasen['testtool/quereinstieg']='(Quereinstieg)';
$this->phrasen['testtool/quereinsteiger']='Quereinsteiger';
$this->phrasen['testtool/basic']='Basic';
$this->phrasen['testtool/semester']='Semester';
$this->phrasen['testtool/reihungstestNichtFreigeschalten']='Der zuteilte Reihungstest ist noch nicht freigeschaltet';
$this->phrasen['testtool/reihungstestKannNichtGeladenWerden']='Der Reihungstest dem Sie zugeteilt sind, kann nicht geladen werden';
$this->phrasen['testtool/geburtsdatumStimmtNichtUeberein']='Ihr Geburtsdatum stimmt nicht mit unseren Daten überein. Bitte wenden Sie sich an die Aufsichtsperson';
$this->phrasen['testtool/home']='Home';
$this->phrasen['testtool/klickenSieAufEinTeilgebiet']='Zum Starten klicken Sie bitte links auf ein Teilgebiet.<br>Wir wünschen Ihnen viel Erfolg!';
$this->phrasen['testtool/gebietStarten']='Gebiet starten';
$this->phrasen['testtool/startseite']='Startseite';
$this->phrasen['testtool/zurueckZurStartseite']='Zurück zur Startseite';
$this->phrasen['testtool/begruessungstext']="Willkommen zum Reihungstest der Fachhochschule Technikum Wien!";
$this->phrasen['testtool/anmeldedaten']= "Sie sind mit folgenden Daten angemeldet:";
$this->phrasen['testtool/keineAntwort']='Keine Antwort';
$this->phrasen['testtool/speichernUndWeiter']='Speichern und weiter';
$this->phrasen['testtool/alleFragenBeantwortet']='GLÜCKWUNSCH! \n\nSie haben alle Fragen in der zur Verfügung stehenden Zeit beantwortet. \nNutzen Sie die verbleibende Zeit, um Ihre Antworten zu kontrollieren oder fahren Sie mit dem nächsten Teilgebiet fort';
$this->phrasen['testtool/zeitAbgelaufen']='Die Maximalzeit für dieses Gebiet ist abgelaufen, oder alle Fragen wurden beantwortet';
$this->phrasen['testtool/spracheDerTestfragen']='Gewünschte Sprache der Testfragen';
$this->phrasen['testtool/einleitung']='Einleitung';
$this->phrasen['testtool/blaettern']='Bttern';
$this->phrasen['testtool/demo']='Demobeispiel ansehen';
$this->phrasen['testtool/okKlickenUmZuStarten']='Klicken Sie OK um dieses Gebiet zu starten. \nSie haben für die Bearbeitung ein Zeitlimit von';
$this->phrasen['testtool/bitteZuerstAnmelden']='Bitte zuerst anmelden!';
$this->phrasen['testtool/fehlerBeimGenerierenDesFragenpools']='Fehler beim generieren des Fragenpools';
$this->phrasen['testtool/esWurdeKeineFrageGefunden']='Es wurde keine Frage gefunden';
$this->phrasen['testtool/fehler']='Fehler';
$this->phrasen['testtool/fehlerBeimStartvorgang']='Fehler beim Startvorgang';
$this->phrasen['testtool/beiDiesemGebietMuessenSieJedeFrageBeantworten']='Bei diesem Gebiet müssen Sie jede Frage beantworten';
$this->phrasen['testtool/bearbeitungszeit']='Bearbeitungszeit';
$this->phrasen['testtool/dieZeitIstAbgelaufen']='Die Zeit ist abgelaufen!<br /> Bitte aktivieren Sie Javascript in Ihrem Browser!';
$this->phrasen['testtool/dieseFrageIstNichtFuerSieBestimmt']='Diese Frage ist nicht für Sie bestimmt';
$this->phrasen['testtool/fehlerBeimSpeichernDerErstansicht']='Fehler beim Speichern der Erstansicht';
$this->phrasen['testtool/startDrueckenUmZuBeginnen']='Um dieses Teilgebiet zu starten, drücken Sie bitte links oben auf <b>Gebiet starten</b>.';
$this->phrasen['testtool/keinPrueflingseintragVorhanden']='Kein Prüflingseintrag vorhanden';
?>
+45 -42
View File
@@ -1,43 +1,46 @@
<?php
$this->phrasen['testtool/titel']='';
$this->phrasen['testtool/login']='Login';
$this->phrasen['testtool/tag']='Day';
$this->phrasen['testtool/monat']='Month';
$this->phrasen['testtool/jahr']='Year';
$this->phrasen['testtool/willkommenstext']='Welcome to the placement test.<br /><br />
Please wait for the tutor\'s instructions before you log in.<br /><br />
We wish you a good start to your studies.';
$this->phrasen['testtool/nameAuswaehlen']='Choose name...';
$this->phrasen['testtool/quereinstieg']='(Lateral entry)';
$this->phrasen['testtool/semester']='Semester';
$this->phrasen['testtool/reihungstestNichtFreigeschalten']='The entrance examination assigned has not yet been activated.';
$this->phrasen['testtool/reihungstestKannNichtGeladenWerden']='The entrance examination assigned to you can not be loaded.';
$this->phrasen['testtool/geburtsdatumStimmtNichtUeberein']='Your date of birth does not correspond to the data we have. Please speak to the supervisor. ';
$this->phrasen['testtool/home']='Home';
$this->phrasen['testtool/klickenSieAufEinTeilgebiet']='Select a topic on the left side';
$this->phrasen['testtool/gebietStarten']='Start section';
$this->phrasen['testtool/startseite']='Startpage';
$this->phrasen['testtool/zurueckZurStartseite']='Back to startpage';;
$this->phrasen['testtool/begruessungstext']='Welcome to the placement test of the UAS Technikum Wien. <br/>You are logged in with the following data:';
$this->phrasen['testtool/keineAntwort']='No Answer';
$this->phrasen['testtool/speichernUndWeiter']='Save and next';
$this->phrasen['testtool/alleFragenBeantwortet']='CONGRATULATIONS!\n\nYou have answered all the questions in the time allowed.\n Use the remaining time to check your answers or continue to the next section.';
$this->phrasen['testtool/zeitAbgelaufen']='The time for this part has expired or you have answered all the questions.';
$this->phrasen['testtool/spracheDerTestfragen']='Desired language of questions';
$this->phrasen['testtool/einleitung']='Introduction';
$this->phrasen['testtool/blaettern']='Browse';
$this->phrasen['testtool/demo']='See an example';
$this->phrasen['testtool/okKlickenUmZuStarten']='Click OK to start this section. \nYou have a timelimit of';
$this->phrasen['testtool/bitteZuerstAnmelden']='Please log in first!';
$this->phrasen['testtool/fehlerBeimGenerierenDesFragenpools']='Error in generating the pool of questions.';
$this->phrasen['testtool/esWurdeKeineFrageGefunden']='No question has been found.';
$this->phrasen['testtool/fehler']='Error';
$this->phrasen['testtool/fehlerBeimStartvorgang']='Error in start-up sequence';
$this->phrasen['testtool/beiDiesemGebietMuessenSieJedeFrageBeantworten']='In this section you must answer every question';
$this->phrasen['testtool/bearbeitungszeit']='Time';
$this->phrasen['testtool/dieZeitIstAbgelaufen']='The time has run out!<br />Please enable JavaScript in your browser!';
$this->phrasen['testtool/dieseFrageIstNichtFuerSieBestimmt']='This question is not intended for you';
$this->phrasen['testtool/fehlerBeimSpeichernDerErstansicht']='Error in saving the initial view';
$this->phrasen['testtool/startDrueckenUmZuBeginnen']='To start this section, please click on <b>Start section</b> in the top left corner.';
$this->phrasen['testtool/keinPrueflingseintragVorhanden']='No candidate entry available.';
<?php
$this->phrasen['testtool/titel']='';
$this->phrasen['testtool/login']='Login';
$this->phrasen['testtool/tag']='Day';
$this->phrasen['testtool/monat']='Month';
$this->phrasen['testtool/jahr']='Year';
$this->phrasen['testtool/willkommenstextTitel']='Welcome to the placement test.';
$this->phrasen['testtool/willkommenstext']='Please wait for the tutor\'s instructions before you log in.<br /><br />
We wish you a good start to your studies.';
$this->phrasen['testtool/nameAuswaehlen']='Choose name...';
$this->phrasen['testtool/quereinstieg']='(Lateral entry)';
$this->phrasen['testtool/quereinsteiger']='Lateral entry';
$this->phrasen['testtool/basic']='Basic';
$this->phrasen['testtool/semester']='Semester';
$this->phrasen['testtool/reihungstestNichtFreigeschalten']='The entrance examination assigned has not yet been activated.';
$this->phrasen['testtool/reihungstestKannNichtGeladenWerden']='The entrance examination assigned to you can not be loaded.';
$this->phrasen['testtool/geburtsdatumStimmtNichtUeberein']='Your date of birth does not correspond to the data we have. Please speak to the supervisor. ';
$this->phrasen['testtool/home']='Home';
$this->phrasen['testtool/klickenSieAufEinTeilgebiet']='Select a topic on the left side';
$this->phrasen['testtool/gebietStarten']='Start section';
$this->phrasen['testtool/startseite']='Startpage';
$this->phrasen['testtool/zurueckZurStartseite']='Back to startpage';;
$this->phrasen['testtool/begruessungstext']='Welcome to the placement test of the UAS Technikum Wien!';
$this->phrasen['testtool/anmeldedaten']= "You are logged in with the following data:";
$this->phrasen['testtool/keineAntwort']='No Answer';
$this->phrasen['testtool/speichernUndWeiter']='Save and next';
$this->phrasen['testtool/alleFragenBeantwortet']='CONGRATULATIONS!\n\nYou have answered all the questions in the time allowed.\n Use the remaining time to check your answers or continue to the next section.';
$this->phrasen['testtool/zeitAbgelaufen']='The time for this part has expired or you have answered all the questions.';
$this->phrasen['testtool/spracheDerTestfragen']='Desired language of questions';
$this->phrasen['testtool/einleitung']='Introduction';
$this->phrasen['testtool/blaettern']='Browse';
$this->phrasen['testtool/demo']='See an example';
$this->phrasen['testtool/okKlickenUmZuStarten']='Click OK to start this section. \nYou have a timelimit of';
$this->phrasen['testtool/bitteZuerstAnmelden']='Please log in first!';
$this->phrasen['testtool/fehlerBeimGenerierenDesFragenpools']='Error in generating the pool of questions.';
$this->phrasen['testtool/esWurdeKeineFrageGefunden']='No question has been found.';
$this->phrasen['testtool/fehler']='Error';
$this->phrasen['testtool/fehlerBeimStartvorgang']='Error in start-up sequence';
$this->phrasen['testtool/beiDiesemGebietMuessenSieJedeFrageBeantworten']='In this section you must answer every question';
$this->phrasen['testtool/bearbeitungszeit']='Time';
$this->phrasen['testtool/dieZeitIstAbgelaufen']='The time has run out!<br />Please enable JavaScript in your browser!';
$this->phrasen['testtool/dieseFrageIstNichtFuerSieBestimmt']='This question is not intended for you';
$this->phrasen['testtool/fehlerBeimSpeichernDerErstansicht']='Error in saving the initial view';
$this->phrasen['testtool/startDrueckenUmZuBeginnen']='To start this section, please click on <b>Start section</b> in the top left corner.';
$this->phrasen['testtool/keinPrueflingseintragVorhanden']='No candidate entry available.';
?>
+5 -2
View File
@@ -560,6 +560,7 @@ var InfocenterDetails = {
var ausbildungssemester = receiverPrestudentstatus.ausbildungssemester;
var studiengangbezeichnung = receiverPrestudentstatus.studiengangbezeichnung;
var studiengangbezeichnung_englisch = receiverPrestudentstatus.studiengangbezeichnung_englisch;
var orgform = typeof receiverPrestudentstatus.orgform === 'string' ? receiverPrestudentstatus.orgform : receiverPrestudentstatus.orgform_kurzbz;
var msgvars = {};
if (rtfreigabe)
@@ -572,7 +573,8 @@ var InfocenterDetails = {
msgvars = {
'ausbildungssemester': ausbildungssemester,
'studiengangbezeichnung': studiengangbezeichnung,
'studiengangbezeichnung_englisch': studiengangbezeichnung_englisch
'studiengangbezeichnung_englisch': studiengangbezeichnung_englisch,
'orgform': orgform
};
InfocenterDetails.sendFreigabeMessage(prestudent_id, RTFREIGABE_MESSAGE_VORLAGE_QUER_KURZ, msgvars);
@@ -587,7 +589,8 @@ var InfocenterDetails = {
msgvars = {
'ausbildungssemester': ausbildungssemester,
'studiengangbezeichnung': studiengangbezeichnung,
'studiengangbezeichnung_englisch': studiengangbezeichnung_englisch
'studiengangbezeichnung_englisch': studiengangbezeichnung_englisch,
'orgform': orgform
};
vorlage = RTFREIGABE_MESSAGE_VORLAGE_QUER
}
+40 -5
View File
@@ -25,6 +25,12 @@ body.main /* Workaround fuer Farbverlauf im IE statt ShadowBox */
padding:0px;
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#cccccc',endColorstr='#ffffff');
}
body.testtool-content
{
/*/padding: 0px 50px 0px 50px;*/
overflow: hidden;
width: 50%;
}
html
{
height: 100%;
@@ -81,6 +87,11 @@ li.ui-menu-item
{
list-style-image:none;
}
.btn-testtool
{
width: 200px;
margin-top: 20px;
}
#menue
{
bottom: 2%;
@@ -210,14 +221,21 @@ a:hover /*link ohne Item-Definition*/
a.ItemTesttool
{
color: #000;
/*line-height: 25px;*/
line-height: 25px;
display:block;
padding: 5px 10px 5px 10px;
}
a.ItemTesttool.navButton
{
background-color: #0a629c;
color: white;
padding: 10px;
}
a.ItemTesttoolAktiv
{
color: #000;
/*line-height: 25px;*/
line-height: 25px;
display:block;
padding: 5px 10px 5px 10px;
text-decoration: none;
@@ -225,7 +243,7 @@ a.ItemTesttoolAktiv
a.ItemTesttoolBeendet
{
color: #C7C8C9;
/*line-height: 25px;*/
line-height: 25px;
display:block;
padding: 5px 10px 5px 10px;
cursor: default;
@@ -234,10 +252,16 @@ a.ItemTesttoolBeendet
a:hover.ItemTesttool
{
color: #000;
/*line-height: 25px;*/
line-height: 25px;
text-decoration: none;
padding: 5px 10px 5px 10px;
}
a:hover.ItemTesttool.navButton
{
background-color: steelblue;
color: white;
padding: 10px;
}
a.HyperItem /* ? */
{
color: Black; text-decoration: none;
@@ -430,7 +454,18 @@ td.HeaderTesttool /*fuer die Button-Optik beim Testtool*/
white-space:nowrap;
line-height: 25px;
box-shadow: inset 0 0 2px #FFFFFF;
padding: 0 10px 0 10px;
padding: 10px;
}
td.HeaderTesttoolSTG /*fuer die Button-Optik der Quereinstiegs-Studiengänge beim Testtool*/
{
color: #00639C;
border: 2px solid #00639C;
padding: 10px;
max-width: 100px;
overflow: hidden;
text-overflow: ellipsis;
white-space: normal;
font-weight: bold;
}
td.Inaktiv /*fuer Inaktive Items bei der Raumbeschreibung */
{
+1
View File
@@ -353,6 +353,7 @@ $filters = array(
{"name": "fakultaet"},
{"name": "datum"},
{"name": "uhrzeit"},
{"name": "anmeldefrist"},
{"name": "oeffentlich"},
{"name": "studiengaenge"},
{"name": "freie_plaetze"},
+1 -1
View File
@@ -219,7 +219,7 @@
</text:p>
<text:p text:style-name="P1"/>
<text:p text:style-name="P1"/>
<text:p text:style-name="P2">Wien, 04.04.2019</text:p>
<text:p text:style-name="P2">Wien, <xsl:value-of select="actual_date" /></text:p>
</office:text>
</office:body>
</office:document-content>