Merge branch 'feature-37620/reihungslisten'

This commit is contained in:
Andreas Österreicher
2025-03-24 10:24:01 +01:00
4 changed files with 54 additions and 19 deletions
+24 -17
View File
@@ -13,7 +13,7 @@
*
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <https://www.gnu.org/licenses/>.
*
*
* @usage:
* Preperations:
* Be sure to have PrimeVue loaded with the toast and confirmdialog
@@ -23,44 +23,51 @@
* Use:
* In your component you can call now the global property $fhcAlert
* which has the following functions:
*
*
* alertSuccess
* ------------
* Displays a success message
* @param string message
* @return void
*
*
* alertInfo
* ---------
* Displays an info message
* @param string message
* @return void
*
*
* alertWarning
* ------------
* Displays a warning
* @param string message
* @return void
*
*
* alertError
* ----------
* Displays an error
* @param string message
* @return void
*
*
* alertSystemError
* ----------------
* Displays an alert with the error details and a button to mail
* the error to the Support Team
* @param string message
* @return void
*
*
* confirmDelete
* -------------
* Displays a confirmation dialog and returns a Promise which resolves
* with true or false depending und the pressed button.
* @return Promise
*
*
* confirm
* ------------
* Displays a confirmation dialog and returns a Promise which resolves
* with true or false depending und the pressed button.
* @param string message
* @return Promise
*
* alertDefault
* ------------
* Displays an alert
@@ -69,7 +76,7 @@
* @param string message
* @param boolean sticky (optional) defaults to false
* @return void
*
*
* alertMultiple
* -------------
* Displays multiple alerts
@@ -78,14 +85,14 @@
* @param string title (optional) defaults to 'Info'
* @param boolean sticky (optional) defaults to false
* @return void
*
*
* handleSystemError
* -----------------
* Automatiticly determine how to display an system error and display it.
* This would be used in a catch block of an ajax call.
* @param mixed error
* @return void
*
*
* handleSystemMessage
* -------------------
* Automatiticly determine how to display a message and display it.
@@ -248,7 +255,7 @@ export default {
},
alertDefault(severity, title, message, sticky = false) {
let options = { severity: severity, summary: title, detail: message};
if (!sticky)
options.life = 3000;
@@ -266,7 +273,7 @@ export default {
// don't show an error message to the user if the error was an aborted request
if(error.hasOwnProperty('name') && error.name.toLowerCase() === "AbortError".toLowerCase())
return;
// Error is string
if (typeof error === 'string')
return $fhcAlert.alertSystemError(error);
@@ -278,7 +285,7 @@ export default {
// Error has been handled already
if (error.hasOwnProperty('handled') && error.handled)
return;
// Error is object
if (typeof error === 'object' && error !== null) {
let errMsg = '';
@@ -294,7 +301,7 @@ export default {
if (error.hasOwnProperty('stack'))
errMsg += 'Error Stack: ' + error.stack + '\r\n';
// Fallback object error message
if (errMsg == '')
errMsg = 'Error Message: ' + JSON.stringify(error) + '\r\n';
@@ -368,7 +375,7 @@ export default {
// NOTE(chris): reset form validation
$fhcAlert.resetFormValidation(form);
// NOTE(chris): set form input validation
const notFound = Object.entries(errors).filter(([key, detail]) => {
const input = form.querySelector('[data-fhc-form-validate="' + key + '"]');
@@ -421,4 +428,4 @@ export default {
app.config.globalProperties.$fhcAlert = $fhcAlert;
app.provide('$fhcAlert', app.config.globalProperties.$fhcAlert);
}
}
}
+1
View File
@@ -61,6 +61,7 @@ require_once('dbupdate_3.4/41134_C4_bookmark_dashboardWidget.php');
require_once('dbupdate_3.4/28575_softwarebereitstellung.php');
require_once('dbupdate_3.4/41150_oe-pfad_db_view.php');
require_once('dbupdate_3.4/44031_stv_favorites.php');
require_once('dbupdate_3.4/37620_reihungslisten.php');
require_once('dbupdate_3.4/40896_kennzeichnung_unruly_person.php');
require_once('dbupdate_3.4/39911_tabulator_in_contentmittitel.php');
require_once('dbupdate_3.4/25999_C4_permission.php');
@@ -0,0 +1,13 @@
<?php
// Added Buchungstyp "StudiengebuehrErhoeht"
if ($result = @$db->db_query("SELECT 1 FROM public.tbl_buchungstyp WHERE buchungstyp_kurzbz = 'KautionDrittStaat';"))
{
if ($db->db_num_rows($result) == 0)
{
$qry = "INSERT INTO public.tbl_buchungstyp (buchungstyp_kurzbz, beschreibung, standardtext, standardbetrag) VALUES ('KautionDrittStaat', 'Kaution', 'Deposit for application, third countries', '-250');";
if (!$db->db_query($qry))
echo '<strong>public.tbl_buchungstyp '.$db->db_last_error().'</strong><br>';
else
echo ' public.tbl_buchungstyp: Added buchungstyp "KautionDrittStaat" <br>';
}
}
+16 -2
View File
@@ -1220,6 +1220,7 @@ $reihungstest = isset($_REQUEST['reihungstest']) ? $_REQUEST['reihungstest'] : '
$studiengang = isset($_REQUEST['studiengang']) ? $_REQUEST['studiengang'] : '';
$semester = isset($_REQUEST['semester']) ? $_REQUEST['semester'] : '';
$prestudent_id = isset($_REQUEST['prestudent_id']) ? $_REQUEST['prestudent_id'] : '';
$prestudent_ids = isset($_REQUEST['prestudent_ids']) ? $_REQUEST['prestudent_ids'] : '';
$orgform_kurzbz = isset($_REQUEST['orgform_kurzbz']) ? $_REQUEST['orgform_kurzbz'] : '';
$format = (isset($_REQUEST['format']) ? $_REQUEST['format'] : '');
$stgtyp = (isset($_REQUEST['stgtyp']) ? $_REQUEST['stgtyp'] : '');
@@ -1259,7 +1260,7 @@ if ($prestudent_id != '' && !is_numeric($prestudent_id))
{
die('PrestudentID ist ungueltig');
}
if (isset($_POST['rtauswsubmit']) && $reihungstest == '' && $studiengang == '' && $semester == '' && $prestudent_id == '' && $datum_von == '' && $datum_bis == '')
if (isset($_POST['rtauswsubmit']) && $reihungstest == '' && $studiengang == '' && $semester == '' && $prestudent_id == '' && $datum_von == '' && $datum_bis == '' && $prestudent_ids == '')
{
die('Waehlen Sie bitte mindestens eine der Optionen aus');
}
@@ -1378,6 +1379,10 @@ if (isset($_REQUEST['reihungstest']) || isset($_POST['rtauswsubmit']))
{
$query .= " AND ps.prestudent_id=" . $db->db_add_param($prestudent_id, FHC_INTEGER);
}
if ($prestudent_ids != '')
{
$query .= " AND ps.prestudent_id IN (" .$db->db_implode4SQL(explode(',', $prestudent_ids)) . ")";
}
if ($orgform_kurzbz != '' && $studiengang != '')
{
$query .= " AND (tbl_ablauf.studienplan_id=(
@@ -1611,6 +1616,10 @@ if (isset($_REQUEST['reihungstest']) || isset($_POST['rtauswsubmit']))
{
$query .= " AND ps.prestudent_id=" . $db->db_add_param($prestudent_id, FHC_INTEGER);
}
if ($prestudent_ids != '')
{
$query .= " AND ps.prestudent_id IN (" .$db->db_implode4SQL(explode(',',$prestudent_ids)) . ")";
}
if ($orgform_kurzbz != '')
{
//$query .= " AND tbl_prestudentstatus.orgform_kurzbz=" . $db->db_add_param($orgform_kurzbz);
@@ -2891,7 +2900,7 @@ else
$selectedrtstr = '';
$checkbxstr = '';
$first = true;
$noparamsselected = $prestudent_id == '' && $reihungstest == '' && $datum_von == '' && $datum_bis == '' && $studiengang == '' && $semester == '';
$noparamsselected = $prestudent_id == '' && $reihungstest == '' && $datum_von == '' && $datum_bis == '' && $studiengang == '' && $semester == '' && $prestudent_ids == '';
//$maxeachline = 1;
foreach ($rtest as $rt)
{
@@ -3007,6 +3016,9 @@ else
echo '</td></tr>';
echo '<tr><td>';
echo 'PrestudentIn: <INPUT id="prestudent" type="text" name="prestudent_id" size="50" value="' . $prestudent_id . '" placeholder="Name, UID oder Prestudent_id eingeben"/><input type="hidden" id="prestudent_id" name="prestudent_id" value="' . $prestudent_id . '" />';
echo '</td></tr>';
echo '<tr><td>';
echo 'PrestudentIn (Mehrfachauswahl): <input name="prestudent_ids" disabled type="text" size="50" value="' . $prestudent_ids . '"/><input type="hidden" id="prestudent_ids" name="prestudent_ids" value="' . $prestudent_ids . '" />';
echo '</td></tr>
</table></td><td id="auswertencell">';
echo '<INPUT type="submit" class="btn btn-primary" value="Anzeigen" name="rtauswsubmit" id="auswertenButton"/><br><br>';
@@ -3015,6 +3027,7 @@ else
&datum_von=' . $datum_von . '
&datum_bis=' . $datum_bis . '
&prestudent_id=' . $prestudent_id . '
&' . http_build_query(array('prestudent_ids' => $prestudent_ids)) . '
&' . http_build_query(array('reihungstest' => $reihungstest)) . '
&orgform_kurzbz=' . $orgform_kurzbz . '
&stgtyp=' . $stgtyp . '
@@ -3068,6 +3081,7 @@ else
datum_von=' . $datum_von . '&
datum_bis=' . $datum_bis . '&
prestudent_id=' . $prestudent_id . '&
&' . http_build_query(array('prestudent_ids' => $prestudent_ids)) . '
&' . http_build_query(array('reihungstest' => $reihungstest)) . '">
<div class="row">';
echo '<div class="col-xs-12" id="miscfunctionscol">';