Registrierung fertig

This commit is contained in:
Holger Trampe 2021-09-16 14:44:08 +02:00
parent c175e22b1d
commit 99472ddaff
5 changed files with 34 additions and 15 deletions

BIN
.DS_Store vendored

Binary file not shown.

View File

@ -65,7 +65,7 @@ function addTMDiv(){
responsedata = JSON.parse(response);
$("#actualTime").html(responsedata['actualtime']);
// No workday found
if(responsedata['workdaydata_workday'] == 0){
if(responsedata['workdaydata_workday'] == 0 || response == false){
starttime_view = false;
startbreaktime_view = false;
isbreak = false;
@ -284,4 +284,8 @@ function realTimeBreakClock(){
$("#realtimeclock_break").html(convertMS(startbreaktime_view));
}
var html_content = '<style>.arrow-up {position: absolute; left:150px; top: -10px; width: 0; display: none; height: 0; border-left: 15px solid transparent;border-right: 15px solid transparent;border-bottom: 15px solid red;}</style><div class="arrow-up"></div><div id="td_content" style="display: none";><style>hr.hr_style { border: 1px solid #dadada; margin: 10px; }</style><div id="activeDay" style="display: none;"><span id="worktime"><h3>Heutiger Arbeitstag</h3><h2 id="realtimeclock">00:00</h2><hr class="hr_style"></span><span id="breaktimeclock" style="display: none"><h3>Aktuelle Pause</h3><h2 id="realtimeclock_break">00:00</h2><hr class="hr_style"></span><span><button type="button" id="end_break" class="btn btn-success" style="display: none;">Pause Ende</i></button><button type="button" id="start_break" class="btn btn-primary">Pause</button><button type="button" id="end_workday" class="btn btn-secondary">Arbeitstag beenden</button></span><hr class="hr_style">Arbeitsbeginn: <span id="starttime">00:00:00</span><br /> Arbeitsende: <span id="endtime">00:00:00</span><br />Pausenzeit: <span id="breaksum">00:00:00</span></div><div id="start_workday"><hr class="hr_style"><button type="button" id="startWorkDay" class="btn btn-success">Arbeitstag starten</button><hr class="hr_style">Gleitzeitkonto: <b><span id="actualTime">00:00</span>&nbsp;Stunden</b></div></div><style> .loader {border: 3px solid #f3f3f3; /* Light grey */border-top: 3px solid grey; border-radius: 50%;width: 30px;height: 30px;animation: spin 1s linear infinite;}@keyframes spin {0% { transform: rotate(0deg); }100% { transform: rotate(360deg); }}</style><div id="loader" class="loader" style="margin: auto; margin-top: 18%; "></div>';
var html_content = '<style>.arrow-up {position: absolute; left:150px; top: -10px; width: 0; display: none; height: 0; border-left: 15px solid transparent;border-right: 15px solid transparent;border-bottom: 15px solid red;}</style><div class="arrow-up"></div><div id="td_content" style="display: none";><style>hr.hr_style { border: 1px solid #dadada; margin: 10px; }</style><div id="activeDay" style="display: none;"><span id="worktime"><h3>Heutiger Arbeitstag</h3><h2 id="realtimeclock">00:00</h2><hr class="hr_style"></span><span id="breaktimeclock" style="display: none"><h3>Aktuelle Pause</h3><h2 id="realtimeclock_break">00:00</h2><hr class="hr_style"></span><span><button type="button" id="end_break" class="btn btn-success" style="display: none;">Pause Ende</i></button><button type="button" id="start_break" class="btn btn-primary">Pause</button><button type="button" id="end_workday" class="btn btn-secondary">Arbeitstag beenden</button></span><hr class="hr_style">Arbeitsbeginn: <span id="starttime">00:00:00</span><br /> Arbeitsende: <span id="endtime">00:00:00</span><br />Pausenzeit: <span id="breaksum">00:00:00</span></div><div id="start_workday"><hr class="hr_style"><button type="button" id="startWorkDay" class="btn btn-success">Arbeitstag starten</button><hr class="hr_style">Gleitzeitkonto: <b><span id="actualTime">00:00</span>&nbsp;Stunden</b></div></div><style> .loader {border: 3px solid #f3f3f3; /* Light grey */border-top: 3px solid grey; border-radius: 50%;width: 30px;height: 30px;animation: spin 1s linear infinite;}@keyframes spin {0% { transform: rotate(0deg); }100% { transform: rotate(360deg); }}</style><div id="loader" class="loader" style="margin: auto; margin-top: 18%; "></div>';

View File

@ -22,14 +22,15 @@ class Application extends App {
public function __construct() {
parent::__construct($this->AppName);
$dispatcher = $this->getContainer()->query(IEventDispatcher::class);
# Adding the Pre-Logout-Event for logging a User out of Django when user is atempt to logout from the cloud
$dispatcher->addServiceListener(BeforeUserLoggedOutEvent::class, LogoutByNC::class);
# ADding the Event, that User has Changed - update the logged User by Django. Works only by personal informations of the User!
# Adding the Event, that User has Changed - update the logged User by Django. Works only by personal informations of the User!
$dispatcher->addServiceListener(UserChangedEvent::class, UserChangedByNC::class);
# Checking, if a user logged in in Django and which user is logged in in Django.
$dispatcher->addServiceListener(BeforeTemplateRenderedEvent::class, LoginByNC::class);
@ -148,8 +149,10 @@ class UserChangedByNC extends Controller {
"verify_peer_name"=>false,
),
];
$context = stream_context_create($opts);
$file = file_get_contents($this->nclink.'/api/uschanged/'.$this->session->getUser()->getUID().'/'.$this->request->getCookie('nc_session_id'), false, $context);
if($this->session->getUser() != null){
$context = stream_context_create($opts);
$file = file_get_contents($this->nclink.'/api/uschanged/'.$this->session->getUser()->getUID().'/'.$this->request->getCookie('nc_session_id'), false, $context);
}
}
}

View File

@ -136,6 +136,7 @@ class PageController extends Controller {
/**
* @NoCSRFRequired
* @NoAdminRequired
*
* Gibt alle notwendigen Daten zurück für die Zeiterfassung
*/

View File

@ -36,15 +36,26 @@ class PublicController extends OCSController {
*
* @NoCSRFRequired
*/
public function createGroupFolder(string $gid, string $aid): DataResponse{
$folderManager = new FolderManager($this->connection, $this->groupManager);
$newFolderIdAG = $folderManager->createFolder('Agenturdaten_'.$aid);
## Hinzufügen der Mitarbeitergruppe der entsprechenden Agentur
$folderManager->addApplicableGroup($newFolderIdAG, $gid);
$folderManager->setGroupPermissions($newFolderIdAG, $gid, '31');
## Hinzufügen der Admingruppe, damit die weitere Dateien und Ordneraktionen bei der #Migration klappen
$folderManager->addApplicableGroup($newFolderIdAG, "admin");
$folderManager->setGroupPermissions($newFolderIdAG, "admin", '31');
public function createGroupFolder(string $gid, string $aid, bool $newagency=false): DataResponse{
if($newagency == false){
$folderManager = new FolderManager($this->connection, $this->groupManager);
$newFolderIdAG = $folderManager->createFolder('Agenturdaten_'.$aid);
## Hinzufügen der Mitarbeitergruppe der entsprechenden Agentur
$folderManager->addApplicableGroup($newFolderIdAG, $gid);
$folderManager->setGroupPermissions($newFolderIdAG, $gid, '31');
## Hinzufügen der Admingruppe, damit die weitere Dateien und Ordneraktionen bei der #Migration klappen
$folderManager->addApplicableGroup($newFolderIdAG, "admin");
$folderManager->setGroupPermissions($newFolderIdAG, "admin", '31');
}
// Groupfolder, when a new Agency is registered
else{
$folderManager = new FolderManager($this->connection, $this->groupManager);
$newFolderIdAG = $folderManager->createFolder('Agenturdaten');
## Hinzufügen der Mitarbeitergruppe der entsprechenden Agentur
$folderManager->addApplicableGroup($newFolderIdAG, $gid);
$folderManager->setGroupPermissions($newFolderIdAG, $gid, '31');
}
return new DataResponse(array("status" => $aid));
}