Current File : /home/pacjaorg/public_html/kmm/administrator/components/com_djclassifieds/controllers/profile.php |
<?php
/**
* @package DJ-Classifieds
* @copyright Copyright (C) DJ-Extensions.com, All rights reserved.
* @license http://www.gnu.org/licenses GNU/GPL
* @author url: http://dj-extensions.com
* @author email: contact@dj-extensions.com
*/
defined('_JEXEC') or die;
class DJClassifiedsControllerProfile extends JControllerForm
{
public function save($key = null, $urlVar = null)
{
return parent::save($key, $urlVar);
}
protected function postSaveHook(JModelLegacy $model, $validData = array())
{
$app = JFactory::getApplication();
$db = JFactory::getDBO();
$par = JComponentHelper::getParams('com_djclassifieds');
$id = $model->getItem()->user_id;
// custom plugins support (saving additional columns with no jform wrapper)
$row = JTable::getInstance('Profiles', 'DJClassifiedsTable');
$row->load($id);
$row->bind($app->input->post->getArray());
$row->store();
DJClassifiedsImage::saveImage('profile', $id, $par->get('profile_img_path','/components/com_djclassifieds/images/profile/'), $app->input->files->get('jform')['avatar'], $app->input->get('del_img'), array('th' => array('w' => $par->get('profth_width',120), 'h' => $par->get('profth_height',120)), 'ths' => array('w' => $par->get('prof_smallth_width',50), 'h' => $par->get('prof_smallth_height',50))), 0, $par->get('watermark',0));
$query = "DELETE FROM #__djcf_fields_values_profile WHERE user_id=".$id;
$db->setQuery($query);
$db->execute();
$query = "SELECT * FROM #__djcf_fields WHERE source=2";
$db->setQuery($query);
$fields_list = $db->loadObjectList();
DJClassifiedsField::saveFieldsValues($fields_list, $id);
// ask messages
if(isset($validData['askmessages'])){
$ask_ids_arr = array(0);
foreach($validData['askmessages'] as $am){
$ask_ids_arr[] = $am['askmessage_id'];
}
$query = "DELETE FROM #__djcf_profiles_msg WHERE user_to=".$id." AND id NOT IN (".implode(',', $ask_ids_arr).")";
$db->setQuery($query);
$db->execute();
}
$user = JFactory::getUser($id);
$app->triggerEvent('onAfterAdminDJClassifiedsSaveProfile', array($user));
}
function getProfileFields()
{
header("Content-type: text/html; charset=utf-8");
$app = JFactory::getApplication();
$db = JFactory::getDBO();
$id = $app->input->getInt('user_id', '0');
$query = $db->getQuery(true);
$query->select(array('fv.*', 'f.*'))
->from('#__djcf_fields f')
->join('LEFT', '#__djcf_fields_values_profile fv ON fv.field_id = f.id AND fv.user_id = '.$id)
->where('f.source = 2')
->where('f.published = 1')
->order('f.ordering');
$app->triggerEvent('onDJClassifiedsAdminGetFormFieldsQuery', array(&$query, 'profile'));
$db->setQuery($query);
$fields_list = $db->loadObjectList();
foreach($fields_list as $f){
if($f->user_id === null){
DJClassifiedsField::setFieldDefaultValue($f);
}
echo DJClassifiedsField::renderAdminFormField($f, $id);
}
$app->close();
}
}
?>