Changeset 52


Ignore:
Timestamp:
10/28/07 10:06:36 (6 years ago)
Author:
Lantash
Message:

Turned php class "User" into a singleton.

Make use of SecureSession? on authenticating user.

Location:
trunk
Files:
3 edited

Legend:

Unmodified
Added
Removed
  • trunk/server.common.php

    r46 r52  
    2222 
    2323$database = new DatabaseConnection(); 
    24 $user = new User(); 
    2524 
    2625function generateRandomString($size = 32) { 
  • trunk/server.service.php

    r46 r52  
    3333 
    3434function gettasks($start = 0, $end = 0) { 
    35         global $database, $user; 
     35        global $database; 
     36         
     37        $user = User::getInstance(); 
    3638     
    3739    // Wurde kein Beginn des Zeitrahmens angegeben, wird der aktuelle Tag eingesetzt 
     
    106108 
    107109function removetask($taskid) { 
    108     global $database, $user; 
     110    global $database; 
     111     
     112    $user = User::getInstance(); 
    109113     
    110114    if (!$user->authenticated) { 
     
    128132 
    129133function createtask($subject, $date, $text, $important = false) { 
    130     global $database, $user; 
     134    global $database; 
     135     
     136    $user = User::getInstance(); 
    131137     
    132138    // Prüft, ob der Benuzter angemeldet ist 
     
    161167 
    162168function edittask($id, $date, $text, $important = false) { 
    163     global $database, $user; 
     169    global $database; 
     170     
     171    $user = User::getInstance(); 
    164172     
    165173    // Prüft, ob der Benuzter angemeldet ist 
     
    190198 
    191199function getcomments($taskid) { 
    192     global $database, $user; 
     200    global $database; 
     201     
     202    $user = User::getInstance(); 
    193203     
    194204    $databaseResponse = $database->query("SELECT * FROM comments WHERE taskid = " . mySQLValue($taskid) . " ORDER BY date"); 
     
    228238 
    229239function createcomment($taskid, $text) { 
    230     global $database, $user; 
     240    global $database; 
     241     
     242    $user = User::getInstance(); 
    231243     
    232244    if (!$user->authenticated) { 
     
    251263 
    252264function editcomment($id, $text) { 
    253     global $database, $user; 
     265    global $database; 
     266     
     267    $user = User::getInstance(); 
    254268     
    255269    if (!$text) { 
     
    277291 
    278292function getcontacts() { 
    279     global $database, $user; 
     293    global $database; 
     294     
     295    $user = User::getInstance(); 
    280296     
    281297    $databaseResponse = $database->query("SELECT * FROM users ORDER BY firstname"); 
     
    340356 
    341357function archivefile($id) { 
    342         global $database, $user; 
     358        global $database; 
     359         
     360        $user = User::getInstance(); 
    343361         
    344362    if (!$user->authenticated) { 
     
    373391 
    374392function uploadfile($description) { 
    375         global $database, $user; 
     393        global $database; 
     394         
     395        $user = User::getInstance(); 
    376396         
    377397        $settings = Settings::getInstance(); 
     
    422442 
    423443function signin($nickname, $password) { 
    424         global $user; 
     444        $user = User::getInstance(); 
    425445     
    426446    if (!$user->signIn($nickname, $password)) { 
     
    460480    } 
    461481     
    462     if (!mail($user["mail"], "Neues Klassenbuchpasswort bestätigen", "Hallo " . $user["firstname"] . ",\n\n" . 
    463         "Du hast im Klassenbuch auf www.gymo1c.ch ein neues Passwort angefordert. Klicke auf den foldenden Link, damit dein Passwort endgültig auf \"" . 
    464         "$password\" gewechselt wird. Wenn du kein Passwort angefordert hast, solltest du nicht auf diesen Link klicken, " . 
    465         "sondern diese E-Mail gleich löschen!\n\nhttp://www.gymo1c.ch/index.php?passwordverification=$requestKey\n\nLg, Seve", 
     482    if (!mail($user["mail"], "Neues Klassenbuchpasswort bestätigen", 
     483                "Hallo " . $user["firstname"] . ",\n\n" . 
     484        "Du hast im Klassenbuch auf www.gymo1c.ch ein neues Passwort angefordert. Klicke auf den foldenden Link, " . 
     485        "damit dein Passwort endgültig auf \"$password\" gewechselt wird. Wenn du kein Passwort angefordert hast, " . 
     486        "solltest du nicht auf diesen Link klicken, sondern diese E-Mail gleich löschen!\n\n" . 
     487        $settings->domain . "?passwordverification=$requestKey", 
    466488        "From: Klassenbuch <no-reply@gymo1c.ch>")) { 
    467489        return WebServiceError("invalid_input"); 
     
    499521 
    500522function changepassword($newpassword, $currentpassword) { 
    501         global $database, $user; 
     523        global $database; 
     524         
     525        $user = User::getInstance(); 
    502526         
    503527    if (!$user->authenticated) { 
     
    524548 
    525549function getuserdata() { 
    526         global $user; 
     550        $user = User::getInstance(); 
    527551 
    528552    if (!$user->authenticated) { 
     
    541565 
    542566function updateuserprofile($profileInformation) { 
    543         global $user; 
     567        $user = User::getInstance(); 
    544568         
    545569    if (!$user->authenticated) { 
     
    555579 
    556580function changeusersettings($settings) { 
    557         global $user; 
     581        $user = User::getInstance(); 
    558582         
    559583    if (!$user->authenticated) { 
     
    572596 
    573597function signout() { 
    574     global $user; 
     598    $user = User::getInstance(); 
    575599     
    576600    return $user->signOut(); 
     
    654678 
    655679function gallery_createalbum($name, $description = "") { 
    656     global $database, $user; 
     680    global $database; 
     681     
     682    $user = User::getInstance(); 
    657683         
    658684        $name = trim(smartStripSlashes($name)); 
     
    676702 
    677703function gallery_removealbum($id) { 
    678         global $database, $user; 
     704        global $database; 
     705         
     706        $user = User::getInstance(); 
    679707         
    680708        $id = intval($id); 
     
    694722 
    695723function gallery_downloadalbum($albumid) { 
    696         global $database, $user; 
     724        global $database; 
     725         
     726        $user = User::getInstance(); 
    697727         
    698728        $albumid = intval($albumid); 
     
    774804 
    775805function gallery_uploadpicture($albumid) { 
    776         global $database, $user; 
     806        global $database; 
     807         
     808        $user = User::getInstance(); 
    777809         
    778810    if (!$user->authenticated) { 
     
    846878 
    847879function gallery_rotatepicture($pictureid, $degree) { 
    848         global $user, $database; 
     880        global $database; 
     881         
     882        $user = User::getInstance(); 
    849883         
    850884    $pictureid = intval($pictureid); 
  • trunk/server.user.php

    r24 r52  
    4141        } 
    4242     
    43     public function __construct() { 
     43    private function __construct() { 
    4444                $this->_secureSession = true; 
    4545                $this->authenticated = false; 
     
    7171     
    7272    public function authenticate() { 
    73                 if ($this->authenticated) { 
    74                         return true; 
    75                 } 
    76                  
    77                 if ($this->authenticateBySession()) { 
     73                if ($this->authenticated || 
     74                        $this->authenticateBySession() || 
     75                        $this->authenticateByCookie() || 
     76                        $this->authenticateByJSONRPCRequest() || 
     77                        $this->authenticateByPOSTParams()) { 
    7878                        $this->authenticated = true; 
    7979                        return true; 
    8080                } 
    8181                 
    82                 if ($this->authenticateByCookie()) { 
    83                         $this->authenticated = true; 
    84                         return true; 
    85                 } 
    86                  
    87                 if ($this->authenticateByJSONRPCRequest()) { 
    88                         $this->authenticated = true; 
    89                         return true; 
    90                 } 
    91                  
    92                 if ($this->authenticateByPOSTParams()) { 
    93                         $this->authenticated = true; 
    94                         return true; 
    95                 } 
    96          
    9782        return false; 
    9883    } 
     
    10186                $this->setupSession(); 
    10287                 
    103                 // $this->_secureSession->Check() 
     88                if (!$this->_secureSession->Check()) { 
     89                        return false; 
     90                } 
    10491                 
    10592                return $this->authenticateByToken($_SESSION["userid"], $_SESSION["token"]); 
Note: See TracChangeset for help on using the changeset viewer.