Chorverwaltung
This commit is contained in:
parent
2fe4e927ff
commit
7c84c994e8
@ -96,7 +96,7 @@ if(!isset($_SESSION['userid']) && isset($_COOKIE['identifier']) && isset($_COOKI
|
||||
}
|
||||
|
||||
if ($function == 'login') {
|
||||
$mail=strtoupper($_POST["mail"]); //remove case sensitivity on the mail
|
||||
$mail=mb_strtoupper($_POST["mail"]); //remove case sensitivity on the mail
|
||||
$password=$_POST["password"];
|
||||
|
||||
|
||||
|
258
controller/admin_memberupload.php
Normal file
258
controller/admin_memberupload.php
Normal file
@ -0,0 +1,258 @@
|
||||
<?php
|
||||
require_once ("../config.inc.php");
|
||||
$function = $_POST['function'];
|
||||
|
||||
if ($function == 'save_with_files')
|
||||
{
|
||||
|
||||
if (isset($_POST) && $_SERVER['REQUEST_METHOD'] == "POST")
|
||||
{
|
||||
## Dieses Script wird für jede Datei einzeln aufgerufen durch vpb_uploader.js. Bei 3 Dateien, 3x
|
||||
$vorname = $_POST['vorname'];
|
||||
$nachname = $_POST['nachname'];
|
||||
$mail = $_POST['mail'];
|
||||
#csid gesetzt, wenn Member bearbeitet wird
|
||||
$csid_edit = $_POST['csid_edit'];
|
||||
$singstimme = $_POST['singstimme'];
|
||||
$bemerkung = $db->real_escape_string(stripslashes( $_POST['bemerkung'] ));
|
||||
|
||||
// Fehlercheck funktioniert hier nicht. Das Script wird so oft aufgerufen wie Dateien angehängt werden. Bei mehreren Dateien ist spätestens nach dem zweiten Aufruf der Sänger vorhanden
|
||||
// $result = $db->query("SELECT count(*) Anz FROM jumi_chor_saenger WHERE mail = '$mail'");
|
||||
// $row = $result->fetch_array();
|
||||
//
|
||||
// #Fehlercheck
|
||||
// if ($row['Anz'] != "0") {
|
||||
// echo '<div class="alert alert-danger"><i class="fa fa-fw fa-thumbs-down"></i> User ist im System bereits vorhanden!</div>|***|error';
|
||||
// }
|
||||
if ($singstimme == '' or $vorname == '' or $nachname == '' or $mail == '') {
|
||||
echo '<div class="alert alert-danger"><i class="fa fa-fw fa-thumbs-down"></i> Es müssen alle Felder ausgefüllt werden!</div>|***|error';
|
||||
exit;
|
||||
}
|
||||
if (!filter_var($mail, FILTER_VALIDATE_EMAIL)) {
|
||||
echo '<div class="alert alert-danger"><i class="fa fa-fw fa-thumbs-down"></i> Geben Sie eine gültige Mailadresse ein!</div>|***|error';
|
||||
exit;
|
||||
}
|
||||
|
||||
$datum_file = date("Ymd_His_");
|
||||
#$vpb_file_name = strip_tags($_FILES['upload_file']['name']); //File Name
|
||||
$vpb_file_name = str_replace(array(
|
||||
"ä",
|
||||
"ö",
|
||||
"ü",
|
||||
"ß",
|
||||
"Ä",
|
||||
"Ö",
|
||||
"Ü",
|
||||
" "
|
||||
) , array(
|
||||
"ae",
|
||||
"oe",
|
||||
"ue",
|
||||
"ss",
|
||||
"Ae",
|
||||
"Oe",
|
||||
"Ue",
|
||||
"_"
|
||||
) , $_FILES['upload_file']['name']);
|
||||
$originalname = $_FILES['upload_file']['name'];
|
||||
$vpb_file_name = $datum_file . $vpb_file_name;
|
||||
$vpb_file_id = strip_tags($_POST['upload_file_ids']); // File id is gotten from the file name
|
||||
$vpb_file_size = $_FILES['upload_file']['size']; // File Size
|
||||
$vpb_uploaded_files_location = '../media/file_upload/member/'; //This is the directory where uploaded files are saved on your server
|
||||
$vpb_final_location = $vpb_uploaded_files_location . $vpb_file_name; //Directory to save file plus the file to be saved
|
||||
//Without Validation and does not save filenames in the database
|
||||
|
||||
|
||||
if (move_uploaded_file(strip_tags($_FILES['upload_file']['tmp_name']) , $vpb_final_location))
|
||||
{
|
||||
$datum = date("Y-m-d H:i:s");
|
||||
$result = $db->query("SELECT csid
|
||||
FROM jumi_chor_saenger
|
||||
WHERE vorname = '$vorname'
|
||||
AND nachname = '$nachname'
|
||||
AND singstimme = '$singstimme'
|
||||
");
|
||||
$row = $result->fetch_array();
|
||||
if ($row['csid'] == '' AND $csid_edit == '-1')
|
||||
{
|
||||
$sql1 = $db->query("INSERT INTO jumi_chor_saenger ( vorname
|
||||
, nachname
|
||||
, mail
|
||||
, singstimme
|
||||
, bemerkung
|
||||
)
|
||||
VALUES
|
||||
( '$vorname'
|
||||
, '$nachname'
|
||||
, '$mail'
|
||||
, '$singstimme'
|
||||
, '$bemerkung'
|
||||
)
|
||||
");
|
||||
$csid = $db->insert_id;
|
||||
}
|
||||
elseif($csid_edit != '-1')
|
||||
{
|
||||
$sql1 = $db->query( "UPDATE jumi_chor_saenger
|
||||
SET vorname = '$vorname'
|
||||
,nachname = '$nachname'
|
||||
,mail = '$mail'
|
||||
,singstimme = '$singstimme'
|
||||
,bemerkung = '$bemerkung'
|
||||
WHERE csid = $csid_edit
|
||||
" );
|
||||
$csid = $csid_edit;
|
||||
}
|
||||
else
|
||||
{
|
||||
$csid = $row['csid'];
|
||||
}
|
||||
|
||||
$sql2 = $db->query("INSERT INTO jumi_chor_saenger_uploads ( csid
|
||||
, filename
|
||||
, originalname
|
||||
, uid
|
||||
, datum
|
||||
)
|
||||
VALUES
|
||||
( $csid
|
||||
, '$vpb_final_location'
|
||||
, '$originalname'
|
||||
, $uid
|
||||
, '$datum'
|
||||
)
|
||||
");
|
||||
//Display the file id
|
||||
if ($sql2)
|
||||
{
|
||||
echo '<div class="alert alert-success"><i class="fa fa-fw fa-thumbs-up"></i> Dokumente wurden angelegt!</div>|***|success|***|' . $vpb_file_id;
|
||||
exit;
|
||||
}
|
||||
else
|
||||
{
|
||||
echo '<div class="alert alert-danger"><i class="fa fa-fw fa-thumbs-down"></i> Dokumente wurden nicht angelegt: Insert Fehler Datenbank.</div>|***|error|***|' . $vpb_file_id;
|
||||
exit;
|
||||
}
|
||||
|
||||
}
|
||||
else
|
||||
{
|
||||
//Display general system error
|
||||
echo 'general_system_error';
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
if ($function == 'save_without_files')
|
||||
{
|
||||
$vorname = $_POST['vorname'];
|
||||
$nachname = $_POST['nachname'];
|
||||
$mail = $_POST['mail'];
|
||||
$singstimme = $_POST['singstimme'];
|
||||
#csid gesetzt, wenn Member bearbeitet wird
|
||||
$csid_edit =$_POST['csid_edit'];
|
||||
$bemerkung = $db->real_escape_string(stripslashes( $_POST['bemerkung'] ));
|
||||
$db = dbconnect();
|
||||
$datum = date("Y-m-d H:i:s");
|
||||
|
||||
if($csid_edit == '-1'){
|
||||
$sql1 = $db->query("INSERT INTO jumi_chor_saenger ( vorname
|
||||
, nachname
|
||||
, mail
|
||||
, singstimme
|
||||
, bemerkung
|
||||
)
|
||||
VALUES
|
||||
( '$vorname'
|
||||
, '$nachname'
|
||||
, '$mail'
|
||||
, '$singstimme'
|
||||
, '$bemerkung'
|
||||
)
|
||||
");
|
||||
if ($sql1)
|
||||
{
|
||||
echo '<div class="alert alert-success"><i class="fa fa-fw fa-thumbs-up"></i> SägerIn wurde angelegt!</div>|***|success|***|';
|
||||
exit;
|
||||
}
|
||||
else
|
||||
{
|
||||
echo '<div class="alert alert-danger"><i class="fa fa-fw fa-thumbs-down"></i> SägerIn wurde nicht angelegt: Insert Fehler Datenbank.</div>|***|error';
|
||||
exit;
|
||||
}
|
||||
}else{
|
||||
$sql1 = $db->query( "UPDATE jumi_chor_saenger
|
||||
SET vorname = '$vorname'
|
||||
,nachname = '$nachname'
|
||||
,mail = '$mail'
|
||||
,singstimme = '$singstimme'
|
||||
,bemerkung = '$bemerkung'
|
||||
WHERE csid = $csid_edit
|
||||
" );
|
||||
if ($sql1)
|
||||
{
|
||||
echo '<div class="alert alert-success"><i class="fa fa-fw fa-thumbs-up"></i> SägerIn wurde bearbeitet!</div>|***|success|***|';
|
||||
exit;
|
||||
}
|
||||
else
|
||||
{
|
||||
echo '<div class="alert alert-danger"><i class="fa fa-fw fa-thumbs-down"></i> SägerIn nicht bearbeitet: Update Fehler Datenbank.</div>|***|error';
|
||||
exit;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
if ($function == 'delMemberFile') {
|
||||
if (isset($_POST['id'])) {
|
||||
$id = $_POST['id'];
|
||||
}
|
||||
|
||||
$result0 = $db->query("SELECT filename, csid
|
||||
FROM jumi_chor_saenger_uploads
|
||||
WHERE id = $id;");
|
||||
$row0 = $result0->fetch_array();
|
||||
|
||||
$stmt1 = $db->query("DELETE FROM jumi_chor_saenger_uploads WHERE id= $id");
|
||||
$del = unlink($row0['filename']);
|
||||
|
||||
if ($stmt1 AND $del) {
|
||||
echo '<div class="alert alert-success"><i class="fa fa-fw fa-thumbs-up"></i> Die Datei wurde gelöscht!</div>|***|success|***|'.$row0['csid'];
|
||||
exit;
|
||||
} else {
|
||||
echo '<div class="alert alert-danger"><i class="fa fa-fw fa-thumbs-down"></i> Die Datei wurde nicht gelöscht: DELETE Fehler Datenbank.</div>|***|success|***|'.$row0['csid'];
|
||||
exit;
|
||||
}
|
||||
}
|
||||
|
||||
if ($function == 'delMember') {
|
||||
if (isset($_POST['csid'])) {
|
||||
$csid = $_POST['csid'];
|
||||
}
|
||||
|
||||
$query = "SELECT id, filename, originalname FROM jumi_chor_saenger_uploads WHERE csid='$csid' ORDER BY datum DESC";
|
||||
$result = $db->query( $query)
|
||||
or die ("Cannot execute query1");
|
||||
|
||||
while ($row = $result->fetch_array()){
|
||||
$del = unlink($row['filename']);
|
||||
}
|
||||
|
||||
|
||||
$stmt1 = $db->query("DELETE FROM jumi_chor_saenger_uploads WHERE csid = $csid;");
|
||||
$stmt2 = $db->query("DELETE FROM jumi_chor_saenger WHERE csid = $csid");
|
||||
|
||||
|
||||
if ($stmt1 AND $stmt2) {
|
||||
echo '<div class="alert alert-success"><i class="fa fa-fw fa-thumbs-up"></i> SägerIn wurde gelöscht!</div>|***|success|***|'.$row0['csid'];
|
||||
exit;
|
||||
} else {
|
||||
echo '<div class="alert alert-danger"><i class="fa fa-fw fa-thumbs-down"></i> SägerIn wurde nicht gelöscht: DELETE Fehler Datenbank.</div>|***|success|***|'.$row0['csid'];
|
||||
exit;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
?>
|
149
controller/admin_notenbuch.php
Normal file
149
controller/admin_notenbuch.php
Normal file
@ -0,0 +1,149 @@
|
||||
<?php
|
||||
require_once("../config.inc.php");
|
||||
$function = $_POST['function'];
|
||||
|
||||
if ($function == 'notenbuchsave') {
|
||||
if (isset($_POST['notenbuch'])) {
|
||||
$notenbuch = $_POST['notenbuch'];
|
||||
}
|
||||
|
||||
$db = dbconnect();
|
||||
$result = $db->query("SELECT count(*) Anz FROM jumi_noten_zusammenstellung WHERE upper(bezeichnung)=upper('$notenbuch')");
|
||||
$row = $result->fetch_array();
|
||||
|
||||
if ($notenbuch == ''){ //verschlüsseltes Passwort überprüfen
|
||||
echo '<div class="alert alert-danger"><i class="fa fa-fw fa-thumbs-down"></i> Der Notenbuchname darf nicht leer sein.</div>|***|error';
|
||||
exit;
|
||||
}else if ($row['Anz'] > 0){ //verschlüsseltes Passwort überprüfen
|
||||
echo '<div class="alert alert-danger"><i class="fa fa-fw fa-thumbs-down"></i> Der Notenbuchname ist bereits vorhanden.</div>|***|error';
|
||||
exit;
|
||||
}else{
|
||||
|
||||
$sql1 = $db->query("INSERT INTO jumi_noten_zusammenstellung ( bezeichnung ) VALUES ( '$notenbuch' )");
|
||||
if($sql1){
|
||||
echo '<div class="alert alert-success"><i class="fa fa-fw fa-thumbs-up"></i> Der Notenbuchname wurde gespeichert!</div>|***|success';
|
||||
exit;
|
||||
}else{
|
||||
echo '<div class="alert alert-danger"><i class="fa fa-fw fa-thumbs-down"></i> Der Notenbuchname wurde nicht gespeichert: Insert Fehler Datenbank.</div>|***|error';
|
||||
exit;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
if ($function == 'erfzuordnung') {
|
||||
if (isset($_POST['jndid'])) {
|
||||
$jndid = $_POST['jndid'];
|
||||
}
|
||||
if (isset($_POST['zsid'])) {
|
||||
$zsid = $_POST['zsid'];
|
||||
}
|
||||
|
||||
$db = dbconnect();
|
||||
$sql1 = $db->query("INSERT INTO jumi_noten_zusammenstellung_zuord ( jndid, zsid) VALUES ( $jndid, $zsid )");
|
||||
if($sql1){
|
||||
echo '<div class="alert alert-success"><i class="fa fa-fw fa-thumbs-up"></i> Das Recht wurde zugewiesen!</div>|***|success|***|'.$jndid;
|
||||
exit;
|
||||
}else{
|
||||
echo '<div class="alert alert-danger"><i class="fa fa-fw fa-thumbs-down"></i> Das Recht wurde nicht zugewiesen: Insert Fehler Datenbank.</div>|***|error';
|
||||
exit;
|
||||
}
|
||||
}
|
||||
|
||||
if ($function == 'delzuordnung') {
|
||||
if (isset($_POST['jndid'])) {
|
||||
$jndid = $_POST['jndid'];
|
||||
}
|
||||
if (isset($_POST['zsid'])) {
|
||||
$zsid = $_POST['zsid'];
|
||||
}
|
||||
|
||||
$sql1 = $db->query("DELETE FROM jumi_noten_zusammenstellung_zuord WHERE jndid='$jndid' AND zsid='$zsid'");
|
||||
if($sql1){
|
||||
echo '<div class="alert alert-success"><i class="fa fa-fw fa-thumbs-up"></i> Das Recht wurde gelöscht!</div>|***|success|***|'.$jndid;
|
||||
exit;
|
||||
}else{
|
||||
echo '<div class="alert alert-danger"><i class="fa fa-fw fa-thumbs-down"></i> Das Recht wurde nicht gelöscht: DELETE Fehler Datenbank.</div>|***|error';
|
||||
exit;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
if ($function == 'erfuser') {
|
||||
if (isset($_POST['rid'])) {
|
||||
$rid = $_POST['rid'];
|
||||
}
|
||||
if (isset($_POST['uid'])) {
|
||||
$uid = $_POST['uid'];
|
||||
}
|
||||
|
||||
$db = dbconnect();
|
||||
$sql1 = $db->query("INSERT INTO jumi_admin_rollen_user_zuord ( rid, uid) VALUES ( $rid, $uid )");
|
||||
if($sql1){
|
||||
echo '<div class="alert alert-success"><i class="fa fa-fw fa-thumbs-up"></i> Der Benutzer wurde zugewiesen!</div>|***|success|***|'.$rid;
|
||||
exit;
|
||||
}else{
|
||||
echo '<div class="alert alert-danger"><i class="fa fa-fw fa-thumbs-down"></i> Der Benutzer wurde nicht zugewiesen: Insert Fehler Datenbank.</div>|***|error';
|
||||
exit;
|
||||
}
|
||||
}
|
||||
|
||||
if ($function == 'deluser') {
|
||||
if (isset($_POST['rid'])) {
|
||||
$rid = $_POST['rid'];
|
||||
}
|
||||
if (isset($_POST['uid'])) {
|
||||
$uid = $_POST['uid'];
|
||||
}
|
||||
|
||||
$sql1 = $db->query("DELETE FROM jumi_admin_rollen_user_zuord WHERE rid='$rid' AND uid='$uid'");
|
||||
if($sql1){
|
||||
echo '<div class="alert alert-success"><i class="fa fa-fw fa-thumbs-up"></i> Der Benutzer wurde gelöscht!</div>|***|success|***|'.$rid;
|
||||
exit;
|
||||
}else{
|
||||
echo '<div class="alert alert-danger"><i class="fa fa-fw fa-thumbs-down"></i> Der Benutzer wurde nicht gelöscht: DELETE Fehler Datenbank.</div>|***|error';
|
||||
exit;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
if ($function == 'delRole') {
|
||||
if (isset($_POST['rid'])) {
|
||||
$rid = $_POST['rid'];
|
||||
}
|
||||
|
||||
$stmt1 = $db->query("DELETE FROM jumi_admin_rollen_rechte_zuord WHERE rid= $rid");
|
||||
$stmt2 = $db->query("DELETE FROM jumi_admin_rollen_user_zuord WHERE rid= $rid");
|
||||
$stmt3 = $db->query("DELETE FROM jumi_admin_rolle WHERE rid= $rid");
|
||||
if ($stmt1 AND $stmt2 AND $stmt3) {
|
||||
echo '<div class="alert alert-success"><i class="fa fa-fw fa-thumbs-up"></i> Die Rolle wurde gelöscht!</div>|***|success';
|
||||
exit;
|
||||
} else {
|
||||
echo '<div class="alert alert-danger"><i class="fa fa-fw fa-thumbs-down"></i> Die Rolle wurde nicht gelöscht: DELETE Fehler Datenbank.</div>|***|error';
|
||||
exit;
|
||||
}
|
||||
}
|
||||
|
||||
/*
|
||||
|
||||
if ($function == 'deleteQuestion') {
|
||||
|
||||
$id2 = $_POST['id2'];
|
||||
|
||||
$stmt1 = $db->query("DELETE FROM jumi_umfragen_antworten WHERE ufid = $id2");
|
||||
$stmt2 = $db->query("DELETE FROM jumi_umfragen_fragen WHERE ufid = $id2");
|
||||
# ggf. bereis Abstimmergebnisse löschen
|
||||
|
||||
# Sonst werden keine neue Fragen erfasst
|
||||
# unset($_SESSION["umfrageerf_ufid"]);
|
||||
|
||||
|
||||
if ($stmt1 and $stmt2) {
|
||||
echo "Success";
|
||||
} else {
|
||||
echo "Error";
|
||||
}
|
||||
}
|
||||
|
||||
*/
|
||||
?>
|
@ -9,7 +9,10 @@ if ($function == 'save_with_files')
|
||||
{
|
||||
## Dieses Script wird für jede Datei einzeln aufgerufen durch vpb_uploader.js. Bei 3 Dateien, 3x
|
||||
$titel = $_POST['titel'];
|
||||
$songbook = $_POST['songbook'];
|
||||
$verlag = $_POST['verlag'];
|
||||
#csid gesetzt, wenn Member bearbeitet wird
|
||||
$jndid_edit = $_POST['jndid_edit'];
|
||||
$anz_lizenzen = $_POST['anz_lizenzen'];
|
||||
$streamlizenz = $_POST['streamlizenz'];
|
||||
|
||||
@ -57,22 +60,51 @@ if ($function == 'save_with_files')
|
||||
$vpb_final_location = $vpb_uploaded_files_location . $vpb_file_name; //Directory to save file plus the file to be saved
|
||||
//Without Validation and does not save filenames in the database
|
||||
|
||||
|
||||
# Wenn Songbook nicht vorhanden, dann neu anlegen
|
||||
$result_sb = $db->query("SELECT sbid
|
||||
FROM jumi_noten_songbook
|
||||
WHERE bezeichnung = '$songbook'
|
||||
LIMIT 1
|
||||
");
|
||||
$row_sb = $result_sb->fetch_array();
|
||||
if($row_sb['sbid'] == ''){
|
||||
$sql1 = $db->query("INSERT INTO jumi_noten_songbook ( bezeichnung ) VALUES ( '$songbook' )");
|
||||
$sbid = $db->insert_id;
|
||||
}else{
|
||||
$sbid=$row_sb['sbid'];
|
||||
}
|
||||
# Wenn Verlag nicht vorhanden, dann neu anlegen
|
||||
$result_vg = $db->query("SELECT vid
|
||||
FROM jumi_noten_verlag
|
||||
WHERE bezeichnung = '$verlag'
|
||||
LIMIT 1
|
||||
");
|
||||
$row_vg = $result_vg->fetch_array();
|
||||
if($row_vg['vid'] == ''){
|
||||
$sql1 = $db->query("INSERT INTO jumi_noten_verlag ( bezeichnung ) VALUES ( '$verlag' )");
|
||||
$vid = $db->insert_id;
|
||||
}else{
|
||||
$vid=$row_vg['vid'];
|
||||
}
|
||||
|
||||
if (move_uploaded_file(strip_tags($_FILES['upload_file']['tmp_name']) , $vpb_final_location))
|
||||
{
|
||||
$datum = date("Y-m-d H:i:s");
|
||||
|
||||
$result = $db->query("SELECT jndid
|
||||
FROM jumi_noten_daten
|
||||
WHERE titel = '$titel'
|
||||
AND verlag = '$verlag'
|
||||
AND vid = '$vid'
|
||||
AND sbid = '$sbid'
|
||||
AND anz_lizenzen = '$anz_lizenzen'
|
||||
AND streamlizenz = '$streamlizenz'
|
||||
");
|
||||
");
|
||||
$row = $result->fetch_array();
|
||||
if ($row['jndid'] == '')
|
||||
if ($row['jndid'] == '' AND $jndid_edit == '-1')
|
||||
{
|
||||
$sql1 = $db->query("INSERT INTO jumi_noten_daten ( titel
|
||||
, verlag
|
||||
, vid
|
||||
, sbid
|
||||
, anz_lizenzen
|
||||
, streamlizenz
|
||||
, uid
|
||||
@ -80,7 +112,8 @@ if ($function == 'save_with_files')
|
||||
)
|
||||
VALUES
|
||||
( '$titel'
|
||||
, '$verlag'
|
||||
, '$vid'
|
||||
, '$sbid'
|
||||
, '$anz_lizenzen'
|
||||
, '$streamlizenz'
|
||||
, $uid
|
||||
@ -89,6 +122,40 @@ if ($function == 'save_with_files')
|
||||
");
|
||||
$jndid = $db->insert_id;
|
||||
}
|
||||
elseif($jndid_edit != '-1')
|
||||
{
|
||||
$sql1 = $db->query( "UPDATE jumi_noten_daten
|
||||
SET titel = '$titel'
|
||||
,vid = '$vid'
|
||||
,sbid = '$sbid'
|
||||
,anz_lizenzen = '$anz_lizenzen'
|
||||
,streamlizenz = '$streamlizenz'
|
||||
,uid = '$uid'
|
||||
,datum = '$datum'
|
||||
WHERE jndid_ = $jndid_edit
|
||||
" );
|
||||
$jndid = $jndid_edit;
|
||||
|
||||
# Nicht verwendeter Verlag löschen
|
||||
$query = "SELECT vid FROM jumi_noten_verlag a WHERE vid NOT IN (SELECT vid FROM jumi_noten_daten b WHERE a.vid=b.vid); ";
|
||||
$result = $db->query( $query)
|
||||
or die ("Cannot execute query1");
|
||||
|
||||
while ($row = $result->fetch_array()){
|
||||
$de11 = $db->query( "DELETE FROM jumi_noten_verlag WHERE vid=$row[vid]" );
|
||||
}
|
||||
|
||||
|
||||
# Nicht verwendetes Songbok löschen
|
||||
$query2 = "SELECT sbid FROM jumi_noten_songbook a WHERE sbid NOT IN (SELECT sbid FROM jumi_noten_daten b WHERE a.sbid=b.sbid); ";
|
||||
$result2 = $db->query( $query2 )
|
||||
or die ("Cannot execute query2");
|
||||
|
||||
while ($row2 = $result2->fetch_array()){
|
||||
$de12 = $db->query( "DELETE FROM jumi_noten_songbook WHERE sbid=$row2[sbid]" );
|
||||
}
|
||||
|
||||
}
|
||||
else
|
||||
{
|
||||
$jndid = $row['jndid'];
|
||||
@ -132,66 +199,200 @@ if ($function == 'save_with_files')
|
||||
|
||||
if ($function == 'save_without_files')
|
||||
{
|
||||
if (isset($_POST['titel']))
|
||||
{
|
||||
$titel = $_POST['titel'];
|
||||
}
|
||||
if (isset($_POST['verlag']))
|
||||
{
|
||||
$songbook = $_POST['songbook'];
|
||||
$verlag = $_POST['verlag'];
|
||||
}
|
||||
if (isset($_POST['anz_lizenzen']))
|
||||
{
|
||||
$jndid_edit = $_POST['jndid_edit'];
|
||||
$anz_lizenzen = $_POST['anz_lizenzen'];
|
||||
}
|
||||
if (isset($_POST['streamlizenz']))
|
||||
{
|
||||
$streamlizenz = $_POST['streamlizenz'];
|
||||
}
|
||||
|
||||
if (isset($streamlizenz))
|
||||
{
|
||||
if ($streamlizenz == '1')
|
||||
if (isset($streamlizenz))
|
||||
{
|
||||
$streamlizenz = '1';
|
||||
if ($streamlizenz == '1')
|
||||
{
|
||||
$streamlizenz = '1';
|
||||
}
|
||||
else
|
||||
{
|
||||
$streamlizenz = '0';
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
$streamlizenz = '0';
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
$streamlizenz = '0';
|
||||
}
|
||||
|
||||
$db = dbconnect();
|
||||
|
||||
# Wenn Songbook nicht vorhanden, dann neu anlegen
|
||||
$result_sb = $db->query("SELECT sbid
|
||||
FROM jumi_noten_songbook
|
||||
WHERE bezeichnung = '$songbook'
|
||||
LIMIT 1
|
||||
");
|
||||
$row_sb = $result_sb->fetch_array();
|
||||
if($row_sb['sbid'] == ''){
|
||||
$sql1 = $db->query("INSERT INTO jumi_noten_songbook ( bezeichnung ) VALUES ( '$songbook' )");
|
||||
$sbid = $db->insert_id;
|
||||
}else{
|
||||
$sbid=$row_sb['sbid'];
|
||||
}
|
||||
|
||||
|
||||
# Wenn Verlag nicht vorhanden, dann neu anlegen
|
||||
$result_vg = $db->query("SELECT vid
|
||||
FROM jumi_noten_verlag
|
||||
WHERE bezeichnung = '$verlag'
|
||||
LIMIT 1
|
||||
");
|
||||
$row_vg = $result_vg->fetch_array();
|
||||
if($row_vg['vid'] == ''){
|
||||
$sql1 = $db->query("INSERT INTO jumi_noten_verlag ( bezeichnung ) VALUES ( '$verlag' )");
|
||||
$vid = $db->insert_id;
|
||||
}else{
|
||||
$vid=$row_vg['vid'];
|
||||
}
|
||||
|
||||
|
||||
$datum = date("Y-m-d H:i:s");
|
||||
$sql1 = $db->query("INSERT INTO jumi_noten_daten ( titel
|
||||
, verlag
|
||||
, anz_lizenzen
|
||||
, streamlizenz
|
||||
, uid
|
||||
, datum
|
||||
)
|
||||
VALUES
|
||||
( '$titel'
|
||||
, '$verlag'
|
||||
, '$anz_lizenzen'
|
||||
, '$streamlizenz'
|
||||
, $uid
|
||||
, '$datum'
|
||||
)
|
||||
");
|
||||
if ($sql1)
|
||||
{
|
||||
echo '<div class="alert alert-success"><i class="fa fa-fw fa-thumbs-up"></i> Noten wurden angelegt!</div>|***|success|***|';
|
||||
exit;
|
||||
}
|
||||
else
|
||||
{
|
||||
echo '<div class="alert alert-danger"><i class="fa fa-fw fa-thumbs-down"></i> Noten wurden nicht angelegt: Insert Fehler Datenbank.</div>|***|error';
|
||||
exit;
|
||||
if($jndid_edit == '-1'){
|
||||
$sql1 = $db->query("INSERT INTO jumi_noten_daten ( titel
|
||||
, vid
|
||||
, sbid
|
||||
, anz_lizenzen
|
||||
, streamlizenz
|
||||
, uid
|
||||
, datum
|
||||
)
|
||||
VALUES
|
||||
( '$titel'
|
||||
, '$vid'
|
||||
, '$sbid'
|
||||
, '$anz_lizenzen'
|
||||
, '$streamlizenz'
|
||||
, $uid
|
||||
, '$datum'
|
||||
)
|
||||
");
|
||||
if ($sql1)
|
||||
{
|
||||
echo '<div class="alert alert-success"><i class="fa fa-fw fa-thumbs-up"></i> Noten wurden bearbeitet!</div>|***|success|***|';
|
||||
exit;
|
||||
}
|
||||
else
|
||||
{
|
||||
echo '<div class="alert alert-danger"><i class="fa fa-fw fa-thumbs-down"></i> Noten wurden nicht bearbeitet: Insert Fehler Datenbank.</div>|***|error';
|
||||
exit;
|
||||
}
|
||||
}else{
|
||||
$sql1 = $db->query( "UPDATE jumi_noten_daten
|
||||
SET titel = '$titel'
|
||||
,vid = '$vid'
|
||||
,sbid = '$sbid'
|
||||
,anz_lizenzen = '$anz_lizenzen'
|
||||
,streamlizenz = '$streamlizenz'
|
||||
,uid = '$uid'
|
||||
,datum = '$datum'
|
||||
WHERE jndid = $jndid_edit
|
||||
" );
|
||||
|
||||
# Nicht verwendeter Verlag löschen
|
||||
$query = "SELECT vid FROM jumi_noten_verlag a WHERE vid NOT IN (SELECT vid FROM jumi_noten_daten b WHERE a.vid=b.vid); ";
|
||||
$result = $db->query( $query)
|
||||
or die ("Cannot execute query1");
|
||||
|
||||
while ($row = $result->fetch_array()){
|
||||
$de11 = $db->query( "DELETE FROM jumi_noten_verlag WHERE vid=$row[vid]" );
|
||||
}
|
||||
|
||||
|
||||
# Nicht verwendetes Songbok löschen
|
||||
$query2 = "SELECT sbid FROM jumi_noten_songbook a WHERE sbid NOT IN (SELECT sbid FROM jumi_noten_daten b WHERE a.sbid=b.sbid); ";
|
||||
$result2 = $db->query( $query2 )
|
||||
or die ("Cannot execute query2");
|
||||
|
||||
while ($row2 = $result2->fetch_array()){
|
||||
$de12 = $db->query( "DELETE FROM jumi_noten_songbook WHERE sbid=$row2[sbid]" );
|
||||
}
|
||||
|
||||
|
||||
if ($sql1)
|
||||
{
|
||||
echo '<div class="alert alert-success"><i class="fa fa-fw fa-thumbs-up"></i> Noten wurden bearbeitet!</div>|***|success|***|';
|
||||
exit;
|
||||
}
|
||||
else
|
||||
{
|
||||
echo '<div class="alert alert-danger"><i class="fa fa-fw fa-thumbs-down"></i> Noten wurden nicht bearbeitet: Update Fehler Datenbank.</div>|***|error';
|
||||
exit;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
if ($function == 'delNotenFile') {
|
||||
if (isset($_POST['id'])) {
|
||||
$id = $_POST['id'];
|
||||
}
|
||||
|
||||
$result0 = $db->query("SELECT filename, jndid
|
||||
FROM jumi_noten_uploads
|
||||
WHERE id = $id;");
|
||||
$row0 = $result0->fetch_array();
|
||||
|
||||
$stmt1 = $db->query("DELETE FROM jumi_noten_uploads WHERE id= $id");
|
||||
$del = unlink($row0['filename']);
|
||||
|
||||
if ($stmt1 AND $del) {
|
||||
echo '<div class="alert alert-success"><i class="fa fa-fw fa-thumbs-up"></i> Die Datei wurde gelöscht!</div>|***|success|***|'.$row0['jndid'];
|
||||
exit;
|
||||
} else {
|
||||
echo '<div class="alert alert-danger"><i class="fa fa-fw fa-thumbs-down"></i> Die Datei wurde nicht gelöscht: DELETE Fehler Datenbank.</div>|***|success|***|'.$row0['jndid'];
|
||||
exit;
|
||||
}
|
||||
}
|
||||
|
||||
if ($function == 'delNoten') {
|
||||
if (isset($_POST['jndid'])) {
|
||||
$jndid = $_POST['jndid'];
|
||||
}
|
||||
|
||||
$query = "SELECT id, filename, originalname FROM jumi_noten_uploads WHERE jndid='$jndid' ORDER BY datum DESC";
|
||||
$result = $db->query( $query)
|
||||
or die ("Cannot execute query1");
|
||||
|
||||
while ($row = $result->fetch_array()){
|
||||
$del = unlink($row['filename']);
|
||||
}
|
||||
|
||||
|
||||
$stmt1 = $db->query("DELETE FROM jumi_noten_uploads WHERE jndid = $jndid;");
|
||||
$stmt2 = $db->query("DELETE FROM jumi_noten_daten WHERE jndid = $jndid");
|
||||
|
||||
# Nicht verwendeter Verlag löschen
|
||||
$query = "SELECT vid FROM jumi_noten_verlag a WHERE vid NOT IN (SELECT vid FROM jumi_noten_daten b WHERE a.vid=b.vid); ";
|
||||
$result = $db->query( $query)
|
||||
or die ("Cannot execute query1");
|
||||
|
||||
while ($row = $result->fetch_array()){
|
||||
$de11 = $db->query( "DELETE FROM jumi_noten_verlag WHERE vid=$row[vid]" );
|
||||
}
|
||||
|
||||
|
||||
# Nicht verwendetes Songbok löschen
|
||||
$query2 = "SELECT sbid FROM jumi_noten_songbook a WHERE sbid NOT IN (SELECT sbid FROM jumi_noten_daten b WHERE a.sbid=b.sbid); ";
|
||||
$result2 = $db->query( $query2 )
|
||||
or die ("Cannot execute query2");
|
||||
|
||||
while ($row2 = $result2->fetch_array()){
|
||||
$de12 = $db->query( "DELETE FROM jumi_noten_songbook WHERE sbid=$row2[sbid]" );
|
||||
}
|
||||
|
||||
if ($stmt1 AND $stmt2) {
|
||||
echo '<div class="alert alert-success"><i class="fa fa-fw fa-thumbs-up"></i> SägerIn wurde gelöscht!</div>|***|success';
|
||||
exit;
|
||||
} else {
|
||||
echo '<div class="alert alert-danger"><i class="fa fa-fw fa-thumbs-down"></i> SägerIn wurde nicht gelöscht: DELETE Fehler Datenbank.</div>|***|success';
|
||||
exit;
|
||||
}
|
||||
}
|
||||
?>
|
@ -6,7 +6,7 @@ if ($function == 'titel')
|
||||
{
|
||||
if (isset($_POST["term"]))
|
||||
{
|
||||
$term = strtoupper(trim($_POST["term"]));
|
||||
$term = mb_strtoupper(trim($_POST["term"]));
|
||||
|
||||
$query = "SELECT distinct titel FROM jumi_noten_daten WHERE upper(titel) LIKE '%" . $term . "%'";
|
||||
$result = $db->query($query) or die("Cannot execute titel");
|
||||
@ -33,9 +33,9 @@ if ($function == 'verlag')
|
||||
{
|
||||
if (isset($_POST["term"]))
|
||||
{
|
||||
$term = strtoupper(trim($_POST["term"]));
|
||||
$term = mb_strtoupper(trim($_POST["term"]));
|
||||
|
||||
$query = "SELECT distinct verlag FROM jumi_noten_daten WHERE upper(verlag) LIKE '%" . $term . "%'";
|
||||
$query = "SELECT distinct bezeichnung FROM jumi_noten_verlag WHERE upper(bezeichnung) LIKE '%" . $term . "%'";
|
||||
$result = $db->query($query) or die("Cannot execute verlag");
|
||||
|
||||
if (mysqli_num_rows($result) > 0)
|
||||
@ -43,8 +43,35 @@ if ($function == 'verlag')
|
||||
while ($row = $result->fetch_array())
|
||||
{
|
||||
$output[] = array(
|
||||
"label" => $row['verlag'],
|
||||
"value" => $row['verlag']
|
||||
"label" => $row['bezeichnung'],
|
||||
"value" => $row['bezeichnung']
|
||||
);
|
||||
}
|
||||
#}else{
|
||||
# $output[] = array("label" => "keine Treffer");
|
||||
|
||||
}
|
||||
|
||||
echo json_encode($output);
|
||||
}
|
||||
}
|
||||
|
||||
if ($function == 'songbook')
|
||||
{
|
||||
if (isset($_POST["term"]))
|
||||
{
|
||||
$term = mb_strtoupper(trim($_POST["term"]));
|
||||
|
||||
$query = "SELECT distinct bezeichnung FROM jumi_noten_songbook WHERE upper(bezeichnung) LIKE '%" . $term . "%'";
|
||||
$result = $db->query($query) or die("Cannot execute verlag");
|
||||
|
||||
if (mysqli_num_rows($result) > 0)
|
||||
{
|
||||
while ($row = $result->fetch_array())
|
||||
{
|
||||
$output[] = array(
|
||||
"label" => $row['bezeichnung'],
|
||||
"value" => $row['bezeichnung']
|
||||
);
|
||||
}
|
||||
#}else{
|
||||
|
@ -31,36 +31,36 @@ if(isset($_GET['action'])){
|
||||
}
|
||||
|
||||
if($action == ''){
|
||||
/*
|
||||
# Daten aufbereiten für Zurückbutton
|
||||
if(isset($_SESSION["anlegen_vorname"])){
|
||||
$smarty->assign('user_anlegen_vorname', $_SESSION["anlegen_vorname"]);
|
||||
}
|
||||
|
||||
if(isset($_SESSION["anlegen_nachname"])){
|
||||
$smarty->assign('user_anlegen_nachname', $_SESSION["anlegen_nachname"]);
|
||||
}
|
||||
if(isset($_GET['editcsid']) and $_GET['editcsid'] != ''){
|
||||
# Aus externer Seite edit_user.php
|
||||
#echo "<br><br><br><br><br><br><br><br>-----------------------------------------------hier";
|
||||
$csid = $_GET['editcsid'];
|
||||
$smarty->assign('create_edit', $csid);
|
||||
|
||||
$result0 = $db->query("SELECT vorname, nachname, mail, singstimme, bemerkung
|
||||
FROM jumi_chor_saenger
|
||||
WHERE csid = $csid;");
|
||||
$row0 = $result0->fetch_array();
|
||||
$smarty->assign('member_anlegen_vorname', $row0['vorname']);
|
||||
$smarty->assign('member_anlegen_nachname', $row0['nachname']);
|
||||
$smarty->assign('member_anlegen_mail', $row0['mail']);
|
||||
$smarty->assign('member_anlegen_singstimme', $row0['singstimme']);
|
||||
$smarty->assign('member_anlegen_bemerkung', $row0['bemerkung']);
|
||||
|
||||
$query = "SELECT id, filename, originalname, date_format(datum, '%d.%m.%y - %H:%i') uploaddatum FROM jumi_chor_saenger_uploads WHERE csid='$csid' ORDER BY datum DESC";
|
||||
$result = $db->query( $query)
|
||||
or die ("Cannot execute query1");
|
||||
|
||||
if(isset($_SESSION["anlegen_mail"])){
|
||||
$smarty->assign('user_anlegen_mail', $_SESSION["anlegen_mail"]);
|
||||
}
|
||||
# Daten aufbereiten für Zurückbutton ENDE
|
||||
*/
|
||||
# if(isset($_GET['edituid']) and $_GET['edituid'] != ''){
|
||||
# # Aus externer Seite edit_user.php
|
||||
# #echo "<br><br><br><br><br><br><br><br>-----------------------------------------------hier";
|
||||
# $uid = $_GET['edituid'];
|
||||
# $smarty->assign('create_edit', $uid);
|
||||
#
|
||||
# $result0 = $db->query("SELECT vorname, nachname, mail
|
||||
# FROM jumi_admin
|
||||
# WHERE uid = $uid;");
|
||||
# $row0 = $result0->fetch_array();
|
||||
# $smarty->assign('member_anlegen_vorname', $row0['vorname']);
|
||||
# $smarty->assign('member_anlegen_nachname', $row0['nachname']);
|
||||
# $smarty->assign('member_anlegen_mail', $row0['mail']);
|
||||
# }
|
||||
#
|
||||
while ($row = $result->fetch_array()){
|
||||
$value[] = $row;
|
||||
}
|
||||
$smarty->assign('table_data', $value);
|
||||
|
||||
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
}
|
||||
|
61
dashboard/edit_member.php
Normal file
61
dashboard/edit_member.php
Normal file
@ -0,0 +1,61 @@
|
||||
<?php
|
||||
if (!isset($_SESSION)) {
|
||||
session_start();
|
||||
}
|
||||
/*
|
||||
# Fuer debugging
|
||||
error_reporting(E_ALL);
|
||||
ini_set('display_errors', 1);
|
||||
#echo __LINE__."<br>";
|
||||
*/
|
||||
include_once '../classes/TestProjektSmarty.class_subdir.php';
|
||||
$_SESSION['cur_page'] = $_SERVER['PHP_SELF']; // Fals man Seite direkt aufruft und Autologin funktioniert
|
||||
require_once("../config.inc.php");
|
||||
$templatename = substr(basename($_SERVER['PHP_SELF']), 0, -3) . "html";
|
||||
$smarty = new SmartyAdmin();
|
||||
if(!rechte(basename(__FILE__), $uid)){
|
||||
echo "<meta http-equiv=\"refresh\" content=\"0; URL=error.php\">";
|
||||
exit;
|
||||
}
|
||||
require_once "../language/german.inc.php";
|
||||
|
||||
|
||||
|
||||
|
||||
// Rechteüberprüfung
|
||||
#$db = dbconnect();
|
||||
#if ($user_admin == ""){ require("index.php"); exit;} //Wenn man nicht angemeldet ist, darf man nicht auf die Seite
|
||||
#if(!rore($user_admin,'a_admanleg','RE')){require("lib/rechte.php");exit;}
|
||||
#// Rechteüberprüfung ende
|
||||
|
||||
if(isset($_GET['action'])){
|
||||
$action = $_GET['action'];
|
||||
}else{
|
||||
$action = '';
|
||||
}
|
||||
|
||||
if($action == ''){
|
||||
|
||||
$query = "SELECT csid, vorname, nachname, mail,
|
||||
CASE
|
||||
WHEN singstimme = 1 THEN 'Sopran'
|
||||
WHEN singstimme = 2 THEN 'Alt'
|
||||
WHEN singstimme = 3 THEN 'Tenor'
|
||||
WHEN singstimme = 4 THEN 'Baß'
|
||||
END singstimme
|
||||
FROM jumi_chor_saenger ORDER BY nachname ASC, vorname ASC;";
|
||||
$result = $db->query( $query)
|
||||
or die ("Cannot execute query1");
|
||||
|
||||
while ($row = $result->fetch_array()){
|
||||
$value[] = $row;
|
||||
}
|
||||
$smarty->assign('table_data', $value);
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
$smarty->assign('action', "$action");
|
||||
$smarty->display("$template/dashboard/$templatename");
|
||||
?>
|
64
dashboard/edit_noten.php
Normal file
64
dashboard/edit_noten.php
Normal file
@ -0,0 +1,64 @@
|
||||
<?php
|
||||
if (!isset($_SESSION)) {
|
||||
session_start();
|
||||
}
|
||||
/*
|
||||
# Fuer debugging
|
||||
error_reporting(E_ALL);
|
||||
ini_set('display_errors', 1);
|
||||
#echo __LINE__."<br>";
|
||||
*/
|
||||
include_once '../classes/TestProjektSmarty.class_subdir.php';
|
||||
$_SESSION['cur_page'] = $_SERVER['PHP_SELF']; // Fals man Seite direkt aufruft und Autologin funktioniert
|
||||
require_once("../config.inc.php");
|
||||
$templatename = substr(basename($_SERVER['PHP_SELF']), 0, -3) . "html";
|
||||
$smarty = new SmartyAdmin();
|
||||
if(!rechte(basename(__FILE__), $uid)){
|
||||
echo "<meta http-equiv=\"refresh\" content=\"0; URL=error.php\">";
|
||||
exit;
|
||||
}
|
||||
require_once "../language/german.inc.php";
|
||||
|
||||
|
||||
|
||||
|
||||
// Rechteüberprüfung
|
||||
#$db = dbconnect();
|
||||
#if ($user_admin == ""){ require("index.php"); exit;} //Wenn man nicht angemeldet ist, darf man nicht auf die Seite
|
||||
#if(!rore($user_admin,'a_admanleg','RE')){require("lib/rechte.php");exit;}
|
||||
#// Rechteüberprüfung ende
|
||||
|
||||
if(isset($_GET['action'])){
|
||||
$action = $_GET['action'];
|
||||
}else{
|
||||
$action = '';
|
||||
}
|
||||
|
||||
if($action == ''){
|
||||
|
||||
$query = "SELECT a. jndid, titel, anz_lizenzen, streamlizenz, b.bezeichnung songbook, c.bezeichnung verlag
|
||||
FROM jumi_noten_daten a, jumi_noten_songbook b, jumi_noten_verlag c
|
||||
WHERE a.sbid=b.sbid
|
||||
AND a.vid=c.vid
|
||||
ORDER BY titel ASC;";
|
||||
$result = $db->query( $query)
|
||||
or die ("Cannot execute query1");
|
||||
|
||||
while ($row = $result->fetch_array()){
|
||||
if($row['streamlizenz'] == '1'){
|
||||
$streamlizenz_vorh = "Ja";
|
||||
}else{
|
||||
$streamlizenz_vorh = "Nein";
|
||||
}
|
||||
$row['streamlizenz_vorh'] = $streamlizenz_vorh;
|
||||
$value[] = $row;
|
||||
}
|
||||
$smarty->assign('table_data', $value);
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
$smarty->assign('action', "$action");
|
||||
$smarty->display("$template/dashboard/$templatename");
|
||||
?>
|
46
dashboard/notenbuch.php
Normal file
46
dashboard/notenbuch.php
Normal file
@ -0,0 +1,46 @@
|
||||
<?php
|
||||
if (!isset($_SESSION)) {
|
||||
session_start();
|
||||
}
|
||||
include_once '../classes/TestProjektSmarty.class_subdir.php';
|
||||
$_SESSION['cur_page'] = $_SERVER['PHP_SELF']; // Fals man Seite direkt aufruft und Autologin funktioniert
|
||||
require_once("../config.inc.php");
|
||||
$templatename = substr(basename($_SERVER['PHP_SELF']), 0, -3) . "html";
|
||||
$smarty = new SmartyAdmin();
|
||||
if(!rechte(basename(__FILE__), $uid)){
|
||||
echo "<meta http-equiv=\"refresh\" content=\"0; URL=error.php\">";
|
||||
exit;
|
||||
}
|
||||
require_once "../language/german.inc.php";
|
||||
|
||||
|
||||
|
||||
if (isset($_GET['action'])) {
|
||||
$action = $_GET['action'];
|
||||
} else {
|
||||
$action = '';
|
||||
}
|
||||
|
||||
|
||||
if ($action == '') {
|
||||
|
||||
# Gespeicherte Werte
|
||||
$query = "SELECT zsid, bezeichnung
|
||||
FROM jumi_noten_zusammenstellung
|
||||
ORDER BY bezeichnung ASC";
|
||||
|
||||
$result = $db->query($query) or die("Cannot execute query");
|
||||
|
||||
while ($row = $result->fetch_array()) {
|
||||
$table_data[] = $row;
|
||||
}
|
||||
$smarty->assign('table_data', $table_data);
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
$smarty->assign('action', "$action");
|
||||
$smarty->display("$template/dashboard/$templatename");
|
||||
|
||||
?>
|
64
dashboard/notenbuchzuordnung.php
Normal file
64
dashboard/notenbuchzuordnung.php
Normal file
@ -0,0 +1,64 @@
|
||||
<?php
|
||||
if (!isset($_SESSION)) {
|
||||
session_start();
|
||||
}
|
||||
include_once '../classes/TestProjektSmarty.class_subdir.php';
|
||||
require_once("../config.inc.php");
|
||||
$templatename = substr(basename($_SERVER['PHP_SELF']), 0, -3) . "html";
|
||||
$smarty = new SmartyAdmin();
|
||||
if(!rechte('rollen.php', $uid)){
|
||||
echo "<meta http-equiv=\"refresh\" content=\"0; URL=error.php\">";
|
||||
exit;
|
||||
}
|
||||
require_once "../language/german.inc.php";
|
||||
|
||||
|
||||
|
||||
if (isset($_GET['action'])) {
|
||||
$action = $_GET['action'];
|
||||
} else {
|
||||
$action = '';
|
||||
}
|
||||
|
||||
|
||||
if ($action == '') {
|
||||
if (isset($_GET['edit'])) {
|
||||
$zsid = $_GET['edit'];
|
||||
$smarty->assign('rollen_edit', $zsid);
|
||||
}
|
||||
|
||||
$result_head = $db->query("SELECT bezeichnung FROM jumi_noten_zusammenstellung WHERE zsid=$zsid");
|
||||
$row_head = $result_head->fetch_array();
|
||||
$smarty->assign('notenbuchzuordnung_bezeichnung', $row_head['bezeichnung']);
|
||||
|
||||
# Nicht zugewiesene Noten
|
||||
$query = "SELECT jndid, titel
|
||||
FROM jumi_noten_daten
|
||||
WHERE jndid NOT IN (SELECT jndid FROM jumi_noten_zusammenstellung_zuord WHERE zsid=$zsid)
|
||||
ORDER BY jndid ASC";
|
||||
|
||||
$result = $db->query($query) or die("Cannot execute query");
|
||||
|
||||
while ($row = $result->fetch_array()) {
|
||||
$table_data[] = $row;
|
||||
}
|
||||
$smarty->assign('table_data', $table_data);
|
||||
|
||||
# Zugewiesene Noten
|
||||
$query1 = "SELECT jndid, titel
|
||||
FROM jumi_noten_daten
|
||||
WHERE jndid IN (SELECT jndid FROM jumi_noten_zusammenstellung_zuord WHERE zsid=$zsid)
|
||||
ORDER BY jndid ASC";
|
||||
|
||||
$result1 = $db->query($query1) or die("Cannot execute query2");
|
||||
|
||||
while ($row1 = $result1->fetch_array()) {
|
||||
$table_data1[] = $row1;
|
||||
}
|
||||
$smarty->assign('table_data1', $table_data1);
|
||||
|
||||
}
|
||||
|
||||
$smarty->assign('action', "$action");
|
||||
$smarty->display("$template/dashboard/$templatename");
|
||||
?>
|
@ -14,6 +14,34 @@ if(!rechte('__noright__', $uid)){
|
||||
$templatename = substr(basename($_SERVER['PHP_SELF']), 0, -3) . "html";
|
||||
require_once "../language/german.inc.php";
|
||||
|
||||
if(isset($_GET['editjndid']) and $_GET['editjndid'] != ''){
|
||||
# Aus externer Seite edit_user.php
|
||||
#echo "<br><br><br><br><br><br><br><br>-----------------------------------------------hier";
|
||||
$jndid = $_GET['editjndid'];
|
||||
$smarty->assign('create_edit', $jndid);
|
||||
|
||||
$result0 = $db->query("SELECT a. jndid, titel, anz_lizenzen, streamlizenz, b.bezeichnung songbook, c.bezeichnung verlag
|
||||
FROM jumi_noten_daten a, jumi_noten_songbook b, jumi_noten_verlag c
|
||||
WHERE a.sbid=b.sbid
|
||||
AND a.vid=c.vid
|
||||
AND a.jndid = $jndid
|
||||
ORDER BY titel ASC;");
|
||||
$row0 = $result0->fetch_array();
|
||||
$smarty->assign('notenupload_titel', $row0['titel']);
|
||||
$smarty->assign('notenupload_anz_lizenzen', $row0['anz_lizenzen']);
|
||||
$smarty->assign('notenupload_streamlizenz', $row0['streamlizenz']);
|
||||
$smarty->assign('notenupload_songbook', $row0['songbook']);
|
||||
$smarty->assign('notenupload_verlag', $row0['verlag']);
|
||||
|
||||
$query = "SELECT id, filename, originalname, date_format(datum, '%d.%m.%y - %H:%i') uploaddatum FROM jumi_noten_uploads WHERE jndid='$jndid' ORDER BY datum DESC";
|
||||
$result = $db->query( $query)
|
||||
or die ("Cannot execute query1");
|
||||
|
||||
while ($row = $result->fetch_array()){
|
||||
$value[] = $row;
|
||||
}
|
||||
$smarty->assign('table_data', $value);
|
||||
}
|
||||
|
||||
$smarty->assign('action', "$action");
|
||||
$smarty->display("modern/dashboard/$templatename");
|
||||
|
@ -16,10 +16,6 @@ require_once "../language/german.inc.php";
|
||||
|
||||
|
||||
|
||||
$result_name = $db->query("SELECT vorname, nachname, mail FROM jumi_admin WHERE uid='$uid'");
|
||||
$row_name = $result_name->fetch_array();
|
||||
$smarty->assign('startseite_name', "$row_name[vorname] $row_name[nachname]");
|
||||
|
||||
|
||||
$smarty->assign('action', "$action");
|
||||
$smarty->display("modern/dashboard/$templatename");
|
||||
|
202
js/components/admin_notenbuch.js
Normal file
202
js/components/admin_notenbuch.js
Normal file
@ -0,0 +1,202 @@
|
||||
function notenbuchsave(){
|
||||
var notenbuch = document.getElementById("notenbuchname").value;
|
||||
$.ajax({
|
||||
type: 'POST',
|
||||
url: '../controller/admin_notenbuch.php',
|
||||
data: {
|
||||
'function': 'notenbuchsave',
|
||||
'notenbuch': notenbuch
|
||||
},
|
||||
success: function(result) { //we got the response
|
||||
if(result!=''){
|
||||
var a = result.split('|***|');
|
||||
if(a[1]=="success"){
|
||||
setTimeout(function() {
|
||||
document.getElementById("notenbuchname").value ="";
|
||||
window.location = "?";
|
||||
}, 2000);
|
||||
}
|
||||
$('#msg').show().delay(2000).fadeOut(500);
|
||||
$('#msg').html(a[0]);
|
||||
}
|
||||
},
|
||||
error: function(xhr, status, exception) {
|
||||
console.log(xhr);
|
||||
}
|
||||
});
|
||||
|
||||
}
|
||||
|
||||
function erfzuordnung(jndid, zsid) {
|
||||
|
||||
$.ajax({
|
||||
type: 'POST',
|
||||
url: '../controller/admin_notenbuch.php',
|
||||
data: {
|
||||
'function': 'erfzuordnung',
|
||||
'jndid': jndid,
|
||||
'zsid': zsid
|
||||
},
|
||||
success: function(result) { //we got the response
|
||||
if(result!=''){
|
||||
var a = result.split('|***|');
|
||||
if(a[1]=="success"){
|
||||
setTimeout(function() {
|
||||
// Refresh Modal
|
||||
var value = a[2];
|
||||
// load the url and show modal on success
|
||||
$("#ZuordnungModal .modal-body").load('notenbuchzuordnung.php?edit='+value, function() {
|
||||
$("#ZuordnungModal").modal("show");
|
||||
});
|
||||
}, 2000);
|
||||
}
|
||||
$('#msg').show().delay(2000).fadeOut(500);
|
||||
$('#msg').html(a[0]);
|
||||
}
|
||||
},
|
||||
error: function(xhr, status, exception) {
|
||||
console.log(xhr);
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
function delzuordnung(jndid, zsid) {
|
||||
|
||||
|
||||
$.ajax({
|
||||
type: 'POST',
|
||||
url: '../controller/admin_notenbuch.php',
|
||||
data: {
|
||||
'function': 'delzuordnung',
|
||||
'jndid': jndid,
|
||||
'zsid': zsid
|
||||
},
|
||||
success: function(result) { //we got the response
|
||||
if(result!=''){
|
||||
var a = result.split('|***|');
|
||||
if(a[1]=="success"){
|
||||
setTimeout(function() {
|
||||
// Refresh Modal
|
||||
var value = a[2];
|
||||
// load the url and show modal on success
|
||||
$("#ZuordnungModal .modal-body").load('notenbuchzuordnung.php?edit='+value, function() {
|
||||
$("#ZuordnungModal").modal("show");
|
||||
});
|
||||
}, 2000);
|
||||
}
|
||||
$('#msg').show().delay(2000).fadeOut(500);
|
||||
$('#msg').html(a[0]);
|
||||
}
|
||||
},
|
||||
error: function(xhr, status, exception) {
|
||||
console.log(xhr);
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
/*
|
||||
|
||||
function erfuser(val) {
|
||||
var param = val.split('|');
|
||||
var uid = param[0];
|
||||
var rid = param[1];
|
||||
|
||||
$.ajax({
|
||||
type: 'POST',
|
||||
url: '../controller/admin_notenbuch.php',
|
||||
data: {
|
||||
'function': 'erfuser',
|
||||
'uid': uid,
|
||||
'rid': rid
|
||||
},
|
||||
success: function(result) { //we got the response
|
||||
if(result!=''){
|
||||
var a = result.split('|***|');
|
||||
if(a[1]=="success"){
|
||||
$(document).ajaxStop(function(){
|
||||
// Refresh Modal
|
||||
var value = a[2];
|
||||
// load the url and show modal on success
|
||||
$("#ZuordnungModal .modal-body").load('userzuordnung.php?edit='+value, function() {
|
||||
$("#ZuordnungModal").modal("show");
|
||||
});
|
||||
});
|
||||
}
|
||||
$('#msg').show().delay(5000).fadeOut(500);
|
||||
$('#msg').html(a[0]);
|
||||
}
|
||||
},
|
||||
error: function(xhr, status, exception) {
|
||||
console.log(xhr);
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
function deluser(val) {
|
||||
var param = val.split('|');
|
||||
var uid = param[0];
|
||||
var rid = param[1];
|
||||
|
||||
$.ajax({
|
||||
type: 'POST',
|
||||
url: '../controller/admin_notenbuch.php',
|
||||
data: {
|
||||
'function': 'deluser',
|
||||
'uid': uid,
|
||||
'rid': rid
|
||||
},
|
||||
success: function(result) { //we got the response
|
||||
if(result!=''){
|
||||
var a = result.split('|***|');
|
||||
if(a[1]=="success"){
|
||||
$(document).ajaxStop(function(){
|
||||
|
||||
// Refresh Modal
|
||||
var value = a[2];
|
||||
// load the url and show modal on success
|
||||
$("#ZuordnungModal .modal-body").load('userzuordnung.php?edit='+value, function() {
|
||||
$("#ZuordnungModal").modal("show");
|
||||
});
|
||||
});
|
||||
}
|
||||
$('#msg').show().delay(10000).fadeOut(500);
|
||||
$('#msg').html(a[0]);
|
||||
}
|
||||
},
|
||||
error: function(xhr, status, exception) {
|
||||
console.log(xhr);
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
|
||||
|
||||
function delRole(rid) {
|
||||
r = confirm('Rolle löschen? Benutzer sind dann unzugeordnet!');
|
||||
if (r) {
|
||||
$.ajax({
|
||||
type: 'POST',
|
||||
url: '../controller/admin_notenbuch.php',
|
||||
data: {
|
||||
'function': 'delRole',
|
||||
'rid': rid
|
||||
},
|
||||
success: function(result) { //we got the response
|
||||
if(result!=''){
|
||||
var a = result.split('|***|');
|
||||
if(a[1]=="success"){
|
||||
$(document).ajaxStop(function(){
|
||||
window.location = "?";
|
||||
});
|
||||
}
|
||||
$('#msg').show().delay(10000).fadeOut(500);
|
||||
$('#msg').html(a[0]);
|
||||
}
|
||||
},
|
||||
error: function(xhr, status, exception) {
|
||||
console.log(xhr);
|
||||
}
|
||||
});
|
||||
}
|
||||
}
|
||||
*/
|
@ -36,3 +36,21 @@ $("#verlag").autocomplete({
|
||||
}, {
|
||||
minLength: 2
|
||||
});
|
||||
|
||||
$("#songbook").autocomplete({
|
||||
source: function(request, response) {
|
||||
$.ajax({
|
||||
type: "POST",
|
||||
url: "../controller/admin_suche.php",
|
||||
data: {
|
||||
term: request.term,
|
||||
function: "songbook"
|
||||
},
|
||||
success: response,
|
||||
dataType: 'json',
|
||||
delay: 10
|
||||
});
|
||||
}
|
||||
}, {
|
||||
minLength: 2
|
||||
});
|
||||
|
@ -1,350 +1,434 @@
|
||||
function vpb_multiple_file_uploader(vpb_configuration_settings) {
|
||||
this.vpb_settings = vpb_configuration_settings;
|
||||
this.vpb_files = "";
|
||||
this.vpb_browsed_files = []
|
||||
var self = this;
|
||||
var vpb_msg = "Sorry, your browser does not support this application. Thank You!";
|
||||
|
||||
//Get all browsed file extensions
|
||||
function vpb_file_ext(file) {
|
||||
return (/[.]/.exec(file)) ? /[^.]+$/.exec(file.toLowerCase()) : '';
|
||||
}
|
||||
|
||||
/* Display added files which are ready for upload */
|
||||
//with their file types, names, size, date last modified along with an option to remove an unwanted file
|
||||
vpb_multiple_file_uploader.prototype.vpb_show_added_files = function(vpb_value) {
|
||||
this.vpb_files = vpb_value;
|
||||
if (this.vpb_files.length > 0) {
|
||||
var vpb_added_files_displayer = vpb_file_id = "";
|
||||
for (var i = 0; i < this.vpb_files.length; i++) {
|
||||
//Use the names of the files without their extensions as their ids
|
||||
var files_name_without_extensions = this.vpb_files[i].name.substr(0, this.vpb_files[i].name.lastIndexOf('.')) || this.vpb_files[i].name;
|
||||
vpb_file_id = files_name_without_extensions.replace(/[^a-z0-9\s]/gi, '').replace(/[_\s]/g, '');
|
||||
|
||||
var vpb_file_to_add = vpb_file_ext(this.vpb_files[i].name);
|
||||
var vpb_class = $("#added_class").val();
|
||||
var vpb_file_icon;
|
||||
|
||||
//Check and display File Size
|
||||
var vpb_fileSize = (this.vpb_files[i].size / 1024);
|
||||
if (vpb_fileSize / 1024 > 1) {
|
||||
if (((vpb_fileSize / 1024) / 1024) > 1) {
|
||||
vpb_fileSize = (Math.round(((vpb_fileSize / 1024) / 1024) * 100) / 100);
|
||||
var vpb_actual_fileSize = vpb_fileSize + " GB";
|
||||
} else {
|
||||
vpb_fileSize = (Math.round((vpb_fileSize / 1024) * 100) / 100)
|
||||
var vpb_actual_fileSize = vpb_fileSize + " MB";
|
||||
}
|
||||
} else {
|
||||
vpb_fileSize = (Math.round(vpb_fileSize * 100) / 100)
|
||||
var vpb_actual_fileSize = vpb_fileSize + " KB";
|
||||
}
|
||||
|
||||
//Check and display the date that files were last modified
|
||||
var vpb_date_last_modified = new Date(this.vpb_files[i].lastModifiedDate);
|
||||
var dd = vpb_date_last_modified.getDate();
|
||||
var mm = vpb_date_last_modified.getMonth() + 1;
|
||||
var yyyy = vpb_date_last_modified.getFullYear();
|
||||
var vpb_date_last_modified_file = dd + '/' + mm + '/' + yyyy;
|
||||
|
||||
//File Display Classes
|
||||
if (vpb_class == 'vpb_blue') {
|
||||
var new_classc = 'vpb_white';
|
||||
} else {
|
||||
var new_classc = 'vpb_blue';
|
||||
}
|
||||
|
||||
|
||||
if (typeof this.vpb_files[i] != undefined && this.vpb_files[i].name != "") {
|
||||
//Check for the type of file browsed so as to represent each file with the appropriate file icon
|
||||
|
||||
if (vpb_file_to_add == "jpg" || vpb_file_to_add == "JPG" || vpb_file_to_add == "jpeg" || vpb_file_to_add == "JPEG" || vpb_file_to_add == "gif" || vpb_file_to_add == "GIF" || vpb_file_to_add == "png" || vpb_file_to_add == "PNG") {
|
||||
vpb_file_icon = '<img src="../media/file_upload_images/images_file.gif" align="absmiddle" border="0" alt="" />';
|
||||
} else if (vpb_file_to_add == "doc" || vpb_file_to_add == "docx" || vpb_file_to_add == "rtf" || vpb_file_to_add == "DOC" || vpb_file_to_add == "DOCX") {
|
||||
vpb_file_icon = '<img src="../media/file_upload_images/doc.gif" align="absmiddle" border="0" alt="" />';
|
||||
} else if (vpb_file_to_add == "pdf" || vpb_file_to_add == "PDF") {
|
||||
vpb_file_icon = '<img src="../media/file_upload_images/pdf.gif" align="absmiddle" border="0" alt="" />';
|
||||
} else if (vpb_file_to_add == "txt" || vpb_file_to_add == "TXT" || vpb_file_to_add == "RTF") {
|
||||
vpb_file_icon = '<img src="../media/file_upload_images/txt.png" align="absmiddle" border="0" alt="" />';
|
||||
} else if (vpb_file_to_add == "php") {
|
||||
vpb_file_icon = '<img src="../media/file_upload_images/php.png" align="absmiddle" border="0" alt="" />';
|
||||
} else if (vpb_file_to_add == "css") {
|
||||
vpb_file_icon = '<img src="../media/file_upload_images/general.png" align="absmiddle" border="0" alt="" />';
|
||||
} else if (vpb_file_to_add == "js") {
|
||||
vpb_file_icon = '<img src="../media/file_upload_images/general.png" align="absmiddle" border="0" alt="" />';
|
||||
} else if (vpb_file_to_add == "html" || vpb_file_to_add == "HTML" || vpb_file_to_add == "htm" || vpb_file_to_add == "HTM") {
|
||||
vpb_file_icon = '<img src="../media/file_upload_images/html.png" align="absmiddle" border="0" alt="" />';
|
||||
} else if (vpb_file_to_add == "setup") {
|
||||
vpb_file_icon = '<img src="../media/file_upload_images/setup.gif" align="absmiddle" border="0" alt="" />';
|
||||
} else if (vpb_file_to_add == "video") {
|
||||
vpb_file_icon = '<img src="../media/file_upload_images/video.gif" align="absmiddle" border="0" alt="" />';
|
||||
} else if (vpb_file_to_add == "real") {
|
||||
vpb_file_icon = '<img src="../media/file_upload_images/real.gif" align="absmiddle" border="0" alt="" />';
|
||||
} else if (vpb_file_to_add == "psd") {
|
||||
vpb_file_icon = '<img src="../media/file_upload_images/psd.gif" align="absmiddle" border="0" alt="" />';
|
||||
} else if (vpb_file_to_add == "fla") {
|
||||
vpb_file_icon = '<img src="../media/file_upload_images/fla.gif" align="absmiddle" border="0" alt="" />';
|
||||
} else if (vpb_file_to_add == "xls" || vpb_file_to_add == "xlsx") {
|
||||
vpb_file_icon = '<img src="../media/file_upload_images/xls.gif" align="absmiddle" border="0" alt="" />';
|
||||
} else if (vpb_file_to_add == "swf") {
|
||||
vpb_file_icon = '<img src="../media/file_upload_images/swf.gif" align="absmiddle" border="0" alt="" />';
|
||||
} else if (vpb_file_to_add == "eps") {
|
||||
vpb_file_icon = '<img src="../media/file_upload_images/eps.gif" align="absmiddle" border="0" alt="" />';
|
||||
} else if (vpb_file_to_add == "exe") {
|
||||
vpb_file_icon = '<img src="../media/file_upload_images/exe.gif" align="absmiddle" border="0" alt="" />';
|
||||
} else if (vpb_file_to_add == "binary") {
|
||||
vpb_file_icon = '<img src="../media/file_upload_images/binary.png" align="absmiddle" border="0" alt="" />';
|
||||
} else if (vpb_file_to_add == "zip") {
|
||||
vpb_file_icon = '<img src="../media/file_upload_images/archive.png" align="absmiddle" border="0" alt="" />';
|
||||
} else {
|
||||
vpb_file_icon = '<img src="../media/file_upload_images/general.png" align="absmiddle" border="0" alt="" />';
|
||||
}
|
||||
var split = this.vpb_files[i].name.split('.');
|
||||
var filename = split[0];
|
||||
var extension = split[1];
|
||||
if (filename.length > 15) {
|
||||
filename = filename.substring(0, 10) + '[...]';
|
||||
}
|
||||
var result = filename + '.' + extension;
|
||||
//Assign browsed files to a variable so as to later display them below
|
||||
vpb_added_files_displayer += '<tr id="add_fileID' + vpb_file_id + '" class="' + new_classc + '"><td><div align="left"><span style="font-family:Verdana, Geneva, sans-serif;font-size:11px;color:gray;">' + vpb_file_icon + ' ' + result + '</span></div></td><td><span id="uploading_' + vpb_file_id + '"><span style="font-family:Verdana, Geneva, sans-serif;font-size:11px;color:gray;">Uploadbereit</span></span></td><td><div align="right"><span style="font-family:Verdana, Geneva, sans-serif;font-size:11px;color:gray;">' + vpb_actual_fileSize + '</span></div></td><td><span id="remove' + vpb_file_id + '"><span class="vpb_files_remove_left_inner" style="font-family:Verdana, Geneva, sans-serif;font-size:11px;" onclick="vpb_remove_this_file(\'' + vpb_file_id + '\',\'' + this.vpb_files[i].name + '\');">Entfernen</span></span></td></tr></div>';
|
||||
|
||||
}
|
||||
}
|
||||
//Display browsed files on the screen to the user who wants to upload them
|
||||
$("#add_files").append(vpb_added_files_displayer);
|
||||
$("#added_class").val(new_classc);
|
||||
}
|
||||
}
|
||||
|
||||
//File Reader
|
||||
vpb_multiple_file_uploader.prototype.vpb_read_file = function(vpb_e) {
|
||||
if (vpb_e.target.files) {
|
||||
self.vpb_show_added_files(vpb_e.target.files);
|
||||
self.vpb_browsed_files.push(vpb_e.target.files);
|
||||
} else {
|
||||
alert('Sorry, a file you have specified could not be read at the moment. Thank You!');
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
function addEvent(type, el, fn) {
|
||||
if (window.addEventListener) {
|
||||
el.addEventListener(type, fn, false);
|
||||
} else if (window.attachEvent) {
|
||||
var f = function() {
|
||||
fn.call(el, window.event);
|
||||
};
|
||||
el.attachEvent('on' + type, f)
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
//Get the ids of all added files and also start the upload when called
|
||||
vpb_multiple_file_uploader.prototype.vpb_starter = function() {
|
||||
if (window.File && window.FileReader && window.FileList && window.Blob) {
|
||||
var vpb_browsed_file_ids = $("#" + this.vpb_settings.vpb_form_id).find("input[type='file']").eq(0).attr("id");
|
||||
document.getElementById(vpb_browsed_file_ids).addEventListener("change", this.vpb_read_file, false);
|
||||
document.getElementById(this.vpb_settings.vpb_form_id).addEventListener("submit", this.vpb_submit_added_files, true);
|
||||
} else {
|
||||
alert(vpb_msg);
|
||||
}
|
||||
}
|
||||
|
||||
//Call the uploading function when click on the upload button
|
||||
vpb_multiple_file_uploader.prototype.vpb_submit_added_files = function() {
|
||||
self.vpb_upload_bgin();
|
||||
}
|
||||
|
||||
//Start uploads
|
||||
vpb_multiple_file_uploader.prototype.vpb_upload_bgin = function() {
|
||||
|
||||
if (this.vpb_browsed_files.length > 0) {
|
||||
for (var k = 0; k < this.vpb_browsed_files.length; k++) {
|
||||
var file = this.vpb_browsed_files[k];
|
||||
this.vasPLUS(file, 0);
|
||||
}
|
||||
} else {
|
||||
// Else Zweig ergänzt A. Schwarz. Wenn keine Dateien zum hochladen sind, dann Insert mit den Daten machen
|
||||
this.vasINSERT();
|
||||
}
|
||||
}
|
||||
|
||||
//Main file uploader
|
||||
|
||||
// A. Schwarz: Insert mit File
|
||||
vpb_multiple_file_uploader.prototype.vasPLUS = function(file, file_counter) {
|
||||
if (typeof file[file_counter] != undefined && file[file_counter] != '') {
|
||||
//Use the file names without their extensions as their ids
|
||||
var files_name_without_extensions = file[file_counter].name.substr(0, file[file_counter].name.lastIndexOf('.')) || file[file_counter].name;
|
||||
var ids = files_name_without_extensions.replace(/[^a-z0-9\s]/gi, '').replace(/[_\s]/g, '');
|
||||
var vpb_browsed_file_ids = $("#" + this.vpb_settings.vpb_form_id).find("input[type='file']").eq(0).attr("id");
|
||||
|
||||
var removed_file = $("#" + ids).val();
|
||||
|
||||
if (removed_file != "" && removed_file != undefined && removed_file == ids) {
|
||||
self.vasPLUS(file, file_counter + 1);
|
||||
} else {
|
||||
var dataString = new FormData();
|
||||
dataString.append('upload_file', file[file_counter]);
|
||||
dataString.append('upload_file_ids', ids);
|
||||
|
||||
var titel = document.getElementById("titel").value;
|
||||
var verlag = document.getElementById("verlag").value;
|
||||
var anz_lizenzen = document.getElementById("anz_lizenzen").value;
|
||||
var chk_streamlizenz = document.getElementById("streamlizenz");
|
||||
if (chk_streamlizenz.checked == true) {
|
||||
var streamlizenz = 1;
|
||||
} else {
|
||||
var streamlizenz = 0;
|
||||
}
|
||||
dataString.append('titel', titel);
|
||||
dataString.append('verlag', verlag);
|
||||
dataString.append('anz_lizenzen', anz_lizenzen);
|
||||
dataString.append('streamlizenz', streamlizenz);
|
||||
dataString.append('function', 'save_with_files');
|
||||
|
||||
|
||||
$.ajax({
|
||||
type: "POST",
|
||||
url: this.vpb_settings.vpb_server_url,
|
||||
data: dataString,
|
||||
cache: false,
|
||||
contentType: false,
|
||||
processData: false,
|
||||
beforeSend: function() {
|
||||
$("#uploading_" + ids).html('<div align="left"><img src="../media/file_upload_images/loadings.gif" width="80" align="absmiddle" title="Upload...."/></div>');
|
||||
$("#remove" + ids).html('<div align="center" style="font-family:Verdana, Geneva, sans-serif;font-size:11px;color:blue;">Uploading...</div>');
|
||||
},
|
||||
success: function(response) {
|
||||
var a = response.split('|***|');
|
||||
|
||||
// Länge der Zeit berechnen, wie lange die Messagebox angezeigt wird. Jedes File wird zumindest optisch einzeln hochgeladen.
|
||||
var waitempty_chk = ($('[id^=add_fileID]').length*2000)+3000;
|
||||
|
||||
if(waitempty_chk >5000 ){
|
||||
var waitempty = waitempty_chk;
|
||||
}else{
|
||||
// Mindestens aber 5 Sekunden
|
||||
var waitempty = 5000;
|
||||
}
|
||||
setTimeout(function() {
|
||||
// document.getElementById("titel").value = "";
|
||||
// document.getElementById("verlag").value = "";
|
||||
// document.getElementById("anz_lizenzen").value = "";
|
||||
// document.getElementById("vasplus_multiple_files").value = "";
|
||||
// document.getElementById("streamlizenz").checked = false;
|
||||
// var $el = $('#vasplus_multiple_files');
|
||||
// $el.wrap('<form>').closest('form').get(0).reset();
|
||||
// $el.unwrap();
|
||||
//
|
||||
// $("#add_files > tbody").empty();
|
||||
// Alternativlösung. Felder leeren alleine bringt nichts. Wenn man eine File hochlädt und das nächste Mal ohne File, dann werden die letzten Files nochmals hochgeladen.
|
||||
// Daher eine Weiterleitung auf sich selbst, damit der Prozess neu initiiert wird.
|
||||
window.location = "";
|
||||
|
||||
}, waitempty);
|
||||
|
||||
|
||||
$('#msg').show().delay(waitempty).fadeOut(500);
|
||||
$('#msg').html(a[0]);
|
||||
|
||||
var responseid = a[2];
|
||||
setTimeout(function() {
|
||||
var response_brought = responseid.indexOf(ids);
|
||||
if (response_brought != -1) {
|
||||
$("#uploading_" + ids).html('<div align="left" style="font-family:Verdana, Geneva, sans-serif;font-size:11px;color:blue;">Vollständig</div>');
|
||||
$("#remove" + ids).html('<div align="center" style="font-family:Verdana, Geneva, sans-serif;font-size:11px;color:gray;">Hochgeladen</div>');
|
||||
} else {
|
||||
var fileType_response_brought = responseid.indexOf('file_type_error');
|
||||
if (fileType_response_brought != -1) {
|
||||
|
||||
var filenamewithoutextension = responseid.replace('file_type_error&', '').substr(0, responseid.replace('file_type_error&', '').lastIndexOf('.')) || responseid.replace('file_type_error&', '');
|
||||
var fileID = filenamewithoutextension.replace(/[^a-z0-9\s]/gi, '').replace(/[_\s]/g, '');
|
||||
$("#uploading_" + fileID).html('<div align="left" style="font-family:Verdana, Geneva, sans-serif;font-size:11px;color:red;">Invalid File</div>');
|
||||
$("#remove" + fileID).html('<div align="center" style="font-family:Verdana, Geneva, sans-serif;font-size:11px;color:orange;">Abgebrochen</div>');
|
||||
|
||||
} else {
|
||||
var filesize_response_brought = responseid.indexOf('file_size_error');
|
||||
if (filesize_response_brought != -1) {
|
||||
var filenamewithoutextensions = responseid.replace('file_size_error&', '').substr(0, responseid.replace('file_size_error&', '').lastIndexOf('.')) || responseid.replace('file_size_error&', '');
|
||||
var fileID = filenamewithoutextensions.replace(/[^a-z0-9\s]/gi, '').replace(/[_\s]/g, '');
|
||||
$("#uploading_" + fileID).html('<div align="left" style="font-family:Verdana, Geneva, sans-serif;font-size:11px;color:red;">Exceeded Size</div>');
|
||||
$("#remove" + fileID).html('<div align="center" style="font-family:Verdana, Geneva, sans-serif;font-size:11px;color:orange;">Abgebrochen</div>');
|
||||
} else {
|
||||
var general_response_brought = responseid.indexOf('general_system_error');
|
||||
if (general_response_brought != -1) {
|
||||
alert('Sorry, the file was not uploaded...');
|
||||
} else {
|
||||
/* Do nothing */ }
|
||||
}
|
||||
}
|
||||
}
|
||||
if (file_counter + 1 < file.length) {
|
||||
self.vasPLUS(file, file_counter + 1);
|
||||
} else {}
|
||||
}, 2000);
|
||||
}
|
||||
});
|
||||
}
|
||||
} else {
|
||||
alert('Sorry, this system could not verify the identity of the file you were trying to upload at the moment. Thank You!');
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
// By A. Schwarz: Insert ohne File
|
||||
vpb_multiple_file_uploader.prototype.vasINSERT = function() {
|
||||
var titel = document.getElementById("titel").value;
|
||||
var verlag = document.getElementById("verlag").value;
|
||||
var anz_lizenzen = document.getElementById("anz_lizenzen").value;
|
||||
var chk_streamlizenz = document.getElementById("streamlizenz");
|
||||
if (chk_streamlizenz.checked == true) {
|
||||
var streamlizenz = 1;
|
||||
} else {
|
||||
var streamlizenz = 0;
|
||||
}
|
||||
|
||||
$.ajax({
|
||||
type: 'POST',
|
||||
url: this.vpb_settings.vpb_server_url,
|
||||
data: {
|
||||
'function': 'save_without_files',
|
||||
'titel': titel,
|
||||
'verlag': verlag,
|
||||
'anz_lizenzen': anz_lizenzen,
|
||||
'streamlizenz': streamlizenz
|
||||
},
|
||||
success: function(response) { //we got the response
|
||||
if (response != '') {
|
||||
var a = response.split('|***|');
|
||||
if (a[1] == "success") {
|
||||
document.getElementById("titel").value = "";
|
||||
document.getElementById("verlag").value = "";
|
||||
document.getElementById("anz_lizenzen").value = "";
|
||||
document.getElementById("vasplus_multiple_files").value = "";
|
||||
document.getElementById("streamlizenz").checked = false;
|
||||
}
|
||||
$('#msg').show().delay(10000).fadeOut(500);
|
||||
$('#msg').html(a[0]);
|
||||
}
|
||||
},
|
||||
error: function(xhr, status, exception) {
|
||||
console.log(xhr);
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
this.vpb_starter();
|
||||
}
|
||||
|
||||
function vpb_remove_this_file(id, filename) {
|
||||
if (confirm('If you are sure to remove the file: ' + filename + ' then click on OK otherwise, Cancel it.')) {
|
||||
$("#vpb_removed_files").append('<input type="hidden" id="' + id + '" value="' + id + '">');
|
||||
$("#add_fileID" + id).slideUp();
|
||||
}
|
||||
return false;
|
||||
}
|
||||
function vpb_multiple_file_uploader(vpb_configuration_settings) {
|
||||
this.vpb_settings = vpb_configuration_settings;
|
||||
this.vpb_files = "";
|
||||
this.vpb_browsed_files = []
|
||||
var self = this;
|
||||
var vpb_msg = "Sorry, your browser does not support this application. Thank You!";
|
||||
|
||||
//Get all browsed file extensions
|
||||
function vpb_file_ext(file) {
|
||||
return (/[.]/.exec(file)) ? /[^.]+$/.exec(file.toLowerCase()) : '';
|
||||
}
|
||||
|
||||
/* Display added files which are ready for upload */
|
||||
//with their file types, names, size, date last modified along with an option to remove an unwanted file
|
||||
vpb_multiple_file_uploader.prototype.vpb_show_added_files = function(vpb_value) {
|
||||
this.vpb_files = vpb_value;
|
||||
if (this.vpb_files.length > 0) {
|
||||
var vpb_added_files_displayer = vpb_file_id = "";
|
||||
for (var i = 0; i < this.vpb_files.length; i++) {
|
||||
//Use the names of the files without their extensions as their ids
|
||||
var files_name_without_extensions = this.vpb_files[i].name.substr(0, this.vpb_files[i].name.lastIndexOf('.')) || this.vpb_files[i].name;
|
||||
vpb_file_id = files_name_without_extensions.replace(/[^a-z0-9\s]/gi, '').replace(/[_\s]/g, '');
|
||||
|
||||
var vpb_file_to_add = vpb_file_ext(this.vpb_files[i].name);
|
||||
var vpb_class = $("#added_class").val();
|
||||
var vpb_file_icon;
|
||||
|
||||
//Check and display File Size
|
||||
var vpb_fileSize = (this.vpb_files[i].size / 1024);
|
||||
if (vpb_fileSize / 1024 > 1) {
|
||||
if (((vpb_fileSize / 1024) / 1024) > 1) {
|
||||
vpb_fileSize = (Math.round(((vpb_fileSize / 1024) / 1024) * 100) / 100);
|
||||
var vpb_actual_fileSize = vpb_fileSize + " GB";
|
||||
} else {
|
||||
vpb_fileSize = (Math.round((vpb_fileSize / 1024) * 100) / 100)
|
||||
var vpb_actual_fileSize = vpb_fileSize + " MB";
|
||||
}
|
||||
} else {
|
||||
vpb_fileSize = (Math.round(vpb_fileSize * 100) / 100)
|
||||
var vpb_actual_fileSize = vpb_fileSize + " KB";
|
||||
}
|
||||
|
||||
//Check and display the date that files were last modified
|
||||
var vpb_date_last_modified = new Date(this.vpb_files[i].lastModifiedDate);
|
||||
var dd = vpb_date_last_modified.getDate();
|
||||
var mm = vpb_date_last_modified.getMonth() + 1;
|
||||
var yyyy = vpb_date_last_modified.getFullYear();
|
||||
var vpb_date_last_modified_file = dd + '/' + mm + '/' + yyyy;
|
||||
|
||||
//File Display Classes
|
||||
if (vpb_class == 'vpb_blue') {
|
||||
var new_classc = 'vpb_white';
|
||||
} else {
|
||||
var new_classc = 'vpb_blue';
|
||||
}
|
||||
|
||||
|
||||
if (typeof this.vpb_files[i] != undefined && this.vpb_files[i].name != "") {
|
||||
//Check for the type of file browsed so as to represent each file with the appropriate file icon
|
||||
|
||||
if (vpb_file_to_add == "jpg" || vpb_file_to_add == "JPG" || vpb_file_to_add == "jpeg" || vpb_file_to_add == "JPEG" || vpb_file_to_add == "gif" || vpb_file_to_add == "GIF" || vpb_file_to_add == "png" || vpb_file_to_add == "PNG") {
|
||||
vpb_file_icon = '<img src="../media/file_upload_images/images_file.gif" align="absmiddle" border="0" alt="" />';
|
||||
} else if (vpb_file_to_add == "doc" || vpb_file_to_add == "docx" || vpb_file_to_add == "rtf" || vpb_file_to_add == "DOC" || vpb_file_to_add == "DOCX") {
|
||||
vpb_file_icon = '<img src="../media/file_upload_images/doc.gif" align="absmiddle" border="0" alt="" />';
|
||||
} else if (vpb_file_to_add == "pdf" || vpb_file_to_add == "PDF") {
|
||||
vpb_file_icon = '<img src="../media/file_upload_images/pdf.gif" align="absmiddle" border="0" alt="" />';
|
||||
} else if (vpb_file_to_add == "txt" || vpb_file_to_add == "TXT" || vpb_file_to_add == "RTF") {
|
||||
vpb_file_icon = '<img src="../media/file_upload_images/txt.png" align="absmiddle" border="0" alt="" />';
|
||||
} else if (vpb_file_to_add == "php") {
|
||||
vpb_file_icon = '<img src="../media/file_upload_images/php.png" align="absmiddle" border="0" alt="" />';
|
||||
} else if (vpb_file_to_add == "css") {
|
||||
vpb_file_icon = '<img src="../media/file_upload_images/general.png" align="absmiddle" border="0" alt="" />';
|
||||
} else if (vpb_file_to_add == "js") {
|
||||
vpb_file_icon = '<img src="../media/file_upload_images/general.png" align="absmiddle" border="0" alt="" />';
|
||||
} else if (vpb_file_to_add == "html" || vpb_file_to_add == "HTML" || vpb_file_to_add == "htm" || vpb_file_to_add == "HTM") {
|
||||
vpb_file_icon = '<img src="../media/file_upload_images/html.png" align="absmiddle" border="0" alt="" />';
|
||||
} else if (vpb_file_to_add == "setup") {
|
||||
vpb_file_icon = '<img src="../media/file_upload_images/setup.gif" align="absmiddle" border="0" alt="" />';
|
||||
} else if (vpb_file_to_add == "video") {
|
||||
vpb_file_icon = '<img src="../media/file_upload_images/video.gif" align="absmiddle" border="0" alt="" />';
|
||||
} else if (vpb_file_to_add == "real") {
|
||||
vpb_file_icon = '<img src="../media/file_upload_images/real.gif" align="absmiddle" border="0" alt="" />';
|
||||
} else if (vpb_file_to_add == "psd") {
|
||||
vpb_file_icon = '<img src="../media/file_upload_images/psd.gif" align="absmiddle" border="0" alt="" />';
|
||||
} else if (vpb_file_to_add == "fla") {
|
||||
vpb_file_icon = '<img src="../media/file_upload_images/fla.gif" align="absmiddle" border="0" alt="" />';
|
||||
} else if (vpb_file_to_add == "xls" || vpb_file_to_add == "xlsx") {
|
||||
vpb_file_icon = '<img src="../media/file_upload_images/xls.gif" align="absmiddle" border="0" alt="" />';
|
||||
} else if (vpb_file_to_add == "swf") {
|
||||
vpb_file_icon = '<img src="../media/file_upload_images/swf.gif" align="absmiddle" border="0" alt="" />';
|
||||
} else if (vpb_file_to_add == "eps") {
|
||||
vpb_file_icon = '<img src="../media/file_upload_images/eps.gif" align="absmiddle" border="0" alt="" />';
|
||||
} else if (vpb_file_to_add == "exe") {
|
||||
vpb_file_icon = '<img src="../media/file_upload_images/exe.gif" align="absmiddle" border="0" alt="" />';
|
||||
} else if (vpb_file_to_add == "binary") {
|
||||
vpb_file_icon = '<img src="../media/file_upload_images/binary.png" align="absmiddle" border="0" alt="" />';
|
||||
} else if (vpb_file_to_add == "zip") {
|
||||
vpb_file_icon = '<img src="../media/file_upload_images/archive.png" align="absmiddle" border="0" alt="" />';
|
||||
} else {
|
||||
vpb_file_icon = '<img src="../media/file_upload_images/general.png" align="absmiddle" border="0" alt="" />';
|
||||
}
|
||||
var split = this.vpb_files[i].name.split('.');
|
||||
var filename = split[0];
|
||||
var extension = split[1];
|
||||
if (filename.length > 15) {
|
||||
filename = filename.substring(0, 10) + '[...]';
|
||||
}
|
||||
var result = filename + '.' + extension;
|
||||
//Assign browsed files to a variable so as to later display them below
|
||||
vpb_added_files_displayer += '<tr id="add_fileID' + vpb_file_id + '" class="' + new_classc + '"><td><div align="left"><span style="font-family:Verdana, Geneva, sans-serif;font-size:11px;color:gray;">' + vpb_file_icon + ' ' + result + '</span></div></td><td><span id="uploading_' + vpb_file_id + '"><span style="font-family:Verdana, Geneva, sans-serif;font-size:11px;color:gray;">Uploadbereit</span></span></td><td><div align="right"><span style="font-family:Verdana, Geneva, sans-serif;font-size:11px;color:gray;">' + vpb_actual_fileSize + '</span></div></td><td><span id="remove' + vpb_file_id + '"><span class="vpb_files_remove_left_inner" style="font-family:Verdana, Geneva, sans-serif;font-size:11px;" onclick="vpb_remove_this_file(\'' + vpb_file_id + '\',\'' + this.vpb_files[i].name + '\');">Entfernen</span></span></td></tr></div>';
|
||||
|
||||
}
|
||||
}
|
||||
//Display browsed files on the screen to the user who wants to upload them
|
||||
$("#add_files").append(vpb_added_files_displayer);
|
||||
$("#added_class").val(new_classc);
|
||||
}
|
||||
}
|
||||
|
||||
//File Reader
|
||||
vpb_multiple_file_uploader.prototype.vpb_read_file = function(vpb_e) {
|
||||
if (vpb_e.target.files) {
|
||||
self.vpb_show_added_files(vpb_e.target.files);
|
||||
self.vpb_browsed_files.push(vpb_e.target.files);
|
||||
} else {
|
||||
alert('Sorry, a file you have specified could not be read at the moment. Thank You!');
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
function addEvent(type, el, fn) {
|
||||
if (window.addEventListener) {
|
||||
el.addEventListener(type, fn, false);
|
||||
} else if (window.attachEvent) {
|
||||
var f = function() {
|
||||
fn.call(el, window.event);
|
||||
};
|
||||
el.attachEvent('on' + type, f)
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
//Get the ids of all added files and also start the upload when called
|
||||
vpb_multiple_file_uploader.prototype.vpb_starter = function() {
|
||||
if (window.File && window.FileReader && window.FileList && window.Blob) {
|
||||
var vpb_browsed_file_ids = $("#" + this.vpb_settings.vpb_form_id).find("input[type='file']").eq(0).attr("id");
|
||||
document.getElementById(vpb_browsed_file_ids).addEventListener("change", this.vpb_read_file, false);
|
||||
document.getElementById(this.vpb_settings.vpb_form_id).addEventListener("submit", this.vpb_submit_added_files, true);
|
||||
} else {
|
||||
alert(vpb_msg);
|
||||
}
|
||||
}
|
||||
|
||||
//Call the uploading function when click on the upload button
|
||||
vpb_multiple_file_uploader.prototype.vpb_submit_added_files = function() {
|
||||
self.vpb_upload_bgin();
|
||||
}
|
||||
|
||||
//Start uploads
|
||||
vpb_multiple_file_uploader.prototype.vpb_upload_bgin = function() {
|
||||
|
||||
if (this.vpb_browsed_files.length > 0) {
|
||||
for (var k = 0; k < this.vpb_browsed_files.length; k++) {
|
||||
var file = this.vpb_browsed_files[k];
|
||||
this.vasPLUS(file, 0);
|
||||
}
|
||||
} else {
|
||||
// Else Zweig ergänzt A. Schwarz. Wenn keine Dateien zum hochladen sind, dann Insert mit den Daten machen
|
||||
this.vasINSERT();
|
||||
}
|
||||
}
|
||||
|
||||
//Main file uploader
|
||||
|
||||
// A. Schwarz: Insert mit File
|
||||
vpb_multiple_file_uploader.prototype.vasPLUS = function(file, file_counter) {
|
||||
if (typeof file[file_counter] != undefined && file[file_counter] != '') {
|
||||
//Use the file names without their extensions as their ids
|
||||
var files_name_without_extensions = file[file_counter].name.substr(0, file[file_counter].name.lastIndexOf('.')) || file[file_counter].name;
|
||||
var ids = files_name_without_extensions.replace(/[^a-z0-9\s]/gi, '').replace(/[_\s]/g, '');
|
||||
var vpb_browsed_file_ids = $("#" + this.vpb_settings.vpb_form_id).find("input[type='file']").eq(0).attr("id");
|
||||
|
||||
var removed_file = $("#" + ids).val();
|
||||
|
||||
if (removed_file != "" && removed_file != undefined && removed_file == ids) {
|
||||
self.vasPLUS(file, file_counter + 1);
|
||||
} else {
|
||||
var dataString = new FormData();
|
||||
dataString.append('upload_file', file[file_counter]);
|
||||
dataString.append('upload_file_ids', ids);
|
||||
|
||||
var titel = document.getElementById("titel").value;
|
||||
var songbook = document.getElementById("songbook").value;
|
||||
var verlag = document.getElementById("verlag").value;
|
||||
var anz_lizenzen = document.getElementById("anz_lizenzen").value;
|
||||
var chk_streamlizenz = document.getElementById("streamlizenz");
|
||||
// jndid beim Bearbeiten von Noten
|
||||
var jndid_edit = document.getElementById("jndid").value;
|
||||
|
||||
if (chk_streamlizenz.checked == true) {
|
||||
var streamlizenz = 1;
|
||||
} else {
|
||||
var streamlizenz = 0;
|
||||
}
|
||||
dataString.append('titel', titel);
|
||||
dataString.append('songbook', songbook);
|
||||
dataString.append('verlag', verlag);
|
||||
dataString.append('anz_lizenzen', anz_lizenzen);
|
||||
dataString.append('streamlizenz', streamlizenz);
|
||||
dataString.append('jndid_edit', jndid_edit);
|
||||
dataString.append('function', 'save_with_files');
|
||||
|
||||
|
||||
$.ajax({
|
||||
type: "POST",
|
||||
url: this.vpb_settings.vpb_server_url,
|
||||
data: dataString,
|
||||
cache: false,
|
||||
contentType: false,
|
||||
processData: false,
|
||||
beforeSend: function() {
|
||||
$("#uploading_" + ids).html('<div align="left"><img src="../media/file_upload_images/loadings.gif" width="80" align="absmiddle" title="Upload...."/></div>');
|
||||
$("#remove" + ids).html('<div align="center" style="font-family:Verdana, Geneva, sans-serif;font-size:11px;color:blue;">Uploading...</div>');
|
||||
},
|
||||
success: function(response) {
|
||||
var a = response.split('|***|');
|
||||
|
||||
// Länge der Zeit berechnen, wie lange die Messagebox angezeigt wird. Jedes File wird zumindest optisch einzeln hochgeladen.
|
||||
var waitempty_chk = ($('[id^=add_fileID]').length*2000)+3000;
|
||||
|
||||
if(waitempty_chk >5000 ){
|
||||
var waitempty = waitempty_chk;
|
||||
}else{
|
||||
// Mindestens aber 5 Sekunden
|
||||
var waitempty = 5000;
|
||||
}
|
||||
setTimeout(function() {
|
||||
// document.getElementById("titel").value = "";
|
||||
// document.getElementById("verlag").value = "";
|
||||
// document.getElementById("anz_lizenzen").value = "";
|
||||
// document.getElementById("vasplus_multiple_files").value = "";
|
||||
// document.getElementById("streamlizenz").checked = false;
|
||||
// var $el = $('#vasplus_multiple_files');
|
||||
// $el.wrap('<form>').closest('form').get(0).reset();
|
||||
// $el.unwrap();
|
||||
//
|
||||
// $("#add_files > tbody").empty();
|
||||
// Alternativlösung. Felder leeren alleine bringt nichts. Wenn man eine File hochlädt und das nächste Mal ohne File, dann werden die letzten Files nochmals hochgeladen.
|
||||
// Daher eine Weiterleitung auf sich selbst, damit der Prozess neu initiiert wird.
|
||||
window.location = "";
|
||||
|
||||
}, waitempty);
|
||||
|
||||
|
||||
$('#msg').show().delay(waitempty).fadeOut(500);
|
||||
$('#msg').html(a[0]);
|
||||
|
||||
var responseid = a[2];
|
||||
setTimeout(function() {
|
||||
var response_brought = responseid.indexOf(ids);
|
||||
if (response_brought != -1) {
|
||||
$("#uploading_" + ids).html('<div align="left" style="font-family:Verdana, Geneva, sans-serif;font-size:11px;color:blue;">Vollständig</div>');
|
||||
$("#remove" + ids).html('<div align="center" style="font-family:Verdana, Geneva, sans-serif;font-size:11px;color:gray;">Hochgeladen</div>');
|
||||
} else {
|
||||
var fileType_response_brought = responseid.indexOf('file_type_error');
|
||||
if (fileType_response_brought != -1) {
|
||||
|
||||
var filenamewithoutextension = responseid.replace('file_type_error&', '').substr(0, responseid.replace('file_type_error&', '').lastIndexOf('.')) || responseid.replace('file_type_error&', '');
|
||||
var fileID = filenamewithoutextension.replace(/[^a-z0-9\s]/gi, '').replace(/[_\s]/g, '');
|
||||
$("#uploading_" + fileID).html('<div align="left" style="font-family:Verdana, Geneva, sans-serif;font-size:11px;color:red;">Invalid File</div>');
|
||||
$("#remove" + fileID).html('<div align="center" style="font-family:Verdana, Geneva, sans-serif;font-size:11px;color:orange;">Abgebrochen</div>');
|
||||
|
||||
} else {
|
||||
var filesize_response_brought = responseid.indexOf('file_size_error');
|
||||
if (filesize_response_brought != -1) {
|
||||
var filenamewithoutextensions = responseid.replace('file_size_error&', '').substr(0, responseid.replace('file_size_error&', '').lastIndexOf('.')) || responseid.replace('file_size_error&', '');
|
||||
var fileID = filenamewithoutextensions.replace(/[^a-z0-9\s]/gi, '').replace(/[_\s]/g, '');
|
||||
$("#uploading_" + fileID).html('<div align="left" style="font-family:Verdana, Geneva, sans-serif;font-size:11px;color:red;">Exceeded Size</div>');
|
||||
$("#remove" + fileID).html('<div align="center" style="font-family:Verdana, Geneva, sans-serif;font-size:11px;color:orange;">Abgebrochen</div>');
|
||||
} else {
|
||||
var general_response_brought = responseid.indexOf('general_system_error');
|
||||
if (general_response_brought != -1) {
|
||||
alert('Sorry, the file was not uploaded...');
|
||||
} else {
|
||||
/* Do nothing */ }
|
||||
}
|
||||
}
|
||||
}
|
||||
if (file_counter + 1 < file.length) {
|
||||
self.vasPLUS(file, file_counter + 1);
|
||||
} else {}
|
||||
}, 2000);
|
||||
}
|
||||
});
|
||||
}
|
||||
} else {
|
||||
alert('Sorry, this system could not verify the identity of the file you were trying to upload at the moment. Thank You!');
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
// By A. Schwarz: Insert ohne File
|
||||
vpb_multiple_file_uploader.prototype.vasINSERT = function() {
|
||||
var titel = document.getElementById("titel").value;
|
||||
var songbook = document.getElementById("songbook").value;
|
||||
var verlag = document.getElementById("verlag").value;
|
||||
var anz_lizenzen = document.getElementById("anz_lizenzen").value;
|
||||
var chk_streamlizenz = document.getElementById("streamlizenz");
|
||||
// jndid beim Bearbeiten von Noten
|
||||
var jndid_edit = document.getElementById("jndid").value;
|
||||
|
||||
if (chk_streamlizenz.checked == true) {
|
||||
var streamlizenz = 1;
|
||||
} else {
|
||||
var streamlizenz = 0;
|
||||
}
|
||||
|
||||
$.ajax({
|
||||
type: 'POST',
|
||||
url: this.vpb_settings.vpb_server_url,
|
||||
data: {
|
||||
'function': 'save_without_files',
|
||||
'titel': titel,
|
||||
'songbook': songbook,
|
||||
'verlag': verlag,
|
||||
'anz_lizenzen': anz_lizenzen,
|
||||
'streamlizenz': streamlizenz,
|
||||
'jndid_edit': jndid_edit
|
||||
},
|
||||
success: function(response) { //we got the response
|
||||
if (response != '') {
|
||||
var a = response.split('|***|');
|
||||
if (a[1] == "success") {
|
||||
//document.getElementById("titel").value = "";
|
||||
//document.getElementById("songbook").value = "";
|
||||
//document.getElementById("verlag").value = "";
|
||||
//document.getElementById("anz_lizenzen").value = "";
|
||||
//document.getElementById("vasplus_multiple_files").value = "";
|
||||
//document.getElementById("streamlizenz").checked = false;
|
||||
if(jndid_edit == '-1'){
|
||||
setTimeout(function() {
|
||||
window.location = "";
|
||||
}, 2000);
|
||||
}
|
||||
}
|
||||
$('#msg').show().delay(2000).fadeOut(500);
|
||||
$('#msg').html(a[0]);
|
||||
}
|
||||
},
|
||||
error: function(xhr, status, exception) {
|
||||
console.log(xhr);
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
this.vpb_starter();
|
||||
}
|
||||
|
||||
function vpb_remove_this_file(id, filename) {
|
||||
if (confirm('If you are sure to remove the file: ' + filename + ' then click on OK otherwise, Cancel it.')) {
|
||||
$("#vpb_removed_files").append('<input type="hidden" id="' + id + '" value="' + id + '">');
|
||||
$("#add_fileID" + id).slideUp();
|
||||
}
|
||||
return false;
|
||||
}
|
||||
|
||||
function delNotenFile(id) {
|
||||
r = confirm('Dokument löschen?');
|
||||
if (r) {
|
||||
|
||||
|
||||
$.ajax({
|
||||
type: 'POST',
|
||||
url: '../controller/admin_notenupload.php',
|
||||
data: {
|
||||
'function': 'delNotenFile',
|
||||
'id': id
|
||||
},
|
||||
success: function(result) { //we got the response
|
||||
if(result!=''){
|
||||
var a = result.split('|***|');
|
||||
var jndid = a[2];
|
||||
if(a[1]=="success"){
|
||||
$(document).ajaxStop(function(){
|
||||
setTimeout(function() {
|
||||
window.location = "?editjndid="+jndid;
|
||||
}, 2000);
|
||||
});
|
||||
}
|
||||
$('#msg').show().delay(10000).fadeOut(500);
|
||||
$('#msg').html(a[0]);
|
||||
}
|
||||
},
|
||||
error: function(xhr, status, exception) {
|
||||
console.log(xhr);
|
||||
}
|
||||
});
|
||||
}
|
||||
}
|
||||
|
||||
function delNoten(jndid) {
|
||||
r = confirm('Noten löschen?');
|
||||
if (r) {
|
||||
|
||||
$.ajax({
|
||||
type: 'POST',
|
||||
url: '../controller/admin_notenupload.php',
|
||||
data: {
|
||||
'function': 'delNoten',
|
||||
'jndid': jndid
|
||||
},
|
||||
success: function(result) { //we got the response
|
||||
if(result!=''){
|
||||
var a = result.split('|***|');
|
||||
if(a[1]=="success"){
|
||||
$(document).ajaxStop(function(){
|
||||
setTimeout(function() {
|
||||
window.location = "";
|
||||
}, 2000);
|
||||
});
|
||||
}
|
||||
$('#msg').show().delay(10000).fadeOut(500);
|
||||
$('#msg').html(a[0]);
|
||||
}
|
||||
},
|
||||
error: function(xhr, status, exception) {
|
||||
console.log(xhr);
|
||||
}
|
||||
});
|
||||
}
|
||||
}
|
||||
|
425
js/file_upload/vpb_uploader_member.js
Normal file
425
js/file_upload/vpb_uploader_member.js
Normal file
@ -0,0 +1,425 @@
|
||||
function vpb_multiple_file_uploader(vpb_configuration_settings) {
|
||||
this.vpb_settings = vpb_configuration_settings;
|
||||
this.vpb_files = "";
|
||||
this.vpb_browsed_files = []
|
||||
var self = this;
|
||||
var vpb_msg = "Sorry, your browser does not support this application. Thank You!";
|
||||
|
||||
//Get all browsed file extensions
|
||||
function vpb_file_ext(file) {
|
||||
return (/[.]/.exec(file)) ? /[^.]+$/.exec(file.toLowerCase()) : '';
|
||||
}
|
||||
|
||||
/* Display added files which are ready for upload */
|
||||
//with their file types, names, size, date last modified along with an option to remove an unwanted file
|
||||
vpb_multiple_file_uploader.prototype.vpb_show_added_files = function(vpb_value) {
|
||||
this.vpb_files = vpb_value;
|
||||
if (this.vpb_files.length > 0) {
|
||||
var vpb_added_files_displayer = vpb_file_id = "";
|
||||
for (var i = 0; i < this.vpb_files.length; i++) {
|
||||
//Use the names of the files without their extensions as their ids
|
||||
var files_name_without_extensions = this.vpb_files[i].name.substr(0, this.vpb_files[i].name.lastIndexOf('.')) || this.vpb_files[i].name;
|
||||
vpb_file_id = files_name_without_extensions.replace(/[^a-z0-9\s]/gi, '').replace(/[_\s]/g, '');
|
||||
|
||||
var vpb_file_to_add = vpb_file_ext(this.vpb_files[i].name);
|
||||
var vpb_class = $("#added_class").val();
|
||||
var vpb_file_icon;
|
||||
|
||||
//Check and display File Size
|
||||
var vpb_fileSize = (this.vpb_files[i].size / 1024);
|
||||
if (vpb_fileSize / 1024 > 1) {
|
||||
if (((vpb_fileSize / 1024) / 1024) > 1) {
|
||||
vpb_fileSize = (Math.round(((vpb_fileSize / 1024) / 1024) * 100) / 100);
|
||||
var vpb_actual_fileSize = vpb_fileSize + " GB";
|
||||
} else {
|
||||
vpb_fileSize = (Math.round((vpb_fileSize / 1024) * 100) / 100)
|
||||
var vpb_actual_fileSize = vpb_fileSize + " MB";
|
||||
}
|
||||
} else {
|
||||
vpb_fileSize = (Math.round(vpb_fileSize * 100) / 100)
|
||||
var vpb_actual_fileSize = vpb_fileSize + " KB";
|
||||
}
|
||||
|
||||
//Check and display the date that files were last modified
|
||||
var vpb_date_last_modified = new Date(this.vpb_files[i].lastModifiedDate);
|
||||
var dd = vpb_date_last_modified.getDate();
|
||||
var mm = vpb_date_last_modified.getMonth() + 1;
|
||||
var yyyy = vpb_date_last_modified.getFullYear();
|
||||
var vpb_date_last_modified_file = dd + '/' + mm + '/' + yyyy;
|
||||
|
||||
//File Display Classes
|
||||
if (vpb_class == 'vpb_blue') {
|
||||
var new_classc = 'vpb_white';
|
||||
} else {
|
||||
var new_classc = 'vpb_blue';
|
||||
}
|
||||
|
||||
|
||||
if (typeof this.vpb_files[i] != undefined && this.vpb_files[i].name != "") {
|
||||
//Check for the type of file browsed so as to represent each file with the appropriate file icon
|
||||
|
||||
if (vpb_file_to_add == "jpg" || vpb_file_to_add == "JPG" || vpb_file_to_add == "jpeg" || vpb_file_to_add == "JPEG" || vpb_file_to_add == "gif" || vpb_file_to_add == "GIF" || vpb_file_to_add == "png" || vpb_file_to_add == "PNG") {
|
||||
vpb_file_icon = '<img src="../media/file_upload_images/images_file.gif" align="absmiddle" border="0" alt="" />';
|
||||
} else if (vpb_file_to_add == "doc" || vpb_file_to_add == "docx" || vpb_file_to_add == "rtf" || vpb_file_to_add == "DOC" || vpb_file_to_add == "DOCX") {
|
||||
vpb_file_icon = '<img src="../media/file_upload_images/doc.gif" align="absmiddle" border="0" alt="" />';
|
||||
} else if (vpb_file_to_add == "pdf" || vpb_file_to_add == "PDF") {
|
||||
vpb_file_icon = '<img src="../media/file_upload_images/pdf.gif" align="absmiddle" border="0" alt="" />';
|
||||
} else if (vpb_file_to_add == "txt" || vpb_file_to_add == "TXT" || vpb_file_to_add == "RTF") {
|
||||
vpb_file_icon = '<img src="../media/file_upload_images/txt.png" align="absmiddle" border="0" alt="" />';
|
||||
} else if (vpb_file_to_add == "php") {
|
||||
vpb_file_icon = '<img src="../media/file_upload_images/php.png" align="absmiddle" border="0" alt="" />';
|
||||
} else if (vpb_file_to_add == "css") {
|
||||
vpb_file_icon = '<img src="../media/file_upload_images/general.png" align="absmiddle" border="0" alt="" />';
|
||||
} else if (vpb_file_to_add == "js") {
|
||||
vpb_file_icon = '<img src="../media/file_upload_images/general.png" align="absmiddle" border="0" alt="" />';
|
||||
} else if (vpb_file_to_add == "html" || vpb_file_to_add == "HTML" || vpb_file_to_add == "htm" || vpb_file_to_add == "HTM") {
|
||||
vpb_file_icon = '<img src="../media/file_upload_images/html.png" align="absmiddle" border="0" alt="" />';
|
||||
} else if (vpb_file_to_add == "setup") {
|
||||
vpb_file_icon = '<img src="../media/file_upload_images/setup.gif" align="absmiddle" border="0" alt="" />';
|
||||
} else if (vpb_file_to_add == "video") {
|
||||
vpb_file_icon = '<img src="../media/file_upload_images/video.gif" align="absmiddle" border="0" alt="" />';
|
||||
} else if (vpb_file_to_add == "real") {
|
||||
vpb_file_icon = '<img src="../media/file_upload_images/real.gif" align="absmiddle" border="0" alt="" />';
|
||||
} else if (vpb_file_to_add == "psd") {
|
||||
vpb_file_icon = '<img src="../media/file_upload_images/psd.gif" align="absmiddle" border="0" alt="" />';
|
||||
} else if (vpb_file_to_add == "fla") {
|
||||
vpb_file_icon = '<img src="../media/file_upload_images/fla.gif" align="absmiddle" border="0" alt="" />';
|
||||
} else if (vpb_file_to_add == "xls" || vpb_file_to_add == "xlsx") {
|
||||
vpb_file_icon = '<img src="../media/file_upload_images/xls.gif" align="absmiddle" border="0" alt="" />';
|
||||
} else if (vpb_file_to_add == "swf") {
|
||||
vpb_file_icon = '<img src="../media/file_upload_images/swf.gif" align="absmiddle" border="0" alt="" />';
|
||||
} else if (vpb_file_to_add == "eps") {
|
||||
vpb_file_icon = '<img src="../media/file_upload_images/eps.gif" align="absmiddle" border="0" alt="" />';
|
||||
} else if (vpb_file_to_add == "exe") {
|
||||
vpb_file_icon = '<img src="../media/file_upload_images/exe.gif" align="absmiddle" border="0" alt="" />';
|
||||
} else if (vpb_file_to_add == "binary") {
|
||||
vpb_file_icon = '<img src="../media/file_upload_images/binary.png" align="absmiddle" border="0" alt="" />';
|
||||
} else if (vpb_file_to_add == "zip") {
|
||||
vpb_file_icon = '<img src="../media/file_upload_images/archive.png" align="absmiddle" border="0" alt="" />';
|
||||
} else {
|
||||
vpb_file_icon = '<img src="../media/file_upload_images/general.png" align="absmiddle" border="0" alt="" />';
|
||||
}
|
||||
var split = this.vpb_files[i].name.split('.');
|
||||
var filename = split[0];
|
||||
var extension = split[1];
|
||||
if (filename.length > 15) {
|
||||
filename = filename.substring(0, 10) + '[...]';
|
||||
}
|
||||
var result = filename + '.' + extension;
|
||||
//Assign browsed files to a variable so as to later display them below
|
||||
vpb_added_files_displayer += '<tr id="add_fileID' + vpb_file_id + '" class="' + new_classc + '"><td><div align="left"><span style="font-family:Verdana, Geneva, sans-serif;font-size:11px;color:gray;">' + vpb_file_icon + ' ' + result + '</span></div></td><td><span id="uploading_' + vpb_file_id + '"><span style="font-family:Verdana, Geneva, sans-serif;font-size:11px;color:gray;">Uploadbereit</span></span></td><td><div align="right"><span style="font-family:Verdana, Geneva, sans-serif;font-size:11px;color:gray;">' + vpb_actual_fileSize + '</span></div></td><td><span id="remove' + vpb_file_id + '"><span class="vpb_files_remove_left_inner" style="font-family:Verdana, Geneva, sans-serif;font-size:11px;" onclick="vpb_remove_this_file(\'' + vpb_file_id + '\',\'' + this.vpb_files[i].name + '\');">Entfernen</span></span></td></tr></div>';
|
||||
|
||||
}
|
||||
}
|
||||
//Display browsed files on the screen to the user who wants to upload them
|
||||
$("#add_files").append(vpb_added_files_displayer);
|
||||
$("#added_class").val(new_classc);
|
||||
}
|
||||
}
|
||||
|
||||
//File Reader
|
||||
vpb_multiple_file_uploader.prototype.vpb_read_file = function(vpb_e) {
|
||||
if (vpb_e.target.files) {
|
||||
self.vpb_show_added_files(vpb_e.target.files);
|
||||
self.vpb_browsed_files.push(vpb_e.target.files);
|
||||
} else {
|
||||
alert('Sorry, a file you have specified could not be read at the moment. Thank You!');
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
function addEvent(type, el, fn) {
|
||||
if (window.addEventListener) {
|
||||
el.addEventListener(type, fn, false);
|
||||
} else if (window.attachEvent) {
|
||||
var f = function() {
|
||||
fn.call(el, window.event);
|
||||
};
|
||||
el.attachEvent('on' + type, f)
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
//Get the ids of all added files and also start the upload when called
|
||||
vpb_multiple_file_uploader.prototype.vpb_starter = function() {
|
||||
if (window.File && window.FileReader && window.FileList && window.Blob) {
|
||||
var vpb_browsed_file_ids = $("#" + this.vpb_settings.vpb_form_id).find("input[type='file']").eq(0).attr("id");
|
||||
document.getElementById(vpb_browsed_file_ids).addEventListener("change", this.vpb_read_file, false);
|
||||
document.getElementById(this.vpb_settings.vpb_form_id).addEventListener("submit", this.vpb_submit_added_files, true);
|
||||
} else {
|
||||
alert(vpb_msg);
|
||||
}
|
||||
}
|
||||
|
||||
//Call the uploading function when click on the upload button
|
||||
vpb_multiple_file_uploader.prototype.vpb_submit_added_files = function() {
|
||||
self.vpb_upload_bgin();
|
||||
}
|
||||
|
||||
//Start uploads
|
||||
vpb_multiple_file_uploader.prototype.vpb_upload_bgin = function() {
|
||||
|
||||
if (this.vpb_browsed_files.length > 0) {
|
||||
for (var k = 0; k < this.vpb_browsed_files.length; k++) {
|
||||
var file = this.vpb_browsed_files[k];
|
||||
this.vasPLUS(file, 0);
|
||||
}
|
||||
} else {
|
||||
// Else Zweig ergänzt A. Schwarz. Wenn keine Dateien zum hochladen sind, dann Insert mit den Daten machen
|
||||
this.vasINSERT();
|
||||
}
|
||||
}
|
||||
|
||||
//Main file uploader
|
||||
|
||||
// A. Schwarz: Insert mit File
|
||||
vpb_multiple_file_uploader.prototype.vasPLUS = function(file, file_counter) {
|
||||
if (typeof file[file_counter] != undefined && file[file_counter] != '') {
|
||||
//Use the file names without their extensions as their ids
|
||||
var files_name_without_extensions = file[file_counter].name.substr(0, file[file_counter].name.lastIndexOf('.')) || file[file_counter].name;
|
||||
var ids = files_name_without_extensions.replace(/[^a-z0-9\s]/gi, '').replace(/[_\s]/g, '');
|
||||
var vpb_browsed_file_ids = $("#" + this.vpb_settings.vpb_form_id).find("input[type='file']").eq(0).attr("id");
|
||||
|
||||
var removed_file = $("#" + ids).val();
|
||||
|
||||
if (removed_file != "" && removed_file != undefined && removed_file == ids) {
|
||||
self.vasPLUS(file, file_counter + 1);
|
||||
} else {
|
||||
var dataString = new FormData();
|
||||
dataString.append('upload_file', file[file_counter]);
|
||||
dataString.append('upload_file_ids', ids);
|
||||
|
||||
var vorname = document.getElementById("vorname").value;
|
||||
var nachname = document.getElementById("nachname").value;
|
||||
var mail = document.getElementById("mail").value;
|
||||
var singstimme = document.getElementById("singstimme").value;
|
||||
var bemerkung =tinyMCE.get('bemerkung').getContent()
|
||||
// csid beim Bearbeiten von Membern
|
||||
var csid_edit = document.getElementById("csid").value;
|
||||
|
||||
dataString.append('vorname', vorname);
|
||||
dataString.append('nachname', nachname);
|
||||
dataString.append('mail', mail);
|
||||
dataString.append('singstimme', singstimme);
|
||||
dataString.append('bemerkung', bemerkung);
|
||||
dataString.append('csid_edit', csid_edit);
|
||||
dataString.append('function', 'save_with_files');
|
||||
|
||||
|
||||
$.ajax({
|
||||
type: "POST",
|
||||
url: this.vpb_settings.vpb_server_url,
|
||||
data: dataString,
|
||||
cache: false,
|
||||
contentType: false,
|
||||
processData: false,
|
||||
beforeSend: function() {
|
||||
$("#uploading_" + ids).html('<div align="left"><img src="../media/file_upload_images/loadings.gif" width="80" align="absmiddle" title="Upload...."/></div>');
|
||||
$("#remove" + ids).html('<div align="center" style="font-family:Verdana, Geneva, sans-serif;font-size:11px;color:blue;">Uploading...</div>');
|
||||
},
|
||||
success: function(response) {
|
||||
|
||||
var a = response.split('|***|');
|
||||
|
||||
// Länge der Zeit berechnen, wie lange die Messagebox angezeigt wird. Jedes File wird zumindest optisch einzeln hochgeladen.
|
||||
var waitempty_chk = ($('[id^=add_fileID]').length*2000)+2000;
|
||||
|
||||
if(waitempty_chk >5000 ){
|
||||
var waitempty = waitempty_chk;
|
||||
}else{
|
||||
// Mindestens aber 5 Sekunden
|
||||
var waitempty = 5000;
|
||||
}
|
||||
setTimeout(function() {
|
||||
// document.getElementById("titel").value = "";
|
||||
// document.getElementById("verlag").value = "";
|
||||
// document.getElementById("anz_lizenzen").value = "";
|
||||
// document.getElementById("vasplus_multiple_files").value = "";
|
||||
// document.getElementById("streamlizenz").checked = false;
|
||||
// var $el = $('#vasplus_multiple_files');
|
||||
// $el.wrap('<form>').closest('form').get(0).reset();
|
||||
// $el.unwrap();
|
||||
//
|
||||
// $("#add_files > tbody").empty();
|
||||
// Alternativlösung. Felder leeren alleine bringt nichts. Wenn man eine File hochlädt und das nächste Mal ohne File, dann werden die letzten Files nochmals hochgeladen.
|
||||
// Daher eine Weiterleitung auf sich selbst, damit der Prozess neu initiiert wird.
|
||||
window.location = "";
|
||||
}, waitempty);
|
||||
|
||||
|
||||
$('#msg').show().delay(waitempty).fadeOut(500);
|
||||
$('#msg').html(a[0]);
|
||||
|
||||
var responseid = a[2];
|
||||
setTimeout(function() {
|
||||
var response_brought = responseid.indexOf(ids);
|
||||
if (response_brought != -1) {
|
||||
$("#uploading_" + ids).html('<div align="left" style="font-family:Verdana, Geneva, sans-serif;font-size:11px;color:blue;">Vollständig</div>');
|
||||
$("#remove" + ids).html('<div align="center" style="font-family:Verdana, Geneva, sans-serif;font-size:11px;color:gray;">Hochgeladen</div>');
|
||||
} else {
|
||||
var fileType_response_brought = responseid.indexOf('file_type_error');
|
||||
if (fileType_response_brought != -1) {
|
||||
|
||||
var filenamewithoutextension = responseid.replace('file_type_error&', '').substr(0, responseid.replace('file_type_error&', '').lastIndexOf('.')) || responseid.replace('file_type_error&', '');
|
||||
var fileID = filenamewithoutextension.replace(/[^a-z0-9\s]/gi, '').replace(/[_\s]/g, '');
|
||||
$("#uploading_" + fileID).html('<div align="left" style="font-family:Verdana, Geneva, sans-serif;font-size:11px;color:red;">Invalid File</div>');
|
||||
$("#remove" + fileID).html('<div align="center" style="font-family:Verdana, Geneva, sans-serif;font-size:11px;color:orange;">Abgebrochen</div>');
|
||||
|
||||
} else {
|
||||
var filesize_response_brought = responseid.indexOf('file_size_error');
|
||||
if (filesize_response_brought != -1) {
|
||||
var filenamewithoutextensions = responseid.replace('file_size_error&', '').substr(0, responseid.replace('file_size_error&', '').lastIndexOf('.')) || responseid.replace('file_size_error&', '');
|
||||
var fileID = filenamewithoutextensions.replace(/[^a-z0-9\s]/gi, '').replace(/[_\s]/g, '');
|
||||
$("#uploading_" + fileID).html('<div align="left" style="font-family:Verdana, Geneva, sans-serif;font-size:11px;color:red;">Exceeded Size</div>');
|
||||
$("#remove" + fileID).html('<div align="center" style="font-family:Verdana, Geneva, sans-serif;font-size:11px;color:orange;">Abgebrochen</div>');
|
||||
} else {
|
||||
var general_response_brought = responseid.indexOf('general_system_error');
|
||||
if (general_response_brought != -1) {
|
||||
alert('Sorry, the file was not uploaded...');
|
||||
} else {
|
||||
/* Do nothing */ }
|
||||
}
|
||||
}
|
||||
}
|
||||
if (file_counter + 1 < file.length) {
|
||||
self.vasPLUS(file, file_counter + 1);
|
||||
} else {}
|
||||
}, 2000);
|
||||
}
|
||||
});
|
||||
}
|
||||
} else {
|
||||
alert('Sorry, this system could not verify the identity of the file you were trying to upload at the moment. Thank You!');
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
// By A. Schwarz: Insert ohne File
|
||||
vpb_multiple_file_uploader.prototype.vasINSERT = function() {
|
||||
var vorname = document.getElementById("vorname").value;
|
||||
var nachname = document.getElementById("nachname").value;
|
||||
var mail = document.getElementById("mail").value;
|
||||
var singstimme = document.getElementById("singstimme").value;
|
||||
var bemerkung =tinyMCE.get('bemerkung').getContent()
|
||||
// csid beim Bearbeiten von Membern
|
||||
var csid_edit = document.getElementById("csid").value;
|
||||
|
||||
$.ajax({
|
||||
type: 'POST',
|
||||
url: this.vpb_settings.vpb_server_url,
|
||||
data: {
|
||||
'function': 'save_without_files',
|
||||
'vorname': vorname,
|
||||
'nachname': nachname,
|
||||
'mail': mail,
|
||||
'singstimme': singstimme,
|
||||
'bemerkung': bemerkung,
|
||||
'csid_edit': csid_edit
|
||||
},
|
||||
success: function(response) { //we got the response
|
||||
if (response != '') {
|
||||
var a = response.split('|***|');
|
||||
if (a[1] == "success") {
|
||||
//document.getElementById("titel").value = "";
|
||||
//document.getElementById("verlag").value = "";
|
||||
//document.getElementById("anz_lizenzen").value = "";
|
||||
//document.getElementById("vasplus_multiple_files").value = "";
|
||||
//document.getElementById("streamlizenz").checked = false;
|
||||
// Alternativlösung. Felder leeren alleine bringt nichts. Wenn man eine File hochlädt und das nächste Mal ohne File, dann werden die letzten Files nochmals hochgeladen.
|
||||
// Daher eine Weiterleitung auf sich selbst, damit der Prozess neu initiiert wird.
|
||||
if(csid_edit == '-1'){
|
||||
// Bei Neuanlage Seite refreshen, damit die Felder leer sind. Beim Bearbeiten brauchts das nicht, da die bearbeiteten Werte schon in den Feldern stehen
|
||||
setTimeout(function() {
|
||||
window.location = "";
|
||||
}, 2000);
|
||||
}
|
||||
}
|
||||
$('#msg').show().delay(2000).fadeOut(500);
|
||||
$('#msg').html(a[0]);
|
||||
}
|
||||
},
|
||||
error: function(xhr, status, exception) {
|
||||
console.log(xhr);
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
this.vpb_starter();
|
||||
}
|
||||
|
||||
function vpb_remove_this_file(id, filename) {
|
||||
if (confirm('If you are sure to remove the file: ' + filename + ' then click on OK otherwise, Cancel it.')) {
|
||||
$("#vpb_removed_files").append('<input type="hidden" id="' + id + '" value="' + id + '">');
|
||||
$("#add_fileID" + id).slideUp();
|
||||
}
|
||||
return false;
|
||||
}
|
||||
|
||||
function delMemberFile(id) {
|
||||
r = confirm('Dokument löschen?');
|
||||
if (r) {
|
||||
|
||||
|
||||
$.ajax({
|
||||
type: 'POST',
|
||||
url: '../controller/admin_memberupload.php',
|
||||
data: {
|
||||
'function': 'delMemberFile',
|
||||
'id': id
|
||||
},
|
||||
success: function(result) { //we got the response
|
||||
if(result!=''){
|
||||
var a = result.split('|***|');
|
||||
var csid = a[2];
|
||||
if(a[1]=="success"){
|
||||
$(document).ajaxStop(function(){
|
||||
setTimeout(function() {
|
||||
window.location = "?editcsid="+csid;
|
||||
}, 2000);
|
||||
});
|
||||
}
|
||||
$('#msg').show().delay(10000).fadeOut(500);
|
||||
$('#msg').html(a[0]);
|
||||
}
|
||||
},
|
||||
error: function(xhr, status, exception) {
|
||||
console.log(xhr);
|
||||
}
|
||||
});
|
||||
}
|
||||
}
|
||||
|
||||
function delMember(csid) {
|
||||
r = confirm('SängerIn löschen?');
|
||||
if (r) {
|
||||
|
||||
$.ajax({
|
||||
type: 'POST',
|
||||
url: '../controller/admin_memberupload.php',
|
||||
data: {
|
||||
'function': 'delMember',
|
||||
'csid': csid
|
||||
},
|
||||
success: function(result) { //we got the response
|
||||
if(result!=''){
|
||||
var a = result.split('|***|');
|
||||
if(a[1]=="success"){
|
||||
$(document).ajaxStop(function(){
|
||||
setTimeout(function() {
|
||||
window.location = "";
|
||||
}, 2000);
|
||||
});
|
||||
}
|
||||
$('#msg').show().delay(10000).fadeOut(500);
|
||||
$('#msg').html(a[0]);
|
||||
}
|
||||
},
|
||||
error: function(xhr, status, exception) {
|
||||
console.log(xhr);
|
||||
}
|
||||
});
|
||||
}
|
||||
}
|
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
949
sql/2023-04-04_web360_survey.sql
Normal file
949
sql/2023-04-04_web360_survey.sql
Normal file
@ -0,0 +1,949 @@
|
||||
-- phpMyAdmin SQL Dump
|
||||
-- version 5.1.1
|
||||
-- https://www.phpmyadmin.net/
|
||||
--
|
||||
-- Host: 127.0.0.1
|
||||
-- Erstellungszeit: 04. Apr 2023 um 16:35
|
||||
-- Server-Version: 10.4.20-MariaDB
|
||||
-- PHP-Version: 8.0.9
|
||||
|
||||
SET SQL_MODE = "NO_AUTO_VALUE_ON_ZERO";
|
||||
START TRANSACTION;
|
||||
SET time_zone = "+00:00";
|
||||
|
||||
|
||||
/*!40101 SET @OLD_CHARACTER_SET_CLIENT=@@CHARACTER_SET_CLIENT */;
|
||||
/*!40101 SET @OLD_CHARACTER_SET_RESULTS=@@CHARACTER_SET_RESULTS */;
|
||||
/*!40101 SET @OLD_COLLATION_CONNECTION=@@COLLATION_CONNECTION */;
|
||||
/*!40101 SET NAMES utf8mb4 */;
|
||||
|
||||
--
|
||||
-- Datenbank: `survey`
|
||||
--
|
||||
|
||||
-- --------------------------------------------------------
|
||||
|
||||
--
|
||||
-- Tabellenstruktur für Tabelle `jumi_admin`
|
||||
--
|
||||
|
||||
CREATE TABLE `jumi_admin` (
|
||||
`uid` int(11) NOT NULL,
|
||||
`vorname` varchar(20) COLLATE utf8mb4_bin NOT NULL DEFAULT '',
|
||||
`nachname` varchar(20) COLLATE utf8mb4_bin NOT NULL DEFAULT '',
|
||||
`mail` varchar(100) COLLATE utf8mb4_bin NOT NULL,
|
||||
`passwort` varchar(32) COLLATE utf8mb4_bin NOT NULL DEFAULT '',
|
||||
`passwortcode` varchar(255) COLLATE utf8mb4_bin DEFAULT NULL COMMENT 'Passwort vergessen',
|
||||
`passwortcode_time` timestamp NULL DEFAULT NULL COMMENT 'Passwort vergessen',
|
||||
`aktiv` enum('0','1') COLLATE utf8mb4_bin NOT NULL DEFAULT '1'
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_bin COMMENT='Benutzer';
|
||||
|
||||
--
|
||||
-- Daten für Tabelle `jumi_admin`
|
||||
--
|
||||
|
||||
INSERT INTO `jumi_admin` (`uid`, `vorname`, `nachname`, `mail`, `passwort`, `passwortcode`, `passwortcode_time`, `aktiv`) VALUES
|
||||
(1, 'Alexander', 'Schwarz', 'ali@ju-and-mi.de', '31f1aef382261ee0df1fe1ba218f1ec1', NULL, NULL, '1'),
|
||||
(2, 'Jeannette', 'Schwarz', 'jeannette@ju-and-mi.de', '31f1aef382261ee0df1fe1ba218f1ec1', NULL, NULL, '1'),
|
||||
(3, 'Nadine', 'Schubert', 'nadine@ju-and-mi.de', '507e1f06de7db173ea9c3c41f7ff8d33', NULL, NULL, '1'),
|
||||
(4, 'Björn', 'Idler', 'bjoern@ju-and-mi.de', 'c4308bb58d24e4feafa4300c18ddd2e8', NULL, NULL, '1'),
|
||||
(5, 'Anica', 'Müller', 'anica@ju-and-mi.de', 'f073d3cb403aa5f7c3dd4ed49de33f64', NULL, NULL, '1');
|
||||
|
||||
-- --------------------------------------------------------
|
||||
|
||||
--
|
||||
-- Tabellenstruktur für Tabelle `jumi_adminlog`
|
||||
--
|
||||
|
||||
CREATE TABLE `jumi_adminlog` (
|
||||
`lid` int(11) NOT NULL,
|
||||
`Datum` datetime NOT NULL,
|
||||
`IP` varchar(15) COLLATE utf8mb4_bin NOT NULL DEFAULT '',
|
||||
`user_agent` varchar(255) COLLATE utf8mb4_bin NOT NULL,
|
||||
`uid` int(11) DEFAULT NULL
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_bin COMMENT='Logins der Anwender';
|
||||
|
||||
--
|
||||
-- Daten für Tabelle `jumi_adminlog`
|
||||
--
|
||||
|
||||
INSERT INTO `jumi_adminlog` (`lid`, `Datum`, `IP`, `user_agent`, `uid`) VALUES
|
||||
(2, '2023-03-22 16:18:23', '::1', 'Mozilla/5.0 (iPhone; CPU iPhone OS 13_2_3 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/13.0.3 Mobile/15E148 Safari/604.1', 1),
|
||||
(3, '2023-03-22 16:23:28', '::1', 'Mozilla/5.0 (iPhone; CPU iPhone OS 13_2_3 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/13.0.3 Mobile/15E148 Safari/604.1', 1),
|
||||
(4, '2023-03-22 16:23:38', '::1', 'Mozilla/5.0 (iPhone; CPU iPhone OS 13_2_3 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/13.0.3 Mobile/15E148 Safari/604.1', 1),
|
||||
(5, '2023-03-22 16:41:27', '::1', 'Mozilla/5.0 (iPhone; CPU iPhone OS 13_2_3 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/13.0.3 Mobile/15E148 Safari/604.1', 1),
|
||||
(6, '2023-03-22 16:45:14', '127.0.0.1', 'Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:109.0) Gecko/20100101 Firefox/109.0', 1),
|
||||
(8, '2023-03-22 16:59:27', '127.0.0.1', 'Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:109.0) Gecko/20100101 Firefox/109.0', 1),
|
||||
(9, '2023-03-22 19:05:37', '93.235.6.36', 'Mozilla/5.0 (iPhone; CPU iPhone OS 16_3_1 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/16.3 Mobile/15E148 Safari/604.1', 1),
|
||||
(10, '2023-03-22 19:09:51', '93.235.6.36', 'Mozilla/5.0 (iPhone; CPU iPhone OS 16_3_1 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/16.3 Mobile/15E148 Safari/604.1', 1),
|
||||
(11, '2023-03-22 19:29:21', '77.180.60.155', 'Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:109.0) Gecko/20100101 Firefox/111.0', 1),
|
||||
(12, '2023-03-23 06:44:15', '93.235.8.169', 'Mozilla/5.0 (iPhone; CPU iPhone OS 16_3_1 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/16.3 Mobile/15E148 Safari/604.1', 1),
|
||||
(13, '2023-03-23 06:45:32', '93.235.8.169', 'Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:109.0) Gecko/20100101 Firefox/111.0', 1),
|
||||
(14, '2023-03-23 07:26:17', '93.235.8.169', 'Mozilla/5.0 (iPhone; CPU iPhone OS 16_3_1 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/16.3 Mobile/15E148 Safari/604.1', 1),
|
||||
(15, '2023-03-23 07:33:36', '93.235.8.169', 'Mozilla/5.0 (iPhone; CPU iPhone OS 16_3_1 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/16.3 Mobile/15E148 Safari/604.1', 1),
|
||||
(16, '2023-03-23 07:36:29', '93.235.8.169', 'Mozilla/5.0 (iPhone; CPU iPhone OS 16_3_1 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/16.3 Mobile/15E148 Safari/604.1', 1),
|
||||
(17, '2023-03-23 08:27:03', '93.235.8.169', 'Mozilla/5.0 (iPhone; CPU iPhone OS 16_3_1 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/16.3 Mobile/15E148 Safari/604.1', 1),
|
||||
(18, '2023-03-23 08:56:59', '93.235.8.169', 'Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:109.0) Gecko/20100101 Firefox/111.0', 1),
|
||||
(19, '2023-03-23 13:35:05', '93.235.8.169', 'Mozilla/5.0 (iPhone; CPU iPhone OS 16_3_1 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/16.3 Mobile/15E148 Safari/604.1', 1),
|
||||
(20, '2023-03-23 13:41:07', '93.235.8.169', 'Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:109.0) Gecko/20100101 Firefox/111.0', 1),
|
||||
(21, '2023-03-23 14:35:30', '93.235.8.169', 'Mozilla/5.0 (iPhone; CPU iPhone OS 16_3_1 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/16.3 Mobile/15E148 Safari/604.1', 1),
|
||||
(22, '2023-03-23 14:51:18', '93.235.8.169', 'Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:109.0) Gecko/20100101 Firefox/111.0', 1),
|
||||
(23, '2023-03-23 14:55:36', '93.235.8.169', 'Mozilla/5.0 (iPhone; CPU iPhone OS 16_3_1 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/16.3 Mobile/15E148 Safari/604.1', 1),
|
||||
(28, '2023-03-23 16:11:15', '93.235.8.169', 'Mozilla/5.0 (iPhone; CPU iPhone OS 16_3_1 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/16.3 Mobile/15E148 Safari/604.1', 1),
|
||||
(29, '2023-03-23 16:36:43', '93.235.8.169', 'Mozilla/5.0 (iPhone; CPU iPhone OS 16_3_1 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/16.3 Mobile/15E148 Safari/604.1', 1),
|
||||
(30, '2023-03-23 16:39:42', '93.235.8.169', 'Mozilla/5.0 (iPhone; CPU iPhone OS 16_3_1 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/16.3 Mobile/15E148 Safari/604.1', 1),
|
||||
(31, '2023-03-24 13:41:22', '193.197.150.215', 'Mozilla/5.0 (iPhone; CPU iPhone OS 16_3_1 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/16.3 Mobile/15E148 Safari/604.1', 1),
|
||||
(32, '2023-03-24 14:20:07', '93.235.8.220', 'Mozilla/5.0 (iPhone; CPU iPhone OS 16_3_1 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/16.3 Mobile/15E148 Safari/604.1', 1),
|
||||
(33, '2023-03-24 16:04:26', '93.235.8.220', 'Mozilla/5.0 (iPhone; CPU iPhone OS 16_3_1 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/16.3 Mobile/15E148 Safari/604.1', 1),
|
||||
(34, '2023-03-24 16:07:09', '93.235.8.220', 'Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:109.0) Gecko/20100101 Firefox/111.0', 1),
|
||||
(38, '2023-03-24 16:55:45', '93.235.8.220', 'Mozilla/5.0 (iPhone; CPU iPhone OS 16_3_1 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/16.3 Mobile/15E148 Safari/604.1', 1),
|
||||
(39, '2023-03-24 17:16:08', '93.235.8.220', 'Mozilla/5.0 (iPhone; CPU iPhone OS 16_3_1 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/16.3 Mobile/15E148 Safari/604.1', 1),
|
||||
(40, '2023-03-24 18:20:40', '93.235.8.220', 'Mozilla/5.0 (iPhone; CPU iPhone OS 16_3_1 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/16.3 Mobile/15E148 Safari/604.1', 1),
|
||||
(41, '2023-03-24 18:37:42', '93.235.8.220', 'Mozilla/5.0 (iPhone; CPU iPhone OS 16_3_1 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/16.3 Mobile/15E148 Safari/604.1', 1),
|
||||
(42, '2023-03-24 19:00:09', '93.235.8.220', 'Mozilla/5.0 (iPhone; CPU iPhone OS 16_3_1 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/16.3 Mobile/15E148 Safari/604.1', 1),
|
||||
(43, '2023-03-24 20:42:53', '93.235.8.220', 'Mozilla/5.0 (iPhone; CPU iPhone OS 16_3_1 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/16.3 Mobile/15E148 Safari/604.1', 1),
|
||||
(44, '2023-03-24 22:58:50', '93.235.8.220', 'Mozilla/5.0 (iPhone; CPU iPhone OS 16_3_1 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/16.3 Mobile/15E148 Safari/604.1', 1),
|
||||
(45, '2023-03-24 23:34:52', '93.235.8.220', 'Mozilla/5.0 (iPhone; CPU iPhone OS 16_3_1 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/16.3 Mobile/15E148 Safari/604.1', 1),
|
||||
(46, '2023-03-25 06:50:06', '46.91.139.219', 'Mozilla/5.0 (iPhone; CPU iPhone OS 16_3_1 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/16.3 Mobile/15E148 Safari/604.1', 1),
|
||||
(47, '2023-03-25 08:17:27', '46.91.139.219', 'Mozilla/5.0 (iPhone; CPU iPhone OS 16_3_1 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/16.3 Mobile/15E148 Safari/604.1', 2),
|
||||
(48, '2023-03-25 10:16:39', '46.91.139.219', 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/110.0.0.0 Safari/537.36', 1),
|
||||
(49, '2023-03-25 12:58:31', '46.91.139.219', 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/111.0.0.0 Safari/537.36', 1),
|
||||
(50, '2023-03-25 12:59:21', '46.91.139.219', 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/111.0.0.0 Safari/537.36', 1),
|
||||
(51, '2023-03-25 13:01:09', '46.91.139.219', 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/111.0.0.0 Safari/537.36', 1),
|
||||
(52, '2023-03-25 15:34:18', '46.91.139.219', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/16.2 Safari/605.1.15', 1),
|
||||
(53, '2023-03-25 20:59:53', '46.91.139.219', 'Mozilla/5.0 (iPhone; CPU iPhone OS 16_3_1 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/16.3 Mobile/15E148 Safari/604.1', 1),
|
||||
(54, '2023-03-26 07:52:00', '93.235.6.164', 'Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:109.0) Gecko/20100101 Firefox/111.0', 1),
|
||||
(55, '2023-03-26 14:05:50', '93.235.6.164', 'Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:107.0) Gecko/20100101 Firefox/107.0', 1),
|
||||
(56, '2023-03-27 15:11:18', '93.235.6.53', 'Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:109.0) Gecko/20100101 Firefox/111.0', 1),
|
||||
(57, '2023-03-27 17:29:55', '93.235.6.53', 'Mozilla/5.0 (iPhone; CPU iPhone OS 16_3_1 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/16.3 Mobile/15E148 Safari/604.1', 1),
|
||||
(58, '2023-03-27 18:26:39', '93.235.6.53', 'Mozilla/5.0 (iPhone; CPU iPhone OS 16_3_1 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/16.3 Mobile/15E148 Safari/604.1', 1),
|
||||
(59, '2023-03-27 19:04:55', '93.235.6.53', 'Mozilla/5.0 (iPhone; CPU iPhone OS 16_3_1 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/16.3 Mobile/15E148 Safari/604.1', 1),
|
||||
(60, '2023-03-27 21:29:43', '93.235.6.53', 'Mozilla/5.0 (iPhone; CPU iPhone OS 16_3_1 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/16.3 Mobile/15E148 Safari/604.1', 1),
|
||||
(61, '2023-03-28 12:55:06', '93.235.4.202', 'Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:109.0) Gecko/20100101 Firefox/111.0', 1),
|
||||
(62, '2023-03-28 13:00:56', '93.235.4.202', 'Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:109.0) Gecko/20100101 Firefox/111.0', 1),
|
||||
(63, '2023-03-28 13:01:37', '93.235.4.202', 'Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:109.0) Gecko/20100101 Firefox/111.0', 1),
|
||||
(64, '2023-03-28 13:55:42', '93.235.4.202', 'Mozilla/5.0 (iPhone; CPU iPhone OS 16_3_1 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/16.3 Mobile/15E148 Safari/604.1', 1),
|
||||
(65, '2023-03-28 15:28:09', '93.235.4.202', 'Mozilla/5.0 (iPhone; CPU iPhone OS 16_3_1 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/16.3 Mobile/15E148 Safari/604.1', 1),
|
||||
(66, '2023-03-28 19:02:38', '93.235.4.202', 'Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:109.0) Gecko/20100101 Firefox/111.0', 1),
|
||||
(67, '2023-03-29 16:24:08', '193.197.150.215', 'Mozilla/5.0 (iPhone; CPU iPhone OS 16_3_1 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/16.3 Mobile/15E148 Safari/604.1', 1),
|
||||
(68, '2023-03-29 16:29:01', '193.197.150.215', 'Mozilla/5.0 (iPhone; CPU iPhone OS 16_3_1 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/16.3 Mobile/15E148 Safari/604.1', 1),
|
||||
(69, '2023-03-30 10:45:18', '80.187.65.85', 'Mozilla/5.0 (iPhone; CPU iPhone OS 16_3_1 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/16.3 Mobile/15E148 Safari/604.1', 1),
|
||||
(70, '2023-03-30 10:45:43', '80.187.65.85', 'Mozilla/5.0 (iPhone; CPU iPhone OS 16_3_1 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/16.3 Mobile/15E148 Safari/604.1', 1),
|
||||
(71, '2023-03-30 15:20:55', '80.187.65.85', 'Mozilla/5.0 (iPhone; CPU iPhone OS 16_3_1 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/16.3 Mobile/15E148 Safari/604.1', 1),
|
||||
(72, '2023-03-30 15:21:07', '80.187.65.85', 'Mozilla/5.0 (iPhone; CPU iPhone OS 16_3_1 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/16.3 Mobile/15E148 Safari/604.1', 1),
|
||||
(73, '2023-03-30 17:06:02', '79.198.7.85', 'Mozilla/5.0 (iPhone; CPU iPhone OS 16_3_1 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/16.3 Mobile/15E148 Safari/604.1', 1),
|
||||
(74, '2023-03-31 13:24:37', '193.197.150.215', 'Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:109.0) Gecko/20100101 Firefox/111.0', 1),
|
||||
(75, '2023-03-31 13:54:25', '80.187.65.85', 'Mozilla/5.0 (iPhone; CPU iPhone OS 16_3_1 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/16.3 Mobile/15E148 Safari/604.1', 1),
|
||||
(76, '2023-03-31 16:57:47', '93.235.7.43', 'Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:109.0) Gecko/20100101 Firefox/111.0', 1),
|
||||
(77, '2023-04-01 10:09:45', '46.91.137.11', 'Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:109.0) Gecko/20100101 Firefox/111.0', 1),
|
||||
(78, '2023-04-01 10:11:48', '46.91.137.11', 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/111.0.0.0 Safari/537.36', 1),
|
||||
(79, '2023-04-03 14:18:45', '93.235.7.9', 'Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:109.0) Gecko/20100101 Firefox/111.0', 1),
|
||||
(80, '2023-04-03 14:44:51', '93.235.7.9', 'Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:109.0) Gecko/20100101 Firefox/111.0', 1),
|
||||
(81, '2023-04-04 07:18:57', '127.0.0.1', 'Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:109.0) Gecko/20100101 Firefox/109.0', 1),
|
||||
(82, '2023-04-04 09:34:21', '::1', 'Mozilla/5.0 (iPhone; CPU iPhone OS 13_2_3 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/13.0.3 Mobile/15E148 Safari/604.1', 1),
|
||||
(83, '2023-04-04 11:31:50', '::1', 'Mozilla/5.0 (iPhone; CPU iPhone OS 13_2_3 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/13.0.3 Mobile/15E148 Safari/604.1', 1);
|
||||
|
||||
-- --------------------------------------------------------
|
||||
|
||||
--
|
||||
-- Tabellenstruktur für Tabelle `jumi_admin_rolle`
|
||||
--
|
||||
|
||||
CREATE TABLE `jumi_admin_rolle` (
|
||||
`rid` int(11) NOT NULL,
|
||||
`bezeichnung` varchar(200) COLLATE utf8mb4_bin NOT NULL
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_bin;
|
||||
|
||||
--
|
||||
-- Daten für Tabelle `jumi_admin_rolle`
|
||||
--
|
||||
|
||||
INSERT INTO `jumi_admin_rolle` (`rid`, `bezeichnung`) VALUES
|
||||
(1, 'Administrator'),
|
||||
(2, 'Noten');
|
||||
|
||||
-- --------------------------------------------------------
|
||||
|
||||
--
|
||||
-- Tabellenstruktur für Tabelle `jumi_admin_rollen_rechte_zuord`
|
||||
--
|
||||
|
||||
CREATE TABLE `jumi_admin_rollen_rechte_zuord` (
|
||||
`roreid` int(11) NOT NULL,
|
||||
`rid` int(11) NOT NULL,
|
||||
`meid` int(11) NOT NULL
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
|
||||
|
||||
--
|
||||
-- Daten für Tabelle `jumi_admin_rollen_rechte_zuord`
|
||||
--
|
||||
|
||||
INSERT INTO `jumi_admin_rollen_rechte_zuord` (`roreid`, `rid`, `meid`) VALUES
|
||||
(1, 1, 1),
|
||||
(2, 1, 2),
|
||||
(3, 1, 3),
|
||||
(4, 1, 4),
|
||||
(5, 1, 5),
|
||||
(6, 1, 6),
|
||||
(7, 1, 7),
|
||||
(8, 1, 8),
|
||||
(9, 1, 9),
|
||||
(10, 0, 1),
|
||||
(11, 0, 9),
|
||||
(12, 1, 10),
|
||||
(13, 1, 11),
|
||||
(14, 1, 12),
|
||||
(15, 0, 12),
|
||||
(16, 0, 11),
|
||||
(17, 0, 10),
|
||||
(18, 1, 13),
|
||||
(19, 1, 14),
|
||||
(20, 1, 15);
|
||||
|
||||
-- --------------------------------------------------------
|
||||
|
||||
--
|
||||
-- Tabellenstruktur für Tabelle `jumi_admin_rollen_user_zuord`
|
||||
--
|
||||
|
||||
CREATE TABLE `jumi_admin_rollen_user_zuord` (
|
||||
`rozuid` int(11) NOT NULL,
|
||||
`rid` int(11) NOT NULL,
|
||||
`uid` int(11) NOT NULL
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_bin;
|
||||
|
||||
--
|
||||
-- Daten für Tabelle `jumi_admin_rollen_user_zuord`
|
||||
--
|
||||
|
||||
INSERT INTO `jumi_admin_rollen_user_zuord` (`rozuid`, `rid`, `uid`) VALUES
|
||||
(1, 1, 1),
|
||||
(2, 1, 2),
|
||||
(3, 1, 3),
|
||||
(4, 1, 4),
|
||||
(5, 1, 5);
|
||||
|
||||
-- --------------------------------------------------------
|
||||
|
||||
--
|
||||
-- Tabellenstruktur für Tabelle `jumi_chor_saenger`
|
||||
--
|
||||
|
||||
CREATE TABLE `jumi_chor_saenger` (
|
||||
`csid` int(11) NOT NULL,
|
||||
`vorname` varchar(200) COLLATE utf8mb4_bin NOT NULL,
|
||||
`nachname` varchar(200) COLLATE utf8mb4_bin NOT NULL,
|
||||
`mail` varchar(100) COLLATE utf8mb4_bin NOT NULL,
|
||||
`singstimme` int(1) NOT NULL COMMENT '1=Sopran,2=Alt,3=Tenor,4=Bass',
|
||||
`bemerkung` text COLLATE utf8mb4_bin NOT NULL
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_bin;
|
||||
|
||||
--
|
||||
-- Daten für Tabelle `jumi_chor_saenger`
|
||||
--
|
||||
|
||||
INSERT INTO `jumi_chor_saenger` (`csid`, `vorname`, `nachname`, `mail`, `singstimme`, `bemerkung`) VALUES
|
||||
(2, 'Nele', 'Müller', 'netblack@gmx.de', 2, '<p>asdf</p>');
|
||||
|
||||
-- --------------------------------------------------------
|
||||
|
||||
--
|
||||
-- Tabellenstruktur für Tabelle `jumi_chor_saenger_uploads`
|
||||
--
|
||||
|
||||
CREATE TABLE `jumi_chor_saenger_uploads` (
|
||||
`id` int(11) NOT NULL,
|
||||
`csid` int(11) NOT NULL,
|
||||
`filename` varchar(255) COLLATE utf8mb4_bin NOT NULL,
|
||||
`originalname` varchar(255) COLLATE utf8mb4_bin NOT NULL,
|
||||
`uid` int(11) NOT NULL,
|
||||
`datum` datetime NOT NULL
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_bin;
|
||||
|
||||
--
|
||||
-- Daten für Tabelle `jumi_chor_saenger_uploads`
|
||||
--
|
||||
|
||||
INSERT INTO `jumi_chor_saenger_uploads` (`id`, `csid`, `filename`, `originalname`, `uid`, `datum`) VALUES
|
||||
(1, 2, '../media/file_upload/member/20230404_130259_20230321_Serveruebersicht_Physisch_und_Virtuell_PTLS.xlsx', '20230321 Serverübersicht Physisch und Virtuell_PTLS.xlsx', 1, '2023-04-04 13:02:59'),
|
||||
(2, 2, '../media/file_upload/member/20230404_130301_Nebentaetigkeit_Jaehresmeldung.pdf', 'Nebentätigkeit Jähresmeldung.pdf', 1, '2023-04-04 13:03:01');
|
||||
|
||||
-- --------------------------------------------------------
|
||||
|
||||
--
|
||||
-- Tabellenstruktur für Tabelle `jumi_menu_entries`
|
||||
--
|
||||
|
||||
CREATE TABLE `jumi_menu_entries` (
|
||||
`meid` int(11) NOT NULL,
|
||||
`headline` varchar(250) COLLATE utf8mb4_bin NOT NULL,
|
||||
`link` varchar(250) COLLATE utf8mb4_bin NOT NULL,
|
||||
`mhid` int(11) NOT NULL COMMENT 'Headline',
|
||||
`fontawesome` varchar(250) COLLATE utf8mb4_bin NOT NULL,
|
||||
`sup` int(11) NOT NULL COMMENT 'Übergeordnete Menüpunkt'
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_bin;
|
||||
|
||||
--
|
||||
-- Daten für Tabelle `jumi_menu_entries`
|
||||
--
|
||||
|
||||
INSERT INTO `jumi_menu_entries` (`meid`, `headline`, `link`, `mhid`, `fontawesome`, `sup`) VALUES
|
||||
(1, 'Home', 'index.php', 1, 'fas fa-house', 1),
|
||||
(2, 'Erstellen', 'survey_erfassen.php', 2, 'fas fa-pie-chart', 2),
|
||||
(3, 'Bearbeiten', 'survey_edit.php', 2, 'fas fa-edit', 3),
|
||||
(4, 'Systemparameter', 'parameter.php', 3, 'fas fa-cog', 4),
|
||||
(5, 'Benutzerverwaltung', '#', 3, 'fas fa-user', 5),
|
||||
(6, 'Benutzer erstellen', 'create_user.php', 3, '', 5),
|
||||
(7, 'Benutzer bearbeiten', 'edit_user.php', 3, '', 5),
|
||||
(8, 'Rollen / Rechte', 'rollen.php', 3, '', 5),
|
||||
(9, 'Noten', '#', 4, 'fa fa-upload', 9),
|
||||
(10, 'Notenupload', 'notenupload.php', 4, '', 9),
|
||||
(11, 'Chor', '#', 4, 'fa-solid fa-music', 11),
|
||||
(12, 'Erfassung', 'create_member.php', 4, '', 11),
|
||||
(13, 'Bearbeiten', 'edit_member.php', 4, '', 11),
|
||||
(14, 'Bearbeiten', 'edit_noten.php', 4, '', 9),
|
||||
(15, 'Notenbuch', 'notenbuch.php', 4, '', 9);
|
||||
|
||||
-- --------------------------------------------------------
|
||||
|
||||
--
|
||||
-- Tabellenstruktur für Tabelle `jumi_menu_headline`
|
||||
--
|
||||
|
||||
CREATE TABLE `jumi_menu_headline` (
|
||||
`mhid` int(11) NOT NULL,
|
||||
`headline` varchar(250) COLLATE utf8mb4_bin NOT NULL,
|
||||
`visible` enum('0','1') COLLATE utf8mb4_bin NOT NULL DEFAULT '1' COMMENT '0=unsichbar;1=sichtbar'
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_bin;
|
||||
|
||||
--
|
||||
-- Daten für Tabelle `jumi_menu_headline`
|
||||
--
|
||||
|
||||
INSERT INTO `jumi_menu_headline` (`mhid`, `headline`, `visible`) VALUES
|
||||
(1, 'Top', '0'),
|
||||
(2, 'Umfrage', '1'),
|
||||
(3, 'Administration', '1'),
|
||||
(4, 'Verwaltung', '1');
|
||||
|
||||
-- --------------------------------------------------------
|
||||
|
||||
--
|
||||
-- Tabellenstruktur für Tabelle `jumi_noten_daten`
|
||||
--
|
||||
|
||||
CREATE TABLE `jumi_noten_daten` (
|
||||
`jndid` int(11) NOT NULL,
|
||||
`titel` varchar(255) COLLATE utf8mb4_bin NOT NULL,
|
||||
`vid` int(11) NOT NULL,
|
||||
`sbid` int(11) NOT NULL,
|
||||
`anz_lizenzen` int(11) NOT NULL,
|
||||
`streamlizenz` enum('0','1') COLLATE utf8mb4_bin NOT NULL DEFAULT '0',
|
||||
`uid` int(11) NOT NULL,
|
||||
`datum` datetime NOT NULL
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_bin;
|
||||
|
||||
--
|
||||
-- Daten für Tabelle `jumi_noten_daten`
|
||||
--
|
||||
|
||||
INSERT INTO `jumi_noten_daten` (`jndid`, `titel`, `vid`, `sbid`, `anz_lizenzen`, `streamlizenz`, `uid`, `datum`) VALUES
|
||||
(2, 'Heimat, heimat glanzumflossen', 3, 4, 20, '1', 1, '2023-04-04 16:07:17');
|
||||
|
||||
-- --------------------------------------------------------
|
||||
|
||||
--
|
||||
-- Tabellenstruktur für Tabelle `jumi_noten_songbook`
|
||||
--
|
||||
|
||||
CREATE TABLE `jumi_noten_songbook` (
|
||||
`sbid` int(11) NOT NULL,
|
||||
`bezeichnung` varchar(255) COLLATE utf8mb4_bin NOT NULL
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_bin;
|
||||
|
||||
--
|
||||
-- Daten für Tabelle `jumi_noten_songbook`
|
||||
--
|
||||
|
||||
INSERT INTO `jumi_noten_songbook` (`sbid`, `bezeichnung`) VALUES
|
||||
(4, 'Chorbuch');
|
||||
|
||||
-- --------------------------------------------------------
|
||||
|
||||
--
|
||||
-- Tabellenstruktur für Tabelle `jumi_noten_uploads`
|
||||
--
|
||||
|
||||
CREATE TABLE `jumi_noten_uploads` (
|
||||
`id` int(11) NOT NULL,
|
||||
`jndid` int(11) NOT NULL,
|
||||
`filename` varchar(255) COLLATE utf8mb4_bin NOT NULL,
|
||||
`originalname` varchar(255) COLLATE utf8mb4_bin NOT NULL,
|
||||
`uid` int(11) NOT NULL,
|
||||
`datum` datetime NOT NULL
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_bin;
|
||||
|
||||
--
|
||||
-- Daten für Tabelle `jumi_noten_uploads`
|
||||
--
|
||||
|
||||
INSERT INTO `jumi_noten_uploads` (`id`, `jndid`, `filename`, `originalname`, `uid`, `datum`) VALUES
|
||||
(5, 2, '../media/file_upload/noten/20230404_160717_Nebentaetigkeit_Jaehresmeldung.pdf', 'Nebentätigkeit Jähresmeldung.pdf', 1, '2023-04-04 16:07:17'),
|
||||
(6, 2, '../media/file_upload/noten/20230404_160719_Uebersicht_Datenbanken_C7000.pptx', 'Uebersicht Datenbanken C7000.pptx', 1, '2023-04-04 16:07:19');
|
||||
|
||||
-- --------------------------------------------------------
|
||||
|
||||
--
|
||||
-- Tabellenstruktur für Tabelle `jumi_noten_verlag`
|
||||
--
|
||||
|
||||
CREATE TABLE `jumi_noten_verlag` (
|
||||
`vid` int(11) NOT NULL,
|
||||
`bezeichnung` varchar(255) COLLATE utf8mb4_bin NOT NULL
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_bin;
|
||||
|
||||
--
|
||||
-- Daten für Tabelle `jumi_noten_verlag`
|
||||
--
|
||||
|
||||
INSERT INTO `jumi_noten_verlag` (`vid`, `bezeichnung`) VALUES
|
||||
(3, 'Friedrich Bischoff Verlag');
|
||||
|
||||
-- --------------------------------------------------------
|
||||
|
||||
--
|
||||
-- Tabellenstruktur für Tabelle `jumi_noten_zusammenstellung`
|
||||
--
|
||||
|
||||
CREATE TABLE `jumi_noten_zusammenstellung` (
|
||||
`zsid` int(11) NOT NULL,
|
||||
`bezeichnung` varchar(200) COLLATE utf8mb4_bin NOT NULL
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_bin;
|
||||
|
||||
--
|
||||
-- Daten für Tabelle `jumi_noten_zusammenstellung`
|
||||
--
|
||||
|
||||
INSERT INTO `jumi_noten_zusammenstellung` (`zsid`, `bezeichnung`) VALUES
|
||||
(1, 'Notenbuch JU & MI');
|
||||
|
||||
-- --------------------------------------------------------
|
||||
|
||||
--
|
||||
-- Tabellenstruktur für Tabelle `jumi_noten_zusammenstellung_zuord`
|
||||
--
|
||||
|
||||
CREATE TABLE `jumi_noten_zusammenstellung_zuord` (
|
||||
`zsnid` int(11) NOT NULL,
|
||||
`jndid` int(11) NOT NULL,
|
||||
`zsid` int(11) NOT NULL
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_bin;
|
||||
|
||||
--
|
||||
-- Daten für Tabelle `jumi_noten_zusammenstellung_zuord`
|
||||
--
|
||||
|
||||
INSERT INTO `jumi_noten_zusammenstellung_zuord` (`zsnid`, `jndid`, `zsid`) VALUES
|
||||
(7, 2, 1);
|
||||
|
||||
-- --------------------------------------------------------
|
||||
|
||||
--
|
||||
-- Tabellenstruktur für Tabelle `jumi_parameter`
|
||||
--
|
||||
|
||||
CREATE TABLE `jumi_parameter` (
|
||||
`pid` int(11) NOT NULL,
|
||||
`beschreibung` varchar(250) NOT NULL,
|
||||
`wert` varchar(250) NOT NULL,
|
||||
`sort` int(11) NOT NULL
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;
|
||||
|
||||
--
|
||||
-- Daten für Tabelle `jumi_parameter`
|
||||
--
|
||||
|
||||
INSERT INTO `jumi_parameter` (`pid`, `beschreibung`, `wert`, `sort`) VALUES
|
||||
(1, 'Mailadressen Ansprechpartner', 'info@ju-and-mi.de', 1);
|
||||
|
||||
-- --------------------------------------------------------
|
||||
|
||||
--
|
||||
-- Tabellenstruktur für Tabelle `jumi_securitytokens`
|
||||
--
|
||||
|
||||
CREATE TABLE `jumi_securitytokens` (
|
||||
`id` int(10) UNSIGNED NOT NULL,
|
||||
`uid` int(11) NOT NULL,
|
||||
`identifier` varchar(255) COLLATE utf8_unicode_ci NOT NULL,
|
||||
`securitytoken` varchar(255) COLLATE utf8_unicode_ci NOT NULL,
|
||||
`created_at` timestamp NOT NULL DEFAULT current_timestamp()
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
|
||||
|
||||
--
|
||||
-- Daten für Tabelle `jumi_securitytokens`
|
||||
--
|
||||
|
||||
INSERT INTO `jumi_securitytokens` (`id`, `uid`, `identifier`, `securitytoken`, `created_at`) VALUES
|
||||
(2, 1, '5eff76410d548f759aa073551999a8af', '385eea6bacd849b58d97ecc31f610a5571754470', '2023-03-30 08:45:43'),
|
||||
(4, 1, 'e9e4b3708da92db2c26c63ed3a915979', '5843001abab217bef6f0993b11532b4d6307da15', '2023-03-30 15:06:02'),
|
||||
(5, 1, '6d77a079ab6bce8c51bc94e24a9a1c33', '68a7bdb644e58e252b2163d0870a03e5917e6e5e', '2023-03-31 11:24:37'),
|
||||
(6, 1, '76c6bd2bed1fc1f0e19889eee9108c4e', 'da6daca0bb914fed390ee471145493fcbda7a5a8', '2023-03-31 11:54:25'),
|
||||
(7, 1, '8bd5bf8daa9727befb9b2536de59eada', '1b3a9cc7b6ba703be48e036bc9e1efa7585367e9', '2023-03-31 14:57:47'),
|
||||
(8, 1, '095ee0ddd4bdd740852d37effc6e630e', '0a3eae920e5ebb4ffde629803f8a8d749fdb3247', '2023-04-01 08:09:45'),
|
||||
(9, 1, 'ff4efdb0b7f6f0a999a96ba75cb12e08', '4315e11f1b63dadfad346a87ca14c8abc12aebf8', '2023-04-01 08:11:48'),
|
||||
(10, 1, 'bb3addec338ca0ca7562df8fbae931a3', '32a6448baf44679e1389b6505726ab9ac05bfa5f', '2023-04-03 12:44:51'),
|
||||
(11, 1, '022d32941170b3f9639b8ebe0df280f4', '93500ad9d1f9768867484968a06bbb52bc305705', '2023-04-04 05:18:57'),
|
||||
(12, 1, 'b4f6accd2eb77a751817e39ac3fdc18f', '975fddf7ea79dcca8ac5dafea96f3006b3d97e44', '2023-04-04 09:31:50');
|
||||
|
||||
-- --------------------------------------------------------
|
||||
|
||||
--
|
||||
-- Tabellenstruktur für Tabelle `jumi_umfragen`
|
||||
--
|
||||
|
||||
CREATE TABLE `jumi_umfragen` (
|
||||
`umid` int(11) NOT NULL,
|
||||
`datum_von` datetime NOT NULL,
|
||||
`datum_bis` datetime NOT NULL,
|
||||
`headline` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NOT NULL,
|
||||
`freitext` enum('0','1') NOT NULL DEFAULT '0' COMMENT '0=Kein Frextextfeld;1=Freitextfeld',
|
||||
`uid` int(11) NOT NULL,
|
||||
`datum_erfasst` datetime NOT NULL
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;
|
||||
|
||||
--
|
||||
-- Daten für Tabelle `jumi_umfragen`
|
||||
--
|
||||
|
||||
INSERT INTO `jumi_umfragen` (`umid`, `datum_von`, `datum_bis`, `headline`, `freitext`, `uid`, `datum_erfasst`) VALUES
|
||||
(3, '2023-03-26 00:00:00', '2023-03-27 00:00:00', 'Umfrage zu JU & ESS', '1', 1, '2023-03-26 14:07:07');
|
||||
|
||||
-- --------------------------------------------------------
|
||||
|
||||
--
|
||||
-- Tabellenstruktur für Tabelle `jumi_umfragen_antworten`
|
||||
--
|
||||
|
||||
CREATE TABLE `jumi_umfragen_antworten` (
|
||||
`uaid` int(11) NOT NULL,
|
||||
`ufid` int(11) NOT NULL,
|
||||
`antwort` varchar(250) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NOT NULL,
|
||||
`userorder` int(11) NOT NULL
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;
|
||||
|
||||
--
|
||||
-- Daten für Tabelle `jumi_umfragen_antworten`
|
||||
--
|
||||
|
||||
INSERT INTO `jumi_umfragen_antworten` (`uaid`, `ufid`, `antwort`, `userorder`) VALUES
|
||||
(15, 6, 'gut', 0),
|
||||
(16, 6, 'weniger gut', 0),
|
||||
(17, 6, 'kann ich nicht sagen', 0),
|
||||
(18, 7, 'Montag', 0),
|
||||
(19, 7, 'Sonntag', 2),
|
||||
(20, 7, 'Freitag', 1),
|
||||
(21, 8, 'geht gar nicht', 2),
|
||||
(22, 8, 'gut', 1),
|
||||
(23, 8, 'mega', 0),
|
||||
(24, 8, 'widerlich', 3);
|
||||
|
||||
-- --------------------------------------------------------
|
||||
|
||||
--
|
||||
-- Tabellenstruktur für Tabelle `jumi_umfragen_ende`
|
||||
--
|
||||
|
||||
CREATE TABLE `jumi_umfragen_ende` (
|
||||
`uenid` int(11) NOT NULL,
|
||||
`umid` int(11) NOT NULL,
|
||||
`ip` varchar(20) NOT NULL,
|
||||
`session` varchar(50) NOT NULL,
|
||||
`ende` enum('0','1') NOT NULL DEFAULT '0'
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;
|
||||
|
||||
--
|
||||
-- Daten für Tabelle `jumi_umfragen_ende`
|
||||
--
|
||||
|
||||
INSERT INTO `jumi_umfragen_ende` (`uenid`, `umid`, `ip`, `session`, `ende`) VALUES
|
||||
(3, 3, '93.235.6.164', '0decptq29nvsi9b1rskqg8rlar', '1'),
|
||||
(4, 3, '93.235.6.164', 'ad62egmq6ch3tr8d7bsrkv1ro3', '1'),
|
||||
(5, 3, '93.235.6.164', '6im2hht8fb0uqc91ahk2ti8suq', '1'),
|
||||
(6, 3, '93.235.6.164', 'di7peu3vvu6imehet8vtt0jpof', '1'),
|
||||
(7, 3, '88.152.185.164', '0emg0fbguq52pd8h0c7j27ea9o', '1');
|
||||
|
||||
-- --------------------------------------------------------
|
||||
|
||||
--
|
||||
-- Tabellenstruktur für Tabelle `jumi_umfragen_ergebnisse`
|
||||
--
|
||||
|
||||
CREATE TABLE `jumi_umfragen_ergebnisse` (
|
||||
`ueid` int(11) NOT NULL,
|
||||
`ip` varchar(20) NOT NULL,
|
||||
`session` varchar(50) NOT NULL,
|
||||
`ufid` int(11) NOT NULL,
|
||||
`uaid` int(11) NOT NULL
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;
|
||||
|
||||
--
|
||||
-- Daten für Tabelle `jumi_umfragen_ergebnisse`
|
||||
--
|
||||
|
||||
INSERT INTO `jumi_umfragen_ergebnisse` (`ueid`, `ip`, `session`, `ufid`, `uaid`) VALUES
|
||||
(6, '93.235.6.164', '6im2hht8fb0uqc91ahk2ti8suq', 6, 15),
|
||||
(7, '88.152.185.164', '0emg0fbguq52pd8h0c7j27ea9o', 6, 17),
|
||||
(8, '93.235.6.164', 'ad62egmq6ch3tr8d7bsrkv1ro3', 6, 15),
|
||||
(9, '93.235.6.164', 'ad62egmq6ch3tr8d7bsrkv1ro3', 7, 19),
|
||||
(10, '88.152.185.164', '0emg0fbguq52pd8h0c7j27ea9o', 7, 18),
|
||||
(11, '93.235.6.164', '0decptq29nvsi9b1rskqg8rlar', 6, 15),
|
||||
(12, '93.235.6.164', '6im2hht8fb0uqc91ahk2ti8suq', 7, 19),
|
||||
(13, '93.235.6.164', '6im2hht8fb0uqc91ahk2ti8suq', 7, 20),
|
||||
(14, '93.235.6.164', 'di7peu3vvu6imehet8vtt0jpof', 6, 17),
|
||||
(15, '93.235.6.164', 'ad62egmq6ch3tr8d7bsrkv1ro3', 8, 23),
|
||||
(16, '93.235.6.164', '0decptq29nvsi9b1rskqg8rlar', 7, 18),
|
||||
(17, '88.152.185.164', '0emg0fbguq52pd8h0c7j27ea9o', 8, 22),
|
||||
(18, '93.235.6.164', '6im2hht8fb0uqc91ahk2ti8suq', 8, 24),
|
||||
(19, '93.235.6.164', '0decptq29nvsi9b1rskqg8rlar', 8, 23),
|
||||
(20, '93.235.6.164', 'di7peu3vvu6imehet8vtt0jpof', 7, 18),
|
||||
(21, '93.235.6.164', 'di7peu3vvu6imehet8vtt0jpof', 7, 19),
|
||||
(22, '93.235.6.164', 'di7peu3vvu6imehet8vtt0jpof', 8, 23);
|
||||
|
||||
-- --------------------------------------------------------
|
||||
|
||||
--
|
||||
-- Tabellenstruktur für Tabelle `jumi_umfragen_erg_freitext`
|
||||
--
|
||||
|
||||
CREATE TABLE `jumi_umfragen_erg_freitext` (
|
||||
`uefid` int(11) NOT NULL,
|
||||
`umid` int(11) NOT NULL,
|
||||
`ip` varchar(20) CHARACTER SET utf8mb4 NOT NULL,
|
||||
`session` varchar(50) CHARACTER SET utf8mb4 NOT NULL,
|
||||
`freitext` text COLLATE utf8mb4_bin NOT NULL
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_bin;
|
||||
|
||||
--
|
||||
-- Daten für Tabelle `jumi_umfragen_erg_freitext`
|
||||
--
|
||||
|
||||
INSERT INTO `jumi_umfragen_erg_freitext` (`uefid`, `umid`, `ip`, `session`, `freitext`) VALUES
|
||||
(3, 3, '93.235.6.164', 'ad62egmq6ch3tr8d7bsrkv1ro3', '😘'),
|
||||
(4, 3, '93.235.6.164', '6im2hht8fb0uqc91ahk2ti8suq', 'Netter Tag 😘😘😘'),
|
||||
(5, 3, '93.235.6.164', 'di7peu3vvu6imehet8vtt0jpof', 'Ali müffelt '),
|
||||
(6, 3, '88.152.185.164', '0emg0fbguq52pd8h0c7j27ea9o', 'Ich find euch spitze!\r\nUnd die Umfragen sind super 🙌🏽');
|
||||
|
||||
-- --------------------------------------------------------
|
||||
|
||||
--
|
||||
-- Tabellenstruktur für Tabelle `jumi_umfragen_fragen`
|
||||
--
|
||||
|
||||
CREATE TABLE `jumi_umfragen_fragen` (
|
||||
`ufid` int(11) NOT NULL,
|
||||
`umid` int(11) NOT NULL,
|
||||
`frage` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NOT NULL,
|
||||
`multiple` enum('0','1') NOT NULL DEFAULT '0' COMMENT '0=Einfachantwort,1=Mehrfachantworten '
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;
|
||||
|
||||
--
|
||||
-- Daten für Tabelle `jumi_umfragen_fragen`
|
||||
--
|
||||
|
||||
INSERT INTO `jumi_umfragen_fragen` (`ufid`, `umid`, `frage`, `multiple`) VALUES
|
||||
(6, 3, 'Wie war das essen', '0'),
|
||||
(7, 3, 'Wann wäre der liebste Probentag?', '1'),
|
||||
(8, 3, 'Wie findet ihr das Lieb \"Dona nobis pacem\"', '0');
|
||||
|
||||
--
|
||||
-- Indizes der exportierten Tabellen
|
||||
--
|
||||
|
||||
--
|
||||
-- Indizes für die Tabelle `jumi_admin`
|
||||
--
|
||||
ALTER TABLE `jumi_admin`
|
||||
ADD PRIMARY KEY (`uid`);
|
||||
|
||||
--
|
||||
-- Indizes für die Tabelle `jumi_adminlog`
|
||||
--
|
||||
ALTER TABLE `jumi_adminlog`
|
||||
ADD PRIMARY KEY (`lid`),
|
||||
ADD KEY `gd_adminlog_ibfk_1` (`uid`);
|
||||
|
||||
--
|
||||
-- Indizes für die Tabelle `jumi_admin_rolle`
|
||||
--
|
||||
ALTER TABLE `jumi_admin_rolle`
|
||||
ADD PRIMARY KEY (`rid`);
|
||||
|
||||
--
|
||||
-- Indizes für die Tabelle `jumi_admin_rollen_rechte_zuord`
|
||||
--
|
||||
ALTER TABLE `jumi_admin_rollen_rechte_zuord`
|
||||
ADD PRIMARY KEY (`roreid`),
|
||||
ADD KEY `rid` (`rid`),
|
||||
ADD KEY `admin_rolle` (`meid`);
|
||||
|
||||
--
|
||||
-- Indizes für die Tabelle `jumi_admin_rollen_user_zuord`
|
||||
--
|
||||
ALTER TABLE `jumi_admin_rollen_user_zuord`
|
||||
ADD PRIMARY KEY (`rozuid`);
|
||||
|
||||
--
|
||||
-- Indizes für die Tabelle `jumi_chor_saenger`
|
||||
--
|
||||
ALTER TABLE `jumi_chor_saenger`
|
||||
ADD PRIMARY KEY (`csid`);
|
||||
|
||||
--
|
||||
-- Indizes für die Tabelle `jumi_chor_saenger_uploads`
|
||||
--
|
||||
ALTER TABLE `jumi_chor_saenger_uploads`
|
||||
ADD PRIMARY KEY (`id`);
|
||||
|
||||
--
|
||||
-- Indizes für die Tabelle `jumi_menu_entries`
|
||||
--
|
||||
ALTER TABLE `jumi_menu_entries`
|
||||
ADD PRIMARY KEY (`meid`);
|
||||
|
||||
--
|
||||
-- Indizes für die Tabelle `jumi_menu_headline`
|
||||
--
|
||||
ALTER TABLE `jumi_menu_headline`
|
||||
ADD PRIMARY KEY (`mhid`);
|
||||
|
||||
--
|
||||
-- Indizes für die Tabelle `jumi_noten_daten`
|
||||
--
|
||||
ALTER TABLE `jumi_noten_daten`
|
||||
ADD PRIMARY KEY (`jndid`);
|
||||
|
||||
--
|
||||
-- Indizes für die Tabelle `jumi_noten_songbook`
|
||||
--
|
||||
ALTER TABLE `jumi_noten_songbook`
|
||||
ADD PRIMARY KEY (`sbid`);
|
||||
|
||||
--
|
||||
-- Indizes für die Tabelle `jumi_noten_uploads`
|
||||
--
|
||||
ALTER TABLE `jumi_noten_uploads`
|
||||
ADD PRIMARY KEY (`id`);
|
||||
|
||||
--
|
||||
-- Indizes für die Tabelle `jumi_noten_verlag`
|
||||
--
|
||||
ALTER TABLE `jumi_noten_verlag`
|
||||
ADD PRIMARY KEY (`vid`);
|
||||
|
||||
--
|
||||
-- Indizes für die Tabelle `jumi_noten_zusammenstellung`
|
||||
--
|
||||
ALTER TABLE `jumi_noten_zusammenstellung`
|
||||
ADD PRIMARY KEY (`zsid`);
|
||||
|
||||
--
|
||||
-- Indizes für die Tabelle `jumi_noten_zusammenstellung_zuord`
|
||||
--
|
||||
ALTER TABLE `jumi_noten_zusammenstellung_zuord`
|
||||
ADD PRIMARY KEY (`zsnid`);
|
||||
|
||||
--
|
||||
-- Indizes für die Tabelle `jumi_parameter`
|
||||
--
|
||||
ALTER TABLE `jumi_parameter`
|
||||
ADD PRIMARY KEY (`pid`);
|
||||
|
||||
--
|
||||
-- Indizes für die Tabelle `jumi_securitytokens`
|
||||
--
|
||||
ALTER TABLE `jumi_securitytokens`
|
||||
ADD PRIMARY KEY (`id`);
|
||||
|
||||
--
|
||||
-- Indizes für die Tabelle `jumi_umfragen`
|
||||
--
|
||||
ALTER TABLE `jumi_umfragen`
|
||||
ADD PRIMARY KEY (`umid`);
|
||||
|
||||
--
|
||||
-- Indizes für die Tabelle `jumi_umfragen_antworten`
|
||||
--
|
||||
ALTER TABLE `jumi_umfragen_antworten`
|
||||
ADD PRIMARY KEY (`uaid`);
|
||||
|
||||
--
|
||||
-- Indizes für die Tabelle `jumi_umfragen_ende`
|
||||
--
|
||||
ALTER TABLE `jumi_umfragen_ende`
|
||||
ADD PRIMARY KEY (`uenid`);
|
||||
|
||||
--
|
||||
-- Indizes für die Tabelle `jumi_umfragen_ergebnisse`
|
||||
--
|
||||
ALTER TABLE `jumi_umfragen_ergebnisse`
|
||||
ADD PRIMARY KEY (`ueid`);
|
||||
|
||||
--
|
||||
-- Indizes für die Tabelle `jumi_umfragen_erg_freitext`
|
||||
--
|
||||
ALTER TABLE `jumi_umfragen_erg_freitext`
|
||||
ADD PRIMARY KEY (`uefid`);
|
||||
|
||||
--
|
||||
-- Indizes für die Tabelle `jumi_umfragen_fragen`
|
||||
--
|
||||
ALTER TABLE `jumi_umfragen_fragen`
|
||||
ADD PRIMARY KEY (`ufid`);
|
||||
|
||||
--
|
||||
-- AUTO_INCREMENT für exportierte Tabellen
|
||||
--
|
||||
|
||||
--
|
||||
-- AUTO_INCREMENT für Tabelle `jumi_admin`
|
||||
--
|
||||
ALTER TABLE `jumi_admin`
|
||||
MODIFY `uid` int(11) NOT NULL AUTO_INCREMENT, AUTO_INCREMENT=6;
|
||||
|
||||
--
|
||||
-- AUTO_INCREMENT für Tabelle `jumi_adminlog`
|
||||
--
|
||||
ALTER TABLE `jumi_adminlog`
|
||||
MODIFY `lid` int(11) NOT NULL AUTO_INCREMENT, AUTO_INCREMENT=84;
|
||||
|
||||
--
|
||||
-- AUTO_INCREMENT für Tabelle `jumi_admin_rolle`
|
||||
--
|
||||
ALTER TABLE `jumi_admin_rolle`
|
||||
MODIFY `rid` int(11) NOT NULL AUTO_INCREMENT, AUTO_INCREMENT=3;
|
||||
|
||||
--
|
||||
-- AUTO_INCREMENT für Tabelle `jumi_admin_rollen_rechte_zuord`
|
||||
--
|
||||
ALTER TABLE `jumi_admin_rollen_rechte_zuord`
|
||||
MODIFY `roreid` int(11) NOT NULL AUTO_INCREMENT, AUTO_INCREMENT=21;
|
||||
|
||||
--
|
||||
-- AUTO_INCREMENT für Tabelle `jumi_admin_rollen_user_zuord`
|
||||
--
|
||||
ALTER TABLE `jumi_admin_rollen_user_zuord`
|
||||
MODIFY `rozuid` int(11) NOT NULL AUTO_INCREMENT, AUTO_INCREMENT=6;
|
||||
|
||||
--
|
||||
-- AUTO_INCREMENT für Tabelle `jumi_chor_saenger`
|
||||
--
|
||||
ALTER TABLE `jumi_chor_saenger`
|
||||
MODIFY `csid` int(11) NOT NULL AUTO_INCREMENT, AUTO_INCREMENT=3;
|
||||
|
||||
--
|
||||
-- AUTO_INCREMENT für Tabelle `jumi_chor_saenger_uploads`
|
||||
--
|
||||
ALTER TABLE `jumi_chor_saenger_uploads`
|
||||
MODIFY `id` int(11) NOT NULL AUTO_INCREMENT, AUTO_INCREMENT=4;
|
||||
|
||||
--
|
||||
-- AUTO_INCREMENT für Tabelle `jumi_menu_entries`
|
||||
--
|
||||
ALTER TABLE `jumi_menu_entries`
|
||||
MODIFY `meid` int(11) NOT NULL AUTO_INCREMENT, AUTO_INCREMENT=16;
|
||||
|
||||
--
|
||||
-- AUTO_INCREMENT für Tabelle `jumi_menu_headline`
|
||||
--
|
||||
ALTER TABLE `jumi_menu_headline`
|
||||
MODIFY `mhid` int(11) NOT NULL AUTO_INCREMENT, AUTO_INCREMENT=5;
|
||||
|
||||
--
|
||||
-- AUTO_INCREMENT für Tabelle `jumi_noten_daten`
|
||||
--
|
||||
ALTER TABLE `jumi_noten_daten`
|
||||
MODIFY `jndid` int(11) NOT NULL AUTO_INCREMENT, AUTO_INCREMENT=3;
|
||||
|
||||
--
|
||||
-- AUTO_INCREMENT für Tabelle `jumi_noten_songbook`
|
||||
--
|
||||
ALTER TABLE `jumi_noten_songbook`
|
||||
MODIFY `sbid` int(11) NOT NULL AUTO_INCREMENT, AUTO_INCREMENT=5;
|
||||
|
||||
--
|
||||
-- AUTO_INCREMENT für Tabelle `jumi_noten_uploads`
|
||||
--
|
||||
ALTER TABLE `jumi_noten_uploads`
|
||||
MODIFY `id` int(11) NOT NULL AUTO_INCREMENT, AUTO_INCREMENT=7;
|
||||
|
||||
--
|
||||
-- AUTO_INCREMENT für Tabelle `jumi_noten_verlag`
|
||||
--
|
||||
ALTER TABLE `jumi_noten_verlag`
|
||||
MODIFY `vid` int(11) NOT NULL AUTO_INCREMENT, AUTO_INCREMENT=4;
|
||||
|
||||
--
|
||||
-- AUTO_INCREMENT für Tabelle `jumi_noten_zusammenstellung`
|
||||
--
|
||||
ALTER TABLE `jumi_noten_zusammenstellung`
|
||||
MODIFY `zsid` int(11) NOT NULL AUTO_INCREMENT, AUTO_INCREMENT=2;
|
||||
|
||||
--
|
||||
-- AUTO_INCREMENT für Tabelle `jumi_noten_zusammenstellung_zuord`
|
||||
--
|
||||
ALTER TABLE `jumi_noten_zusammenstellung_zuord`
|
||||
MODIFY `zsnid` int(11) NOT NULL AUTO_INCREMENT, AUTO_INCREMENT=9;
|
||||
|
||||
--
|
||||
-- AUTO_INCREMENT für Tabelle `jumi_parameter`
|
||||
--
|
||||
ALTER TABLE `jumi_parameter`
|
||||
MODIFY `pid` int(11) NOT NULL AUTO_INCREMENT, AUTO_INCREMENT=2;
|
||||
|
||||
--
|
||||
-- AUTO_INCREMENT für Tabelle `jumi_securitytokens`
|
||||
--
|
||||
ALTER TABLE `jumi_securitytokens`
|
||||
MODIFY `id` int(10) UNSIGNED NOT NULL AUTO_INCREMENT, AUTO_INCREMENT=13;
|
||||
|
||||
--
|
||||
-- AUTO_INCREMENT für Tabelle `jumi_umfragen`
|
||||
--
|
||||
ALTER TABLE `jumi_umfragen`
|
||||
MODIFY `umid` int(11) NOT NULL AUTO_INCREMENT, AUTO_INCREMENT=4;
|
||||
|
||||
--
|
||||
-- AUTO_INCREMENT für Tabelle `jumi_umfragen_antworten`
|
||||
--
|
||||
ALTER TABLE `jumi_umfragen_antworten`
|
||||
MODIFY `uaid` int(11) NOT NULL AUTO_INCREMENT, AUTO_INCREMENT=25;
|
||||
|
||||
--
|
||||
-- AUTO_INCREMENT für Tabelle `jumi_umfragen_ende`
|
||||
--
|
||||
ALTER TABLE `jumi_umfragen_ende`
|
||||
MODIFY `uenid` int(11) NOT NULL AUTO_INCREMENT, AUTO_INCREMENT=8;
|
||||
|
||||
--
|
||||
-- AUTO_INCREMENT für Tabelle `jumi_umfragen_ergebnisse`
|
||||
--
|
||||
ALTER TABLE `jumi_umfragen_ergebnisse`
|
||||
MODIFY `ueid` int(11) NOT NULL AUTO_INCREMENT, AUTO_INCREMENT=23;
|
||||
|
||||
--
|
||||
-- AUTO_INCREMENT für Tabelle `jumi_umfragen_erg_freitext`
|
||||
--
|
||||
ALTER TABLE `jumi_umfragen_erg_freitext`
|
||||
MODIFY `uefid` int(11) NOT NULL AUTO_INCREMENT, AUTO_INCREMENT=7;
|
||||
|
||||
--
|
||||
-- AUTO_INCREMENT für Tabelle `jumi_umfragen_fragen`
|
||||
--
|
||||
ALTER TABLE `jumi_umfragen_fragen`
|
||||
MODIFY `ufid` int(11) NOT NULL AUTO_INCREMENT, AUTO_INCREMENT=9;
|
||||
COMMIT;
|
||||
|
||||
/*!40101 SET CHARACTER_SET_CLIENT=@OLD_CHARACTER_SET_CLIENT */;
|
||||
/*!40101 SET CHARACTER_SET_RESULTS=@OLD_CHARACTER_SET_RESULTS */;
|
||||
/*!40101 SET COLLATION_CONNECTION=@OLD_COLLATION_CONNECTION */;
|
@ -2,8 +2,13 @@
|
||||
<!DOCTYPE html>
|
||||
<html lang="de">
|
||||
<head>
|
||||
<title>JU & MI Benutzer erstellen</title>
|
||||
<link rel="stylesheet" href="../jquery/jquery-ui.css">
|
||||
{if $create_edit == ''}
|
||||
<title>JU & MI SängerIn erfassen</title>
|
||||
{else}
|
||||
<title>JU & MI SängerIn bearbeiten</title>
|
||||
{/if}
|
||||
|
||||
<title>JU & MI SängerIn erfassen</title>
|
||||
<link rel="stylesheet" href="../jquery/jquery.timepicker.min.css">
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1">
|
||||
<link href="../bootstrap/node_modules/bootstrap/dist/css/bootstrap.min.css" rel="stylesheet">
|
||||
@ -14,131 +19,19 @@
|
||||
<script src="js/all.js" crossorigin="anonymous"></script>
|
||||
<script src="../jquery/jquery-3.4.1.min.js"></script>
|
||||
<link rel="stylesheet" href="../bootstrap/node_modules/bootstrap-icons/font/bootstrap-icons.css">
|
||||
<style>
|
||||
.multiselect-container {
|
||||
position: absolute;
|
||||
list-style-type: none;
|
||||
margin: 5px 0 0 0;
|
||||
width: 100%;
|
||||
padding: 10px 0;
|
||||
border: none;
|
||||
-webkit-box-shadow: 0px 10px 23px -16px rgba(0, 0, 0, 0.14);
|
||||
-moz-box-shadow: 0px 10px 23px -16px rgba(0, 0, 0, 0.14);
|
||||
box-shadow: 0px 10px 23px -16px rgba(0, 0, 0, 0.14); }
|
||||
|
||||
.multiselect-container .input-group {
|
||||
margin: 5px; }
|
||||
|
||||
.multiselect-container > li {
|
||||
padding: 0;
|
||||
font-size: 14px; }
|
||||
|
||||
.multiselect-container > li > a.multiselect-all label {
|
||||
font-weight: 700;
|
||||
color: gray; }
|
||||
|
||||
.multiselect-container > li.multiselect-group label {
|
||||
margin: 0;
|
||||
padding: 3px 20px 3px 20px;
|
||||
height: 100%;
|
||||
font-weight: 700; }
|
||||
|
||||
.multiselect-container > li.multiselect-group-clickable label {
|
||||
cursor: pointer; }
|
||||
|
||||
.multiselect-container > li > a {
|
||||
padding: 5px 0;
|
||||
color: #000;
|
||||
display: block; }
|
||||
|
||||
.multiselect-container > li > a > label {
|
||||
display: block;
|
||||
position: relative;
|
||||
padding-left: 20px;
|
||||
margin-bottom: 12px;
|
||||
cursor: pointer;
|
||||
font-size: 16px;
|
||||
font-weight: 500;
|
||||
-webkit-user-select: none;
|
||||
-moz-user-select: none;
|
||||
-ms-user-select: none;
|
||||
user-select: none; }
|
||||
.multiselect-container > li > a > label:before {
|
||||
content: "";
|
||||
display: inline-block;
|
||||
position: relative;
|
||||
height: 20px;
|
||||
width: 20px;
|
||||
border: 2px solid rgba(0, 0, 0, 0.2);
|
||||
border-radius: 4px;
|
||||
background-color: transparent;
|
||||
margin-right: 15px;
|
||||
vertical-align: middle; }
|
||||
|
||||
.multiselect-container > li.active > a > label:before {
|
||||
font-family: 'fontAwesome';
|
||||
content: "\f00c";
|
||||
color: #fff;
|
||||
background-color: #52de97;
|
||||
border: 0;
|
||||
display: inline-block;
|
||||
padding: 0;
|
||||
line-height: 1.2;
|
||||
padding-left: 2px; }
|
||||
|
||||
.multiselect-container > li > a > label.radio, .multiselect-container > li > a > label.checkbox {
|
||||
margin: 0; }
|
||||
|
||||
.multiselect-container > li > a > label > input[type=checkbox] {
|
||||
position: absolute;
|
||||
opacity: 0;
|
||||
cursor: pointer;
|
||||
height: 0;
|
||||
width: 0; }
|
||||
|
||||
.btn-group > .btn-group:nth-child(2) > .multiselect.btn {
|
||||
border-top-left-radius: 4px;
|
||||
border-bottom-left-radius: 4px; }
|
||||
|
||||
.form-inline .multiselect-container label.checkbox, .form-inline .multiselect-container label.radio {
|
||||
padding: 3px 20px 3px 40px; }
|
||||
|
||||
.form-inline .multiselect-container li a label.checkbox input[type=checkbox],
|
||||
.form-inline .multiselect-container li a label.radio input[type=radio] {
|
||||
margin-left: -20px;
|
||||
margin-right: 0; }
|
||||
|
||||
.btn-group {
|
||||
height: 52px;
|
||||
width: calc(100% - 150px); }
|
||||
.btn-group button {
|
||||
border-radius: 4px;
|
||||
background: #fff;
|
||||
-webkit-box-shadow: 0px 10px 23px -16px rgba(0, 0, 0, 0.14);
|
||||
-moz-box-shadow: 0px 10px 23px -16px rgba(0, 0, 0, 0.14);
|
||||
box-shadow: 0px 10px 23px -16px rgba(0, 0, 0, 0.14);
|
||||
padding: 0 10px;
|
||||
text-align: left;
|
||||
position: relative; }
|
||||
.btn-group button:after {
|
||||
position: absolute;
|
||||
top: 50%;
|
||||
right: 20px;
|
||||
-webkit-transform: translateY(-50%);
|
||||
-ms-transform: translateY(-50%);
|
||||
transform: translateY(-50%);
|
||||
color: #999999; }
|
||||
.btn-group button:focus {
|
||||
-webkit-box-shadow: 0px 10px 23px -16px rgba(0, 0, 0, 0.14);
|
||||
-moz-box-shadow: 0px 10px 23px -16px rgba(0, 0, 0, 0.14);
|
||||
box-shadow: 0px 10px 23px -16px rgba(0, 0, 0, 0.14);
|
||||
padding: 0 10px; }
|
||||
|
||||
.sl {
|
||||
color: gray;
|
||||
width: 150px; }
|
||||
|
||||
</style>
|
||||
<script type="text/javascript" src="../js/file_upload/vpb_uploader_member.js"></script>
|
||||
<script type="text/javascript">$(document).ready(function()
|
||||
{
|
||||
// Call the main function
|
||||
new vpb_multiple_file_uploader
|
||||
({
|
||||
vpb_form_id: "form_id", // Form ID
|
||||
autoSubmit: true,
|
||||
vpb_server_url: "../controller/admin_memberupload.php"
|
||||
});
|
||||
});
|
||||
</script>
|
||||
<link href = "../jquery/jquery-ui-themes-1.13.2/jquery-ui.css" rel = "stylesheet">
|
||||
</head>
|
||||
<body class="sb-nav-fixed">
|
||||
<div id="navtop"></div>
|
||||
@ -153,18 +46,20 @@
|
||||
</script>
|
||||
{/literal}
|
||||
<div id="layoutSidenav">
|
||||
<!-- Navigation left -->
|
||||
<div id="navleft"></div>
|
||||
<div id="layoutSidenav_content">
|
||||
<main>
|
||||
<!--Anwendung-->
|
||||
<script src="../js/components/admin_create_member.js"></script>
|
||||
|
||||
<!-- Navigation left -->
|
||||
<div id="navleft"></div>
|
||||
<div id="layoutSidenav_content">
|
||||
<main>
|
||||
<div class="container-fluid">
|
||||
<form name="form_id" id="form_id" action="javascript:void(0);" enctype="multipart/form-data">
|
||||
<div class="card">
|
||||
<div class="card-header">
|
||||
<i class="fas fa-edit me-1"></i>
|
||||
SängerIn erfassen
|
||||
{if $create_edit == ''}
|
||||
SängerIn erfassen
|
||||
{else}
|
||||
SängerIn bearbeiten
|
||||
{/if}
|
||||
</div>
|
||||
<div class="card-body">
|
||||
<div class="row">
|
||||
@ -183,47 +78,103 @@
|
||||
<div class="row mt-2 mt-sm-4 mb-2 mb-sm-4">
|
||||
<div class="col-12 col-md-4">Singstimme:</div>
|
||||
<div class="col-12 col-md-8">
|
||||
<select name="singstimme"class="form-control" id="singstimme">
|
||||
<option value="1">Sopran</option>
|
||||
<option value="2">Alt</option>
|
||||
<option value="3">Tenor</option>
|
||||
<option value="4">Baß</option>
|
||||
</select>
|
||||
</div>
|
||||
<div class="row mt-2 mt-sm-4 mb-2 mb-sm-4">
|
||||
<div class="col-12 col-md-4">Bemerkung:</div>
|
||||
<div class="col-12 col-md-8">
|
||||
<div class="form-group">
|
||||
<textarea id="bemerkung"></textarea>
|
||||
</div>
|
||||
<select name="singstimme"class="form-control" id="singstimme">
|
||||
<option value="1" {if $member_anlegen_singstimme == 1} selected {/if}>Sopran</option>
|
||||
<option value="2" {if $member_anlegen_singstimme == 2} selected {/if}>Alt</option>
|
||||
<option value="3" {if $member_anlegen_singstimme == 3} selected {/if}>Tenor</option>
|
||||
<option value="4" {if $member_anlegen_singstimme == 4} selected {/if}>Baß</option>
|
||||
</select>
|
||||
</div>
|
||||
<div class="row mt-2 mt-sm-4 mb-2 mb-sm-4">
|
||||
<div class="col-12 col-md-4">Bemerkung:</div>
|
||||
<div class="col-12 col-md-8">
|
||||
<div class="form-group">
|
||||
<textarea id="bemerkung">{$member_anlegen_bemerkung}</textarea>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
{if $create_edit != ''}
|
||||
<div class="row mt-2 mt-sm-4 mb-2 mb-sm-4">
|
||||
<div class="col-12 col-md-4">Dateien:</div>
|
||||
<div class="col-12 col-md-8">
|
||||
<div class="form-group">
|
||||
<table class="table table-striped table-bordered" id="curdoks">
|
||||
<thead>
|
||||
<tr>
|
||||
<th style="color:blue; text-align:center;">Datei</th>
|
||||
<th style="color:blue; text-align:center;">Uploaddatum</th>
|
||||
<th style="color:blue; text-align:center;">Aktion</th>
|
||||
<tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
{section name=table_data loop=$table_data}
|
||||
<tr>
|
||||
<td><a href="{$table_data[table_data].filename}" target="_new">{$table_data[table_data].originalname}</a></td>
|
||||
<td>{$table_data[table_data].uploaddatum}</td>
|
||||
<td><a class="btn btn-danger btn-rounded btn-icon btn-sm" onclick="delMemberFile({$table_data[table_data].id})"><i class="fa fa-trash" style="width:18px;"></i></a></td>
|
||||
</tr>
|
||||
{/section}
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
{/if}
|
||||
<div class="row mt-2 mt-sm-4 mb-2 mb-sm-4">
|
||||
<label for="formFile" class="form-label">
|
||||
<div class="col-12 col-md-4">PDF:</div>
|
||||
<div class="col-12col-md-8">
|
||||
<input class="form-control" type="file" name="vasplus_multiple_files" id="vasplus_multiple_files" multiple="multiple">
|
||||
</div>
|
||||
</label>
|
||||
</div>
|
||||
<table class="table table-striped table-bordered" id="add_files">
|
||||
<thead>
|
||||
<tr>
|
||||
<th style="color:blue; text-align:center;">Datei</th>
|
||||
<th style="color:blue; text-align:center;">Status</th>
|
||||
<th style="color:blue; text-align:center;">Größe</th>
|
||||
<th style="color:blue; text-align:center;">Aktion</th>
|
||||
<tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
</div>
|
||||
<p align='center'>
|
||||
<button class="col-6 btn btn-primary btn-sm mt-3" id="save" onclick="membersave();">Speichern</button>
|
||||
</p>
|
||||
<p align='center'>
|
||||
{if $create_edit != ''}
|
||||
<input type="hidden" id="csid" value="{$create_edit}">
|
||||
{else}
|
||||
<input type="hidden" id="csid" value="-1">
|
||||
{/if}
|
||||
<button class="col-6 btn btn-primary btn-sm mt-3" id="save" onclick="membersave();">Speichern</button>
|
||||
</p>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div id="msg"></div>
|
||||
<div id="msg1"></div>
|
||||
</form>
|
||||
</div>
|
||||
<div id="msg"></div>
|
||||
<div id="msg1"></div>
|
||||
</main>
|
||||
<script src="https://cdn.tiny.cloud/1/1rbpdpgs5ibxxotsljroj6rzz4t6v4akerjkdj7tuzdzlic6/tinymce/6/tinymce.min.js" referrerpolicy="origin"></script>
|
||||
|
||||
<script>
|
||||
tinymce.init({
|
||||
selector: 'textarea#bemerkung',
|
||||
height: 200,
|
||||
skin: 'bootstrap',
|
||||
plugins: 'lists, link',
|
||||
toolbar: 'h1 h2 bold italic strikethrough blockquote bullist numlist backcolor | link | removeformat help',
|
||||
menubar: false,
|
||||
});
|
||||
</script>
|
||||
<!-- footer -->
|
||||
<div id="footer"></div>
|
||||
</main>
|
||||
<!--
|
||||
<script src="https://cdn.tiny.cloud/1/1rbpdpgs5ibxxotsljroj6rzz4t6v4akerjkdj7tuzdzlic6/tinymce/6/tinymce.min.js" referrerpolicy="origin"></script>
|
||||
-->
|
||||
<script src="../tinymce/js/tinymce/tinymce.min.js"></script>
|
||||
<script>
|
||||
tinymce.init({
|
||||
selector: 'textarea#bemerkung',
|
||||
height: 200,
|
||||
// skin: 'bootstrap',
|
||||
plugins: 'lists, link',
|
||||
toolbar: 'h1 h2 bold italic strikethrough blockquote bullist numlist backcolor | link | removeformat help',
|
||||
menubar: false,
|
||||
});
|
||||
</script>
|
||||
<!-- footer -->
|
||||
<div id="footer"></div>
|
||||
</div>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
||||
{/if}
|
||||
{/if}
|
111
templates/modern/dashboard/edit_member.html
Normal file
111
templates/modern/dashboard/edit_member.html
Normal file
@ -0,0 +1,111 @@
|
||||
{if $action == ''}
|
||||
<!DOCTYPE html>
|
||||
<html lang="de">
|
||||
<head>
|
||||
<title>JU & MI SängerIn bearbeiten</title>
|
||||
<link rel="stylesheet" href="../jquery/jquery-ui.css">
|
||||
<link rel="stylesheet" href="../jquery/jquery.timepicker.min.css">
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1">
|
||||
<link href="../bootstrap/node_modules/bootstrap/dist/css/bootstrap.min.css" rel="stylesheet">
|
||||
<script src="../bootstrap/node_modules/bootstrap/dist/js/bootstrap.bundle.min.js"></script>
|
||||
<!-- nochmals bootstrap.css mit Erweiterungen vom Dashboard -->
|
||||
<link href="css/styles.css" rel="stylesheet" />
|
||||
<!-- icons in nav-->
|
||||
|
||||
<!-- data Table: https://datatables.net/ -->
|
||||
<script src="../bootstrap/data-table/jquery.min.js"></script>
|
||||
<link rel="stylesheet" href="../bootstrap/data-table/dataTables.bootstrap5.min.css"></style>
|
||||
<link rel="stylesheet" href="../bootstrap/data-table/rowReorder.dataTables.min.css"></style>
|
||||
<script type="text/javascript" src="../bootstrap/data-table/jquery.dataTables.min.js"></script>
|
||||
<script type="text/javascript" src="../bootstrap/data-table/dataTables.rowReorder.min.js"></script>
|
||||
<script type="text/javascript" src="../bootstrap/data-table/dataTables.bootstrap5.min.js"></script>
|
||||
<link rel="stylesheet" href="../bootstrap/data-table/jumistyle.css"></style>
|
||||
|
||||
<script src="js/all.js" crossorigin="anonymous"></script>
|
||||
<script src="../jquery/jquery-3.4.1.min.js"></script>
|
||||
<link rel="stylesheet" href="../bootstrap/node_modules/bootstrap-icons/font/bootstrap-icons.css">
|
||||
|
||||
</head>
|
||||
<body class="sb-nav-fixed">
|
||||
<div id="navtop"></div>
|
||||
{literal}
|
||||
<script>
|
||||
$(function(){
|
||||
// im Navbar muss der toggle in der Callbackfunktion definiert werden. Sonst findet jquery getelementbyID nicht
|
||||
$("#navtop").load('navtop.php', null, function(){$.getScript('js/scripts.js');});
|
||||
$("#navleft").load("nav.php");
|
||||
$("#footer").load("footer.php");
|
||||
});
|
||||
</script>
|
||||
{/literal}
|
||||
<div id="layoutSidenav">
|
||||
<!-- Navigation left -->
|
||||
<div id="navleft"></div>
|
||||
<div id="layoutSidenav_content">
|
||||
<main>
|
||||
<!--Anwendung-->
|
||||
<script type="text/javascript" src="../js/file_upload/vpb_uploader_member.js"></script>
|
||||
|
||||
<div class="container-fluid">
|
||||
<div class="card">
|
||||
<div class="card-header">
|
||||
<i class="fas fa-edit me-1"></i>
|
||||
SängerIn bearbeiten
|
||||
</div>
|
||||
<div class="card-body">
|
||||
|
||||
|
||||
<!-- https://datatables.net/download/release -->
|
||||
<table id="myTable" class="table table-striped table-bordered table-responsive table-hover" >
|
||||
<thead>
|
||||
<tr>
|
||||
<th>Vorname</th>
|
||||
<th>Nachname</th>
|
||||
<th class="d-none d-lg-table-cell"> Mail</th>
|
||||
<th class="d-none d-lg-table-cell">Singstimme</th>
|
||||
<th>Aktion</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
{section name=table_data loop=$table_data}
|
||||
<tr>
|
||||
<td>{$table_data[table_data].vorname}</td>
|
||||
<td>{$table_data[table_data].nachname}</td>
|
||||
<td class="d-none d-lg-table-cell">{$table_data[table_data].mail}</td>
|
||||
<td class="d-none d-lg-table-cell">{$table_data[table_data].singstimme}</td>
|
||||
<td>
|
||||
<a href="create_member.php?editcsid={$table_data[table_data].csid}" class="settings" title="Edit Member" data-toggle="tooltip"><i class="fas fa fa-cog"></i></a>
|
||||
|
||||
<a class="btn btn-danger btn-rounded btn-icon btn-sm" onclick="delMember({$table_data[table_data].csid})"><i class="fa fa-trash" style="width:18px;"></i></a>
|
||||
</td>
|
||||
</tr>
|
||||
{/section}
|
||||
</tbody>
|
||||
</table>
|
||||
|
||||
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div id="msg"></div>
|
||||
</main>
|
||||
<!-- footer -->
|
||||
<div id="footer"></div>
|
||||
</div>
|
||||
</div>
|
||||
</body>
|
||||
<script>
|
||||
$(document).ready(function(){
|
||||
var table = new DataTable('#myTable', {
|
||||
rowReorder: true,
|
||||
pageLength: 5,
|
||||
language: {
|
||||
url: '//cdn.datatables.net/plug-ins/1.13.4/i18n/de-DE.json',
|
||||
search: "",
|
||||
lengthMenu: "_MENU_ Zeilen",
|
||||
},
|
||||
});
|
||||
});
|
||||
</script>
|
||||
</html>
|
||||
{/if}
|
113
templates/modern/dashboard/edit_noten.html
Normal file
113
templates/modern/dashboard/edit_noten.html
Normal file
@ -0,0 +1,113 @@
|
||||
{if $action == ''}
|
||||
<!DOCTYPE html>
|
||||
<html lang="de">
|
||||
<head>
|
||||
<title>JU & MI Noten bearbeiten</title>
|
||||
<link rel="stylesheet" href="../jquery/jquery-ui.css">
|
||||
<link rel="stylesheet" href="../jquery/jquery.timepicker.min.css">
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1">
|
||||
<link href="../bootstrap/node_modules/bootstrap/dist/css/bootstrap.min.css" rel="stylesheet">
|
||||
<script src="../bootstrap/node_modules/bootstrap/dist/js/bootstrap.bundle.min.js"></script>
|
||||
<!-- nochmals bootstrap.css mit Erweiterungen vom Dashboard -->
|
||||
<link href="css/styles.css" rel="stylesheet" />
|
||||
<!-- icons in nav-->
|
||||
|
||||
<!-- data Table: https://datatables.net/ -->
|
||||
<script src="../bootstrap/data-table/jquery.min.js"></script>
|
||||
<link rel="stylesheet" href="../bootstrap/data-table/dataTables.bootstrap5.min.css"></style>
|
||||
<link rel="stylesheet" href="../bootstrap/data-table/rowReorder.dataTables.min.css"></style>
|
||||
<script type="text/javascript" src="../bootstrap/data-table/jquery.dataTables.min.js"></script>
|
||||
<script type="text/javascript" src="../bootstrap/data-table/dataTables.rowReorder.min.js"></script>
|
||||
<script type="text/javascript" src="../bootstrap/data-table/dataTables.bootstrap5.min.js"></script>
|
||||
<link rel="stylesheet" href="../bootstrap/data-table/jumistyle.css"></style>
|
||||
|
||||
<script src="js/all.js" crossorigin="anonymous"></script>
|
||||
<script src="../jquery/jquery-3.4.1.min.js"></script>
|
||||
<link rel="stylesheet" href="../bootstrap/node_modules/bootstrap-icons/font/bootstrap-icons.css">
|
||||
|
||||
</head>
|
||||
<body class="sb-nav-fixed">
|
||||
<div id="navtop"></div>
|
||||
{literal}
|
||||
<script>
|
||||
$(function(){
|
||||
// im Navbar muss der toggle in der Callbackfunktion definiert werden. Sonst findet jquery getelementbyID nicht
|
||||
$("#navtop").load('navtop.php', null, function(){$.getScript('js/scripts.js');});
|
||||
$("#navleft").load("nav.php");
|
||||
$("#footer").load("footer.php");
|
||||
});
|
||||
</script>
|
||||
{/literal}
|
||||
<div id="layoutSidenav">
|
||||
<!-- Navigation left -->
|
||||
<div id="navleft"></div>
|
||||
<div id="layoutSidenav_content">
|
||||
<main>
|
||||
<!--Anwendung-->
|
||||
<script type="text/javascript" src="../js/file_upload/vpb_uploader.js"></script>
|
||||
|
||||
<div class="container-fluid">
|
||||
<div class="card">
|
||||
<div class="card-header">
|
||||
<i class="fas fa-edit me-1"></i>
|
||||
Noten bearbeiten
|
||||
</div>
|
||||
<div class="card-body">
|
||||
|
||||
|
||||
<!-- https://datatables.net/download/release -->
|
||||
<table id="myTable" class="table table-striped table-bordered table-responsive table-hover" >
|
||||
<thead>
|
||||
<tr>
|
||||
<th>Titel</th>
|
||||
<th>Verlag</th>
|
||||
<th>Songbook</th>
|
||||
<th class="d-none d-lg-table-cell"> Lizenzmenge</th>
|
||||
<th class="d-none d-lg-table-cell">Streamlizenz</th>
|
||||
<th>Aktion</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
{section name=table_data loop=$table_data}
|
||||
<tr>
|
||||
<td>{$table_data[table_data].titel}</td>
|
||||
<td>{$table_data[table_data].verlag}</td>
|
||||
<td>{$table_data[table_data].songbook}</td>
|
||||
<td class="d-none d-lg-table-cell">{$table_data[table_data].anz_lizenzen}</td>
|
||||
<td class="d-none d-lg-table-cell">{$table_data[table_data].streamlizenz_vorh}</td>
|
||||
<td>
|
||||
<a href="notenupload.php?editjndid={$table_data[table_data].jndid}" class="settings" title="Edit Member" data-toggle="tooltip"><i class="fas fa fa-cog"></i></a>
|
||||
|
||||
<a class="btn btn-danger btn-rounded btn-icon btn-sm" onclick="delNoten({$table_data[table_data].jndid})"><i class="fa fa-trash" style="width:18px;"></i></a>
|
||||
</td>
|
||||
</tr>
|
||||
{/section}
|
||||
</tbody>
|
||||
</table>
|
||||
|
||||
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div id="msg"></div>
|
||||
</main>
|
||||
<!-- footer -->
|
||||
<div id="footer"></div>
|
||||
</div>
|
||||
</div>
|
||||
</body>
|
||||
<script>
|
||||
$(document).ready(function(){
|
||||
var table = new DataTable('#myTable', {
|
||||
rowReorder: true,
|
||||
pageLength: 5,
|
||||
language: {
|
||||
url: '//cdn.datatables.net/plug-ins/1.13.4/i18n/de-DE.json',
|
||||
search: "",
|
||||
lengthMenu: "_MENU_ Zeilen",
|
||||
},
|
||||
});
|
||||
});
|
||||
</script>
|
||||
</html>
|
||||
{/if}
|
@ -18,7 +18,7 @@
|
||||
</style>
|
||||
<nav class="bg-juandmi sb-topnav navbar navbar-expand navbar-dark">
|
||||
<!-- Navbar Brand-->
|
||||
<a class="navbar-brand ps-3" href="index.php">Administration JU & MI</a>
|
||||
<a class="navbar-brand ps-3" href="index.php">JU & MI</a>
|
||||
<!-- Sidebar Toggle: js/scripts.js in der callbackfunktion vom Load aufrufen beim einbetten-->
|
||||
<button class="btn btn-link btn-sm order-1 order-lg-0 me-4 me-lg-0" id="sidebarToggle" href="#!"><i class="fas fa-bars"></i></button>
|
||||
<!-- Navbar Search-->
|
||||
|
168
templates/modern/dashboard/notenbuch.html
Normal file
168
templates/modern/dashboard/notenbuch.html
Normal file
@ -0,0 +1,168 @@
|
||||
{if $action == ''}
|
||||
<!doctype html>
|
||||
<html lang="de">
|
||||
<head>
|
||||
<meta charset="utf-8">
|
||||
<meta name="description" content="Scrollable tab for Bootstrap 5">
|
||||
<title>Notenbuch erfassen</title>
|
||||
<meta name="keywords" content="Bootstrap, Bootstrap 5, Tabs">
|
||||
<meta name="author" content="Federico Navarrete">
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1">
|
||||
<link href="../bootstrap/node_modules/bootstrap/dist/css/bootstrap.min.css" rel="stylesheet">
|
||||
<script src="../bootstrap/node_modules/bootstrap/dist/js/bootstrap.bundle.min.js"></script>
|
||||
<!-- nochmals bootstrap.css mit Erweiterungen vom Dashboard -->
|
||||
<link href="css/styles.css" rel="stylesheet" />
|
||||
<!-- icons in nav-->
|
||||
<script src="js/all.js" crossorigin="anonymous"></script>
|
||||
<link rel="stylesheet" href="../bootstrap/node_modules/bootstrap-icons/font/bootstrap-icons.css">
|
||||
<script src="../jquery/jquery-3.4.1.min.js"></script>
|
||||
<!-- jQuery UI CSS
|
||||
<script src="https://ajax.googleapis.com/ajax/libs/jqueryui/1.11.2/jquery-ui.min.js"></script>
|
||||
-->
|
||||
<script src="../jquery/jquery-ui.js"></script>
|
||||
<style>
|
||||
.btn-group > .btn{
|
||||
margin-bottom:20px;
|
||||
border-radius:20px !important;
|
||||
}
|
||||
</style>
|
||||
<script type="text/javascript">
|
||||
{literal}
|
||||
function keysave(ele) {
|
||||
if(event.key === 'Enter') {
|
||||
rollesave();
|
||||
}
|
||||
}
|
||||
{/literal}
|
||||
</script>
|
||||
<style type="text/css">
|
||||
.ui-sortable tr {
|
||||
cursor:pointer;
|
||||
}
|
||||
.ui-sortable tr:hover {
|
||||
background:rgba(244,251,17,0.45);
|
||||
}
|
||||
</style>
|
||||
<script>
|
||||
$(document).ready(function(){
|
||||
$('[data-toggle="popover"]').popover();
|
||||
});
|
||||
</script>
|
||||
</head>
|
||||
<!--<body onload="if(document.erfassen)document.erfassen.{$umfrageerf_focus}.focus();return false;">-->
|
||||
<body class="sb-nav-fixed">
|
||||
<div id="navtop"></div>
|
||||
{literal}
|
||||
<script>
|
||||
$(function(){
|
||||
// im Navbar muss der toggle in der Callbackfunktion definiert werden. Sonst findet jquery getelementbyID nicht
|
||||
$("#navtop").load('navtop.php', null, function(){$.getScript('js/scripts.js');});
|
||||
$("#navleft").load("nav.php");
|
||||
$("#footer").load("footer.php");
|
||||
});
|
||||
</script>
|
||||
{/literal}
|
||||
<div id="layoutSidenav">
|
||||
<!-- Navigation left -->
|
||||
<div id="navleft"></div>
|
||||
<div id="layoutSidenav_content">
|
||||
<main>
|
||||
<!--Anwendung-->
|
||||
<script src="../js/components/admin_notenbuch.js"></script>
|
||||
<div class="container-fluid">
|
||||
<div class="card">
|
||||
<div class="card-header">
|
||||
<i class="fas fa-table me-1"></i>
|
||||
Notenbuch erfassen
|
||||
</div>
|
||||
<div class="row mt-1 mt-sm-1 mb-1 mb-sm-1">
|
||||
<div class="col-4 col-md-4">Notenbuchname:</div>
|
||||
<div class="col-8 col-md-8"><input class="form-control" type="text" name="notenbuchname" id="notenbuchname" value="{$umfrageerf_value_frage}" size="60" onkeydown="keysave(this)"></div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="row">
|
||||
<div class="row col-3"></div>
|
||||
<div class="row col-6"><button class="btn btn-primary btn-sm mt-3" id="save" onclick="notenbuchsave();">Speichern</button></div>
|
||||
<div class="row col-3"></div>
|
||||
</div>
|
||||
<br>
|
||||
<div class="card">
|
||||
<div class="card-header">
|
||||
<i class="fas fa-table me-1"></i>
|
||||
Vorhandene Notenbücher
|
||||
</div>
|
||||
<div class="card-body">
|
||||
<div class="row mt-0 mt-sm-1 mb-0 mb-sm-1">
|
||||
<div class="row mt-0 mb-0">
|
||||
<div class="d-none col-md-7 d-md-block"><b>Rolle</b></div>
|
||||
<div class="d-none col-md-5 d-md-block"><b>Aktion</b></div>
|
||||
</div>
|
||||
{section name=table_data loop=$table_data}
|
||||
<div class="row mt-0 mt-sm-1 mb-0 mb-sm-1">
|
||||
<div class="col-6 col-md-7">{$table_data[table_data].bezeichnung}</div>
|
||||
<div class="col-6 col-md-5">
|
||||
<a class="btn btn-success btn-rounded btn-icon btn-sm" data-bs-toggle="modal" value="{$table_data[table_data].zsid}|notenbuchzuordnung.php" onclick="ShowZuordnung(this)" data-bs-target="#ZuordnungModal"><i class="fa fa-eye" style="width:18px;"></i></a>
|
||||
<a class="btn btn-success btn-rounded btn-icon btn-sm" data-bs-toggle="modal" value="{$table_data[table_data].zsid}|userzuordnung.php" onclick="ShowZuordnung(this)" data-bs-target="#ZuordnungModal"><i class="fa fa-user" style="width:18px;"></i></a>
|
||||
<a class="btn btn-danger btn-rounded btn-icon btn-sm" onclick="delRole({$table_data[table_data].zsid})"><i class="fa fa-trash" style="width:18px;"></i></a>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
{/section}
|
||||
<!-- Modal -->
|
||||
<div class="modal" id="ZuordnungModal" tabindex="-1" aria-labelledby="ZuordnungModalLabel" aria-hidden="true">
|
||||
<div class="modal-dialog modal-xl">
|
||||
<div class="modal-content">
|
||||
<div class="modal-header">
|
||||
<!--<h5 class="modal-title" id="ZuordnungModalLabel">Rollenübersicht</h5>-->
|
||||
<button type="button" class="btn-close" data-bs-dismiss="modal" aria-label="Close"></button>
|
||||
</div>
|
||||
<div class="modal-body">
|
||||
</div>
|
||||
<div class="modal-footer">
|
||||
<button type="button" class="btn btn-secondary" data-bs-dismiss="modal">Close</button>
|
||||
<!--<button type="button" class="btn btn-primary">Save changes</button>-->
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<!-- Lösen Sie das Modal mit einem Button aus -->
|
||||
{literal}
|
||||
<script>
|
||||
function ShowZuordnung(a){
|
||||
let receive = a.getAttribute("value");
|
||||
var a = receive.split('|');
|
||||
var value = a[0];
|
||||
var file = a[1];
|
||||
|
||||
$( '.modal-body' ).load( file+'?edit='+value , function () {
|
||||
$( '#ZuordnungModal' ).modal({show: true });
|
||||
});
|
||||
}
|
||||
</script>
|
||||
{/literal}
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div id="msg"></div>
|
||||
</main>
|
||||
<!--
|
||||
<button type="button" class="btn btn-primary" data-bs-toggle="popover" title="Popover Header" data-bs-content="Some content inside the popover">
|
||||
Toggle popover
|
||||
</button>
|
||||
-->
|
||||
<!-- footer -->
|
||||
<div id="footer"></div>
|
||||
</div>
|
||||
</div>
|
||||
<!--
|
||||
<script>
|
||||
var popoverTriggerList = [].slice.call(document.querySelectorAll('[data-bs-toggle="popover"]'))
|
||||
var popoverList = popoverTriggerList.map(function (popoverTriggerEl) {
|
||||
return new bootstrap.Popover(popoverTriggerEl)
|
||||
})
|
||||
</script>
|
||||
-->
|
||||
</body>
|
||||
</html>
|
||||
{/if}
|
||||
|
93
templates/modern/dashboard/notenbuchzuordnung.html
Normal file
93
templates/modern/dashboard/notenbuchzuordnung.html
Normal file
@ -0,0 +1,93 @@
|
||||
{if $action == ''}
|
||||
<!doctype html>
|
||||
<html lang="de">
|
||||
<head>
|
||||
<meta charset="utf-8">
|
||||
<meta name="description" content="Scrollable tab for Bootstrap 5">
|
||||
<meta name="keywords" content="Bootstrap, Bootstrap 5, Tabs">
|
||||
<meta name="author" content="Federico Navarrete">
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1">
|
||||
<link href="../bootstrap/node_modules/bootstrap/dist/css/bootstrap.min.css" rel="stylesheet">
|
||||
<script src="../bootstrap/node_modules/bootstrap/dist/js/bootstrap.bundle.min.js"></script>
|
||||
<!-- nochmals bootstrap.css mit Erweiterungen vom Dashboard -->
|
||||
<link href="css/styles.css" rel="stylesheet" />
|
||||
<!-- icons in nav-->
|
||||
<script src="js/all.js" crossorigin="anonymous"></script>
|
||||
<link rel="stylesheet" href="../bootstrap/node_modules/bootstrap-icons/font/bootstrap-icons.css">
|
||||
<script src="../jquery/jquery-3.4.1.min.js"></script>
|
||||
<!-- jQuery UI CSS
|
||||
<script src="https://ajax.googleapis.com/ajax/libs/jqueryui/1.11.2/jquery-ui.min.js"></script>
|
||||
-->
|
||||
<script src="../jquery/jquery-ui.js"></script>
|
||||
<style>
|
||||
.btn-group > .btn{
|
||||
margin-bottom:20px;
|
||||
border-radius:20px !important;
|
||||
}
|
||||
</style>
|
||||
<style type="text/css">
|
||||
.ui-sortable tr {
|
||||
cursor:pointer;
|
||||
}
|
||||
.ui-sortable tr:hover {
|
||||
background:rgba(244,251,17,0.45);
|
||||
}
|
||||
</style>
|
||||
</head>
|
||||
<!--<body onload="if(document.erfassen)document.erfassen.{$umfrageerf_focus}.focus();return false;">-->
|
||||
<body class="sb-nav-fixed">
|
||||
<main>
|
||||
<!--Anwendung-->
|
||||
<script src="../js/components/admin_notenbuch.js"></script>
|
||||
<p class="text-center"><b>{$notenbuchzuordnung_bezeichnung}</b></p>
|
||||
<div class="container-fluid">
|
||||
<div class="card">
|
||||
<div class="card-header">
|
||||
<i class="fas fa-table me-1"></i>
|
||||
Nicht zugewiesene Rechte
|
||||
</div>
|
||||
<div class="card-body">
|
||||
<div class="row mt-0 mt-sm-1 mb-0 mb-sm-1">
|
||||
<div class="row mt-0 mb-0">
|
||||
<div class="d-none col-md-10 d-md-block"><b>Lied</b></div>
|
||||
<div class="d-none col-md-2 d-md-block"><b>Aktion</b></div>
|
||||
</div>
|
||||
{section name=table_data loop=$table_data}
|
||||
<div class="row mt-0 mt-sm-1 mb-0 mb-sm-1">
|
||||
<div class="col-10 col-md-10">{$table_data[table_data].titel}</div>
|
||||
<div class="col-2 col-md-2"><a class="btn btn-success btn-rounded btn-icon btn-sm" onclick="erfzuordnung({$table_data[table_data].jndid},{$rollen_edit})"><i class="fa-solid fa-plus" style="width:18px;"></i></a></div>
|
||||
</div>
|
||||
{/section}
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<br>
|
||||
<div class="card">
|
||||
<div class="card-header">
|
||||
<i class="fas fa-table me-1"></i>
|
||||
Zugewiesene Lieder
|
||||
</div>
|
||||
<div class="card-body">
|
||||
<div class="row mt-0 mt-sm-1 mb-0 mb-sm-1">
|
||||
<div class="row mt-0 mb-0">
|
||||
<div class="d-none col-md-10 d-md-block"><b>Lied</b></div>
|
||||
<div class="d-none col-md-2 d-md-block"><b>Aktion</b></div>
|
||||
</div>
|
||||
{section name=table_data1 loop=$table_data1}
|
||||
<div class="row mt-0 mt-sm-1 mb-0 mb-sm-1">
|
||||
<div class="col-10 col-md-10">{$table_data1[table_data1].titel}</div>
|
||||
<div class="col-2 col-md-2"><a class="btn btn-danger btn-rounded btn-icon btn-sm" onclick="delzuordnung({$table_data1[table_data1].jndid}, {$rollen_edit})"><i class="fa-solid fa-minus" style="width:18px;"></i></a></div>
|
||||
</div>
|
||||
{/section}
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div id="msg"></div>
|
||||
</main>
|
||||
</div>
|
||||
<script src="../bootstrap/node_modules/move-js/move.js"></script>
|
||||
<link href="../bootstrap/dist/scrollable-tabs.min.css" rel="stylesheet">
|
||||
<script src="../bootstrap/dist/scrollable-tabs.min.js"></script>
|
||||
</body>
|
||||
</html>
|
||||
{/if}
|
@ -3,6 +3,12 @@
|
||||
<html lang="de">
|
||||
<head>
|
||||
<meta charset="utf-8">
|
||||
{if $create_edit == ''}
|
||||
<title>JU & MI Noten erfassen</title>
|
||||
{else}
|
||||
<title>JU & MI Noten bearbeiten</title>
|
||||
{/if}
|
||||
|
||||
<meta name="description" content="Scrollable tab for Bootstrap 5">
|
||||
<meta name="keywords" content="Bootstrap, Bootstrap 5, Tabs">
|
||||
<meta name="author" content="Federico Navarrete">
|
||||
@ -66,34 +72,73 @@
|
||||
<div class="card">
|
||||
<div class="card-header">
|
||||
<i class="fas fa-edit me-1"></i>
|
||||
Notenupload
|
||||
{if $create_edit == ''}
|
||||
Noten erfassen
|
||||
{else}
|
||||
Noten bearbeiten
|
||||
{/if}
|
||||
</div>
|
||||
<div class="card-body">
|
||||
<div class="row">
|
||||
<div class="row mt-2 mt-sm-4 mb-2 mb-sm-4">
|
||||
<div class="col-12 col-md-4">Titel:</div>
|
||||
<div class="col-12 col-md-8">
|
||||
<input type="text" id="titel" class="form-control rounded-right" required>
|
||||
<input type="text" id="titel" class="form-control rounded-right" value="{$notenupload_titel}" required>
|
||||
</div>
|
||||
</div>
|
||||
<div class="row mt-2 mt-sm-4 mb-2 mb-sm-4">
|
||||
<div class="col-12 col-md-4">Songbookname:</div>
|
||||
<div class="col-12 col-md-8">
|
||||
<input type="text" id="songbook" class="form-control rounded-right" value="{$notenupload_songbook}">
|
||||
</div>
|
||||
</div>
|
||||
<div class="row mt-2 mt-sm-4 mb-2 mb-sm-4">
|
||||
<div class="col-12 col-md-4">Verlag:</div>
|
||||
<div class="col-12 col-md-8">
|
||||
<input type="text" id="verlag" class="form-control rounded-right" required">
|
||||
<input type="text" id="verlag" class="form-control rounded-right" value="{$notenupload_verlag}">
|
||||
</div>
|
||||
</div>
|
||||
<div class="row mt-2 mt-sm-4 mb-2 mb-sm-4">
|
||||
<div class="col-12 col-md-4">Anzahl Lizenzen:</div>
|
||||
<div class="col-12 col-md-8">
|
||||
<input type="text" id="anz_lizenzen" class="form-control rounded-right" required">
|
||||
<input type="text" id="anz_lizenzen" class="form-control rounded-right" value="{$notenupload_anz_lizenzen}" required>
|
||||
</div>
|
||||
</div>
|
||||
<div class="row mt-2 mt-sm-4 mb-2 mb-sm-4">
|
||||
<div class="col-8 col-md-4">Streamlizenz vorhanden:</div>
|
||||
<div class="col-4 col-md-8">
|
||||
<input class="form-check-input" type="checkbox" name="streamlizenz" id="streamlizenz" value="1">
|
||||
<input class="form-check-input" type="checkbox" name="streamlizenz" id="streamlizenz" value="1" {if $notenupload_streamlizenz == '1'}checked{/if}>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
{if $create_edit != ''}
|
||||
<div class="row mt-2 mt-sm-4 mb-2 mb-sm-4">
|
||||
<div class="col-12 col-md-4">Dateien:</div>
|
||||
<div class="col-12 col-md-8">
|
||||
<div class="form-group">
|
||||
<table class="table table-striped table-bordered" id="curdoks">
|
||||
<thead>
|
||||
<tr>
|
||||
<th style="color:blue; text-align:center;">Datei</th>
|
||||
<th style="color:blue; text-align:center;">Uploaddatum</th>
|
||||
<th style="color:blue; text-align:center;">Aktion</th>
|
||||
<tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
{section name=table_data loop=$table_data}
|
||||
<tr>
|
||||
<td><a href="{$table_data[table_data].filename}" target="_new">{$table_data[table_data].originalname}</a></td>
|
||||
<td>{$table_data[table_data].uploaddatum}</td>
|
||||
<td><a class="btn btn-danger btn-rounded btn-icon btn-sm" onclick="delNotenFile({$table_data[table_data].id})"><i class="fa fa-trash" style="width:18px;"></i></a></td>
|
||||
</tr>
|
||||
{/section}
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
{/if}
|
||||
|
||||
<div class="row mt-2 mt-sm-4 mb-2 mb-sm-4">
|
||||
<label for="formFile" class="form-label">
|
||||
<div class="col-12 col-md-4">PDF:</div>
|
||||
@ -116,6 +161,11 @@
|
||||
</table>
|
||||
</div>
|
||||
<p align='center'>
|
||||
{if $create_edit != ''}
|
||||
<input type="hidden" id="jndid" value="{$create_edit}">
|
||||
{else}
|
||||
<input type="hidden" id="jndid" value="-1">
|
||||
{/if}
|
||||
<button class="col-6 btn btn-primary btn-sm mt-3" id="save">Speichern</button>
|
||||
</p>
|
||||
</div>
|
||||
|
@ -1,114 +1,17 @@
|
||||
<!DOCTYPE html>
|
||||
<html lang="en">
|
||||
<html>
|
||||
<head>
|
||||
<title>JU & MI Startseite</title>
|
||||
<meta charset="utf-8" />
|
||||
<meta http-equiv="X-UA-Compatible" content="IE=edge" />
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no" />
|
||||
<meta name="description" content="" />
|
||||
<meta name="author" content="" />
|
||||
<link href="../bootstrap/node_modules/bootstrap/dist/css/bootstrap.min.css" rel="stylesheet">
|
||||
<script src="../bootstrap/node_modules/@popperjs/core/dist/umd/popper.min.js"></script>
|
||||
<script src="../bootstrap/node_modules/bootstrap/dist/js/bootstrap.bundle.min.js"></script>
|
||||
<!-- nochmals bootstrap.css mit Erweiterungen vom Dashboard -->
|
||||
<link href="css/styles.css" rel="stylesheet" />
|
||||
<!-- icons in nav-->
|
||||
<script src="js/all.js" crossorigin="anonymous"></script>
|
||||
<script src="../jquery/jquery-3.4.1.min.js"></script>
|
||||
|
||||
<style>
|
||||
body {
|
||||
margin: 0;
|
||||
font-family: Arial, Helvetica, sans-serif;
|
||||
}
|
||||
@media only screen and (min-width: 769px) {
|
||||
#div2 {
|
||||
overflow: hidden;
|
||||
background-color: #333;
|
||||
height: 100%;
|
||||
float: right !important;
|
||||
width: 20%;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
@media only screen and (max-width: 768px) {
|
||||
#div2 {
|
||||
height: 100px;
|
||||
width: 100%;
|
||||
position:fixed;
|
||||
bottom:0;
|
||||
background-color:gray;
|
||||
}
|
||||
}
|
||||
|
||||
.navbar a {
|
||||
float: left;
|
||||
display: block;
|
||||
color: #f2f2f2;
|
||||
text-align: center;
|
||||
padding: 14px 16px;
|
||||
text-decoration: none;
|
||||
font-size: 17px;
|
||||
}
|
||||
|
||||
.navbar a:hover {
|
||||
background: #f1f1f1;
|
||||
color: black;
|
||||
}
|
||||
|
||||
.navbar a.active {
|
||||
background-color: #04AA6D;
|
||||
color: white;
|
||||
}
|
||||
|
||||
.main {
|
||||
padding: 16px;
|
||||
margin-bottom: 30px;
|
||||
}
|
||||
|
||||
</style>
|
||||
|
||||
{literal}
|
||||
<script>
|
||||
<script>
|
||||
$(document).ready(function() {
|
||||
|
||||
$("#div2").resizable({
|
||||
alsoResize: "#main"
|
||||
});
|
||||
|
||||
})
|
||||
</script>
|
||||
</script>
|
||||
{/literal}
|
||||
</head>
|
||||
<body>
|
||||
<button class="btn btn-primary" type="button" data-bs-toggle="offcanvas" data-bs-target="#offcanvasScrolling" aria-controls="offcanvasScrolling">Toggle bottom offcanvas</button>
|
||||
|
||||
<div class="offcanvas offcanvas-bottom" data-bs-scroll="true" data-bs-backdrop="false" tabindex="-1" id="offcanvasScrolling" aria-labelledby="offcanvasScrollingLabel">
|
||||
<div class="offcanvas-header">
|
||||
<h5 class="offcanvas-title" id="offcanvasScrollingLabel">Colored with scrolling</h5>
|
||||
<button type="button" class="btn-close text-reset" data-bs-dismiss="offcanvas" aria-label="Close"></button>
|
||||
</div>
|
||||
<div class="offcanvas-body">
|
||||
<p>Try scrolling the rest of the page to see this option in action.</p>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="div2">
|
||||
<a href="#home" class="active">Home</a>
|
||||
<a href="#news">News</a>
|
||||
<a href="#contact">Contact</a>
|
||||
</div>
|
||||
|
||||
<div class="main">
|
||||
<h1>Bottom Navigation Bar</h1>
|
||||
<p>Some text some text some text.</p>
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
</body>
|
||||
<script src="../tinymce/js/tinymce/tinymce.min.js"></script>
|
||||
<script type="text/javascript">
|
||||
tinymce.init({
|
||||
selector: '#mytextarea'
|
||||
});
|
||||
</script>
|
||||
</head>
|
||||
<body>
|
||||
<h1>TinyMCE Quick Start Guide</h1>
|
||||
<form method="post">
|
||||
<textarea id="mytextarea">Hello, World!</textarea>
|
||||
</form>
|
||||
</body>
|
||||
</html>
|
1
test/startbootstrap-sb-admin
Submodule
1
test/startbootstrap-sb-admin
Submodule
@ -0,0 +1 @@
|
||||
Subproject commit 9065e4be0e7550c1f6b856dd3fc0391649d441b9
|
3149
tinymce/CHANGELOG.md
Normal file
3149
tinymce/CHANGELOG.md
Normal file
File diff suppressed because it is too large
Load Diff
1
tinymce/js/tinymce/icons/default/icons.min.js
vendored
Normal file
1
tinymce/js/tinymce/icons/default/icons.min.js
vendored
Normal file
File diff suppressed because one or more lines are too long
3
tinymce/js/tinymce/langs/README.md
Normal file
3
tinymce/js/tinymce/langs/README.md
Normal file
@ -0,0 +1,3 @@
|
||||
This is where language files should be placed.
|
||||
|
||||
Please DO NOT translate these directly use this service: https://www.transifex.com/projects/p/tinymce/
|
21
tinymce/js/tinymce/license.txt
Normal file
21
tinymce/js/tinymce/license.txt
Normal file
@ -0,0 +1,21 @@
|
||||
MIT License
|
||||
|
||||
Copyright (c) 2022 Ephox Corporation DBA Tiny Technologies, Inc.
|
||||
|
||||
Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||
of this software and associated documentation files (the "Software"), to deal
|
||||
in the Software without restriction, including without limitation the rights
|
||||
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
||||
copies of the Software, and to permit persons to whom the Software is
|
||||
furnished to do so, subject to the following conditions:
|
||||
|
||||
The above copyright notice and this permission notice shall be included in all
|
||||
copies or substantial portions of the Software.
|
||||
|
||||
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
||||
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
||||
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
||||
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
||||
SOFTWARE.
|
4
tinymce/js/tinymce/models/dom/model.min.js
vendored
Normal file
4
tinymce/js/tinymce/models/dom/model.min.js
vendored
Normal file
File diff suppressed because one or more lines are too long
4
tinymce/js/tinymce/plugins/advlist/plugin.min.js
vendored
Normal file
4
tinymce/js/tinymce/plugins/advlist/plugin.min.js
vendored
Normal file
@ -0,0 +1,4 @@
|
||||
/**
|
||||
* TinyMCE version 6.4.1 (2023-03-29)
|
||||
*/
|
||||
!function(){"use strict";var t=tinymce.util.Tools.resolve("tinymce.PluginManager");const e=(t,e,s)=>{const r="UL"===e?"InsertUnorderedList":"InsertOrderedList";t.execCommand(r,!1,!1===s?null:{"list-style-type":s})},s=t=>e=>e.options.get(t),r=s("advlist_number_styles"),n=s("advlist_bullet_styles"),l=t=>null==t,i=t=>!l(t);var o=tinymce.util.Tools.resolve("tinymce.util.Tools");class a{constructor(t,e){this.tag=t,this.value=e}static some(t){return new a(!0,t)}static none(){return a.singletonNone}fold(t,e){return this.tag?e(this.value):t()}isSome(){return this.tag}isNone(){return!this.tag}map(t){return this.tag?a.some(t(this.value)):a.none()}bind(t){return this.tag?t(this.value):a.none()}exists(t){return this.tag&&t(this.value)}forall(t){return!this.tag||t(this.value)}filter(t){return!this.tag||t(this.value)?this:a.none()}getOr(t){return this.tag?this.value:t}or(t){return this.tag?this:t}getOrThunk(t){return this.tag?this.value:t()}orThunk(t){return this.tag?this:t()}getOrDie(t){if(this.tag)return this.value;throw new Error(null!=t?t:"Called getOrDie on None")}static from(t){return i(t)?a.some(t):a.none()}getOrNull(){return this.tag?this.value:null}getOrUndefined(){return this.value}each(t){this.tag&&t(this.value)}toArray(){return this.tag?[this.value]:[]}toString(){return this.tag?`some(${this.value})`:"none()"}}a.singletonNone=new a(!1);const u=t=>e=>i(e)&&t.test(e.nodeName),d=u(/^(OL|UL|DL)$/),g=u(/^(TH|TD)$/),h=t=>l(t)||"default"===t?"":t,c=(t,e)=>s=>{const r=r=>{s.setActive(((t,e,s)=>((t,e,s)=>{for(let e=0,n=t.length;e<n;e++){const n=t[e];if(d(r=n)&&!/\btox\-/.test(r.className))return a.some(n);if(s(n,e))break}var r;return a.none()})(e,0,g).exists((e=>e.nodeName===s&&((t,e)=>t.dom.isChildOf(e,t.getBody()))(t,e))))(t,r.parents,e)),s.setEnabled(!((t,e)=>{const s=t.dom.getParent(e,"ol,ul,dl");return((t,e)=>null!==e&&!t.dom.isEditable(e))(t,s)})(t,r.element))};return t.on("NodeChange",r),()=>t.off("NodeChange",r)},m=(t,s,r,n,l,i)=>{i.length>1?((t,s,r,n,l,i)=>{t.ui.registry.addSplitButton(s,{tooltip:r,icon:"OL"===l?"ordered-list":"unordered-list",presets:"listpreview",columns:3,fetch:t=>{t(o.map(i,(t=>{const e="OL"===l?"num":"bull",s="disc"===t||"decimal"===t?"default":t,r=h(t),n=(t=>t.replace(/\-/g," ").replace(/\b\w/g,(t=>t.toUpperCase())))(t);return{type:"choiceitem",value:r,icon:"list-"+e+"-"+s,text:n}})))},onAction:()=>t.execCommand(n),onItemAction:(s,r)=>{e(t,l,r)},select:e=>{const s=(t=>{const e=t.dom.getParent(t.selection.getNode(),"ol,ul"),s=t.dom.getStyle(e,"listStyleType");return a.from(s)})(t);return s.map((t=>e===t)).getOr(!1)},onSetup:c(t,l)})})(t,s,r,n,l,i):((t,s,r,n,l,i)=>{t.ui.registry.addToggleButton(s,{active:!1,tooltip:r,icon:"OL"===l?"ordered-list":"unordered-list",onSetup:c(t,l),onAction:()=>t.queryCommandState(n)||""===i?t.execCommand(n):e(t,l,i)})})(t,s,r,n,l,h(i[0]))};t.add("advlist",(t=>{t.hasPlugin("lists")?((t=>{const e=t.options.register;e("advlist_number_styles",{processor:"string[]",default:"default,lower-alpha,lower-greek,lower-roman,upper-alpha,upper-roman".split(",")}),e("advlist_bullet_styles",{processor:"string[]",default:"default,circle,square".split(",")})})(t),(t=>{m(t,"numlist","Numbered list","InsertOrderedList","OL",r(t)),m(t,"bullist","Bullet list","InsertUnorderedList","UL",n(t))})(t),(t=>{t.addCommand("ApplyUnorderedListStyle",((s,r)=>{e(t,"UL",r["list-style-type"])})),t.addCommand("ApplyOrderedListStyle",((s,r)=>{e(t,"OL",r["list-style-type"])}))})(t)):console.error("Please use the Lists plugin together with the Advanced List plugin.")}))}();
|
4
tinymce/js/tinymce/plugins/anchor/plugin.min.js
vendored
Normal file
4
tinymce/js/tinymce/plugins/anchor/plugin.min.js
vendored
Normal file
@ -0,0 +1,4 @@
|
||||
/**
|
||||
* TinyMCE version 6.4.1 (2023-03-29)
|
||||
*/
|
||||
!function(){"use strict";var e=tinymce.util.Tools.resolve("tinymce.PluginManager"),t=tinymce.util.Tools.resolve("tinymce.dom.RangeUtils"),o=tinymce.util.Tools.resolve("tinymce.util.Tools");const n=("allow_html_in_named_anchor",e=>e.options.get("allow_html_in_named_anchor"));const a="a:not([href])",r=e=>!e,i=e=>e.getAttribute("id")||e.getAttribute("name")||"",l=e=>(e=>"a"===e.nodeName.toLowerCase())(e)&&!e.getAttribute("href")&&""!==i(e),s=e=>e.dom.getParent(e.selection.getStart(),a),d=(e,a)=>{const r=s(e);r?((e,t,o)=>{o.removeAttribute("name"),o.id=t,e.addVisual(),e.undoManager.add()})(e,a,r):((e,a)=>{e.undoManager.transact((()=>{n(e)||e.selection.collapse(!0),e.selection.isCollapsed()?e.insertContent(e.dom.createHTML("a",{id:a})):((e=>{const n=e.dom;t(n).walk(e.selection.getRng(),(e=>{o.each(e,(e=>{var t;l(t=e)&&!t.firstChild&&n.remove(e,!1)}))}))})(e),e.formatter.remove("namedAnchor",void 0,void 0,!0),e.formatter.apply("namedAnchor",{value:a}),e.addVisual())}))})(e,a),e.focus()},c=e=>(e=>r(e.attr("href"))&&!r(e.attr("id")||e.attr("name")))(e)&&!e.firstChild,m=e=>t=>{for(let o=0;o<t.length;o++){const n=t[o];c(n)&&n.attr("contenteditable",e)}};e.add("anchor",(e=>{(e=>{(0,e.options.register)("allow_html_in_named_anchor",{processor:"boolean",default:!1})})(e),(e=>{e.on("PreInit",(()=>{e.parser.addNodeFilter("a",m("false")),e.serializer.addNodeFilter("a",m(null))}))})(e),(e=>{e.addCommand("mceAnchor",(()=>{(e=>{const t=(e=>{const t=s(e);return t?i(t):""})(e);e.windowManager.open({title:"Anchor",size:"normal",body:{type:"panel",items:[{name:"id",type:"input",label:"ID",placeholder:"example"}]},buttons:[{type:"cancel",name:"cancel",text:"Cancel"},{type:"submit",name:"save",text:"Save",primary:!0}],initialData:{id:t},onSubmit:t=>{((e,t)=>/^[A-Za-z][A-Za-z0-9\-:._]*$/.test(t)?(d(e,t),!0):(e.windowManager.alert("ID should start with a letter, followed only by letters, numbers, dashes, dots, colons or underscores."),!1))(e,t.getData().id)&&t.close()}})})(e)}))})(e),(e=>{const t=()=>e.execCommand("mceAnchor");e.ui.registry.addToggleButton("anchor",{icon:"bookmark",tooltip:"Anchor",onAction:t,onSetup:t=>e.selection.selectorChangedWithUnbind("a:not([href])",t.setActive).unbind}),e.ui.registry.addMenuItem("anchor",{icon:"bookmark",text:"Anchor...",onAction:t})})(e),e.on("PreInit",(()=>{(e=>{e.formatter.register("namedAnchor",{inline:"a",selector:a,remove:"all",split:!0,deep:!0,attributes:{id:"%value"},onmatch:(e,t,o)=>l(e)})})(e)}))}))}();
|
4
tinymce/js/tinymce/plugins/autolink/plugin.min.js
vendored
Normal file
4
tinymce/js/tinymce/plugins/autolink/plugin.min.js
vendored
Normal file
@ -0,0 +1,4 @@
|
||||
/**
|
||||
* TinyMCE version 6.4.1 (2023-03-29)
|
||||
*/
|
||||
!function(){"use strict";var e=tinymce.util.Tools.resolve("tinymce.PluginManager");const t=e=>t=>t.options.get(e),n=t("autolink_pattern"),o=t("link_default_target"),r=t("link_default_protocol"),a=t("allow_unsafe_link_target"),s=("string",e=>"string"===(e=>{const t=typeof e;return null===e?"null":"object"===t&&Array.isArray(e)?"array":"object"===t&&(n=o=e,(r=String).prototype.isPrototypeOf(n)||(null===(a=o.constructor)||void 0===a?void 0:a.name)===r.name)?"string":t;var n,o,r,a})(e));const l=(void 0,e=>undefined===e);const i=e=>!(e=>null==e)(e),c=Object.hasOwnProperty,d=e=>"\ufeff"===e;var u=tinymce.util.Tools.resolve("tinymce.dom.TextSeeker");const f=e=>/^[(\[{ \u00a0]$/.test(e),g=(e,t,n)=>{for(let o=t-1;o>=0;o--){const t=e.charAt(o);if(!d(t)&&n(t))return o}return-1},m=(e,t)=>{var o;const a=e.schema.getVoidElements(),s=n(e),{dom:i,selection:d}=e;if(null!==i.getParent(d.getNode(),"a[href]"))return null;const m=d.getRng(),k=u(i,(e=>{return i.isBlock(e)||(t=a,n=e.nodeName.toLowerCase(),c.call(t,n))||"false"===i.getContentEditable(e);var t,n})),{container:p,offset:y}=((e,t)=>{let n=e,o=t;for(;1===n.nodeType&&n.childNodes[o];)n=n.childNodes[o],o=3===n.nodeType?n.data.length:n.childNodes.length;return{container:n,offset:o}})(m.endContainer,m.endOffset),h=null!==(o=i.getParent(p,i.isBlock))&&void 0!==o?o:i.getRoot(),w=k.backwards(p,y+t,((e,t)=>{const n=e.data,o=g(n,t,(r=f,e=>!r(e)));var r,a;return-1===o||(a=n[o],/[?!,.;:]/.test(a))?o:o+1}),h);if(!w)return null;let v=w.container;const _=k.backwards(w.container,w.offset,((e,t)=>{v=e;const n=g(e.data,t,f);return-1===n?n:n+1}),h),A=i.createRng();_?A.setStart(_.container,_.offset):A.setStart(v,0),A.setEnd(w.container,w.offset);const C=A.toString().replace(/\uFEFF/g,"").match(s);if(C){let t=C[0];return $="www.",(b=t).length>=$.length&&b.substr(0,0+$.length)===$?t=r(e)+"://"+t:((e,t,n=0,o)=>{const r=e.indexOf(t,n);return-1!==r&&(!!l(o)||r+t.length<=o)})(t,"@")&&!(e=>/^([A-Za-z][A-Za-z\d.+-]*:\/\/)|mailto:/.test(e))(t)&&(t="mailto:"+t),{rng:A,url:t}}var b,$;return null},k=(e,t)=>{const{dom:n,selection:r}=e,{rng:l,url:i}=t,c=r.getBookmark();r.setRng(l);const d="createlink",u={command:d,ui:!1,value:i};if(!e.dispatch("BeforeExecCommand",u).isDefaultPrevented()){e.getDoc().execCommand(d,!1,i),e.dispatch("ExecCommand",u);const t=o(e);if(s(t)){const o=r.getNode();n.setAttrib(o,"target",t),"_blank"!==t||a(e)||n.setAttrib(o,"rel","noopener")}}r.moveToBookmark(c),e.nodeChanged()},p=e=>{const t=m(e,-1);i(t)&&k(e,t)},y=p;e.add("autolink",(e=>{(e=>{const t=e.options.register;t("autolink_pattern",{processor:"regexp",default:new RegExp("^"+/(?:[A-Za-z][A-Za-z\d.+-]{0,14}:\/\/(?:[-.~*+=!&;:'%@?^${}(),\w]+@)?|www\.|[-;:&=+$,.\w]+@)[A-Za-z\d-]+(?:\.[A-Za-z\d-]+)*(?::\d+)?(?:\/(?:[-.~*+=!;:'%@$(),\/\w]*[-~*+=%@$()\/\w])?)?(?:\?(?:[-.~*+=!&;:'%@?^${}(),\/\w]+))?(?:#(?:[-.~*+=!&;:'%@?^${}(),\/\w]+))?/g.source+"$","i")}),t("link_default_target",{processor:"string"}),t("link_default_protocol",{processor:"string",default:"https"})})(e),(e=>{e.on("keydown",(t=>{13!==t.keyCode||t.isDefaultPrevented()||(e=>{const t=m(e,0);i(t)&&k(e,t)})(e)})),e.on("keyup",(t=>{32===t.keyCode?p(e):(48===t.keyCode&&t.shiftKey||221===t.keyCode)&&y(e)}))})(e)}))}();
|
4
tinymce/js/tinymce/plugins/autoresize/plugin.min.js
vendored
Normal file
4
tinymce/js/tinymce/plugins/autoresize/plugin.min.js
vendored
Normal file
@ -0,0 +1,4 @@
|
||||
/**
|
||||
* TinyMCE version 6.4.1 (2023-03-29)
|
||||
*/
|
||||
!function(){"use strict";var e=tinymce.util.Tools.resolve("tinymce.PluginManager"),t=tinymce.util.Tools.resolve("tinymce.Env");const o=e=>t=>t.options.get(e),s=o("min_height"),i=o("max_height"),n=o("autoresize_overflow_padding"),r=o("autoresize_bottom_margin"),l=(e,t)=>{const o=e.getBody();o&&(o.style.overflowY=t?"":"hidden",t||(o.scrollTop=0))},g=(e,t,o,s)=>{var i;const n=parseInt(null!==(i=e.getStyle(t,o,s))&&void 0!==i?i:"",10);return isNaN(n)?0:n},a=(e,o,r,c)=>{var d;const f=e.dom,u=e.getDoc();if(!u)return;if((e=>e.plugins.fullscreen&&e.plugins.fullscreen.isFullscreen())(e))return void l(e,!0);const m=u.documentElement,h=c?c():n(e),p=null!==(d=s(e))&&void 0!==d?d:e.getElement().offsetHeight;let y=p;const S=g(f,m,"margin-top",!0),v=g(f,m,"margin-bottom",!0);let C=m.offsetHeight+S+v+h;C<0&&(C=0);const b=e.getContainer().offsetHeight-e.getContentAreaContainer().offsetHeight;C+b>p&&(y=C+b);const w=i(e);if(w&&y>w?(y=w,l(e,!0)):l(e,!1),y!==o.get()){const s=y-o.get();if(f.setStyle(e.getContainer(),"height",y+"px"),o.set(y),(e=>{e.dispatch("ResizeEditor")})(e),t.browser.isSafari()&&(t.os.isMacOS()||t.os.isiOS())){const t=e.getWin();t.scrollTo(t.pageXOffset,t.pageYOffset)}e.hasFocus()&&(e=>{if("setcontent"===(null==e?void 0:e.type.toLowerCase())){const t=e;return!0===t.selection||!0===t.paste}return!1})(r)&&e.selection.scrollIntoView(),(t.browser.isSafari()||t.browser.isChromium())&&s<0&&a(e,o,r,c)}};e.add("autoresize",(e=>{if((e=>{const t=e.options.register;t("autoresize_overflow_padding",{processor:"number",default:1}),t("autoresize_bottom_margin",{processor:"number",default:50})})(e),e.options.isSet("resize")||e.options.set("resize",!1),!e.inline){const o=(e=>{let t=0;return{get:()=>t,set:e=>{t=e}}})();((e,t)=>{e.addCommand("mceAutoResize",(()=>{a(e,t)}))})(e,o),((e,o)=>{let s,i,l=()=>r(e);e.on("init",(i=>{s=0;const r=n(e),g=e.dom;g.setStyles(e.getDoc().documentElement,{height:"auto"}),t.browser.isEdge()||t.browser.isIE()?g.setStyles(e.getBody(),{paddingLeft:r,paddingRight:r,"min-height":0}):g.setStyles(e.getBody(),{paddingLeft:r,paddingRight:r}),a(e,o,i,l),s+=1})),e.on("NodeChange SetContent keyup FullscreenStateChanged ResizeContent",(t=>{if(1===s)i=e.getContainer().offsetHeight,a(e,o,t,l),s+=1;else if(2===s){const t=i<e.getContainer().offsetHeight;if(t){const t=e.dom,o=e.getDoc();t.setStyles(o.documentElement,{"min-height":0}),t.setStyles(e.getBody(),{"min-height":"inherit"})}l=t?(0,()=>0):l,s+=1}else a(e,o,t,l)}))})(e,o)}}))}();
|
4
tinymce/js/tinymce/plugins/autosave/plugin.min.js
vendored
Normal file
4
tinymce/js/tinymce/plugins/autosave/plugin.min.js
vendored
Normal file
@ -0,0 +1,4 @@
|
||||
/**
|
||||
* TinyMCE version 6.4.1 (2023-03-29)
|
||||
*/
|
||||
!function(){"use strict";var t=tinymce.util.Tools.resolve("tinymce.PluginManager");const e=("string",t=>"string"===(t=>{const e=typeof t;return null===t?"null":"object"===e&&Array.isArray(t)?"array":"object"===e&&(r=o=t,(a=String).prototype.isPrototypeOf(r)||(null===(s=o.constructor)||void 0===s?void 0:s.name)===a.name)?"string":e;var r,o,a,s})(t));const r=(void 0,t=>undefined===t);var o=tinymce.util.Tools.resolve("tinymce.util.Delay"),a=tinymce.util.Tools.resolve("tinymce.util.LocalStorage"),s=tinymce.util.Tools.resolve("tinymce.util.Tools");const n=t=>{const e=/^(\d+)([ms]?)$/.exec(t);return(e&&e[2]?{s:1e3,m:6e4}[e[2]]:1)*parseInt(t,10)},i=t=>e=>e.options.get(t),u=i("autosave_ask_before_unload"),l=i("autosave_restore_when_empty"),c=i("autosave_interval"),d=i("autosave_retention"),m=t=>{const e=document.location;return t.options.get("autosave_prefix").replace(/{path}/g,e.pathname).replace(/{query}/g,e.search).replace(/{hash}/g,e.hash).replace(/{id}/g,t.id)},v=(t,e)=>{if(r(e))return t.dom.isEmpty(t.getBody());{const r=s.trim(e);if(""===r)return!0;{const e=(new DOMParser).parseFromString(r,"text/html");return t.dom.isEmpty(e)}}},f=t=>{var e;const r=parseInt(null!==(e=a.getItem(m(t)+"time"))&&void 0!==e?e:"0",10)||0;return!((new Date).getTime()-r>d(t)&&(p(t,!1),1))},p=(t,e)=>{const r=m(t);a.removeItem(r+"draft"),a.removeItem(r+"time"),!1!==e&&(t=>{t.dispatch("RemoveDraft")})(t)},g=t=>{const e=m(t);!v(t)&&t.isDirty()&&(a.setItem(e+"draft",t.getContent({format:"raw",no_events:!0})),a.setItem(e+"time",(new Date).getTime().toString()),(t=>{t.dispatch("StoreDraft")})(t))},y=t=>{var e;const r=m(t);f(t)&&(t.setContent(null!==(e=a.getItem(r+"draft"))&&void 0!==e?e:"",{format:"raw"}),(t=>{t.dispatch("RestoreDraft")})(t))};var D=tinymce.util.Tools.resolve("tinymce.EditorManager");const h=t=>e=>{e.setEnabled(f(t));const r=()=>e.setEnabled(f(t));return t.on("StoreDraft RestoreDraft RemoveDraft",r),()=>t.off("StoreDraft RestoreDraft RemoveDraft",r)};t.add("autosave",(t=>((t=>{const r=t.options.register,o=t=>{const r=e(t);return r?{value:n(t),valid:r}:{valid:!1,message:"Must be a string."}};r("autosave_ask_before_unload",{processor:"boolean",default:!0}),r("autosave_prefix",{processor:"string",default:"tinymce-autosave-{path}{query}{hash}-{id}-"}),r("autosave_restore_when_empty",{processor:"boolean",default:!1}),r("autosave_interval",{processor:o,default:"30s"}),r("autosave_retention",{processor:o,default:"20m"})})(t),(t=>{t.editorManager.on("BeforeUnload",(t=>{let e;s.each(D.get(),(t=>{t.plugins.autosave&&t.plugins.autosave.storeDraft(),!e&&t.isDirty()&&u(t)&&(e=t.translate("You have unsaved changes are you sure you want to navigate away?"))})),e&&(t.preventDefault(),t.returnValue=e)}))})(t),(t=>{(t=>{const e=c(t);o.setEditorInterval(t,(()=>{g(t)}),e)})(t);const e=()=>{(t=>{t.undoManager.transact((()=>{y(t),p(t)})),t.focus()})(t)};t.ui.registry.addButton("restoredraft",{tooltip:"Restore last draft",icon:"restore-draft",onAction:e,onSetup:h(t)}),t.ui.registry.addMenuItem("restoredraft",{text:"Restore last draft",icon:"restore-draft",onAction:e,onSetup:h(t)})})(t),t.on("init",(()=>{l(t)&&t.dom.isEmpty(t.getBody())&&y(t)})),(t=>({hasDraft:()=>f(t),storeDraft:()=>g(t),restoreDraft:()=>y(t),removeDraft:e=>p(t,e),isEmpty:e=>v(t,e)}))(t))))}();
|
4
tinymce/js/tinymce/plugins/charmap/plugin.min.js
vendored
Normal file
4
tinymce/js/tinymce/plugins/charmap/plugin.min.js
vendored
Normal file
File diff suppressed because one or more lines are too long
4
tinymce/js/tinymce/plugins/code/plugin.min.js
vendored
Normal file
4
tinymce/js/tinymce/plugins/code/plugin.min.js
vendored
Normal file
@ -0,0 +1,4 @@
|
||||
/**
|
||||
* TinyMCE version 6.4.1 (2023-03-29)
|
||||
*/
|
||||
!function(){"use strict";tinymce.util.Tools.resolve("tinymce.PluginManager").add("code",(e=>((e=>{e.addCommand("mceCodeEditor",(()=>{(e=>{const o=(e=>e.getContent({source_view:!0}))(e);e.windowManager.open({title:"Source Code",size:"large",body:{type:"panel",items:[{type:"textarea",name:"code"}]},buttons:[{type:"cancel",name:"cancel",text:"Cancel"},{type:"submit",name:"save",text:"Save",primary:!0}],initialData:{code:o},onSubmit:o=>{((e,o)=>{e.focus(),e.undoManager.transact((()=>{e.setContent(o)})),e.selection.setCursorLocation(),e.nodeChanged()})(e,o.getData().code),o.close()}})})(e)}))})(e),(e=>{const o=()=>e.execCommand("mceCodeEditor");e.ui.registry.addButton("code",{icon:"sourcecode",tooltip:"Source code",onAction:o}),e.ui.registry.addMenuItem("code",{icon:"sourcecode",text:"Source code",onAction:o})})(e),{})))}();
|
4
tinymce/js/tinymce/plugins/codesample/plugin.min.js
vendored
Normal file
4
tinymce/js/tinymce/plugins/codesample/plugin.min.js
vendored
Normal file
File diff suppressed because one or more lines are too long
4
tinymce/js/tinymce/plugins/directionality/plugin.min.js
vendored
Normal file
4
tinymce/js/tinymce/plugins/directionality/plugin.min.js
vendored
Normal file
@ -0,0 +1,4 @@
|
||||
/**
|
||||
* TinyMCE version 6.4.1 (2023-03-29)
|
||||
*/
|
||||
!function(){"use strict";var t=tinymce.util.Tools.resolve("tinymce.PluginManager");const e=t=>e=>typeof e===t,o=t=>"string"===(t=>{const e=typeof t;return null===t?"null":"object"===e&&Array.isArray(t)?"array":"object"===e&&(o=r=t,(n=String).prototype.isPrototypeOf(o)||(null===(i=r.constructor)||void 0===i?void 0:i.name)===n.name)?"string":e;var o,r,n,i})(t),r=e("boolean"),n=t=>!(t=>null==t)(t),i=e("function"),s=e("number"),l=(!1,()=>false);class a{constructor(t,e){this.tag=t,this.value=e}static some(t){return new a(!0,t)}static none(){return a.singletonNone}fold(t,e){return this.tag?e(this.value):t()}isSome(){return this.tag}isNone(){return!this.tag}map(t){return this.tag?a.some(t(this.value)):a.none()}bind(t){return this.tag?t(this.value):a.none()}exists(t){return this.tag&&t(this.value)}forall(t){return!this.tag||t(this.value)}filter(t){return!this.tag||t(this.value)?this:a.none()}getOr(t){return this.tag?this.value:t}or(t){return this.tag?this:t}getOrThunk(t){return this.tag?this.value:t()}orThunk(t){return this.tag?this:t()}getOrDie(t){if(this.tag)return this.value;throw new Error(null!=t?t:"Called getOrDie on None")}static from(t){return n(t)?a.some(t):a.none()}getOrNull(){return this.tag?this.value:null}getOrUndefined(){return this.value}each(t){this.tag&&t(this.value)}toArray(){return this.tag?[this.value]:[]}toString(){return this.tag?`some(${this.value})`:"none()"}}a.singletonNone=new a(!1);const u=(t,e)=>{for(let o=0,r=t.length;o<r;o++)e(t[o],o)},c=t=>{if(null==t)throw new Error("Node cannot be null or undefined");return{dom:t}},d=c,h=(t,e)=>{const o=t.dom;if(1!==o.nodeType)return!1;{const t=o;if(void 0!==t.matches)return t.matches(e);if(void 0!==t.msMatchesSelector)return t.msMatchesSelector(e);if(void 0!==t.webkitMatchesSelector)return t.webkitMatchesSelector(e);if(void 0!==t.mozMatchesSelector)return t.mozMatchesSelector(e);throw new Error("Browser lacks native selectors")}};"undefined"!=typeof window?window:Function("return this;")();const m=t=>e=>(t=>t.dom.nodeType)(e)===t,g=m(1),f=m(3),v=m(9),p=m(11),y=(t,e)=>{t.dom.removeAttribute(e)},w=i(Element.prototype.attachShadow)&&i(Node.prototype.getRootNode)?t=>d(t.dom.getRootNode()):t=>v(t)?t:d(t.dom.ownerDocument),N=t=>d(t.dom.host),b=t=>{const e=f(t)?t.dom.parentNode:t.dom;if(null==e||null===e.ownerDocument)return!1;const o=e.ownerDocument;return(t=>{const e=w(t);return p(o=e)&&n(o.dom.host)?a.some(e):a.none();var o})(d(e)).fold((()=>o.body.contains(e)),(r=b,i=N,t=>r(i(t))));var r,i},S=t=>"rtl"===((t,e)=>{const o=t.dom,r=window.getComputedStyle(o).getPropertyValue(e);return""!==r||b(t)?r:((t,e)=>(t=>void 0!==t.style&&i(t.style.getPropertyValue))(t)?t.style.getPropertyValue(e):"")(o,e)})(t,"direction")?"rtl":"ltr",A=(t,e)=>((t,o)=>((t,e)=>{const o=[];for(let r=0,n=t.length;r<n;r++){const n=t[r];e(n,r)&&o.push(n)}return o})(((t,e)=>{const o=t.length,r=new Array(o);for(let n=0;n<o;n++){const o=t[n];r[n]=e(o,n)}return r})(t.dom.childNodes,d),(t=>h(t,e))))(t),T=("li",t=>g(t)&&"li"===t.dom.nodeName.toLowerCase());const C=(t,e)=>{const n=t.selection.getSelectedBlocks();n.length>0&&(u(n,(t=>{const n=d(t),c=T(n),m=((t,e)=>{return(e?(o=t,r="ol,ul",((t,e,o)=>{let n=t.dom;const s=i(o)?o:l;for(;n.parentNode;){n=n.parentNode;const t=d(n);if(h(t,r))return a.some(t);if(s(t))break}return a.none()})(o,0,n)):a.some(t)).getOr(t);var o,r,n})(n,c);var f;(f=m,(t=>a.from(t.dom.parentNode).map(d))(f).filter(g)).each((t=>{if(S(t)!==e?((t,e,n)=>{((t,e,n)=>{if(!(o(n)||r(n)||s(n)))throw console.error("Invalid call to Attribute.set. Key ",e,":: Value ",n,":: Element ",t),new Error("Attribute value was not simple");t.setAttribute(e,n+"")})(t.dom,e,n)})(m,"dir",e):S(m)!==e&&y(m,"dir"),c){const t=A(m,"li[dir]");u(t,(t=>y(t,"dir")))}}))})),t.nodeChanged())},D=(t,e)=>o=>{const r=t=>{const r=d(t.element);o.setActive(S(r)===e)};return t.on("NodeChange",r),()=>t.off("NodeChange",r)};t.add("directionality",(t=>{(t=>{t.addCommand("mceDirectionLTR",(()=>{C(t,"ltr")})),t.addCommand("mceDirectionRTL",(()=>{C(t,"rtl")}))})(t),(t=>{t.ui.registry.addToggleButton("ltr",{tooltip:"Left to right",icon:"ltr",onAction:()=>t.execCommand("mceDirectionLTR"),onSetup:D(t,"ltr")}),t.ui.registry.addToggleButton("rtl",{tooltip:"Right to left",icon:"rtl",onAction:()=>t.execCommand("mceDirectionRTL"),onSetup:D(t,"rtl")})})(t)}))}();
|
1
tinymce/js/tinymce/plugins/emoticons/js/emojiimages.js
Normal file
1
tinymce/js/tinymce/plugins/emoticons/js/emojiimages.js
Normal file
File diff suppressed because one or more lines are too long
3
tinymce/js/tinymce/plugins/emoticons/js/emojiimages.min.js
vendored
Normal file
3
tinymce/js/tinymce/plugins/emoticons/js/emojiimages.min.js
vendored
Normal file
File diff suppressed because one or more lines are too long
1
tinymce/js/tinymce/plugins/emoticons/js/emojis.js
Normal file
1
tinymce/js/tinymce/plugins/emoticons/js/emojis.js
Normal file
File diff suppressed because one or more lines are too long
2
tinymce/js/tinymce/plugins/emoticons/js/emojis.min.js
vendored
Normal file
2
tinymce/js/tinymce/plugins/emoticons/js/emojis.min.js
vendored
Normal file
File diff suppressed because one or more lines are too long
4
tinymce/js/tinymce/plugins/emoticons/plugin.min.js
vendored
Normal file
4
tinymce/js/tinymce/plugins/emoticons/plugin.min.js
vendored
Normal file
File diff suppressed because one or more lines are too long
4
tinymce/js/tinymce/plugins/fullscreen/plugin.min.js
vendored
Normal file
4
tinymce/js/tinymce/plugins/fullscreen/plugin.min.js
vendored
Normal file
File diff suppressed because one or more lines are too long
4
tinymce/js/tinymce/plugins/help/plugin.min.js
vendored
Normal file
4
tinymce/js/tinymce/plugins/help/plugin.min.js
vendored
Normal file
File diff suppressed because one or more lines are too long
4
tinymce/js/tinymce/plugins/image/plugin.min.js
vendored
Normal file
4
tinymce/js/tinymce/plugins/image/plugin.min.js
vendored
Normal file
File diff suppressed because one or more lines are too long
4
tinymce/js/tinymce/plugins/importcss/plugin.min.js
vendored
Normal file
4
tinymce/js/tinymce/plugins/importcss/plugin.min.js
vendored
Normal file
@ -0,0 +1,4 @@
|
||||
/**
|
||||
* TinyMCE version 6.4.1 (2023-03-29)
|
||||
*/
|
||||
!function(){"use strict";var e=tinymce.util.Tools.resolve("tinymce.PluginManager");const t=e=>t=>(e=>{const t=typeof e;return null===e?"null":"object"===t&&Array.isArray(e)?"array":"object"===t&&(s=r=e,(o=String).prototype.isPrototypeOf(s)||(null===(n=r.constructor)||void 0===n?void 0:n.name)===o.name)?"string":t;var s,r,o,n})(t)===e,s=t("string"),r=t("object"),o=t("array"),n=("function",e=>"function"==typeof e);var c=tinymce.util.Tools.resolve("tinymce.dom.DOMUtils"),i=tinymce.util.Tools.resolve("tinymce.EditorManager"),l=tinymce.util.Tools.resolve("tinymce.Env"),a=tinymce.util.Tools.resolve("tinymce.util.Tools");const p=e=>t=>t.options.get(e),u=p("importcss_merge_classes"),m=p("importcss_exclusive"),f=p("importcss_selector_converter"),y=p("importcss_selector_filter"),d=p("importcss_groups"),h=p("importcss_append"),_=p("importcss_file_filter"),g=p("skin"),v=p("skin_url"),b=Array.prototype.push,x=/^\.(?:ephox|tiny-pageembed|mce)(?:[.-]+\w+)+$/,T=e=>s(e)?t=>-1!==t.indexOf(e):e instanceof RegExp?t=>e.test(t):e,S=(e,t)=>{let s={};const r=/^(?:([a-z0-9\-_]+))?(\.[a-z0-9_\-\.]+)$/i.exec(t);if(!r)return;const o=r[1],n=r[2].substr(1).split(".").join(" "),c=a.makeMap("a,img");return r[1]?(s={title:t},e.schema.getTextBlockElements()[o]?s.block=o:e.schema.getBlockElements()[o]||c[o.toLowerCase()]?s.selector=o:s.inline=o):r[2]&&(s={inline:"span",title:t.substr(1),classes:n}),u(e)?s.classes=n:s.attributes={class:n},s},k=(e,t)=>null===t||m(e),w=e=>{e.on("init",(()=>{const t=(()=>{const e=[],t=[],s={};return{addItemToGroup:(e,r)=>{s[e]?s[e].push(r):(t.push(e),s[e]=[r])},addItem:t=>{e.push(t)},toFormats:()=>{return(r=t,n=e=>{const t=s[e];return 0===t.length?[]:[{title:e,items:t}]},(e=>{const t=[];for(let s=0,r=e.length;s<r;++s){if(!o(e[s]))throw new Error("Arr.flatten item "+s+" was not an array, input: "+e);b.apply(t,e[s])}return t})(((e,t)=>{const s=e.length,r=new Array(s);for(let o=0;o<s;o++){const s=e[o];r[o]=t(s,o)}return r})(r,n))).concat(e);var r,n}}})(),r={},n=T(y(e)),p=(e=>a.map(e,(e=>a.extend({},e,{original:e,selectors:{},filter:T(e.filter)}))))(d(e)),u=(t,s)=>{if(((e,t,s,r)=>!(k(e,s)?t in r:t in s.selectors))(e,t,s,r)){((e,t,s,r)=>{k(e,s)?r[t]=!0:s.selectors[t]=!0})(e,t,s,r);const o=((e,t,s,r)=>{let o;const n=f(e);return o=r&&r.selector_converter?r.selector_converter:n||(()=>S(e,s)),o.call(t,s,r)})(e,e.plugins.importcss,t,s);if(o){const t=o.name||c.DOM.uniqueId();return e.formatter.register(t,o),{title:o.title,format:t}}}return null};a.each(((e,t,r)=>{const o=[],n={},c=(t,n)=>{let p,u=t.href;if(u=(e=>{const t=l.cacheSuffix;return s(e)&&(e=e.replace("?"+t,"").replace("&"+t,"")),e})(u),u&&(!r||r(u,n))&&!((e,t)=>{const s=g(e);if(s){const r=v(e),o=r?e.documentBaseURI.toAbsolute(r):i.baseURL+"/skins/ui/"+s,n=i.baseURL+"/skins/content/";return t===o+"/content"+(e.inline?".inline":"")+".min.css"||-1!==t.indexOf(n)}return!1})(e,u)){a.each(t.imports,(e=>{c(e,!0)}));try{p=t.cssRules||t.rules}catch(e){}a.each(p,(e=>{e.styleSheet?c(e.styleSheet,!0):e.selectorText&&a.each(e.selectorText.split(","),(e=>{o.push(a.trim(e))}))}))}};a.each(e.contentCSS,(e=>{n[e]=!0})),r||(r=(e,t)=>t||n[e]);try{a.each(t.styleSheets,(e=>{c(e)}))}catch(e){}return o})(e,e.getDoc(),T(_(e))),(e=>{if(!x.test(e)&&(!n||n(e))){const s=((e,t)=>a.grep(e,(e=>!e.filter||e.filter(t))))(p,e);if(s.length>0)a.each(s,(s=>{const r=u(e,s);r&&t.addItemToGroup(s.title,r)}));else{const s=u(e,null);s&&t.addItem(s)}}}));const m=t.toFormats();e.dispatch("addStyleModifications",{items:m,replace:!h(e)})}))};e.add("importcss",(e=>((e=>{const t=e.options.register,o=e=>s(e)||n(e)||r(e);t("importcss_merge_classes",{processor:"boolean",default:!0}),t("importcss_exclusive",{processor:"boolean",default:!0}),t("importcss_selector_converter",{processor:"function"}),t("importcss_selector_filter",{processor:o}),t("importcss_file_filter",{processor:o}),t("importcss_groups",{processor:"object[]"}),t("importcss_append",{processor:"boolean",default:!1})})(e),w(e),(e=>({convertSelectorToFormat:t=>S(e,t)}))(e))))}();
|
4
tinymce/js/tinymce/plugins/insertdatetime/plugin.min.js
vendored
Normal file
4
tinymce/js/tinymce/plugins/insertdatetime/plugin.min.js
vendored
Normal file
@ -0,0 +1,4 @@
|
||||
/**
|
||||
* TinyMCE version 6.4.1 (2023-03-29)
|
||||
*/
|
||||
!function(){"use strict";var e=tinymce.util.Tools.resolve("tinymce.PluginManager");const t=e=>t=>t.options.get(e),a=t("insertdatetime_dateformat"),r=t("insertdatetime_timeformat"),n=t("insertdatetime_formats"),s=t("insertdatetime_element"),i="Sun Mon Tue Wed Thu Fri Sat Sun".split(" "),o="Sunday Monday Tuesday Wednesday Thursday Friday Saturday Sunday".split(" "),l="Jan Feb Mar Apr May Jun Jul Aug Sep Oct Nov Dec".split(" "),m="January February March April May June July August September October November December".split(" "),c=(e,t)=>{if((e=""+e).length<t)for(let a=0;a<t-e.length;a++)e="0"+e;return e},d=(e,t,a=new Date)=>(t=(t=(t=(t=(t=(t=(t=(t=(t=(t=(t=(t=(t=(t=(t=t.replace("%D","%m/%d/%Y")).replace("%r","%I:%M:%S %p")).replace("%Y",""+a.getFullYear())).replace("%y",""+a.getYear())).replace("%m",c(a.getMonth()+1,2))).replace("%d",c(a.getDate(),2))).replace("%H",""+c(a.getHours(),2))).replace("%M",""+c(a.getMinutes(),2))).replace("%S",""+c(a.getSeconds(),2))).replace("%I",""+((a.getHours()+11)%12+1))).replace("%p",a.getHours()<12?"AM":"PM")).replace("%B",""+e.translate(m[a.getMonth()]))).replace("%b",""+e.translate(l[a.getMonth()]))).replace("%A",""+e.translate(o[a.getDay()]))).replace("%a",""+e.translate(i[a.getDay()]))).replace("%%","%"),u=(e,t)=>{if(s(e)){const a=d(e,t);let r;r=/%[HMSIp]/.test(t)?d(e,"%Y-%m-%dT%H:%M"):d(e,"%Y-%m-%d");const n=e.dom.getParent(e.selection.getStart(),"time");n?((e,t,a,r)=>{const n=e.dom.create("time",{datetime:a},r);e.dom.replace(n,t),e.selection.select(n,!0),e.selection.collapse(!1)})(e,n,r,a):e.insertContent('<time datetime="'+r+'">'+a+"</time>")}else e.insertContent(d(e,t))};var p=tinymce.util.Tools.resolve("tinymce.util.Tools");e.add("insertdatetime",(e=>{(e=>{const t=e.options.register;t("insertdatetime_dateformat",{processor:"string",default:e.translate("%Y-%m-%d")}),t("insertdatetime_timeformat",{processor:"string",default:e.translate("%H:%M:%S")}),t("insertdatetime_formats",{processor:"string[]",default:["%H:%M:%S","%Y-%m-%d","%I:%M:%S %p","%D"]}),t("insertdatetime_element",{processor:"boolean",default:!1})})(e),(e=>{e.addCommand("mceInsertDate",((t,r)=>{u(e,null!=r?r:a(e))})),e.addCommand("mceInsertTime",((t,a)=>{u(e,null!=a?a:r(e))}))})(e),(e=>{const t=n(e),a=(e=>{let t=e;return{get:()=>t,set:e=>{t=e}}})((e=>{const t=n(e);return t.length>0?t[0]:r(e)})(e)),s=t=>e.execCommand("mceInsertDate",!1,t);e.ui.registry.addSplitButton("insertdatetime",{icon:"insert-time",tooltip:"Insert date/time",select:e=>e===a.get(),fetch:a=>{a(p.map(t,(t=>({type:"choiceitem",text:d(e,t),value:t}))))},onAction:e=>{s(a.get())},onItemAction:(e,t)=>{a.set(t),s(t)}});const i=e=>()=>{a.set(e),s(e)};e.ui.registry.addNestedMenuItem("insertdatetime",{icon:"insert-time",text:"Date/time",getSubmenuItems:()=>p.map(t,(t=>({type:"menuitem",text:d(e,t),onAction:i(t)})))})})(e)}))}();
|
4
tinymce/js/tinymce/plugins/link/plugin.min.js
vendored
Normal file
4
tinymce/js/tinymce/plugins/link/plugin.min.js
vendored
Normal file
File diff suppressed because one or more lines are too long
4
tinymce/js/tinymce/plugins/lists/plugin.min.js
vendored
Normal file
4
tinymce/js/tinymce/plugins/lists/plugin.min.js
vendored
Normal file
File diff suppressed because one or more lines are too long
4
tinymce/js/tinymce/plugins/media/plugin.min.js
vendored
Normal file
4
tinymce/js/tinymce/plugins/media/plugin.min.js
vendored
Normal file
File diff suppressed because one or more lines are too long
4
tinymce/js/tinymce/plugins/nonbreaking/plugin.min.js
vendored
Normal file
4
tinymce/js/tinymce/plugins/nonbreaking/plugin.min.js
vendored
Normal file
@ -0,0 +1,4 @@
|
||||
/**
|
||||
* TinyMCE version 6.4.1 (2023-03-29)
|
||||
*/
|
||||
!function(){"use strict";var n=tinymce.util.Tools.resolve("tinymce.PluginManager");const e=n=>e=>typeof e===n,a=e("boolean"),o=e("number"),t=n=>e=>e.options.get(n),i=t("nonbreaking_force_tab"),r=t("nonbreaking_wrap"),s=(n,e)=>{let a="";for(let o=0;o<e;o++)a+=n;return a},c=(n,e)=>{const a=r(n)||n.plugins.visualchars?`<span class="${(n=>!!n.plugins.visualchars&&n.plugins.visualchars.isEnabled())(n)?"mce-nbsp-wrap mce-nbsp":"mce-nbsp-wrap"}" contenteditable="false">${s(" ",e)}</span>`:s(" ",e);n.undoManager.transact((()=>n.insertContent(a)))};var l=tinymce.util.Tools.resolve("tinymce.util.VK");n.add("nonbreaking",(n=>{(n=>{const e=n.options.register;e("nonbreaking_force_tab",{processor:n=>a(n)?{value:n?3:0,valid:!0}:o(n)?{value:n,valid:!0}:{valid:!1,message:"Must be a boolean or number."},default:!1}),e("nonbreaking_wrap",{processor:"boolean",default:!0})})(n),(n=>{n.addCommand("mceNonBreaking",(()=>{c(n,1)}))})(n),(n=>{const e=()=>n.execCommand("mceNonBreaking");n.ui.registry.addButton("nonbreaking",{icon:"non-breaking",tooltip:"Nonbreaking space",onAction:e}),n.ui.registry.addMenuItem("nonbreaking",{icon:"non-breaking",text:"Nonbreaking space",onAction:e})})(n),(n=>{const e=i(n);e>0&&n.on("keydown",(a=>{if(a.keyCode===l.TAB&&!a.isDefaultPrevented()){if(a.shiftKey)return;a.preventDefault(),a.stopImmediatePropagation(),c(n,e)}}))})(n)}))}();
|
4
tinymce/js/tinymce/plugins/pagebreak/plugin.min.js
vendored
Normal file
4
tinymce/js/tinymce/plugins/pagebreak/plugin.min.js
vendored
Normal file
@ -0,0 +1,4 @@
|
||||
/**
|
||||
* TinyMCE version 6.4.1 (2023-03-29)
|
||||
*/
|
||||
!function(){"use strict";var e=tinymce.util.Tools.resolve("tinymce.PluginManager"),a=tinymce.util.Tools.resolve("tinymce.Env");const t=e=>a=>a.options.get(e),r=t("pagebreak_separator"),n=t("pagebreak_split_block"),o="mce-pagebreak",s=e=>{const t=`<img src="${a.transparentSrc}" class="mce-pagebreak" data-mce-resize="false" data-mce-placeholder />`;return e?`<p>${t}</p>`:t};e.add("pagebreak",(e=>{(e=>{const a=e.options.register;a("pagebreak_separator",{processor:"string",default:"\x3c!-- pagebreak --\x3e"}),a("pagebreak_split_block",{processor:"boolean",default:!1})})(e),(e=>{e.addCommand("mcePageBreak",(()=>{e.insertContent(s(n(e)))}))})(e),(e=>{const a=()=>e.execCommand("mcePageBreak");e.ui.registry.addButton("pagebreak",{icon:"page-break",tooltip:"Page break",onAction:a}),e.ui.registry.addMenuItem("pagebreak",{text:"Page break",icon:"page-break",onAction:a})})(e),(e=>{const a=r(e),t=()=>n(e),c=new RegExp(a.replace(/[\?\.\*\[\]\(\)\{\}\+\^\$\:]/g,(e=>"\\"+e)),"gi");e.on("BeforeSetContent",(e=>{e.content=e.content.replace(c,s(t()))})),e.on("PreInit",(()=>{e.serializer.addNodeFilter("img",(r=>{let n,s,c=r.length;for(;c--;)if(n=r[c],s=n.attr("class"),s&&-1!==s.indexOf(o)){const r=n.parent;if(r&&e.schema.getBlockElements()[r.name]&&t()){r.type=3,r.value=a,r.raw=!0,n.remove();continue}n.type=3,n.value=a,n.raw=!0}}))}))})(e),(e=>{e.on("ResolveName",(a=>{"IMG"===a.target.nodeName&&e.dom.hasClass(a.target,o)&&(a.name="pagebreak")}))})(e)}))}();
|
4
tinymce/js/tinymce/plugins/preview/plugin.min.js
vendored
Normal file
4
tinymce/js/tinymce/plugins/preview/plugin.min.js
vendored
Normal file
@ -0,0 +1,4 @@
|
||||
/**
|
||||
* TinyMCE version 6.4.1 (2023-03-29)
|
||||
*/
|
||||
!function(){"use strict";var e=tinymce.util.Tools.resolve("tinymce.PluginManager"),t=tinymce.util.Tools.resolve("tinymce.Env"),o=tinymce.util.Tools.resolve("tinymce.util.Tools");const n=e=>t=>t.options.get(e),i=n("content_style"),s=n("content_css_cors"),c=n("body_class"),r=n("body_id");e.add("preview",(e=>{(e=>{e.addCommand("mcePreview",(()=>{(e=>{const n=(e=>{var n;let l="";const a=e.dom.encode,d=null!==(n=i(e))&&void 0!==n?n:"";l+='<base href="'+a(e.documentBaseURI.getURI())+'">';const m=s(e)?' crossorigin="anonymous"':"";o.each(e.contentCSS,(t=>{l+='<link type="text/css" rel="stylesheet" href="'+a(e.documentBaseURI.toAbsolute(t))+'"'+m+">"})),d&&(l+='<style type="text/css">'+d+"</style>");const y=r(e),u=c(e),v='<script>document.addEventListener && document.addEventListener("click", function(e) {for (var elm = e.target; elm; elm = elm.parentNode) {if (elm.nodeName === "A" && !('+(t.os.isMacOS()||t.os.isiOS()?"e.metaKey":"e.ctrlKey && !e.altKey")+")) {e.preventDefault();}}}, false);<\/script> ",p=e.getBody().dir,w=p?' dir="'+a(p)+'"':"";return"<!DOCTYPE html><html><head>"+l+'</head><body id="'+a(y)+'" class="mce-content-body '+a(u)+'"'+w+">"+e.getContent()+v+"</body></html>"})(e);e.windowManager.open({title:"Preview",size:"large",body:{type:"panel",items:[{name:"preview",type:"iframe",sandboxed:!0,transparent:!1}]},buttons:[{type:"cancel",name:"close",text:"Close",primary:!0}],initialData:{preview:n}}).focus("close")})(e)}))})(e),(e=>{const t=()=>e.execCommand("mcePreview");e.ui.registry.addButton("preview",{icon:"preview",tooltip:"Preview",onAction:t}),e.ui.registry.addMenuItem("preview",{icon:"preview",text:"Preview",onAction:t})})(e)}))}();
|
4
tinymce/js/tinymce/plugins/quickbars/plugin.min.js
vendored
Normal file
4
tinymce/js/tinymce/plugins/quickbars/plugin.min.js
vendored
Normal file
File diff suppressed because one or more lines are too long
4
tinymce/js/tinymce/plugins/save/plugin.min.js
vendored
Normal file
4
tinymce/js/tinymce/plugins/save/plugin.min.js
vendored
Normal file
@ -0,0 +1,4 @@
|
||||
/**
|
||||
* TinyMCE version 6.4.1 (2023-03-29)
|
||||
*/
|
||||
!function(){"use strict";var e=tinymce.util.Tools.resolve("tinymce.PluginManager");const n=("function",e=>"function"==typeof e);var o=tinymce.util.Tools.resolve("tinymce.dom.DOMUtils"),t=tinymce.util.Tools.resolve("tinymce.util.Tools");const a=e=>n=>n.options.get(e),c=a("save_enablewhendirty"),i=a("save_onsavecallback"),s=a("save_oncancelcallback"),r=(e,n)=>{e.notificationManager.open({text:n,type:"error"})},l=e=>n=>{const o=()=>{n.setEnabled(!c(e)||e.isDirty())};return o(),e.on("NodeChange dirty",o),()=>e.off("NodeChange dirty",o)};e.add("save",(e=>{(e=>{const n=e.options.register;n("save_enablewhendirty",{processor:"boolean",default:!0}),n("save_onsavecallback",{processor:"function"}),n("save_oncancelcallback",{processor:"function"})})(e),(e=>{e.ui.registry.addButton("save",{icon:"save",tooltip:"Save",enabled:!1,onAction:()=>e.execCommand("mceSave"),onSetup:l(e)}),e.ui.registry.addButton("cancel",{icon:"cancel",tooltip:"Cancel",enabled:!1,onAction:()=>e.execCommand("mceCancel"),onSetup:l(e)}),e.addShortcut("Meta+S","","mceSave")})(e),(e=>{e.addCommand("mceSave",(()=>{(e=>{const t=o.DOM.getParent(e.id,"form");if(c(e)&&!e.isDirty())return;e.save();const a=i(e);if(n(a))return a.call(e,e),void e.nodeChanged();t?(e.setDirty(!1),t.onsubmit&&!t.onsubmit()||("function"==typeof t.submit?t.submit():r(e,"Error: Form submit field collision.")),e.nodeChanged()):r(e,"Error: No form element found.")})(e)})),e.addCommand("mceCancel",(()=>{(e=>{const o=t.trim(e.startContent),a=s(e);n(a)?a.call(e,e):e.resetContent(o)})(e)}))})(e)}))}();
|
4
tinymce/js/tinymce/plugins/searchreplace/plugin.min.js
vendored
Normal file
4
tinymce/js/tinymce/plugins/searchreplace/plugin.min.js
vendored
Normal file
File diff suppressed because one or more lines are too long
4
tinymce/js/tinymce/plugins/table/plugin.min.js
vendored
Normal file
4
tinymce/js/tinymce/plugins/table/plugin.min.js
vendored
Normal file
File diff suppressed because one or more lines are too long
4
tinymce/js/tinymce/plugins/template/plugin.min.js
vendored
Normal file
4
tinymce/js/tinymce/plugins/template/plugin.min.js
vendored
Normal file
File diff suppressed because one or more lines are too long
4
tinymce/js/tinymce/plugins/visualblocks/plugin.min.js
vendored
Normal file
4
tinymce/js/tinymce/plugins/visualblocks/plugin.min.js
vendored
Normal file
@ -0,0 +1,4 @@
|
||||
/**
|
||||
* TinyMCE version 6.4.1 (2023-03-29)
|
||||
*/
|
||||
!function(){"use strict";var t=tinymce.util.Tools.resolve("tinymce.PluginManager");const s=(t,s,o)=>{t.dom.toggleClass(t.getBody(),"mce-visualblocks"),o.set(!o.get()),((t,s)=>{t.dispatch("VisualBlocks",{state:s})})(t,o.get())},o=("visualblocks_default_state",t=>t.options.get("visualblocks_default_state"));const e=(t,s)=>o=>{o.setActive(s.get());const e=t=>o.setActive(t.state);return t.on("VisualBlocks",e),()=>t.off("VisualBlocks",e)};t.add("visualblocks",((t,l)=>{(t=>{(0,t.options.register)("visualblocks_default_state",{processor:"boolean",default:!1})})(t);const a=(t=>{let s=!1;return{get:()=>s,set:t=>{s=t}}})();((t,o,e)=>{t.addCommand("mceVisualBlocks",(()=>{s(t,0,e)}))})(t,0,a),((t,s)=>{const o=()=>t.execCommand("mceVisualBlocks");t.ui.registry.addToggleButton("visualblocks",{icon:"visualblocks",tooltip:"Show blocks",onAction:o,onSetup:e(t,s)}),t.ui.registry.addToggleMenuItem("visualblocks",{text:"Show blocks",icon:"visualblocks",onAction:o,onSetup:e(t,s)})})(t,a),((t,e,l)=>{t.on("PreviewFormats AfterPreviewFormats",(s=>{l.get()&&t.dom.toggleClass(t.getBody(),"mce-visualblocks","afterpreviewformats"===s.type)})),t.on("init",(()=>{o(t)&&s(t,0,l)}))})(t,0,a)}))}();
|
4
tinymce/js/tinymce/plugins/visualchars/plugin.min.js
vendored
Normal file
4
tinymce/js/tinymce/plugins/visualchars/plugin.min.js
vendored
Normal file
File diff suppressed because one or more lines are too long
4
tinymce/js/tinymce/plugins/wordcount/plugin.min.js
vendored
Normal file
4
tinymce/js/tinymce/plugins/wordcount/plugin.min.js
vendored
Normal file
File diff suppressed because one or more lines are too long
1
tinymce/js/tinymce/skins/content/dark/content.min.css
vendored
Normal file
1
tinymce/js/tinymce/skins/content/dark/content.min.css
vendored
Normal file
@ -0,0 +1 @@
|
||||
body{background-color:#222f3e;color:#fff;font-family:-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,Oxygen,Ubuntu,Cantarell,'Open Sans','Helvetica Neue',sans-serif;line-height:1.4;margin:1rem}a{color:#4099ff}table{border-collapse:collapse}table:not([cellpadding]) td,table:not([cellpadding]) th{padding:.4rem}table[border]:not([border="0"]):not([style*=border-width]) td,table[border]:not([border="0"]):not([style*=border-width]) th{border-width:1px}table[border]:not([border="0"]):not([style*=border-style]) td,table[border]:not([border="0"]):not([style*=border-style]) th{border-style:solid}table[border]:not([border="0"]):not([style*=border-color]) td,table[border]:not([border="0"]):not([style*=border-color]) th{border-color:#6d737b}figure{display:table;margin:1rem auto}figure figcaption{color:#8a8f97;display:block;margin-top:.25rem;text-align:center}hr{border-color:#6d737b;border-style:solid;border-width:1px 0 0 0}code{background-color:#6d737b;border-radius:3px;padding:.1rem .2rem}.mce-content-body:not([dir=rtl]) blockquote{border-left:2px solid #6d737b;margin-left:1.5rem;padding-left:1rem}.mce-content-body[dir=rtl] blockquote{border-right:2px solid #6d737b;margin-right:1.5rem;padding-right:1rem}
|
1
tinymce/js/tinymce/skins/content/default/content.min.css
vendored
Normal file
1
tinymce/js/tinymce/skins/content/default/content.min.css
vendored
Normal file
@ -0,0 +1 @@
|
||||
body{font-family:-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,Oxygen,Ubuntu,Cantarell,'Open Sans','Helvetica Neue',sans-serif;line-height:1.4;margin:1rem}table{border-collapse:collapse}table:not([cellpadding]) td,table:not([cellpadding]) th{padding:.4rem}table[border]:not([border="0"]):not([style*=border-width]) td,table[border]:not([border="0"]):not([style*=border-width]) th{border-width:1px}table[border]:not([border="0"]):not([style*=border-style]) td,table[border]:not([border="0"]):not([style*=border-style]) th{border-style:solid}table[border]:not([border="0"]):not([style*=border-color]) td,table[border]:not([border="0"]):not([style*=border-color]) th{border-color:#ccc}figure{display:table;margin:1rem auto}figure figcaption{color:#999;display:block;margin-top:.25rem;text-align:center}hr{border-color:#ccc;border-style:solid;border-width:1px 0 0 0}code{background-color:#e8e8e8;border-radius:3px;padding:.1rem .2rem}.mce-content-body:not([dir=rtl]) blockquote{border-left:2px solid #ccc;margin-left:1.5rem;padding-left:1rem}.mce-content-body[dir=rtl] blockquote{border-right:2px solid #ccc;margin-right:1.5rem;padding-right:1rem}
|
1
tinymce/js/tinymce/skins/content/document/content.min.css
vendored
Normal file
1
tinymce/js/tinymce/skins/content/document/content.min.css
vendored
Normal file
@ -0,0 +1 @@
|
||||
@media screen{html{background:#f4f4f4;min-height:100%}}body{font-family:-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,Oxygen,Ubuntu,Cantarell,'Open Sans','Helvetica Neue',sans-serif}@media screen{body{background-color:#fff;box-shadow:0 0 4px rgba(0,0,0,.15);box-sizing:border-box;margin:1rem auto 0;max-width:820px;min-height:calc(100vh - 1rem);padding:4rem 6rem 6rem 6rem}}table{border-collapse:collapse}table:not([cellpadding]) td,table:not([cellpadding]) th{padding:.4rem}table[border]:not([border="0"]):not([style*=border-width]) td,table[border]:not([border="0"]):not([style*=border-width]) th{border-width:1px}table[border]:not([border="0"]):not([style*=border-style]) td,table[border]:not([border="0"]):not([style*=border-style]) th{border-style:solid}table[border]:not([border="0"]):not([style*=border-color]) td,table[border]:not([border="0"]):not([style*=border-color]) th{border-color:#ccc}figure figcaption{color:#999;margin-top:.25rem;text-align:center}hr{border-color:#ccc;border-style:solid;border-width:1px 0 0 0}.mce-content-body:not([dir=rtl]) blockquote{border-left:2px solid #ccc;margin-left:1.5rem;padding-left:1rem}.mce-content-body[dir=rtl] blockquote{border-right:2px solid #ccc;margin-right:1.5rem;padding-right:1rem}
|
1
tinymce/js/tinymce/skins/content/tinymce-5-dark/content.min.css
vendored
Normal file
1
tinymce/js/tinymce/skins/content/tinymce-5-dark/content.min.css
vendored
Normal file
@ -0,0 +1 @@
|
||||
body{background-color:#2f3742;color:#dfe0e4;font-family:-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,Oxygen,Ubuntu,Cantarell,'Open Sans','Helvetica Neue',sans-serif;line-height:1.4;margin:1rem}a{color:#4099ff}table{border-collapse:collapse}table:not([cellpadding]) td,table:not([cellpadding]) th{padding:.4rem}table[border]:not([border="0"]):not([style*=border-width]) td,table[border]:not([border="0"]):not([style*=border-width]) th{border-width:1px}table[border]:not([border="0"]):not([style*=border-style]) td,table[border]:not([border="0"]):not([style*=border-style]) th{border-style:solid}table[border]:not([border="0"]):not([style*=border-color]) td,table[border]:not([border="0"]):not([style*=border-color]) th{border-color:#6d737b}figure{display:table;margin:1rem auto}figure figcaption{color:#8a8f97;display:block;margin-top:.25rem;text-align:center}hr{border-color:#6d737b;border-style:solid;border-width:1px 0 0 0}code{background-color:#6d737b;border-radius:3px;padding:.1rem .2rem}.mce-content-body:not([dir=rtl]) blockquote{border-left:2px solid #6d737b;margin-left:1.5rem;padding-left:1rem}.mce-content-body[dir=rtl] blockquote{border-right:2px solid #6d737b;margin-right:1.5rem;padding-right:1rem}
|
1
tinymce/js/tinymce/skins/content/tinymce-5/content.min.css
vendored
Normal file
1
tinymce/js/tinymce/skins/content/tinymce-5/content.min.css
vendored
Normal file
@ -0,0 +1 @@
|
||||
body{font-family:-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,Oxygen,Ubuntu,Cantarell,'Open Sans','Helvetica Neue',sans-serif;line-height:1.4;margin:1rem}table{border-collapse:collapse}table:not([cellpadding]) td,table:not([cellpadding]) th{padding:.4rem}table[border]:not([border="0"]):not([style*=border-width]) td,table[border]:not([border="0"]):not([style*=border-width]) th{border-width:1px}table[border]:not([border="0"]):not([style*=border-style]) td,table[border]:not([border="0"]):not([style*=border-style]) th{border-style:solid}table[border]:not([border="0"]):not([style*=border-color]) td,table[border]:not([border="0"]):not([style*=border-color]) th{border-color:#ccc}figure{display:table;margin:1rem auto}figure figcaption{color:#999;display:block;margin-top:.25rem;text-align:center}hr{border-color:#ccc;border-style:solid;border-width:1px 0 0 0}code{background-color:#e8e8e8;border-radius:3px;padding:.1rem .2rem}.mce-content-body:not([dir=rtl]) blockquote{border-left:2px solid #ccc;margin-left:1.5rem;padding-left:1rem}.mce-content-body[dir=rtl] blockquote{border-right:2px solid #ccc;margin-right:1.5rem;padding-right:1rem}
|
1
tinymce/js/tinymce/skins/content/writer/content.min.css
vendored
Normal file
1
tinymce/js/tinymce/skins/content/writer/content.min.css
vendored
Normal file
@ -0,0 +1 @@
|
||||
body{font-family:-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,Oxygen,Ubuntu,Cantarell,'Open Sans','Helvetica Neue',sans-serif;line-height:1.4;margin:1rem auto;max-width:900px}table{border-collapse:collapse}table:not([cellpadding]) td,table:not([cellpadding]) th{padding:.4rem}table[border]:not([border="0"]):not([style*=border-width]) td,table[border]:not([border="0"]):not([style*=border-width]) th{border-width:1px}table[border]:not([border="0"]):not([style*=border-style]) td,table[border]:not([border="0"]):not([style*=border-style]) th{border-style:solid}table[border]:not([border="0"]):not([style*=border-color]) td,table[border]:not([border="0"]):not([style*=border-color]) th{border-color:#ccc}figure{display:table;margin:1rem auto}figure figcaption{color:#999;display:block;margin-top:.25rem;text-align:center}hr{border-color:#ccc;border-style:solid;border-width:1px 0 0 0}code{background-color:#e8e8e8;border-radius:3px;padding:.1rem .2rem}.mce-content-body:not([dir=rtl]) blockquote{border-left:2px solid #ccc;margin-left:1.5rem;padding-left:1rem}.mce-content-body[dir=rtl] blockquote{border-right:2px solid #ccc;margin-right:1.5rem;padding-right:1rem}
|
1
tinymce/js/tinymce/skins/ui/oxide-dark/content.inline.min.css
vendored
Normal file
1
tinymce/js/tinymce/skins/ui/oxide-dark/content.inline.min.css
vendored
Normal file
File diff suppressed because one or more lines are too long
1
tinymce/js/tinymce/skins/ui/oxide-dark/content.min.css
vendored
Normal file
1
tinymce/js/tinymce/skins/ui/oxide-dark/content.min.css
vendored
Normal file
File diff suppressed because one or more lines are too long
1
tinymce/js/tinymce/skins/ui/oxide-dark/skin.min.css
vendored
Normal file
1
tinymce/js/tinymce/skins/ui/oxide-dark/skin.min.css
vendored
Normal file
File diff suppressed because one or more lines are too long
1
tinymce/js/tinymce/skins/ui/oxide-dark/skin.shadowdom.min.css
vendored
Normal file
1
tinymce/js/tinymce/skins/ui/oxide-dark/skin.shadowdom.min.css
vendored
Normal file
@ -0,0 +1 @@
|
||||
body.tox-dialog__disable-scroll{overflow:hidden}.tox-fullscreen{border:0;height:100%;margin:0;overflow:hidden;overscroll-behavior:none;padding:0;touch-action:pinch-zoom;width:100%}.tox.tox-tinymce.tox-fullscreen .tox-statusbar__resize-handle{display:none}.tox-shadowhost.tox-fullscreen,.tox.tox-tinymce.tox-fullscreen{left:0;position:fixed;top:0;z-index:1200}.tox.tox-tinymce.tox-fullscreen{background-color:transparent}.tox-fullscreen .tox.tox-tinymce-aux,.tox-fullscreen~.tox.tox-tinymce-aux{z-index:1201}
|
1
tinymce/js/tinymce/skins/ui/oxide/content.inline.min.css
vendored
Normal file
1
tinymce/js/tinymce/skins/ui/oxide/content.inline.min.css
vendored
Normal file
File diff suppressed because one or more lines are too long
1
tinymce/js/tinymce/skins/ui/oxide/content.min.css
vendored
Normal file
1
tinymce/js/tinymce/skins/ui/oxide/content.min.css
vendored
Normal file
File diff suppressed because one or more lines are too long
1
tinymce/js/tinymce/skins/ui/oxide/skin.min.css
vendored
Normal file
1
tinymce/js/tinymce/skins/ui/oxide/skin.min.css
vendored
Normal file
File diff suppressed because one or more lines are too long
1
tinymce/js/tinymce/skins/ui/oxide/skin.shadowdom.min.css
vendored
Normal file
1
tinymce/js/tinymce/skins/ui/oxide/skin.shadowdom.min.css
vendored
Normal file
@ -0,0 +1 @@
|
||||
body.tox-dialog__disable-scroll{overflow:hidden}.tox-fullscreen{border:0;height:100%;margin:0;overflow:hidden;overscroll-behavior:none;padding:0;touch-action:pinch-zoom;width:100%}.tox.tox-tinymce.tox-fullscreen .tox-statusbar__resize-handle{display:none}.tox-shadowhost.tox-fullscreen,.tox.tox-tinymce.tox-fullscreen{left:0;position:fixed;top:0;z-index:1200}.tox.tox-tinymce.tox-fullscreen{background-color:transparent}.tox-fullscreen .tox.tox-tinymce-aux,.tox-fullscreen~.tox.tox-tinymce-aux{z-index:1201}
|
1
tinymce/js/tinymce/skins/ui/tinymce-5-dark/content.inline.min.css
vendored
Normal file
1
tinymce/js/tinymce/skins/ui/tinymce-5-dark/content.inline.min.css
vendored
Normal file
File diff suppressed because one or more lines are too long
1
tinymce/js/tinymce/skins/ui/tinymce-5-dark/content.min.css
vendored
Normal file
1
tinymce/js/tinymce/skins/ui/tinymce-5-dark/content.min.css
vendored
Normal file
File diff suppressed because one or more lines are too long
1
tinymce/js/tinymce/skins/ui/tinymce-5-dark/skin.min.css
vendored
Normal file
1
tinymce/js/tinymce/skins/ui/tinymce-5-dark/skin.min.css
vendored
Normal file
File diff suppressed because one or more lines are too long
1
tinymce/js/tinymce/skins/ui/tinymce-5-dark/skin.shadowdom.min.css
vendored
Normal file
1
tinymce/js/tinymce/skins/ui/tinymce-5-dark/skin.shadowdom.min.css
vendored
Normal file
@ -0,0 +1 @@
|
||||
body.tox-dialog__disable-scroll{overflow:hidden}.tox-fullscreen{border:0;height:100%;margin:0;overflow:hidden;overscroll-behavior:none;padding:0;touch-action:pinch-zoom;width:100%}.tox.tox-tinymce.tox-fullscreen .tox-statusbar__resize-handle{display:none}.tox-shadowhost.tox-fullscreen,.tox.tox-tinymce.tox-fullscreen{left:0;position:fixed;top:0;z-index:1200}.tox.tox-tinymce.tox-fullscreen{background-color:transparent}.tox-fullscreen .tox.tox-tinymce-aux,.tox-fullscreen~.tox.tox-tinymce-aux{z-index:1201}
|
1
tinymce/js/tinymce/skins/ui/tinymce-5/content.inline.min.css
vendored
Normal file
1
tinymce/js/tinymce/skins/ui/tinymce-5/content.inline.min.css
vendored
Normal file
File diff suppressed because one or more lines are too long
1
tinymce/js/tinymce/skins/ui/tinymce-5/content.min.css
vendored
Normal file
1
tinymce/js/tinymce/skins/ui/tinymce-5/content.min.css
vendored
Normal file
File diff suppressed because one or more lines are too long
1
tinymce/js/tinymce/skins/ui/tinymce-5/skin.min.css
vendored
Normal file
1
tinymce/js/tinymce/skins/ui/tinymce-5/skin.min.css
vendored
Normal file
File diff suppressed because one or more lines are too long
1
tinymce/js/tinymce/skins/ui/tinymce-5/skin.shadowdom.min.css
vendored
Normal file
1
tinymce/js/tinymce/skins/ui/tinymce-5/skin.shadowdom.min.css
vendored
Normal file
@ -0,0 +1 @@
|
||||
body.tox-dialog__disable-scroll{overflow:hidden}.tox-fullscreen{border:0;height:100%;margin:0;overflow:hidden;overscroll-behavior:none;padding:0;touch-action:pinch-zoom;width:100%}.tox.tox-tinymce.tox-fullscreen .tox-statusbar__resize-handle{display:none}.tox-shadowhost.tox-fullscreen,.tox.tox-tinymce.tox-fullscreen{left:0;position:fixed;top:0;z-index:1200}.tox.tox-tinymce.tox-fullscreen{background-color:transparent}.tox-fullscreen .tox.tox-tinymce-aux,.tox-fullscreen~.tox.tox-tinymce-aux{z-index:1201}
|
4
tinymce/js/tinymce/themes/silver/theme.min.js
vendored
Normal file
4
tinymce/js/tinymce/themes/silver/theme.min.js
vendored
Normal file
File diff suppressed because one or more lines are too long
3185
tinymce/js/tinymce/tinymce.d.ts
vendored
Normal file
3185
tinymce/js/tinymce/tinymce.d.ts
vendored
Normal file
File diff suppressed because it is too large
Load Diff
4
tinymce/js/tinymce/tinymce.min.js
vendored
Normal file
4
tinymce/js/tinymce/tinymce.min.js
vendored
Normal file
File diff suppressed because one or more lines are too long
BIN
tinymce/tinymce_6.4.1.zip
Normal file
BIN
tinymce/tinymce_6.4.1.zip
Normal file
Binary file not shown.
Loading…
x
Reference in New Issue
Block a user