Revize 1026
Přidáno uživatelem Michal Kliment před více než 13 roky(ů)
freenetis/branches/testing/application/controllers/users.php | ||
---|---|---|
*/
|
||
function show_by_member($member_id = NULL, $limit_results = 200, $order_by = 'id', $order_by_direction = 'ASC', $page_word = null, $page = 1)
|
||
{
|
||
|
||
if (!isset($member_id))
|
||
{
|
||
Controller::warning(PARAMETER);
|
||
}
|
||
else
|
||
{
|
||
|
||
if(!$this->acl_check_view(get_class($this),'users',$member_id)) Controller::error(ACCESS);
|
||
// bad parameter
|
||
if (!$member_id || !is_numeric($member_id))
|
||
Controller::warning(PARAMETER);
|
||
|
||
$member = new Member_Model($member_id);
|
||
|
||
// member doesn't exist
|
||
if (!$member->id)
|
||
Controller::error(RECORD);
|
||
|
||
// access control
|
||
if(!$this->acl_check_view(get_class($this),'users',$member->id))
|
||
Controller::error(ACCESS);
|
||
|
||
// get new selector
|
||
if (is_numeric($this->input->get('record_per_page'))) $limit_results = (int) $this->input->get('record_per_page');
|
||
|
||
$member = new Member_Model($member_id);
|
||
if (is_numeric($this->input->get('record_per_page')))
|
||
$limit_results = (int) $this->input->get('record_per_page');
|
||
|
||
// parameters control
|
||
$allowed_order_type = array('street', 'street_number', 'town', 'ZIP_code', 'type', 'name', 'surname','login','birthday','comment','phone','email', 'id', 'members_id');
|
||
... | ... | |
$model_users = new User_Model();
|
||
|
||
$total_users = $model_users->count_all_users_by_member($member_id); // count all members in database
|
||
|
||
|
||
$filter=new Table_Form(url_lang::base()."users/show_by_member/".$member_id, "get", array(
|
||
new Table_Form_Item('text','name','Name'),
|
||
new Table_Form_Item('text','surname','Surname'),
|
||
"tr",
|
||
new Table_Form_Item('text','email','Email'),
|
||
new Table_Form_Item('text','phone','Phone'),
|
||
"tr",
|
||
new Table_Form_Item('text','login','Login name'),
|
||
"td",
|
||
new Table_Form_Item('submit','submit','Filter')
|
||
)
|
||
);
|
||
|
||
$total_users = $model_users->count_all_users($filter->values(),$member_id);
|
||
|
||
if (($sql_offset = ($page - 1) * $limit_results) > $total_users)
|
||
$sql_offset = 0;
|
||
|
||
$query = $model_users->get_all_users($sql_offset, (int)$limit_results, $order_by, $order_by_direction, $filter->values(), $member_id);
|
||
$query = $model_users->get_all_users($sql_offset, (int)$limit_results, $order_by, $order_by_direction, "", $member_id);
|
||
|
||
$grid = new Grid(url_lang::base().'users', url_lang::lang('texts.List of users of member').' '.$member->name,array(
|
||
//'separator' => '',
|
||
... | ... | |
'variables' => $member_id.'/',
|
||
'url_array_ofset' => 1,
|
||
'query_string' => $this->input->get(),
|
||
'filter' => $filter->view
|
||
));
|
||
|
||
if ($this->acl_check_new(get_class($this),'users',$member_id))
|
||
... | ... | |
$view->title = url_lang::lang('texts.List of users of member').' '.$member->name;
|
||
$view->content = $grid;
|
||
$view->render(TRUE);
|
||
}
|
||
}
|
||
|
||
/**
|
freenetis/branches/testing/application/libraries/MY_Controller.php | ||
---|---|---|
url_lang::current() != 'registration' &&
|
||
url_lang::current()!='scheduler/run' &&
|
||
strpos(url_lang::current(), 'redirect')===false &&
|
||
url_lang::current(TRUE)!='web_interface' &&
|
||
url_lang::current()!='installation')
|
||
{
|
||
// Not logged in - redirect to login page
|
Také k dispozici: Unified diff
Oprava chyby u vypisu uzivatelu clena. Povoleni anonymniho pristupu na kontroler web_interface.