コード例 #1
0
ファイル: setdiet.php プロジェクト: smhnaji/sdnet
 /**
  * Method to save the form data.
  *
  * @param   array  $data  The form data.
  *
  * @return  boolean  True on success.
  *
  * @since   1.6
  */
 public function save($data)
 {
     $profileData = $data['profile'];
     // Save the profile data.
     $profileTable = $this->getTable('profile', 'SibdietTable');
     if (!$profileTable->save($profileData)) {
         $this->setError($this->getError());
         return false;
     }
     // Check profile user / Register user
     if (!$profileTable->users_id) {
         if ($userId = SibdietHelper::registerUser($profileTable)) {
             $object = new stdClass();
             $object->id = $profileTable->id;
             $object->users_id = $userId;
             $result = JFactory::getDbo()->updateObject('#__sibdiet_profiles', $object, 'id');
         }
     }
     $data['profiles_id'] = $profileTable->id;
     // Save Setdiet
     if (parent::save($data)) {
         if ($data['profile']['image']) {
             // Process profile image - Upload or Delete
             $imageUpload = SibdietHelper::profileImage($data['profiles_id']);
             if ($imageUpload !== true) {
                 $app->enqueueMessage($imageUpload, 'warning');
             }
         }
         return true;
     }
     return false;
 }
コード例 #2
0
ファイル: profile.php プロジェクト: smhnaji/sdnet
 /**
  * Method to save the form data.
  *
  * @param   array  $data  The form data.
  *
  * @return  boolean  True on success.
  *
  * @since   1.6
  */
 public function save($data)
 {
     // Save Setdiet
     if (parent::save($data)) {
         if ($data['image']) {
             // Process profile image - Upload or Delete
             $imageUpload = SibdietHelper::profileImage($data['id'], '');
             if ($imageUpload !== true) {
                 $app->enqueueMessage($imageUpload, 'warning');
             }
         }
         return true;
     }
     return false;
 }
コード例 #3
0
ファイル: sibdiet.php プロジェクト: smhnaji/sdnet
 /**
  * saves user profile data
  *
  * @param   array    $data    entered user data
  * @param   boolean  $isNew   true if this is a new user
  * @param   boolean  $result  true if saving the user worked
  * @param   string   $error   error message
  *
  * @return bool
  */
 public function onUserAfterSave($data, $isNew, $result, $error)
 {
     // Unset sibdiet profile id for security that user can not set it
     unset($data['sibdiet']['id']);
     $userId = JArrayHelper::getValue($data, 'id', 0, 'int');
     if ($userId && $result && isset($data['sibdiet'])) {
         $data['sibdiet']['users_id'] = $userId;
         try {
             // Sanitize the birthday
             $data['sibdiet']['birthday'] = $this->date;
             $data['sibdiet']['fname'] = trim($data['sibdiet']['fname']);
             $data['sibdiet']['lname'] = trim($data['sibdiet']['lname']);
             $data['sibdiet']['city'] = trim($data['sibdiet']['city']);
             $data['sibdiet']['mobile'] = trim($data['sibdiet']['mobile']);
             // Prepare permissions
             if (JFactory::getUser()->get('isRoot') && JFactory::getApplication()->isAdmin()) {
                 if (isset($data['sibdiet']['permissions'])) {
                     $data['sibdiet']['permissions'] = implode(',', $data['sibdiet']['permissions']);
                 } else {
                     $data['sibdiet']['permissions'] = '';
                 }
             } else {
                 unset($data['sibdiet']['permissions']);
             }
             $object = (object) $data['sibdiet'];
             $db = JFactory::getDbo();
             $query = $db->getQuery(true)->select('id')->from($db->quoteName('#__sibdiet_profiles'))->where($db->quoteName('users_id') . ' = ' . $userId);
             $db->setQuery($query);
             if ($result = $db->loadResult()) {
                 $db->updateObject('#__sibdiet_profiles', $object, 'users_id');
                 $profileID = $result;
             } else {
                 if (empty($object->created_by)) {
                     $object->created_by = $userId;
                 }
                 $object->created = JFactory::getDate()->toSql();
                 $db->insertObject('#__sibdiet_profiles', $object);
                 $profileID = $db->insertid();
             }
             // Process profile image - Upload or Delete
             $imageUpload = SibdietHelper::profileImage($profileID, 'sibdiet');
             if ($imageUpload !== true) {
                 JFactory::getApplication()->enqueueMessage($imageUpload, 'warning');
             }
         } catch (RuntimeException $e) {
             $this->_subject->setError($e->getMessage());
             return false;
         }
     }
     return true;
 }
コード例 #4
0
ファイル: form.php プロジェクト: smhnaji/sdnet
 /**
  * Method to save the form data.
  *
  * @param   array  $data  The form data.
  *
  * @return  boolean  True on success.
  *
  * @since   3.2
  */
 public function save($data)
 {
     $app = JFactory::getApplication();
     $params = JComponentHelper::getParams('com_sibdiet');
     $date = JFactory::getDate();
     $user = JFactory::getUser();
     $db = JFactory::getDbo();
     if (isset($data['profile']) && is_array($data['profile'])) {
         $profile_info = (object) $data['profile'];
         unset($profile_info->image);
     }
     if (isset($data['body']) && is_array($data['body'])) {
         $registry = new JRegistry();
         $registry->loadArray($data['body']);
         $data['body'] = (string) $registry;
     }
     if (isset($data['special']) && is_array($data['special'])) {
         $registry = new JRegistry();
         $registry->loadArray($data['special']);
         $data['special'] = (string) $registry;
     }
     if (isset($data['payment']) && is_array($data['payment'])) {
         // Get the parameters
         $params = JComponentHelper::getParams('com_sibdiet');
         $data['payment']['diet_price'] = $params->get('diet_price');
         if ($data['payment']['payment_type'] == 'ACCELERATION_CARDS') {
             if ($Authority = self::PaymentRequest($data)) {
                 $data['authority'] = $Authority;
                 $this->setState('request.authority', $Authority);
             } else {
                 return false;
             }
         }
         $registry = new JRegistry();
         $registry->loadArray($data['payment']);
         $data['payment'] = (string) $registry;
     }
     $pk = !empty($data['id']) ? $data['id'] : (int) $this->getState('request.id');
     if ($pk > 0) {
         // Check diet exist for the user
         $query = $db->getQuery(true)->select('s.profiles_id')->from('#__sibdiet_setdiets AS s')->join('LEFT', '#__sibdiet_profiles AS p ON s.profiles_id = p.id')->where('s.room1 IS NULL AND s.room2 IS NULL AND s.room3 IS NULL AND s.room4 IS NULL AND s.room5 IS NULL AND s.room6 IS NULL')->where('s.id = ' . $pk)->where('p.users_id = ' . $user->id);
         $db->setQuery($query);
         if ($result = $db->loadResult()) {
             $data['profiles_id'] = $profile_info->id = $result;
             $db->updateObject('#__sibdiet_profiles', $profile_info, 'id');
         }
     } else {
         // Check profile exist for the user
         $query = $db->getQuery(true)->select('id')->from('#__sibdiet_profiles')->where('users_id = ' . $user->id);
         $db->setQuery($query);
         if ($profile_id = $db->loadResult()) {
             $data['profiles_id'] = $profile_info->id = $profile_id;
             $db->updateObject('#__sibdiet_profiles', $profile_info, 'id');
         } else {
             $profile_info->created = $date->toSql();
             $profile_info->created_by = $profile_info->users_id = $user->id;
             $profile_info->email = $user->email;
             if ($db->insertObject('#__sibdiet_profiles', $profile_info, 'id')) {
                 $data['profiles_id'] = $profile_info->id;
             }
         }
         $data['request_way'] = 'frontend';
     }
     if (parent::save($data)) {
         // Process profile image - Upload or Delete
         $imageUpload = SibdietHelper::profileImage($data['profiles_id']);
         if ($imageUpload !== true) {
             $app->enqueueMessage($imageUpload, 'warning');
         }
         return true;
     }
     return false;
 }