2020-06-03 15:31:18 +00:00
< ? php
2021-01-08 01:00:03 +00:00
$statement = $RUNTIME [ 'PDO' ] -> prepare ( " CREATE TABLE IF NOT EXISTS `iarstates` (`userID` VARCHAR(36) NOT NULL COLLATE 'utf8_unicode_ci', `filesize` INT(11) NOT NULL, `iarfilename` VARCHAR(64) NOT NULL COLLATE 'utf8_unicode_ci', PRIMARY KEY (`userID`) USING BTREE) COLLATE='utf8_unicode_ci' ENGINE=InnoDB; " );
$statement -> execute ();
2020-08-04 09:44:59 +00:00
$HTML -> setHTMLTitle ( " Dein Profile " );
$HTML -> importSeitenInhalt ( " pages/HTML/profile.html " );
2020-06-03 15:31:18 +00:00
2021-01-08 01:00:03 +00:00
//Prüfe ob IAR grade erstellt wird.
$IARRUNNING = FALSE ;
$statementIARCheck = $RUNTIME [ 'PDO' ] -> prepare ( 'SELECT * FROM iarstates WHERE userID =:userID' );
$statementIARCheck -> execute ([ 'userID' => $_SESSION [ 'UUID' ]]);
if ( $statementIARCheck -> rowCount () != 0 )
{
$HTML -> ReplaceSeitenInhalt ( " %%IARINFOMESSAGE%% " , '<div class="alert alert-danger" role="alert">Aktuell wird eine IAR erstellt.<br>Warte bitte bis du eine E-Mail bekommst.</div>' );
$HTML -> ReplaceSeitenInhalt ( " %%IARBUTTONSTATE%% " , 'disabled' );
$IARRUNNING = TRUE ;
}
if ( isset ( $_REQUEST [ 'createIAR' ]))
{
$iarname = md5 ( time () . $_SESSION [ 'UUID' ] . rand ()) . " .iar " ;
$APIURL = $RUNTIME [ 'SIDOMAN' ][ 'URL' ] . " api.php?CONTAINER= " . $RUNTIME [ 'SIDOMAN' ][ 'CONTAINER' ] . " &KEY= " . $RUNTIME [ 'SIDOMAN' ][ 'PASSWORD' ] . " &METODE=COMMAND&COMMAND= " . urlencode ( " save iar " . $_SESSION [ 'FIRSTNAME' ] . " " . $_SESSION [ 'LASTNAME' ] . " /* PASSWORD /downloads/ " . $iarname );
$APIResult = file_get_contents ( $APIURL );
if ( trim ( $APIResult ) == " DONE " )
{
$HTML -> ReplaceSeitenInhalt ( " %%IARINFOMESSAGE%% " , '<div class="alert alert-danger" role="alert">Deine IAR wird jetzt erstellt und der Download Link wird dir per E-Mail zugesendet. ' . $APIResult . '</div>' );
$statementIARSTART = $RUNTIME [ 'PDO' ] -> prepare ( 'INSERT INTO iarstates (userID, filesize, iarfilename) VALUES (:userID, :filesize, :iarfilename)' );
$statementIARSTART -> execute ([ 'userID' => $_SESSION [ 'UUID' ], 'filesize' => 0 , 'iarfilename' => $iarname ]);
} else {
$HTML -> ReplaceSeitenInhalt ( " %%IARINFOMESSAGE%% " , '<div class="alert alert-danger" role="alert">Es ist etwas schiefgelaufen, bitte warte etwas und versuche es erneut. ' . $APIURL . '</div>' );
}
}
2020-06-03 15:31:18 +00:00
if ( isset ( $_REQUEST [ 'formInputFeldVorname' ]) || @ $_REQUEST [ 'formInputFeldVorname' ] != " " )
{
$NewFirstName = trim ( $_REQUEST [ 'formInputFeldVorname' ]);
if ( $NewFirstName != " " )
{
if ( $_SESSION [ 'FIRSTNAME' ] != $NewFirstName )
{
$statement = $RUNTIME [ 'PDO' ] -> prepare ( 'UPDATE UserAccounts SET FirstName = :FirstName WHERE PrincipalID = :PrincipalID' );
$statement -> execute ([ 'FirstName' => $NewFirstName , 'PrincipalID' => $_SESSION [ 'UUID' ]]);
$_SESSION [ 'FIRSTNAME' ] = $NewFirstName ;
$_SESSION [ 'USERNAME' ] = $_SESSION [ 'FIRSTNAME' ] . " " . $_SESSION [ 'LASTNAME' ];
$_SESSION [ 'DISPLAYNAME' ] = strtoupper ( $_SESSION [ 'USERNAME' ]);
}
}
}
if ( isset ( $_REQUEST [ 'formInputFeldNachname' ]) || @ $_REQUEST [ 'formInputFeldNachname' ] != " " )
{
$NewLastName = trim ( $_REQUEST [ 'formInputFeldNachname' ]);
if ( $NewLastName != " " )
{
if ( $_SESSION [ 'LASTNAME' ] != $NewLastName )
{
$statement = $RUNTIME [ 'PDO' ] -> prepare ( 'UPDATE UserAccounts SET LastName = :LastName WHERE PrincipalID = :PrincipalID' );
$statement -> execute ([ 'LastName' => $NewLastName , 'PrincipalID' => $_SESSION [ 'UUID' ]]);
$_SESSION [ 'LASTNAME' ] = $NewLastName ;
$_SESSION [ 'USERNAME' ] = $_SESSION [ 'FIRSTNAME' ] . " " . $_SESSION [ 'LASTNAME' ];
$_SESSION [ 'DISPLAYNAME' ] = strtoupper ( $_SESSION [ 'USERNAME' ]);
}
}
}
if ( isset ( $_REQUEST [ 'formInputFeldEMail' ]) || @ $_REQUEST [ 'formInputFeldEMail' ] != " " )
{
$NewEMail = trim ( $_REQUEST [ 'formInputFeldEMail' ]);
if ( $NewEMail != " " )
{
if ( $_SESSION [ 'EMAIL' ] != $NewEMail )
{
$statement = $RUNTIME [ 'PDO' ] -> prepare ( 'UPDATE UserAccounts SET Email = :Email WHERE PrincipalID = :PrincipalID' );
$statement -> execute ([ 'Email' => $NewEMail , 'PrincipalID' => $_SESSION [ 'UUID' ]]);
$statement = $RUNTIME [ 'PDO' ] -> prepare ( 'UPDATE usersettings SET email = :Email WHERE useruuid = :PrincipalID' );
$statement -> execute ([ 'Email' => $NewEMail , 'PrincipalID' => $_SESSION [ 'UUID' ]]);
$_SESSION [ 'EMAIL' ] = $NewEMail ;
}
}
}
if ( isset ( $_REQUEST [ 'formInputFeldOfflineIM' ]) || @ $_REQUEST [ 'formInputFeldOfflineIM' ] != " " )
{
$NewOfflineIM = trim ( $_REQUEST [ 'formInputFeldOfflineIM' ]);
if ( $NewOfflineIM != " " )
{
if ( $NewOfflineIM == " on " || $NewOfflineIM == " true " )
{
$statement = $RUNTIME [ 'PDO' ] -> prepare ( 'UPDATE usersettings SET imviaemail = :IMState WHERE useruuid = :PrincipalID' );
$statement -> execute ([ 'IMState' => 'true' , 'PrincipalID' => $_SESSION [ 'UUID' ]]);
}
}
} else if ( ! isset ( $_REQUEST [ 'formInputFeldOfflineIM' ]) && isset ( $_REQUEST [ 'saveProfileData' ])){
$statement = $RUNTIME [ 'PDO' ] -> prepare ( 'UPDATE usersettings SET imviaemail = :IMState WHERE useruuid = :PrincipalID' );
$statement -> execute ([ 'IMState' => 'false' , 'PrincipalID' => $_SESSION [ 'UUID' ]]);
}
if ( isset ( $_REQUEST [ 'formInputFeldPartnerName' ]) || @ $_REQUEST [ 'formInputFeldPartnerName' ] != " " )
{
$NewPartner = trim ( $_REQUEST [ 'formInputFeldPartnerName' ]);
$CurrentPartner = $RUNTIME [ 'OPENSIM' ] -> getPartner ( $_SESSION [ 'UUID' ]);
if ( $CurrentPartner != " " ) $CurrentPartner = $RUNTIME [ 'OPENSIM' ] -> getUserName ( $CurrentPartner );
if ( $NewPartner != " " )
{
if ( $CurrentPartner != $NewPartner )
{
$newPartnerUUID = $RUNTIME [ 'OPENSIM' ] -> getUserUUID ( $NewPartner );
if ( $newPartnerUUID != null )
{
$statement = $RUNTIME [ 'PDO' ] -> prepare ( 'UPDATE userprofile SET profilePartner = :profilePartner WHERE useruuid = :PrincipalID' );
$statement -> execute ([ 'profilePartner' => $newPartnerUUID , 'PrincipalID' => $_SESSION [ 'UUID' ]]);
}
}
} else {
$statement = $RUNTIME [ 'PDO' ] -> prepare ( 'UPDATE userprofile SET profilePartner = :profilePartner WHERE useruuid = :PrincipalID' );
$statement -> execute ([ 'profilePartner' => '00000000-0000-0000-0000-000000000000' , 'PrincipalID' => $_SESSION [ 'UUID' ]]);
}
}
$statementLocalUsers = $RUNTIME [ 'PDO' ] -> prepare ( " SELECT * FROM UserAccounts ORDER BY PrincipalID ASC " );
$statementLocalUsers -> execute ();
$allUsers = " " ;
while ( $row = $statementLocalUsers -> fetch ())
{
$name = '"' .@ $row [ 'FirstName' ] . " " .@ $row [ 'LastName' ] . '"' ;
if ( $allUsers != " " )
{
$allUsers .= " , " . $name ;
} else {
$allUsers .= $name ;
}
}
$allUsers .= '," "' ;
$PartnerUUID = $RUNTIME [ 'OPENSIM' ] -> getPartner ( $_SESSION [ 'UUID' ]);
$PartnerName = " " ;
if ( $PartnerUUID != null ) $PartnerName = $RUNTIME [ 'OPENSIM' ] -> getUserName ( $PartnerUUID );
if ( $RUNTIME [ 'OPENSIM' ] -> allowOfflineIM ( $_SESSION [ 'UUID' ]) == " TRUE " ) $HTML -> ReplaceSeitenInhalt ( " %%offlineIMSTATE%% " , ' checked' );
$HTML -> ReplaceSeitenInhalt ( " %%offlineIMSTATE%% " , ' ' );
$HTML -> ReplaceSeitenInhalt ( " %%firstname%% " , $_SESSION [ 'FIRSTNAME' ]);
$HTML -> ReplaceSeitenInhalt ( " %%lastname%% " , $_SESSION [ 'LASTNAME' ]);
$HTML -> ReplaceSeitenInhalt ( " %%partner%% " , $PartnerName );
$HTML -> ReplaceSeitenInhalt ( " %%email%% " , $RUNTIME [ 'OPENSIM' ] -> getUserMail ( $_SESSION [ 'UUID' ]));
2020-08-04 10:08:41 +00:00
$HTML -> ReplaceSeitenInhalt ( " %%listAllResidentsAsJSArray%% " , " " );
2020-08-04 10:00:38 +00:00
$HTML -> ReplaceSeitenInhalt ( " %%INFOMESSAGE%% " , ' ' );
2021-01-08 01:00:03 +00:00
$HTML -> ReplaceSeitenInhalt ( " %%IARINFOMESSAGE%% " , ' ' );
$HTML -> ReplaceSeitenInhalt ( " %%IARBUTTONSTATE%% " , '' );
2020-08-04 10:00:38 +00:00
2020-06-03 15:31:18 +00:00
$HTML -> build ();
echo $HTML -> ausgabe ();
?>