Revize 115
Přidáno uživatelem Tomáš Dulík před asi 16 roky(ů)
freenetis/trunk/kohana/application/i18n/cs_CZ/texts.php | ||
---|---|---|
'select vlan' => 'Vyber VLAN',
|
||
'send to member'=> 'Pošli členovi',
|
||
'show all transfers on the account'=> 'Ukaž všechny transakce tohoto účtu',
|
||
'show account transfers'=> 'Ukaž transakce',
|
||
'show account transfers'=> 'Zobrazit transakce',
|
||
'show his devices'=> 'Zobrazit jeho zařízení',
|
||
'show transfer'=> 'ukaž transakci',
|
||
'show transfers on this account.'=> 'Ukaž transakce tohoto účtu',
|
||
'show user'=> 'Ukaž uživatele',
|
freenetis/trunk/kohana/application/models/device.php | ||
---|---|---|
'.$where.'
|
||
ORDER BY '.$order_by.' '.$order_by_direction.' LIMIT '.$limit_from.','.$limit_results);
|
||
}
|
||
|
||
public function get_all_by_member($limit_from = 0, $limit_results = 50, $order_by = 'devices.id', $order_by_direction = 'ASC', $member_id = null)
|
||
{
|
||
if (isset($member_id)) $where = 'WHERE members.id='.$member_id.'';
|
||
else $where = '';
|
||
return self::$db->query(
|
||
'SELECT d.id,d.type,d.name, CONCAT(users.name, \' \', users.surname) AS u_name,
|
||
CONCAT(u2.name, \' \', u2.surname) AS engineer_name,
|
||
IFNULL(ifaces.iface_count,0) AS iface_count,
|
||
IFNULL(ports.port_count,0) AS port_count
|
||
FROM devices AS d
|
||
JOIN users ON d.user_id = users.id
|
||
JOIN members on users.member_id=members.id
|
||
LEFT JOIN users AS u2 ON d.engineer_id = u2.id
|
||
LEFT JOIN (
|
||
SELECT COUNT(*) as iface_count,device_id FROM ifaces
|
||
GROUP BY ifaces.device_id
|
||
) AS ifaces ON d.id=ifaces.device_id
|
||
LEFT JOIN (
|
||
SELECT COUNT(*) as port_count,device_id FROM ports
|
||
GROUP BY ports.device_id
|
||
) AS ports ON d.id=ports.device_id
|
||
'.$where.'
|
||
ORDER BY '.$order_by.' '.$order_by_direction.
|
||
' LIMIT '.$limit_from.','.$limit_results);
|
||
}
|
||
|
||
}
|
||
|
||
?>
|
freenetis/trunk/kohana/application/controllers/members.php | ||
---|---|---|
}
|
||
|
||
} // end of show function
|
||
|
||
|
||
|
||
function add()
|
||
{
|
||
if (!$this->acl_check_2D('freenetis', 'new_all')) Controller::error(1);
|
freenetis/trunk/kohana/application/controllers/registration.php | ||
---|---|---|
function index()
|
||
{
|
||
|
||
|
||
|
||
$form = new Forge(url_lang::base()."registration", '', 'POST', array('id' => 'article_form'));
|
||
$form->set_attr('class', 'form_class')->set_attr('method', 'post');
|
||
|
||
$form->group('')->label(url_lang::lang('texts.login data'));
|
||
$form->input('username')->label(url_lang::lang('texts.username').':')->rules('required|length[3,50]')->callback(array($this, 'valid_username'));
|
||
$form->password('password')->label(url_lang::lang('texts.password').':')->rules('required|length[3,50]')->class('required');
|
||
$form->password('confirm_password')->label(url_lang::lang('texts.confirm password').':')->rules('required|length[3,50]')->matches($form->password);
|
||
$form->input('login')->label(url_lang::lang('texts.username').':')->rules('required|length[3,50]')->callback(array($this, 'valid_username'));
|
||
$form->password('passwd')->label(url_lang::lang('texts.password').':')->rules('required|length[3,50]')->class('required');
|
||
$form->password('confirm_password')->label(url_lang::lang('texts.confirm password').':')->rules('required|length[3,50]')->matches($form->passwd);
|
||
|
||
$form->group('')->label(url_lang::lang('texts.contact data'));
|
||
$form->input('pre_title')->label(url_lang::lang('texts.pre title').':')->rules('length[3,40]');
|
||
... | ... | |
//print_r($member_data);die();
|
||
$user_data->name = $form_data['name'];
|
||
$user_data->middle_name = $form_data['middle_name'];
|
||
$user_data->password = sha1($form_data['password']);
|
||
$user_data->password = sha1($form_data['passwd']);
|
||
$user_data->login = $form_data['username'];
|
||
$user_data->surname = $form_data['surname'];
|
||
$user_data->pre_title = $form_data['pre_title'];
|
freenetis/trunk/kohana/application/controllers/devices.php | ||
---|---|---|
//----- end SHOW_MY ----------------------------------------------------------
|
||
//=============================================================================
|
||
|
||
/**
|
||
* @todo Add the acl_check calls!
|
||
*/
|
||
//----- show_by_member --------------------------------------------------------------
|
||
//=============================================================================
|
||
function show_by_member($member_id=NULL, $limit_results = 500, $order_by = 'id', $order_by_direction = 'ASC')
|
||
{
|
||
if (!isset($member_id)) {
|
||
Controller::error();
|
||
} else {
|
||
|
||
$device_model = new Device_Model;
|
||
|
||
// get new selector
|
||
if (is_numeric($this->input->get('record_per_page')))
|
||
$limit_results = (int) $this->input->get('record_per_page');
|
||
|
||
$url_array = explode('/', trim(url::current(), '/'));
|
||
$sql_offset = (isset($url_array[7])) ? (int) ($url_array[7] - 1) * $limit_results : 0;
|
||
unset($url_array);
|
||
$query = $device_model->get_all_by_member($sql_offset, (int)$limit_results, $order_by, $order_by_direction, $member_id);
|
||
$total_devices=$device_model->count_last_query();
|
||
$grid = new Grid(url_lang::base().'devices', null,array(
|
||
//'separator' => '<br />-----------',
|
||
//'use_paginator' => false,
|
||
//'use_selector' => false,
|
||
'current' => $limit_results, // current selected 'records_per_page' value
|
||
'selector_increace' => 500, // increace
|
||
'selector_min' => 500, // minimum where selector start
|
||
'selector_max_multiplier' => 10,
|
||
'base_url' => Config::item('locale.lang').'/devices/show_my/'.$limit_results.'/'.$order_by.'/'.$order_by_direction ,
|
||
'uri_segment' => 'page', // pass a string as uri_segment to trigger former 'label' functionality
|
||
'total_items' => $total_devices, // use db count query here of course
|
||
'items_per_page' => $limit_results, // it may be handy to set defaults for stuff like this in config/pagination.php
|
||
'style' => 'classic',
|
||
'order_by' => $order_by,
|
||
'order_by_direction' => $order_by_direction,
|
||
'limit_results' => $limit_results
|
||
));
|
||
|
||
$grid->order_field('id')->label('ID')->class('center');
|
||
$grid->order_field('name')->label(url_lang::lang('texts.name'));
|
||
$grid->order_field('type')->label(url_lang::lang('texts.type'));
|
||
$grid->order_field('u_name')->label(url_lang::lang('texts.user'));
|
||
$grid->order_field('engineer_name')->label(url_lang::lang('texts.engineer'));
|
||
$grid->order_field('iface_count')->label(url_lang::lang('texts.ifaces'))->class('center');
|
||
$grid->order_field('port_count')->label(url_lang::lang('texts.ports'))->class('center');
|
||
$grid->action_field('id')->label(url_lang::lang('texts.Show')) ->url(url_lang::base().'devices/show') ->action(url_lang::lang('texts.Show'))->class('center');
|
||
$grid->action_field('id')->label(url_lang::lang('texts.Edit')) ->url(url_lang::base().'devices/edit') ->action(url_lang::lang('texts.Edit'))->class('center');
|
||
$grid->action_field('id')->label(url_lang::lang('texts.Delete')) ->url('delete') ->action(url_lang::lang('texts.Delete'))->class('center');
|
||
$grid->datasource( $query );
|
||
$this->template->content = $grid;
|
||
|
||
|
||
$view = new View('template');
|
||
|
||
$view->header = new View('base/header');
|
||
$view->header->title = url_lang::lang('texts.Devices list');
|
||
$view->header->menu = Controller::render_menu();
|
||
|
||
$view->content = new View('show_all');
|
||
$view->content->table = $this->template->content;
|
||
$view->content->headline = url_lang::lang('texts.Devices list');
|
||
|
||
$view->footer = new View('base/footer');
|
||
|
||
$view->render(TRUE);
|
||
|
||
}
|
||
}
|
||
//----- end show_by_member ----------------------------------------------------------
|
||
//=============================================================================
|
||
|
||
|
||
//=============================================================================
|
||
//----- SHOW ------------------------------------------------------------------
|
||
//=============================================================================
|
||
function show($device_id = null)
|
freenetis/trunk/kohana/application/views/members_show.php | ||
---|---|---|
|
||
<?php echo html::anchor(url_lang::base().'members/edit/'.$member_data->member_id,url_lang::lang('texts.Edit member'))
|
||
.' | '.html::anchor(url_lang::base().'users/chngpass/'.$member_data->id,url_lang::lang('texts.Change password'))
|
||
.' | '.html::anchor(url_lang::base().'devices/show_by_member/'.$member_data->member_id,url_lang::lang('texts.Show devices'))
|
||
.' | '.html::anchor(url_lang::base().'accounts/transfers/'.$member_data->member_id,url_lang::lang('texts.Show account transfers'))
|
||
|
||
.' | '.html::anchor(url_lang::base().'devices/show_by_member/'.$member_data->member_id,url_lang::lang('texts.Show his devices'))
|
||
.' | '.html::anchor(url_lang::base().'accounts/transfers/'.$member_data->member_id,url_lang::lang('texts.Show account transfers'))
|
||
?>
|
||
<br />
|
||
<br />
|
Také k dispozici: Unified diff
devices.php: nova funkce "show_by_member" pro zobrazeni vsech zarizeni jednoho clena
members.php: ve funkci show je novy link "Zobrazit vsechna zarizeni clena"
members_show.php: upravena sablona pro vyse uvedenou funkci
registration.php: prejmenovany policka login a passwd, aby mely jine jmeno nez v login formulari (prohlizece tam jinak cpou zapamatovane udaje)