public function setUserMessageDetails()
 {
     $setMessageUsersDetails = array();
     $setMessageUsersDetails['hasErrors'] = true;
     $setMessageUsersDetails['message'] = '';
     $setMessageUsersDetails['data'] = '';
     if (!count($_POST)) {
         $setMessageUsersDetails['message'] = 'No User and recipient details submitted.';
     } else {
         //$input = Input::all();
         $input = Common::formXssClean();
         $rules = array('user_first_name' => array('Required', 'Regex:/[\\p{L}][\\p{L}\\- ]+/u', 'Max:50'), 'user_last_name' => array('Required', 'Regex:/[\\p{L}][\\p{L}\\- ]+/u', 'Max:50'), 'user_email' => 'Required|Email');
         $messages = array('user_first_name.required' => "You need to tell us your name", 'user_last_name.required' => "You need to tell us your surname", 'user_email.required' => "You need to give us your email", 'user_email.email' => "Check your email's correct");
         $validator = Validator::make($input, $rules, $messages);
         if ($validator->fails()) {
             $setMessageUsersDetails['data'] = $validator->messages()->toArray();
             $setMessageUsersDetails['message'] = 'Details not submitted.';
         } else {
             // Check if User already exist in our database
             $user = UserDetail::whereEmail($input['user_email'])->first();
             // Create new User details if not
             if (empty($user)) {
                 $user = new UserDetail();
             }
             // Update the User details provided by the submitted data
             $user->email = $input['user_email'];
             $user->name = $input['user_first_name'] . ' ' . $input['user_last_name'];
             $user->first_name = $input['user_first_name'];
             $user->last_name = $input['user_last_name'];
             $user->email_optin = $input['email_optin'];
             // Save the database
             $user->save();
             $setMessageUsersDetails['data']['user'] = $user->toArray();
             $setMessageUsersDetails['message'] = 'User Details successfully submitted.';
             // Create new Message details in the database
             $message = new MessageDetail();
             // Get User for new Message
             $storedUser = $user->toArray();
             // Associate User with new Message
             $message->user_id = $storedUser['id'];
             // save Message in database
             $message->message = $input['message'];
             // Save the database
             $message->save();
             // Return json response
             $setMessageUsersDetails['hasErrors'] = false;
             $setMessageUsersDetails['data']['message'] = $message->toArray();
             $setMessageUsersDetails['message'] .= 'Details successfully submitted.';
         }
     }
     if (Request::ajax()) {
         return Response::json($setMessageUsersDetails);
     } else {
         $page_details = array('title' => 'Laravel home', 'meta_description' => 'Laravel Skeleton description home', 'meta_keywords' => 'Laravel Skeleton keywords home', 'pageURL' => '/', 'twitter_description' => 'Laravel Skeleton twitter description home', 'fb_description' => 'Laravel Skeleton fb description home');
         $current_page_details = Common::setPageDetails($page_details);
         return View::make('layouts/default')->with('template', 'home')->with('page_details', $current_page_details)->with('response_data', $setMessageUsersDetails);
     }
 }
 /**
  * Return the view for the showMessage page
  *
  * @return void
  */
 public function showMessage($message_id = 0)
 {
     $page_details = array('title' => 'Laravel home', 'meta_description' => 'Laravel Skeleton description home', 'meta_keywords' => 'Laravel Skeleton keywords home', 'pageURL' => '/', 'twitter_description' => 'Laravel Skeleton twitter description home', 'fb_description' => 'Laravel Skeleton fb description home');
     $current_page_details = Common::setPageDetails($page_details);
     // Redirect back to home page if the Message id is not given
     if (!$message_id) {
         return Redirect::to('/');
     }
     // Get Message details and Redirect back to home page if Message doesn't exist
     $message = MessageDetail::whereId($message_id)->first();
     if (!$message) {
         return Redirect::to('/');
     }
     // Get User details and Redirect back to home page if User doesn't exist
     $user = UserDetail::whereId($message->user_id)->first();
     if (!$user) {
         return Redirect::to('/');
     }
     // Return the rendered template with the variables passed
     return View::make('layouts/default')->with('template', 'submitted-data')->with('page_details', $current_page_details)->with('response_data', $message->getAttributes())->with('user', $user->getAttributes());
 }
 public function findUserDetailByEmpCode($emp_code = null)
 {
     //function to find all company name
     App::import("Model", "UserDetail");
     $model = new UserDetail();
     $query = $model->find('all', array('fields' => array('user_name', 'email'), 'conditions' => array('UserDetail.emp_code' => $emp_code)));
     if (empty($query)) {
         return 0;
     } else {
         return $query;
     }
 }
 public function actionIndex()
 {
     $user = Yii::app()->user->data();
     $user_addresses = $user->addresses;
     $user_details = $user->details;
     $newaddress = null;
     $newdetail = null;
     $model = new AccountForm();
     $current_address = null;
     if (count($user_addresses) > 0) {
         $current_address = end($user_addresses);
     }
     if (!$user_details) {
         $user_details = new UserDetail();
         $user_details->id_user = $user->id;
         $user_details->save();
     }
     $request = Yii::app()->request;
     $formData = $request->getPost(get_class($model), false);
     if ($formData) {
         $model->attributes = $formData;
         if ($model->hasErrors()) {
             Yii::app()->user->setFlash('error', Yii::t('translation', 'Save failed'));
         } else {
             $newaddress = new Address();
             $newaddress->attributes = $formData;
             $newaddress->id_user = $user->id;
             $newdetail = new UserDetail();
             $newdetail->name = $formData['name'];
             $newdetail->fiatcode = $formData['fiatcode'];
             $newdetail->timezone = $formData['timezone'];
             $newdetail->company = $formData['company'];
             $newdetail->countrycode = $formData['countrycode'];
             $newdetail->id_user = $user->id;
             $address_update = false;
             if ($current_address) {
                 if ($current_address->compare($newaddress, array('line1', 'line2', 'region', 'city', 'postcode', 'countrycode')) > 0) {
                     $address_update = true;
                 }
             }
             if ($address_update || !$current_address) {
                 if (!$newaddress->save()) {
                     Yii::log($this->dump_to_string($newdetail->errors), 'error');
                     Yii::app()->user->setFlash('error', Yii::t('translation', 'Save failed'));
                     return;
                 } else {
                     $user_addresses[] = $current_address;
                     Yii::app()->user->setFlash('success', Yii::t('translation', 'Information updated'));
                     $current_address = null;
                     if (count($user_addresses) > 0) {
                         $current_address = end($user_addresses);
                     }
                 }
             }
             $detail_update = false;
             if ($user_details->compare($newdetail, array('name', 'fiatcode', 'company')) > 0) {
                 $detail_update = true;
             }
             if ($detail_update || !$user_details) {
                 if (!$newdetail->save()) {
                     Yii::log($this->dump_to_string($newdetail->errors), 'error');
                     Yii::app()->user->setFlash('error', Yii::t('translation', 'Save failed' . $this->dump_to_string($newdetail->errors)));
                 } else {
                     $user->details->name = $newdetail->name;
                     $user->details->company = $newdetail->company;
                     $user->details->fiatcode = $newdetail->fiatcode;
                     $user->details->timezone = $newdetail->timezone;
                     $user->details->save();
                     Yii::app()->user->setFlash('success', Yii::t('translation', 'Information updated'));
                 }
             }
         }
         $user_details = $user->details;
     }
     $model->name = $user->name;
     $model->email = $user->email;
     if ($current_address) {
         $model->line1 = $current_address->line1;
         $model->line2 = $current_address->line2;
         $model->city = $current_address->city;
         $model->postcode = $current_address->postcode;
         $model->countrycode = $current_address->countrycode;
     }
     if ($user_details) {
         $model->name = $user_details->name;
         $model->fiatcode = $user_details->fiatcode;
         $model->timezone = $user_details->timezone;
         $model->company = $user_details->company;
     }
     $this->render('index', array('user' => $user, 'model' => $model));
 }
Exemple #5
0
 /**
  * Constructor
  *
  * @param string $id ID
  * @param string $table Table
  * @param string $ds Datasource
  */
 public function __construct($id = false, $table = null, $ds = null)
 {
     parent::__construct($id, $table, $ds);
 }
 /**
  * getUserDetails  Adds user details to a user object
  * @param  [array] $user A user
  * @return [array]       A user with user details
  */
 private function getUserDetails(&$user)
 {
     $user_details = UserDetail::where('user_id', $user['id'])->limit(1)->get()->toArray();
     $user["user_info"] = $user_details[0];
     return $user;
 }
 private function check_password_expired($user)
 {
     $last_password_change = UserDetail::select('last_password_change')->where('user_id', $user->id)->get()->toArray()[0]['last_password_change'];
     $last_password_change = strtotime($last_password_change);
     $days = floor(abs($last_password_change - time()) / 60 / 60 / 24);
     // Check if last password update was more than 180 days ago
     if ($days > 180) {
         Session::put('password_expired', 'true');
     }
 }
 public function setUserDetails()
 {
     $setUserDetails = array();
     $setUserDetails['hasErrors'] = true;
     $setUserDetails['message'] = '';
     $setUserDetails['data'] = '';
     if (!count($_POST)) {
         $setUserDetails['message'] = 'No details submitted.';
     } else {
         $rules = array('picture' => 'Required|Mimes:jpeg|Max:2048', 'image_title' => array('Required', 'Regex:/[\\p{L}\\-_ 0-9]+/u', 'Max:150'), 'user_first_name' => array('Required', 'Regex:/[\\p{L}][\\p{L}\\- ]+/u', 'Max:50'), 'user_last_name' => array('Required', 'Regex:/[\\p{L}][\\p{L}\\- ]+/u', 'Max:50'), 'user_email' => 'Required|Email|Unique:user_details,email');
         $messages = array('picture.mimes' => "Sorry - our systems don't recognise the type of file you've uploaded. Please have another go with a jpg file", 'picture.max' => "Sorry - the file you've tried to upload is too big for our systems! Please have another go with a smaller jpg", 'image_title.required' => "Oops, your image doesn't have a title", 'user_first_name.required' => "You need to tell us your name", 'user_last_name.required' => "You need to tell us your surname", 'user_email.required' => "You need to give us your email", 'user_email.email' => "The provided email is not in a valid format", 'user_email.unique' => "The provided email is already being used", 'user_age_optin.required' => "You must be over 18 years of age");
         $input = Common::formXssClean();
         $validator = Validator::make($input, $rules, $messages);
         if ($validator->fails()) {
             $setUserDetails['data'] = $validator->messages()->toArray();
             $setUserDetails['message'] = 'Details not submitted.';
         } else {
             // Check if User already exist in our database
             $user = UserDetail::whereEmail($input['user_email'])->first();
             // Create new User details if not
             if (empty($user)) {
                 $user = new UserDetail();
             }
             // Update the User details provided by the submitted data
             $user->title = $input['user_title'];
             $user->email = $input['user_email'];
             $user->first_name = $input['user_first_name'];
             $user->last_name = $input['user_last_name'];
             $user->last_name = $input['user_last_name'];
             $user->email_optin = $input['email_optin'];
             // Save the user to database
             $user->save();
             // Process the uploaded image
             $uploadedImagePath = null;
             if (Input::has('picture')) {
                 $uploadedImagePath = Image::HandleImageUpload($input['picture']);
             }
             // Create the new user message
             $message_details = new MessageDetail();
             // Update the Message details provided by the submitted data
             $message_details->user_id = $user->id;
             $message_details->filename = $uploadedImagePath;
             $message_details->title = $input['image_title'];
             $message_details->status = 'draft';
             $message_details->winner = 'no';
             $message_details->message = $input['message'];
             // Save the Message details to database
             $user->save();
             // Send data to a third party data gathering service
             //$traction_added = Persil::post_traction_data($input, $this->url, $this->password);
             $setUserDetails['hasErrors'] = false;
             $setUserDetails['data'] = $user->toArray();
             $setUserDetails['message'] = 'Details successfully submitted.';
             $setUserDetails['data']['user_count'] = UserDetail::get_user_count();
             $setUserDetails['data']['fb_share_img_url'] = false;
             // If new user has been created generate the tshirt
             if ($setUserDetails['data']['id'] > 0) {
                 $setUserDetails['data']['fb_share_img_url'] = Image::generateShirt('uploads/tshirt.jpg', $user->last_name, $setUserDetails['data']['id']);
             }
             /*
              if(!$setUserDetails['data']['fb_share_img_url']){
              $setUserDetails['data']['fb_share_img_url'] = '/images/favicons/logo_media.jpg';
              }
             */
         }
     }
     if (Request::ajax()) {
         return Response::json($setUserDetails);
     } else {
         $page_details = array('pageURL' => '/');
         $current_page_details = Common::setPageDetails($page_details);
         return View::make('layouts/default')->with('template', 'index')->with('page_details', $current_page_details)->with('submit_data', $input)->with('response_data', $setUserDetails);
     }
 }