Example #1
0
 /**
  * Event method for signin
  * @param $eventControler -- Object
  */
 function eventSignIn(EventControler $eventControler)
 {
     parent::eventSignIn($eventControler);
     if ($eventControler->goto == "i_contacts.php") {
         $this->is_mobile = true;
     }
 }
Example #2
0
 function validateaccount($email, $rand_key_confirm)
 {
     $rand_key = $rand_key_confirm;
     $PDO = Record::getConnection();
     $check_validated = "SELECT * FROM " . TABLE_PREFIX . "user WHERE email='{$email}'";
     $result = $PDO->prepare($check_validated);
     $result->execute();
     $count = $result->rowCount();
     if ($count > 0) {
         $settings = Plugin::getAllSettings("registered_users");
         $met = $settings["message_error_technical"];
         $message_empty_name = $settings["message_empty_name"];
         $message_empty_email = $settings["message_empty_email"];
         $message_empty_username = $settings["message_empty_username"];
         $message_empty_password = $settings["message_empty_password"];
         $message_empty_password_confirm = $settings["message_empty_password_confirm"];
         $message_notvalid_password = $settings["message_notvalid_password"];
         $message_notvalid_username = $settings["message_notvalid_username"];
         $message_notvalid_email = $settings["message_notvalid_email"];
         $message_error_already_validated = $settings["message_error_already_validated"];
         echo $message_error_already_validated;
     } else {
         $today = date('Y-m-d G:i:s');
         $registration_temp = "SELECT * FROM " . TABLE_PREFIX . "registered_users_temp WHERE email='{$email}'";
         foreach ($PDO->query($registration_temp) as $row) {
             $name = $row['name'];
             $email = $row['email'];
             $username = $row['username'];
             $password = $row['password'];
             $rand_key = $row['rand_key'];
             $reg_date = $row['reg_date'];
             $welcome_message = $row['welcome_message'];
             $message_notvalid_password = $row['message_notvalid_password'];
         }
         if ($rand_key_confirm == $rand_key) {
             // Let's transfer the user from the temp table to the user table
             //$update_user_table = "INSERT INTO ".TABLE_PREFIX."user (`id`,`name`,`email`,`username`,`password`,`created_on`,`updated_on`,`created_by_id`,`updated_by_id`) VALUES	('','$name','$email','$username','$password','$reg_date','$today','','');";
             //$stmt = $__CMS_CONN__->prepare($update_user_table);
             //$stmt->execute();
             $user = new User();
             $user->name = $name;
             $user->email = $email;
             $user->username = $username;
             $user->salt = AuthUser::generateSalt();
             $user->password = AuthUser::generateHashedPassword($password, $user->salt);
             $user->created_on = $reg_date;
             $user->updated_on = $today;
             $user->save();
             // We don't need them in the temp table anymore
             $delete_temp_user = "******" . TABLE_PREFIX . "registered_users_temp WHERE email='{$email}'";
             $stmt = $PDO->prepare($delete_temp_user);
             $stmt->execute();
             // And let's make sure we have some permissions set so that user can then do something!
             // First we need the default permssion ID
             $def_permission = Plugin::getSetting("default_permissions", "registered_users");
             // Then we need the correct user ID
             /*$user = "******".TABLE_PREFIX."user WHERE email='$email'";
               foreach ($__CMS_CONN__->query($user) as $row) {
                   $id = $row['id'];
               }*/
             $id = $user->id;
             $set_permissions = "INSERT INTO " . TABLE_PREFIX . "user_role (`user_id`,`role_id`) VALUES ('{$id}','{$permission_id}');";
             $stmt = $PDO->prepare($set_permissions);
             $stmt->execute();
             // We also need to add the profile settings into DB
             $addprofile = "INSERT INTO " . TABLE_PREFIX . "user_profile (`id`,`firstlogin`,`subscribe`,`sysnotifications`,`haspic`,`profile_blurb`) VALUES ({$id},'1','1','1','0','your public profile...');";
             $addprofile = $PDO->prepare($addprofile);
             $addprofile->execute();
             echo $welcome_message;
             $loadloginclass = new RegisteredUser();
             $loadloginclass->login_page();
         } else {
             echo $message_notvalid_password;
         }
     }
 }
Example #3
0
 function ru_reset_page()
 {
     $registered_users_class = new RegisteredUser();
     $reset_page = $registered_users_class->password_reset();
     echo $reset_page;
 }
Example #4
0
//RegisteredUser UNIT TESTS
////////////////////////////////
printf("/////////////////////////////////\n");
printf("STARTING RegisteredUser UNIT TESTS\n");
printf("/////////////////////////////////\n");
$user = new RegisteredUser();
//register new user
$user->register("armand", "abc123", "*****@*****.**", "Armand", "Nokbak", "MS", "Starkville");
unset($user);
//get existing user
$user = new RegisteredUser('armand');
//get existing user data
$email = $user->getEmail();
printf("Armand's email is %s\n", $email);
//get existing user
$user2 = new RegisteredUser("armand5");
//login successful (print true)
$loginSuccess = $user2->login("armand5", "abc123");
if (is_null($loginSuccess)) {
    $pass_fail = "fail";
} else {
    $pass_fail = $loginSuccess;
}
printf("User %s logged in successfully: %s\n", "armand5", $pass_fail);
//login unsuccessful (print false)
$loginSuccess2 = $user2->login("armand5", "abc12");
if (is_null($loginSuccess2)) {
    $pass_fail = "fail";
} else {
    $pass_fail = $loginSuccess2;
}
<?php

/**
 * Generates RegisteredUsers and stores them in the database for testing
 */
const MAX_USERS_TO_GENERATE = 20;
require_once __DIR__ . '/../models/RegisteredUser.php';
if ($_SERVER['REQUEST_METHOD'] != 'POST') {
    echo "This page must be requested using POST.";
    die;
}
$usersToGenerate = filter_input(INPUT_POST, 'usersToGenerate', FILTER_VALIDATE_INT);
if (empty($usersToGenerate) || $usersToGenerate < 1 || $usersToGenerate > MAX_USERS_TO_GENERATE) {
    echo "Number of users to generate must be between 1 and " . MAX_USERS_TO_GENERATE;
    die;
}
const ALPHABET = 'abcdefghijklmnopqrstuvwxyz';
for ($i = 0; $i < $usersToGenerate; $i++) {
    $user = new RegisteredUser();
    $user->displayName = str_shuffle(ALPHABET);
    $user->email = "{$user->displayName}@example.com";
    $user->dateRegistered = date('Y-m-d H:i:s');
    $user->dateLastLoggedIn = date('Y-m-d H:i:s');
    $user->accountEnabled = false;
    $user->admin = false;
    $user->setPassword($user->displayName);
    $user->save();
}
echo "Done.";
Example #6
0
        }
    }
    /**
     * Check if user is activated or not.
     * 
     * @return type bool
     */
    public function checkIfEnabled()
    {
        return $this->accountEnabled;
    }
    public function createVerificationHash()
    {
        $this->verificationHash = md5(rand());
    }
    /**
     * Activate user once they click verification link from email.
     * 
     * @param type $hash
     */
    public function activateUser($hash)
    {
        if ($hash == $this->verificationHash) {
            $this->accountEnabled = true;
        } else {
            echo "Hash did not match.";
        }
    }
}
RegisteredUser::$objects = new RegisteredUserManager('RegisteredUser');
<!DOCTYPE html>
<?php 
/**
 * Testing script for RegisteredUser model
 *
 * @author Ben Saylor
 */
require_once "../models/RegisteredUser.php";
$goodPassword = "******";
$badPassword = "******";
$user = new RegisteredUser();
$user->setPassword($goodPassword);
?>
<html>
    <head>
        <meta charset="UTF-8">
        <title>Test RegisteredUser</title>
    </head>
    <body>
        <h1>Testing checkPassword()</h1>
        <pre>

            <?php 
if ($user->checkPassword($goodPassword)) {
    echo "checkPassword gave goodPassword a thumbs-up -- OK!\n";
} else {
    echo "checkPassword gave goodPassword a thumbs-down -- Not OK!\n";
}
if ($user->checkPassword($badPassword)) {
    echo "checkPassword gave badPassword a thumbs-up -- Not OK!\n";
} else {
Example #8
0
session_name("PAWS_SESSION_ID");
session_start();
require_once __DIR__ . '/../models/RegisteredUser.php';
require_once __DIR__ . '/../models/Message.php';
require_once __DIR__ . '/../messaging/MessagingService.php';
/*
 * Validates entries and stores them in the RegisteredUser model.
 */
if ($_SERVER['REQUEST_METHOD'] != 'POST') {
    echo "This page must be requested using POST.";
    die;
}
// Insterting new user.
if (empty($_POST['id'])) {
    $user = new RegisteredUser();
}
// Making sure all fields are valid.
if (formValidation()) {
    // Saving user to database.
    $user->email = $_POST['email'];
    $user->displayName = $_POST['displayName'];
    $user->dateRegistered = date("Y-m-d H:i:s");
    $user->dateLastLoggedIn = date("Y-m-d H:i:s");
    $user->setPassword($_POST['password']);
    $user->createVerificationHash();
    $user->save();
    // Generating a verification email.
    $message = new Message();
    $message->recipientId = $user->id;
    $message->subject = 'PAWS Signup Verification';
Example #9
0
 /**
  * Get a summary of task timing for a given period
  *
  * @param RegisteredUser $user
  * @param int $taskid
  * @param int $projectid
  * @param int $clientid
  * @param time $start
  * @param time $end
  * @return ArrayObject
  */
 public function getSummaryTimesheet($user = null, $taskid = null, $projectid = null, $clientid = null, $timesheet = -1, $start = null, $end = null)
 {
     $select = $this->dbService->select()->from('task', array(new Zend_Db_Expr('task.title as title'), 'id'))->joinLeft('crmuser', 'task.userid=crmuser.username', 'username')->joinLeft('timesheetrecord', 'task.id=timesheetrecord.taskid', new Zend_Db_Expr('SUM(endtime - starttime) as timespent'));
     $select = $this->filterBaseTimesheetQuery($select, $taskid, $projectid, $clientid, $start, $end);
     // If we weren't passed a user, just load
     // one from the request
     if ($user != null) {
         $select->where('task.userid = ?', $user->getUsername());
     }
     if ($timesheet >= 0) {
         $select->where('timesheetrecord.timesheetid = ?', $timesheet);
     }
     $select->group(new Zend_Db_Expr('task.id'));
     $select->order('endtime DESC');
     $tasks = $this->dbService->fetchObjects('task', $select);
     return $tasks;
 }