From 558c8658bb7acfce1e0d3de673bcdf5870ec73bb Mon Sep 17 00:00:00 2001 From: Ashwin Date Date: Thu, 17 Jul 2014 02:10:19 +0530 Subject: [PATCH] Updated manifest for Joomla 2.5+ and list view refactor --- users/users.xml | 15 ++-- users/users/users.php | 196 ++++++------------------------------------ 2 files changed, 35 insertions(+), 176 deletions(-) diff --git a/users/users.xml b/users/users.xml index 41c31e4..1a4c974 100755 --- a/users/users.xml +++ b/users/users.xml @@ -1,18 +1,17 @@ - + Api - users 1.0 - April 2012 - Tekdi - support@tekdi.com - http://www.tekdi.com - 2012 users + July 2014 + techjoomla + contact@techjoomla.com + http://techjoomla.com + Techjoomla GNU General Public License v2 This plugin exposes users to the Joomla! API users.php - users/users.php users - + diff --git a/users/users/users.php b/users/users/users.php index d945355..ef42bb1 100755 --- a/users/users/users.php +++ b/users/users/users.php @@ -1,186 +1,46 @@ plugin->setResponse( 'in delete' ); + } + public function post() - { - - $error_messages = array(); - $fieldname = array(); - $response = NULL; - $validated = true; - $userid = NULL; - $data = JRequest::get('post'); - //for rest api only - unset($data['format']); - unset($data['resource']); - unset($data['app']); - unset($data['password']); - unset($data['username']); - // - //$userid = $data['userid']; - $fields = $data['field']; - - //chk data - if($data['email']=="" ) - { - $validated = false; - $error_messages[] = array("id"=>1,"fieldname"=>"email","message"=>"Email cannot be blank"); - } elseif( false == $this->isValidEmail( $data['email'] ) ) { - $validated = false; - $error_messages[] = array("id"=>1,"fieldname"=>"email","message"=>"Please set valid email id eg.(example@gmail.com). Check 'email' field in request"); - - }else - { - //check mail is registerd - $isemail =& CFactory::getModel('register'); - $found = $isemail->isEmailExists(array('email'=>$data['email'] )); - if($found) - { - $validated = false; - $error_messages[] = array("id"=>1,"fieldname"=>"email","message"=>"email already exist and user is registered"); - } - } - - if( $data['password1']=="" ) - { - $validated = false; - $error_messages[] = array("id"=>1,"fieldname"=>"password","message"=>"Password cannot be blank"); - } - - if( $data['name']=="" or $data['username1']=="" ) - { - $validated = false; - $error_messages[] = array("id"=>1,"fieldname"=>"name","message"=>"Name cannot be blank"); - } + { + $this->plugin->setResponse( 'in post' ); + } - if( true == $validated) - { //to create new user for joomla - - global $message; - jimport('joomla.user.helper'); - $authorize = & JFactory::getACL(); - $user = clone(JFactory::getUser()); - $user->set('username', $data['username1']); - $user->set('password', $data['password1'] ); - $user->set('name', $data['name']); - $user->set('email', $data['email']); - - // password encryption - $salt = JUserHelper::genRandomPassword(32); - $crypt = JUserHelper::getCryptedPassword($user->password, $salt); - $user->password = "$crypt:$salt"; - - // user group/type - $user->set('id', ''); - $user->set('usertype', 'Registered'); - if(JVERSION >= '1.6.0') - { - $userConfig = JComponentHelper::getParams('com_users'); - // Default to Registered. - $defaultUserGroup = $userConfig->get('new_usertype', 2); - $user->set('groups', array($defaultUserGroup)); - } - else - $user->set('gid', $authorize->get_group_id( '', 'Registered', 'ARO' )); + public function get() { + $input = JFactory::getApplication()->input; - $date =& JFactory::getDate(); - $user->set('registerDate', $date->toMySQL()); - - // true on success, false otherwise - if(!$user->save()) - { - $message="not created because of ".$user->getError(); - return false; + // If we have an id try to fetch the user + if ($id = $input->get('id')) { + $user = JUser::getInstance($id); + + if (!$user->id) { + $this->plugin->setResponse( $this->getErrorResponse(404, 'User not found') ); + return; } - else - { - $message="created of username-".$user->username." and send mail of details please check"; - - } - //$this->plugin->setResponse($user->id); - $userid = $user->id; - //create profile - $profileModel =& CFactory::getModel('profile'); - $val = $profileModel->saveProfile($userid, $fields); - //result message - $result = array('user id '=>$userid,'message'=>$message); - $result =($userid) ? $result : $message; - - $this->plugin->setResponse($result); - - } - else - { + $this->plugin->setResponse( $user ); + } else { + $model = new UsersModelUsers; + $users = $model->getItems(); + + foreach ($users as $k => $v) { + unset($users[$k]->password); + } - $this->plugin->setResponse($error_messages); + $this->plugin->setResponse( $users ); } - - - - } - - public function put() - { - $data = JRequest::get('post'); - - //for rest api only - unset($data['format']); - unset($data['resource']); - unset($data['app']); - unset($data['password']); - unset($data['username']); - // - $userid = $data['userid']; - $fields = $data['field']; - - print_r($data);die; - - - $this->plugin->setResponse( "in the put method" ); - } - - public function delete() - { - $this->plugin->setResponse( "in the delete method" ); - } - - function isValidEmail( $email ) - { - $pattern = "^[_a-z0-9-]+(\.[_a-z0-9-]+)*@[a-z0-9-]+(\.[a-z0-9-]+)*(\.[a-z]{2,3})$"; - - if ( eregi( $pattern, $email ) ) - { - return true; - } else { - return false; - } } }