activate modal on events app card, add class for user
This commit is contained in:
@@ -19,12 +19,12 @@ include_once("events.inc.php");
|
|||||||
// specify options here
|
// specify options here
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
document.addEventListener('DOMContentLoaded', function() {
|
// document.addEventListener('DOMContentLoaded', function() {
|
||||||
var elems = document.querySelectorAll('.modal');
|
// var elems = document.querySelectorAll('.modal');
|
||||||
var instances = M.Modal.init(elems, {
|
// var instances = M.Modal.init(elems, {
|
||||||
// specify options here
|
// // specify options here
|
||||||
});
|
// });
|
||||||
});
|
// });
|
||||||
|
|
||||||
// Open the given modal
|
// Open the given modal
|
||||||
document.addEventListener('DOMContentLoaded', function () {
|
document.addEventListener('DOMContentLoaded', function () {
|
||||||
|
|||||||
@@ -102,7 +102,7 @@ echo(
|
|||||||
AppCard::fromArray([
|
AppCard::fromArray([
|
||||||
'link' => '/pages/desktop/wkParticipo',
|
'link' => '/pages/desktop/wkParticipo',
|
||||||
'title' => 'Event-Planer',
|
'title' => 'Event-Planer',
|
||||||
'description' => 'Organisieren der Teilnahmen (und nicht-Teilnahmen) an Wettkämpfen, Sondertrainingseinheiten, Feiern etc.</p>' . eventPlaner::getHtmlEventTable(eventPlaner::getCommingWkEvents()) . '<p>',
|
'description' => 'Organisieren der Teilnahmen (und nicht-Teilnahmen) an Wettkämpfen, Sondertrainingseinheiten, Feiern etc.' . eventPlaner::getHtmlEventTable(eventPlaner::getCommingWkEvents()),
|
||||||
'imgUrl' => '/ressourcen/graphiken/icons/terminKalender.svg',
|
'imgUrl' => '/ressourcen/graphiken/icons/terminKalender.svg',
|
||||||
'actions' => [
|
'actions' => [
|
||||||
AppCardAction::fromArray(['caption' => 'Planer', 'link' => '/pages/desktop/wkParticipo']),
|
AppCardAction::fromArray(['caption' => 'Planer', 'link' => '/pages/desktop/wkParticipo']),
|
||||||
|
|||||||
@@ -214,11 +214,11 @@ class AppCard{
|
|||||||
return
|
return
|
||||||
"<div style=\"padding:1%;\" class=\"col s12 m6 ".$extraClass."\">".
|
"<div style=\"padding:1%;\" class=\"col s12 m6 ".$extraClass."\">".
|
||||||
"<div style=\"margin:1%;\" class=\"card blue-grey darken-1\">".
|
"<div style=\"margin:1%;\" class=\"card blue-grey darken-1\">".
|
||||||
(($this->link!=null)?("<a href=\"".$this->link."\">"):(""))."<div class=\"card-content white-text\">".
|
"<div class=\"card-content white-text\">".
|
||||||
"<span class=\"card-title\">".$this->title."</span>".
|
(($this->link!=null)?("<a href=\"".$this->link."\">"):(""))."<span class=\"card-title\">".$this->title."</span>".(($this->link!=null)?("</a>"):("")).
|
||||||
(($this->imgUrl!=null)?("<img alt=\"".$this->title."\" style=\"display:block;margin-left:auto;margin-right:auto;max-height:10vh;\" class=\"responsive-img\" src=\"".$this->imgUrl."\" />"):("")).
|
(($this->imgUrl!=null)?("<img alt=\"".$this->title."\" style=\"display:block;margin-left:auto;margin-right:auto;max-height:10vh;\" class=\"responsive-img\" src=\"".$this->imgUrl."\" />"):("")).
|
||||||
"<p>".$this->description."</p>".
|
"<p>".$this->description."</p>".
|
||||||
"</div>".(($this->link!=null)?("</a>"):("")).
|
"</div>".
|
||||||
"<div class=\"card-action\">".$actionListCode."</div>".
|
"<div class=\"card-action\">".$actionListCode."</div>".
|
||||||
"</div>".
|
"</div>".
|
||||||
"</div>";
|
"</div>";
|
||||||
@@ -474,4 +474,70 @@ class dbConnector{
|
|||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* User for the Participo system
|
||||||
|
*/
|
||||||
|
class user{
|
||||||
|
private $id;
|
||||||
|
private $loginName;
|
||||||
|
private $name;
|
||||||
|
private $firstName;
|
||||||
|
private $dateOfBirth;
|
||||||
|
private $eMail;
|
||||||
|
|
||||||
|
public function __construct($id, $loginName, $name, $firstName, $dateOfBirth, $eMail)
|
||||||
|
{
|
||||||
|
$this->id = (int) id;
|
||||||
|
$this->loginName = $loginName;
|
||||||
|
$this->name = $name;
|
||||||
|
$this->firstName = $firstName;
|
||||||
|
$this->dateOfBirth = $dateOfBirth!=null?DateTime::createFromFormat('Y-m-d', $dateOfBirth):null;
|
||||||
|
$this->eMail = $eMail;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Create a User from an assoziative array
|
||||||
|
*
|
||||||
|
* @param array $member associative array with the UserData from the dbRequest
|
||||||
|
* @return User initialized user
|
||||||
|
*/
|
||||||
|
public static function fromArray($member){
|
||||||
|
return new User(
|
||||||
|
$member['id']??null,
|
||||||
|
$member['loginName']??null,
|
||||||
|
$member['name']??null,
|
||||||
|
$member['vorname']??null,
|
||||||
|
$member['gebDatum']??null,
|
||||||
|
array_key_exist('eMail', $member)?explode(',', $member['eMail']):null
|
||||||
|
);
|
||||||
|
}
|
||||||
|
|
||||||
|
/// Setzen aller Attribute
|
||||||
|
/// @todo Inputvalidation
|
||||||
|
function set($userData){
|
||||||
|
$this->id = $userData["id"];
|
||||||
|
$this->loginName = $userData["loginName"];
|
||||||
|
$this->name = $userData["name"];
|
||||||
|
$this->vorname = $userData["vorname"];
|
||||||
|
$this->gebDatum = $userData["gebDatum"];
|
||||||
|
$this->eMail = $userData["eMail"];
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
function toAssoc(){
|
||||||
|
return array(
|
||||||
|
"id" => $this->id,
|
||||||
|
"loginName"=> $this->loginName,
|
||||||
|
"name" => $this->name,
|
||||||
|
"vorname" => $this->vorname,
|
||||||
|
"gebDatum" => $this->gebDatum,
|
||||||
|
"eMail" => $this->eMail);
|
||||||
|
}
|
||||||
|
function loadFromDb($dbConn, $id){
|
||||||
|
$this->set(
|
||||||
|
loadUserDataFromDb($dbConn, $id)
|
||||||
|
);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
?>
|
?>
|
||||||
@@ -84,8 +84,8 @@ class shiai
|
|||||||
'<dt>Datum:</dt><dd>' . $this->getHtmlDate() . '</dd>' .
|
'<dt>Datum:</dt><dd>' . $this->getHtmlDate() . '</dd>' .
|
||||||
'<dt>Altersklassen</dt><dd>' . $this->getAgeClasses() . '</dd>' .
|
'<dt>Altersklassen</dt><dd>' . $this->getAgeClasses() . '</dd>' .
|
||||||
'<dt>Ort</dt><dd>' . $this->getPlace() . '</dd>' .
|
'<dt>Ort</dt><dd>' . $this->getPlace() . '</dd>' .
|
||||||
'</dl>';
|
'</dl>' .
|
||||||
|
'</div>';
|
||||||
return $retHtml;
|
return $retHtml;
|
||||||
}
|
}
|
||||||
} // end class shiai
|
} // end class shiai
|
||||||
@@ -142,10 +142,13 @@ class event
|
|||||||
public function htmlModal()
|
public function htmlModal()
|
||||||
{
|
{
|
||||||
return
|
return
|
||||||
'<div id="event-modal-' . $this->id . '" class="modal">' .
|
'<div id="event-modal-' . $this->id . '" class="modal black-text">' .
|
||||||
'<div class="modal-content">' . $this->shiai->getHtml() . '</div>' .
|
'<div class="modal-content">' .
|
||||||
|
$this->shiai->getHtml() .
|
||||||
|
'</div>' . // end modal content
|
||||||
'<div class="modal-footer">' .
|
'<div class="modal-footer">' .
|
||||||
'<a href="#!" class="modal-close waves-effect waves-green btn-flat">Agree</a>' .
|
'<a href="/pages/desktop/wkParticipo/showWkEvent.php?eventId=' . $this->id . '" class="modal-close waves-effect waves-green btn-flat">Zum Event im Planer</a>' .
|
||||||
|
'<a href="#!" class="modal-close waves-effect waves-green btn-flat">Schließen</a>' .
|
||||||
'</div>' .
|
'</div>' .
|
||||||
'</div>';
|
'</div>';
|
||||||
}
|
}
|
||||||
@@ -220,8 +223,18 @@ class eventPlaner
|
|||||||
|
|
||||||
public static function getHtmlEventTable($eventList)
|
public static function getHtmlEventTable($eventList)
|
||||||
{
|
{
|
||||||
$ret = '<table>';
|
$ret = '';
|
||||||
$ret .= '<!-- And now the table -->';
|
|
||||||
|
// initialize the modals
|
||||||
|
$ret .= '<script>';
|
||||||
|
$ret .= "document.addEventListener('DOMContentLoaded', function() {";
|
||||||
|
$ret .= "var elems = document.querySelectorAll('.modal');";
|
||||||
|
$ret .= 'var instances = M.Modal.init(elems, {';
|
||||||
|
$ret .= '});';
|
||||||
|
$ret .= '});';
|
||||||
|
$ret .= '</script>';
|
||||||
|
|
||||||
|
$ret .= '<table>';
|
||||||
foreach ($eventList as $event) {
|
foreach ($eventList as $event) {
|
||||||
$ret .= $event->htmlTableRow();
|
$ret .= $event->htmlTableRow();
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user