Projekt

Obecné

Profil

« Předchozí | Další » 

Revize 363

Přidáno uživatelem Jiří Sviták před asi 15 roky(ů)

Pridana prava na vsechny veci s platbama (asi vsechny). Smazane nejake stare soubory.

Zobrazit rozdíly:

freenetis/trunk/kohana/application/i18n/cs_CZ/texts.php
'additional_contacts_infotext' => 'Další kontaktní informace',
'additional information' => 'Doplňkové informace',
'address' => 'Adresa',
'aditional contacts successfully updated' => 'Další kontakty úspěšně uloženy',
'additional contacts successfully updated' => 'Další kontakty úspěšně uloženy',
'administrate additional contacts' => 'Přidávání/editace dalších kontaktních informací',
'administration' => 'Administrace',
'administration of additional contacts' => 'Přidávání/editace dalších kontaktních informací',
......
'error - cant do the transfer' => 'Chyba - nelze provést transakci.',
'error - cant change password' => 'Chyba - nelze změnit heslo',
'error - cant update account' => 'Chyba - nelze upravit účet.',
'error - cant update aditional contacts' => 'Chyba - nelze upravit další kontakty.',
'error - cant update additional contacts' => 'Chyba - nelze upravit další kontakty.',
'error - cant update member' => 'Chyba - nelze upravit člena.',
'error - cant update transfer' => 'Chyba - nelze upravit převod.',
'error - cant update user' => 'Chyba - nelze upravit uživatele.',
......
'qos ceil' => 'Ceil (max-limit) pro QoS',
'qos rate' => 'Rate (limit-at) pro QoS',
'quantity' => 'Množství',
'quarter' => 'Městská část',
'really delete this account' => 'Opravdu smazat tento účet',
'received member fees' => 'Přijaté členské příspěvky',
'reg' => 'Přih.',
freenetis/trunk/kohana/application/models/wireless_setting.php
class Wireless_setting_Model extends ORM
{
/**
* Function gets one wireless setting.
* @author Jiri Svitak
* Function gets one wireless setting. Each property is translated.
* @param $iface_id
* @return unknown_type
*/
......
WHERE ws.iface_id = $iface_id");
}
/**
* @author Jiri Svitak
* Function gets one wireless setting. Properties are specified by their id in enum_types.
* @param $iface_id
* @return unknown_type
*/
public function get_wireless_setting_for_edit($iface_id)
{
return self::$db->query("SELECT
freenetis/trunk/kohana/application/models/member.php
{
return self::$db->select(
array('members.registration', 'members.name as namem', 'members.street', 'members.street_number',
'members.town', 'members.ZIP_code',
'members.town', 'members.quarter','members.ZIP_code',
'members.type as typem', 'members.organization_identifier', 'members.qos_ceil', 'members.qos_rate',
'members.entrance_fee', 'members.debt_payment_rate', 'members.entrance_fee_left',
'members.entrance_date', 'members.comment',
freenetis/trunk/kohana/application/models/account.php
return self::$db->query("SELECT a.id, a.name AS aname, a.comment,
CONCAT('<a href=\"".url_lang::base()."members/show/', a.member_id, '\">', m.name, '</a>') AS mname,
q3.balance
FROM (SELECT id, member_id, (inbound - outbound) AS balance FROM
FROM (SELECT q2.id, q2.member_id, (inbound - outbound) AS balance FROM
(SELECT q1.id, q1.member_id, IFNULL(SUM(amount), 0) AS inbound, outbound FROM
(SELECT a.id, member_id, IFNULL(SUM(amount), 0) AS outbound
(SELECT a.id, a.member_id, IFNULL(SUM(amount), 0) AS outbound
FROM accounts a
LEFT JOIN transfers t ON a.id = t.origin_id
WHERE ($account_attribute)
GROUP BY a.id) AS q1
LEFT JOIN transfers ON q1.id = transfers.destination_id GROUP BY q1.id) AS q2
GROUP BY a.id
) AS q1
LEFT JOIN transfers ON q1.id = transfers.destination_id
GROUP BY q1.id
) AS q2
) AS q3
LEFT JOIN members m ON q3.member_id = m.id
LEFT JOIN accounts a ON q3.id = a.id
freenetis/trunk/kohana/application/controllers/members.php
$form->group('')->label(url_lang::lang('texts.Contact information'));
$form->input('street')->label(url_lang::lang('texts.street').':')->rules('required|length[1,200]');
$form->input('street_number')->label(url_lang::lang('texts.street number').':')->rules('required|length[1,50]');
$form->input('quarter')->label(url_lang::lang('texts.Quarter').':')->rules('length[1,50]');
$form->input('town')->label(url_lang::lang('texts.town').':')->rules('required|length[3,200]');
$form->input('zip_code')->label(url_lang::lang('texts.zip code').':')->rules('required|length[5,10]');
$form->input('phone')->label(url_lang::lang('texts.phone').':')->rules('required|length[9,40]')->callback(array($this, 'valid_phone'));
......
$member->street = $form_data['street'];
$member->street_number = $form_data['street_number'];
$member->town = $form_data['town'];
$member->quarter = $form['quarter'];
$member->type = $form_data['type'];
$member->organization_identifier = $form_data['organization_identifier'];
$member->ZIP_code = $form_data['zip_code'];
......
$form->input('street')->label(url_lang::lang('texts.street').':')->rules('required|length[1,200]')->value($member_data->street);
$form->input('street_number')->label(url_lang::lang('texts.street number').':')->rules('required|length[1,50]')->value($member_data->street_number);
$form->input('town')->label(url_lang::lang('texts.town').':')->rules('required|length[3,200]')->value($member_data->town);
$form->input('quarter')->label(url_lang::lang('texts.quarter').':')->rules('length[1,50]')->value($member_data->quarter);
$form->input('zip_code')->label(url_lang::lang('texts.zip code').':')->rules('required|length[5,10]')->value($member_data->ZIP_code);
}
if ($this->acl_check_edit('Users_Controller','phone',$member_id))
......
$form->date('birthday')->label(url_lang::lang('texts.birthday').':')->years(date('Y')-100, date('Y'))->rules('required')->value(strtotime($member_data->birthday));
if ($this->acl_check_edit(get_class($this),'entrance_date',$member_id))
$form->date('entrance_date')->label(url_lang::lang('texts.Entrance date').':')->years(date('Y')-100, date('Y'))->rules('required')->value(strtotime($member_data->entrance_date));
// to do - access rights
//if ($this->acl_check_edit(get_class($this),'leaving_date',$member_id))
//{
if ($this->acl_check_edit(get_class($this),'leaving_date',$member_id))
{
$parsed = date_parse($member_data->leaving_date);
if ($parsed['year'] == '0')
{
......
$form->checkbox('end_membership')->label(url_lang::lang('texts.End membership'))->checked(true);
$form->date('leaving_date')->label(url_lang::lang('texts.Leaving date').':')->years(date('Y', strtotime($member_data->entrance_date)), date('Y'))->value(strtotime($member_data->leaving_date))->callback(array($this, 'valid_leaving_date'));
}
//}
}
if ($this->acl_check_edit(get_class($this),'comment',$member_id))
$form->textarea('comment')->label(url_lang::lang('texts.Comment').':')->rules('length[0,250]')->value($member_data->comment);
......
if ($this->acl_check_edit(get_class($this),'entrance_date',$member_id))
$member_data->entrance_date = date("Y-m-d",$form_data['entrance_date']);
// to do - access rights
//if ($this->acl_check_edit(get_class($this),'entrance_date',$member_id))
//{
if ($this->acl_check_edit(get_class($this),'leaving_date',$member_id))
{
if ($form_data['end_membership'])
$member_data->leaving_date = date("Y-m-d", $form_data['leaving_date']);
else
$member_data->leaving_date = '0000-00-00';
//}
}
if ($this->acl_check_edit(get_class($this),'name',$member_id))
$member_data->name = $form_data['membername'];
if ($this->acl_check_edit(get_class($this),'address',$member_id)) {
$member_data->street = $form_data['street'];
$member_data->street_number = $form_data['street_number'];
$member_data->town = $form_data['town'];
$member_data->quarter = $form_data['quarter'];
$member_data->ZIP_code = $form_data['zip_code'];
}
freenetis/trunk/kohana/application/controllers/ifaces.php
$grid->action_field('id')->label(url_lang::lang('texts.Show'))->url(url_lang::base().'ifaces/show')->action(url_lang::lang('texts.Show'))->class('center');
if ($this->acl_check_edit('Devices_Controller','iface'))
$grid->action_field('id')->label(url_lang::lang('texts.Edit'))->url(url_lang::base().'ifaces/edit')->action(url_lang::lang('texts.Edit'))->class('center');
// to do - deleting iface
//if ($this->acl_check_delete('Devices_Controller','iface'))
// $grid->action_field('id')->label(url_lang::lang('texts.Delete'))->url(url_lang::base().'ifaces/delete') ->action(url_lang::lang('texts.Delete'))->class('center');
$grid->datasource( $query );
......
Controller::warning(1);
$this->session->set('ssIface_id',$iface->id);
$this->session->del('ssVlan_iface_id');
//----------- list of IP ADDRESSES ---------------
// ip addresses
$ip_model = new Ip_address_Model();
//$query = $iface_model->select(array('devices.name as device_name', 'segments.name as segment_name', 'ifaces.*'))->join('devices', 'devices.id = ifaces.device_id')->join('segments', 'segments.id = ifaces.segment_id')->orderby('id','ASC')->find_all_by_device_id($iface_id);
$query = $ip_model->select(array('ip_addresses.id','ip_addresses.IP_address','subnets.name as subnet_name'))
->join('subnets','subnets.id=ip_addresses.subnet_id', NULL, 'LEFT')
->orderby('id','ASC')
......
$grid_ip_addresses->action_field('id')->label(url_lang::lang('texts.Show')) ->url(url_lang::base().'ip_addresses/show') ->action(url_lang::lang('texts.Show'))->class('center');
if ($this->acl_check_edit('Devices_Controller','ip_address',$member_id))
$grid_ip_addresses->action_field('id')->label(url_lang::lang('texts.Edit')) ->url(url_lang::base().'ip_addresses/edit') ->action(url_lang::lang('texts.Edit'))->class('center');
// to do - acl_check_delete
//if ($this->acl_check_delete('Devices_Controller','ip_address',$member_id))
$grid_ip_addresses->action_field('id')->label(url_lang::lang('texts.Delete')) ->url(url_lang::base().'ip_addresses/delete') ->action(url_lang::lang('texts.Delete'))->class('center');
// $grid_ip_addresses->action_field('id')->label(url_lang::lang('texts.Delete')) ->url(url_lang::base().'ip_addresses/delete') ->action(url_lang::lang('texts.Delete'))->class('center');
$grid_ip_addresses->datasource( $query );
//list of vlan interfaces
// vlan interfaces
$VLAN_iface_model = new Vlan_iface_Model();
$query = $VLAN_iface_model->select(array('id','name'))
->orderby('id','ASC')
......
$grid_VLAN_ifaces->action_field('id')->label(url_lang::lang('texts.Show')) ->url(url_lang::base().'vlan_ifaces/show') ->action(url_lang::lang('texts.Show'))->class('center');
if ($this->acl_check_edit('Devices_Controller','vlan_iface',$member_id))
$grid_VLAN_ifaces->action_field('id')->label(url_lang::lang('texts.Edit')) ->url(url_lang::base().'vlan_ifaces/edit') ->action(url_lang::lang('texts.Edit'))->class('center');
// if ($this->acl_check_delete('Devices_Controller', 'vlan_iface'))
//$grid_VLAN_ifaces->action_field('id')->label(url_lang::lang('texts.Delete')) ->url('delete') ->action(url_lang::lang('texts.Delete'))->class('center');
$grid_VLAN_ifaces->datasource( $query );
if ($ssDevice_id)
......
}
else
{
$device_model = new Device_Model();
$devices = $device_model->select(array('id','name'))->orderby('name')->find_all();
$arr_devices[0] = '----- '.url_lang::lang('texts.select device').' -----';
freenetis/trunk/kohana/application/controllers/device_engineers.php
* Adds engineer to device (creates association between engineer and device).
* @return unknown_type
*/
function add()
{
$ssDevice_id = $this->session->get('ssDevice_id');
$form = new Forge(url_lang::base()."device_engineers/add/", '', 'POST', array('id' => 'article_form'));
$form->set_attr('class', 'form_class')->set_attr('method', 'post');
$form->group('')->label(url_lang::lang('texts.Basic data'));
......
$form->submit('submit')->value(url_lang::lang('texts.Save'));
special::required_forge_style($form, ' *', 'required');
//----- validate form and save data -----------------------------------
// validation
if($form->validate())
{
$form_data = $form->as_array();
......
}
}
//----- end validate --------------------------------------------------
if ($ssDevice_id) $link_back = html::anchor(url_lang::base().'devices/show/'.$ssDevice_id, url_lang::lang('texts.Back to device parameters'));
// else $link_back = html::anchor(url_lang::base().'ifaces/show_all/', url_lang::lang('texts.Back to interfaces list'));
$view = new View('template');
$view->header = new View('base/header');
$view->header->title = url_lang::lang('texts.Add new device engineer');
$view->header->menu = Controller::render_menu();
$view->content = new View('form');
$view->content->form = $form->html();
$view->content->link_back = $link_back;
$view->content->headline = url_lang::lang('texts.Add new device engineer');
$view->footer = new View('base/footer');
$view->render(TRUE);
}
......
*/
function remove($id = null)
{
// quimi's version of access control
// // access rights
//if (!$this->acl_check_new(get_class($this),'translations'))
// Controller::error(1);
/*
if (isset($id))
{
$device_engineer_model = new Device_engineer_Model();
......
{
Controller::warning(1);
}
*/
}
}
?>
freenetis/trunk/kohana/application/controllers/users.php
$view->footer = new View('base/footer');
$view->header->menu = Controller::render_menu();
$view->header->title = url_lang::lang('texts.Display user');
//$view->content->heading = "Úprava uživatele ".$data['row']['name']." ".$data['row']['surname'];
// $view->content->user_data = $model_users->get_user($user_id)->current();
$view->content->user_data = $model_users;
$view->content->contacts = $contacts;
$view->content->contact_types = $arr_contact_types;
......
} // end of add function
function aditional_contacts ($user_id = null)
function additional_contacts ($user_id = null)
{
$model_users = new User_Model($user_id);
if (!$this->acl_check_edit(get_class($this),'aditional_contacts',$model_users->member_id)) Controller::error(1);
if (!$this->acl_check_edit(get_class($this),'additional_contacts',$model_users->member_id)) Controller::error(1);
if (isset($user_id))
{
......
}
if ($issaved)
{
$this->session->set_flash('message', url_lang::lang('texts.Aditional contacts successfully updated'));
$this->session->set_flash('message', url_lang::lang('texts.Additional contacts successfully updated'));
}
else
{
$this->session->set_flash('message', url_lang::lang('texts.Error - cant update aditional contacts'));
$this->session->set_flash('message', url_lang::lang('texts.Error - cant update additional contacts'));
}
url::redirect(url_lang::base().'users/show/'.(int)$user_id);
}
......
Controller::warning(1);
}
} // end of aditional_contacts function
} // end of additional_contacts function
function chngpass ($user_id = null)
{
freenetis/trunk/kohana/application/controllers/transfers.php
*/
function show_all($limit_results = 500, $order_by = 'id', $order_by_direction = 'desc', $page_word = null, $page = 1)
{
// to do - correct access control
/*
if (!$this->gacl_class->acl_check('freenetis', 'view_all', 'all', $_SESSION['username']))
if (!$this->acl_check_view('Accounts_Controller', 'transfers'))
Controller::error(1);
*/
// get new selector
if (is_numeric($this->input->get('record_per_page')))
$limit_results = (int) $this->input->get('record_per_page');
......
'order_by_direction' => $order_by_direction,
'limit_results' => $limit_results
));
$grid->add_new_button(url_lang::base().'transfers/deduct_fees', url_lang::lang('texts.Deduction of membership fees'));
if ($this->acl_check_edit('Accounts_Controller', 'transfers'))
$grid->add_new_button(url_lang::base().'transfers/deduct_fees', url_lang::lang('texts.Deduction of membership fees'));
$grid->order_field('id')->label('ID');
$grid->field('origin')->label(url_lang::lang('texts.Origin account'));
$grid->order_field('o_attribute')->label(url_lang::lang('texts.Type'));
......
$grid->order_field('text')->label(url_lang::lang('texts.Text'));
$grid->order_field('amount')->label(url_lang::lang('texts.Amount'));
$grid->action_field('id')->label(url_lang::lang('texts.Transfer'))->url(url_lang::base().'transfers/show')->action(url_lang::lang('texts.Show'));
$grid->action_field('id')->label(url_lang::lang('texts.Transfer'))->url(url_lang::base().'transfers/edit')->action(url_lang::lang('texts.Edit'));
if ($this->acl_check_edit('Accounts_Controller', 'transfers'))
$grid->action_field('id')->label(url_lang::lang('texts.Transfer'))->url(url_lang::base().'transfers/edit')->action(url_lang::lang('texts.Edit'));
$grid->datasource($alltransfers);
$view = new View('template');
$view->header = new View('base/header');
......
*/
function show($transfer_id = null)
{
if (!$this->acl_check_view('Accounts_Controller', 'transfers'))
Controller::error(1);
if (isset($transfer_id))
{
$transfer_model = new Transfer_Model();
......
*/
function show_by_member($member_id = NULL, $limit_results = 500, $order_by = 'id', $order_by_direction = 'desc', $page_word = null, $page = 1)
{
if(!$this->acl_check_view('Accounts_Controller', 'transfers', $member_id))
Controller::Error(1);
if (isset($member_id))
{
// to do - access control
if(!$this->acl_check_view('Accounts_Controller','transfers',$member_id))
Controller::Error(1);
$this->session->set('ssMember_id',$member_id);
$this->session->del('ssAccount_id');
// gets grid settings
......
*/
function show_by_account($account_id = NULL, $limit_results = 500, $order_by = 'id', $order_by_direction = 'asc', $page_word = null, $page = 1)
{
if ($this->acl_check_view('Accounts_Controller', 'transfers'))
Controller::error(1);
$this->session->del('ssMember_id');
$this->session->set('ssAccount_id', $account_id);
if (isset($account_id))
{
// to do - access control
if(!$this->acl_check_view('Accounts_Controller', 'transfers', $account_id))
Controller::Error(1);
// gets grid settings
if (is_numeric($this->input->get('record_per_page')))
$limit_results = (int) $this->input->get('record_per_page');
// to do - correct allowed order type array
// allowed order type array
$allowed_order_type = array('id', 'trans_type', 'name', 'datetime', 'amount', 'text');
if (!in_array(strtolower($order_by),$allowed_order_type))
$order_by = 'datetime';
......
if (isset($origin_account))
{
$ssMember_id = $this->session->get('ssMember_id');
// to do - access rights
//if (!$this->gacl_class->acl_check('freenetis', 'new_own', 'all', $_SESSION['username'],get_class($this),'assign_transfers')) Controller::error(1);
if (!$this->acl_check_new('Accounts_Controller', 'transfers', $ssMember_id))
Controller::error(1);
$account_model = new Account_Model();
$accounts = $account_model->get_some_doubleentry_account_names($origin_account);
foreach ($accounts as $account)
......
{
$ssMember_id = $this->session->get('ssMember_id');
$ssAccount_id = $this->session->get('ssAccount_id');
// to do - access rights
//if (!$this->gacl_class->acl_check('freenetis', 'new_own', 'all', $_SESSION['username'],get_class($this),'assign_transfers')) Controller::error(1);
// access rights
if (!$this->acl_check_edit('Accounts_Controller', 'transfers', $ssMember_id))
Controller::error(1);
$transfer = new Transfer_Model($transfer_id);
$form = new Forge(url_lang::base().'transfers/edit/'.$transfer_id, '', 'POST', array('id' => 'article_form'));
$form->set_attr('class', 'form_class')->set_attr('method', 'post');
......
*/
function deduct_fees()
{
// to do - access rights
//if (!$this->acl_check_new(get_class($this),'members')) Controller::error(1);
// access rights
if (!$this->acl_check_add('Accounts_Controller', 'transfers'))
Controller::error(1);
// content of dropdown for months
for ($i = 1; $i <= 12; $i++)
$arr_months[$i] = $i;
freenetis/trunk/kohana/application/controllers/wireless_settings.php
*/
function add($iface_id = null)
{
if (!$this->acl_check_add('Devices_Controller', 'wireless_setting'))
Controller::error(1);
if (isset($iface_id))
{
// enum types for wireless setting
......
*/
function edit($iface_id)
{
if ($this->acl_check_edit('Devices_Controller', 'wireless_setting'))
Controller::error(1);
if (isset($iface_id))
{
// wireless settings
freenetis/trunk/kohana/application/controllers/translations.php
function edit($id = NULL)
{
// access control
if (!$this->acl_check_new(get_class($this),'translation'))
if (!$this->acl_check_edit(get_class($this),'translation'))
Controller::error(1);
if (isset($id))
freenetis/trunk/kohana/application/controllers/device_admins.php
}
//=============================================================================
//----- ADD -------------------------------------------------------------------
//=============================================================================
/**
* Function adds device admin.
* @return unknown_type
*/
function add()
{
$ssDevice_id = $this->session->get('ssDevice_id');
......
$user_model = new User_Model();
$device_admin_model = new Device_admin_Model();
$device_admin_model = new Device_admin_Model();
if($ssDevice_id) $admins = $device_admin_model->find_all_by_device_id($ssDevice_id);
else $admins = array();
if($ssDevice_id)
$admins = $device_admin_model->find_all_by_device_id($ssDevice_id);
else $admins = array();
$users = $user_model->find_all();
$arr_users[0] = '----- '.url_lang::lang('texts.select user').' -----';
foreach($users as $user) {
$clause = 1;
foreach($admins as $admin) if($admin->user->id == $user->id) $clause = 0;
if($clause == 1) $arr_users[$user->id] = $user->surname.' '.$user->name.' - '.$user->login;
}
asort($arr_users);
$users = $user_model->find_all();
$arr_users[0] = '----- '.url_lang::lang('texts.select user').' -----';
foreach($users as $user)
{
$clause = 1;
foreach($admins as $admin)
if($admin->user->id == $user->id)
$clause = 0;
if($clause == 1)
$arr_users[$user->id] = $user->surname.' '.$user->name.' - '.$user->login;
}
asort($arr_users);
$form->dropdown('user_id')->label(url_lang::lang('texts.user'))->options($arr_users)->rules('required');
$form->submit('submit')->value(url_lang::lang('texts.Save'));
$form->dropdown('user_id')->label(url_lang::lang('texts.user'))->options($arr_users)->rules('required');
$form->submit('submit')->value(url_lang::lang('texts.Save'));
special::required_forge_style($form, ' *', 'required');
//----- validate form and save data -----------------------------------
// validation
if($form->validate())
{
$form_data = $form->as_array();
......
}
}
//----- end validate --------------------------------------------------
if ($ssDevice_id) $link_back = html::anchor(url_lang::base().'devices/show/'.$ssDevice_id, url_lang::lang('texts.Back to device parameters'));
// else $link_back = html::anchor(url_lang::base().'ifaces/show_all/', url_lang::lang('texts.Back to interfaces list'));
......
$view->footer = new View('base/footer');
$view->render(TRUE);
}
//----- end ADD ---------------------------------------------------------------
//=============================================================================
} // end of add
//=============================================================================
//----- EDIT ------------------------------------------------------------------
//=============================================================================
/**
* Function edits device admins.
* @param $device_admin_id
* @return unknown_type
*/
function edit($device_admin_id = null)
{
$ssDevice_id = $this->session->get('ssDevice_id');
......
$form->group('')->label(url_lang::lang('texts.Basic data'));
/* if ($ssDevice_id)
{ */
$device = new Device_Model($device_admin->device_id);
$form->dropdown('device_id')->label(url_lang::lang('texts.Device name'))->options(array($device->id => $device->name))->rules('required');
/*}
else
{
$device_model = new Device_Model();
$devices = $device_model->select(array('id','name'))->orderby('name')->find_all();
$arr_devices[0] = '----- '.url_lang::lang('texts.select device').' -----';
foreach ($devices as $device) {
$arr_devices[$device->id] = $device->name;
}
$form->dropdown('device_id')->label(url_lang::lang('texts.Device name'))->options($arr_devices)->rules('required')->selected($iface->device_id);
}
*/
$device = new Device_Model($device_admin->device_id);
$form->dropdown('device_id')->label(url_lang::lang('texts.Device name'))->options(array($device->id => $device->name))->rules('required');
$user_model = new User_Model();
$user_model = new User_Model();
$admins = $device_admin->find_all_by_device_id($ssDevice_id);
$admins = $device_admin->find_all_by_device_id($ssDevice_id);
$users = $user_model->find_all();
$arr_users = array();
foreach($users as $user) {
$clause = 1;
foreach($admins as $admin) if($admin->user->id == $user->id) $clause = 0;
if($user->id == $device_admin->user_id) $clause = 1;
if($clause == 1) $arr_users[$user->id] = $user->surname.' '.$user->name.' - '.$user->login;
}
asort($arr_users);
$users = $user_model->find_all();
$arr_users = array();
foreach($users as $user)
{
$clause = 1;
foreach($admins as $admin)
if($admin->user->id == $user->id)
$clause = 0;
if($user->id == $device_admin->user_id)
$clause = 1;
if($clause == 1)
$arr_users[$user->id] = $user->surname.' '.$user->name.' - '.$user->login;
}
asort($arr_users);
$form->dropdown('user_id')->label(url_lang::lang('texts.user'))->options($arr_users)->rules('required')->selected($device_admin->user_id);
$form->dropdown('user_id')->label(url_lang::lang('texts.user'))->options($arr_users)->rules('required')->selected($device_admin->user_id);
$form->submit('submit')->value(url_lang::lang('texts.update'));
special::required_forge_style($form, ' *', 'required');
//----- validate form and save data -----------------------------------
// validaiton
if($form->validate())
{
$form_data = $form->as_array();
$device_admin = new Device_admin_Model($device_admin_id);
foreach($form_data as $key => $value)
{
$device_admin->$key = htmlspecialchars($value);
}
$device_id = $form_data['device_id'];
/*print_r($form_data);
die();*/
unset($form_data);
if ($device_admin->save()) {
if ($device_admin->save())
{
$this->session->set_flash('message', url_lang::lang('texts.Device admin has been successfully updated.'));
url::redirect(url_lang::base().'devices/show/'.$device_id);
exit;
}
}
//----- end validate --------------------------------------------------
if ($ssDevice_id) $link_back = html::anchor(url_lang::base().'devices/show/'.$ssDevice_id, url_lang::lang('texts.Back to device parameters'));
// else $link_back = html::anchor(url_lang::base().'ifaces/show_all/', url_lang::lang('texts.Back to interfaces list'));
......
$view->header = new View('base/header');
$view->header->title = url_lang::lang('texts.Edit device admin');
$view->header->menu = Controller::render_menu();
$view->content = new View('form');
$view->content->form = $form->html();
$view->content->link_back = $link_back;
$view->content->headline = url_lang::lang('texts.Edit device admin');
$view->footer = new View('base/footer');
$view->footer = new View('base/footer');
$view->render(TRUE);
}
//----- end EDIT --------------------------------------------------------------
//=============================================================================
} // end of edit
/**
* Removes admin association from device.
* @param $id id of association
......
*/
function remove($id = null)
{
// quimi's version of access control
// access rights
//if (!$this->acl_check_new(get_class($this),'translations'))
// Controller::error(1);
/*
if (isset($id))
{
$device_admin_model = new Device_admin_Model();
......
{
Controller::warning(1);
}
*/
}
}
freenetis/trunk/kohana/application/controllers/bank_transfers.php
{
if (isset($bank_account_id))
{
// to do - access control
//if(!$this->acl_check_view('Accounts_Controller', 'bank_transfers', $bank_account_id))
// Controller::Error(1);
// access rights
if(!$this->acl_check_view('Accounts_Controller', 'bank_transfers'))
Controller::Error(1);
if (is_numeric($this->input->get('record_per_page')))
$limit_results = (int) $this->input->get('record_per_page');
......
*/
function unidentified_transfers($limit_results = 500, $order_by = 'id', $order_by_direction = 'asc', $page_word = null, $page = 1)
{
// to do - access rights
//if (!$this->acl_check_view(get_class($this), 'unidentified_transfers'))
// Controller::error(1);
// access rights
if (!$this->acl_check_view(get_class($this), 'unidentified_transfers'))
Controller::error(1);
// get new selector
if (is_numeric($this->input->get('record_per_page')))
......
'url_array_ofset' => 0
));
//$grid->add_new_button(url_lang::base().'accounts/new_transfer/'.$member_id, url_lang::lang('texts.New transfer'));
$grid->order_field('id')->label('ID');
$grid->order_field('datetime')->label(url_lang::lang('texts.Date and time'));
$grid->order_field('account_number')->label(url_lang::lang('texts.Account number'));
......
*/
function assign_transfer($trans_id = NULL)
{
// to do - access rights
//if (!$this->gacl_class->acl_check('freenetis', 'new_own', 'all', $_SESSION['username'],get_class($this),'assign_transfers')) Controller::error(1);
// access rights
if (!$this->acl_check_edit('Accounts_Controller', 'unidentified_transfers'))
Controller::error(1);
if (isset($trans_id))
{
$account_model = new Account_Model();
freenetis/trunk/kohana/application/controllers/bank_accounts.php
*/
function show_all($limit_results = 500, $order_by = 'id', $order_by_direction = 'ASC', $page_word = null, $page = 1)
{
if (!$this->acl_check_view('Accounts_Controller', 'bank_accounts'))
Controller::error(1);
// it gets only bank accounts of association
$bank_account_model = new Bank_account_Model();
$baa = $bank_account_model->get_assoc_bank_accounts();
freenetis/trunk/kohana/application/controllers/accounts.php
*/
function show_all($limit_results = 500, $order_by = 'id', $order_by_direction = 'asc', $page_word = null, $page = 1)
{
// to do - correct access rights
//if(!$this->acl_check_view('Accounts_Controller','transfers',$member_id))
// Controller::Error(1);
if(!$this->acl_check_view('Accounts_Controller','accounts'))
Controller::Error(1);
$arr_groups[Account_Model::$credit] = url_lang::lang('texts.Credit accounts');
$arr_groups[Account_Model::$project] = url_lang::lang('texts.Project accounts');
$arr_groups[Account_Model::$other] = url_lang::lang('texts.Other accounts');
......
'limit_results' => $limit_results,
'query_string' => $query_string
));
// adding account, to do - access rights
//if ($this->acl_check_new(get_class($this), 'accounts', $member_id))
// $acc_grid->add_new_button(url_lang::base().'accounts/add_bank_account/'.$member_id, url_lang::lang('texts.Add new bank account'));
// access rights
if ($this->acl_check_new('Accounts_Controller', 'accounts', $member_id))
$acc_grid->add_new_button(url_lang::base().'accounts/add_project_account/'.$member_id, url_lang::lang('texts.Add new project account'));
$grid->order_field('id')->label('ID');
$grid->order_field('aname')->label(url_lang::lang('texts.Account name'));
$grid->order_field('comment')->label(url_lang::lang('texts.Comment'));
$grid->order_field('balance')->label(url_lang::lang('texts.Balance'));
$grid->field('mname')->label(url_lang::lang('texts.Member name'));
$grid->action_field('id')->label(url_lang::lang('texts.Transfers'))->url(url_lang::base().'transfers/show_by_account')->action(url_lang::lang('texts.Show'));
$grid->action_field('id')->label(url_lang::lang('texts.Account'))->url(url_lang::base().'accounts/edit')->action(url_lang::lang('texts.Edit'));
if ($this->acl_check_edit('Accounts_Controller', 'accounts'))
$grid->action_field('id')->label(url_lang::lang('texts.Account'))->url(url_lang::base().'accounts/edit')->action(url_lang::lang('texts.Edit'));
$grid->datasource($accounts);
$view = new View('template');
......
$view->render(TRUE);
}
function add($member_id = NULL)
{
if (!$this->gacl_class->acl_check('freenetis', 'new_own', 'all', $_SESSION['username'],get_class($this),'add_accounts')) Controller::error(1);
if (isset($member_id))
{
$this->owner_id = $member_id;
$form = new Forge(url_lang::base().'accounts/add/'.$member_id, '', 'POST', array('id' => 'article_form'));
$form->set_attr('class', 'form_class')->set_attr('method', 'post');
$form->group('')->label(url_lang::lang('texts.Basic information'));
$form->input('name')->label(url_lang::lang('texts.Name').':')->rules('required|length[3,50]');
$form->input('start_amount')->label(url_lang::lang('texts.Start amount').':')->value('0');
$form->dropdown('type')->label(url_lang::lang('texts.Account type').':')->options(array('bank'=>url_lang::lang('texts.Bank account'),'analytic'=>url_lang::lang('texts.Double entry account'),'project'=>url_lang::lang('texts.Project account'),'master'=>url_lang::lang('texts.Master bank account'),'operating'=>url_lang::lang('texts.Operating account'),'infrastructure'=>url_lang::lang('texts.Infrastructure account'),'suppliers'=>url_lang::lang('texts.Suppliers account'),'unidentified'=>url_lang::lang('texts.Unidentified acccount')))->callback(array($this, 'callback_acc_type'));
$form->textarea('comment')->label(url_lang::lang('texts.Comment').':')->rules('length[0,250]');
$form->submit('submit')->value(url_lang::lang('texts.Add'));
special::required_forge_style($form, ' *', 'required');
if($form->validate())
{
$form_data = $form->as_array();
$account = new Account_Model;
foreach($form_data as $key => $value)
{
$account->$key = htmlspecialchars($value);
}
if (trim($form_data['start_amount'])=='') $model_account->start_amount = '0';
unset($form_data);
$account->member_id = $member_id;
if ($account->save())
{
$this->session->set_flash('message', url_lang::lang('texts.Account successfully added.'));
}
else
{
$this->session->set_flash('message', url_lang::lang('texts.Error - cant add new account.'));
}
url::redirect(url_lang::base().'accounts/detail/'.(int)$account_data->id);
}
else
{
$view->form = new View('registration');
$view = new View('template');
$view->header = new View('base/header');
$view->content = new View('account_add');
$view->footer = new View('base/footer');
$view->header->menu = Controller::render_menu();
$view->header->title = url_lang::lang('texts.Add new account');
$view->content->form = $form->html();
$view->content->member_id = $member_id;
$view->render(TRUE);
}
}
else
{
Controller::warning(1);;
}
} // end of add function
/**
* @author Jiri Svitak
* Adds new credit account. Available only for admins.
* @param $member_id
* @return unknown_type
*/
function add_credit_account($member_id = NULL)
{
// to do - access rights
//if (!$this->gacl_class->acl_check('freenetis', 'new_own', 'all', $_SESSION['username'],get_class($this),'add_accounts'))
// Controller::error(1);
if (isset($member_id))
{
$this->owner_id = $member_id;
$form = new Forge(url_lang::base().'accounts/add_credit_account/'.$member_id, '', 'POST', array('id' => 'article_form'));
$form->set_attr('class', 'form_class')->set_attr('method', 'post');
$form->group('')->label(url_lang::lang('texts.Basic information'));
$form->input('name')->label(url_lang::lang('texts.Name').':')->rules('required|length[3,50]');
$form->textarea('comment')->label(url_lang::lang('texts.Comment').':')->rules('length[0,250]');
$form->submit('submit')->value(url_lang::lang('texts.Add'));
special::required_forge_style($form, ' *', 'required');
if($form->validate())
{
$form_data = $form->as_array();
$account = new Account_Model;
$account->name = htmlspecialchars($form_data['name']);
$account->comment = htmlspecialchars($form_data['comment']);
unset($form_data);
$account->member_id = $member_id;
if ($account->save())
{
$this->session->set_flash('message', url_lang::lang('texts.Account has been successfully added.'));
}
else
{
$this->session->set_flash('message', url_lang::lang('texts.Error - cant add new account.'));
}
url::redirect(url_lang::base().'members/show/'.$member_id);
}
else
{
$view->form = new View('registration');
$view = new View('template');
$view->header = new View('base/header');
$view->content = new View('account_add');
$view->footer = new View('base/footer');
$view->header->menu = Controller::render_menu();
$view->header->title = url_lang::lang('texts.Add new account');
$view->content->form = $form->html();
$view->content->member_id = $member_id;
$view->render(TRUE);
}
}
else
{
Controller::warning(1);;
}
} // end of add_credit_account function
/**
* @author Jiri Svitak
* Adds new project account.
* @param $member_id
* @return unknown_type
*/
function add_project($member_id = NULL)
{
// to do - access rights
//if (!$this->gacl_class->acl_check('freenetis', 'new_own', 'all', $_SESSION['username'],get_class($this),'add_accounts'))
// Controller::error(1);
// access rights
if (!$this->acl_check_new('Accounts_Controller', 'accounts', $member_id))
Controller::error(1);
if (isset($member_id))
{
$this->owner_id = $member_id;
......
*/
function edit($acc_id = NULL)
{
// to do - access rights
//if (!$this->gacl_class->acl_check('freenetis', 'edit_own', 'all', $_SESSION['username'],get_class($this),'edit_accounts'))
// Controller::error(1);
// access rights
if (!$this->acl_check_edit('Accounts_Controller', 'accounts'))
Controller::error(1);
if (isset($acc_id))
{
$model_account = new Account_Model($acc_id);
......
*/
function delete($acc_id = NULL)
{
// to do - access rights
//if (!$this->gacl_class->acl_check('freenetis', 'delete_own', 'all', $_SESSION['username'],get_class($this),'delete_accounts'))
// Controller::error(1);
// access rights
if (!$this->acl_check_delete('Accounts_Controller', 'accounts'))
Controller::error(1);
if (isset($acc_id))
{
$model_account = new Account_Model($acc_id);
freenetis/trunk/kohana/application/controllers/devices.php
}
/**
* It shows all devices.
* Function shows all devices.
* @param $limit_results devices per page
* @param $order_by sorting column
* @param $order_by_direction sorting direction
......
$grid->action_field('id')->label(url_lang::lang('texts.Device')) ->url(url_lang::base().'devices/show') ->action(url_lang::lang('texts.Show'))->class('center');
if ($this->acl_check_edit(get_class($this),'devices'))
$grid->action_field('id')->label(url_lang::lang('texts.Device')) ->url(url_lang::base().'devices/edit') ->action(url_lang::lang('texts.Edit'))->class('center');
// if ($this->acl_check_delete('Devices_Controller', 'devices'))
//$grid->action_field('id')->label(url_lang::lang('texts.Delete')) ->url('delete') ->action(url_lang::lang('texts.Delete'))->class('center');
$grid->datasource( $query );
$view = new View('template');
......
}
else
{
if (!$this->acl_check_view(get_class($this),'devices',$member_id))
Controller::error(1);
$device_model = new Device_Model;
$member = new Member_Model($member_id);
......
));
if ($this->acl_check_new(get_class($this),'devices',$member_id))
$grid->add_new_button(url_lang::base().'devices/add_whole', url_lang::lang('texts.Add new whole device'));
if ($this->acl_check_new(get_class($this),'devices',$member_id))
$grid->add_new_button(url_lang::base().'devices/add', url_lang::lang('texts.Add new device'));
$grid->add_new_button(url_lang::base().'members/show/'.$member_id, url_lang::lang('texts.Back to the member'));
$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('mac')->label(url_lang::lang('texts.MAC address'));
$grid->order_field('segment_name')->label(url_lang::lang('texts.Segment'));
$grid->order_field('ip_address')->label(url_lang::lang('texts.IP address'));
if ($this->acl_check_view(get_class($this),'devices',$member_id))
$grid->action_field('id')->label(url_lang::lang('texts.Device'))->url(url_lang::base().'devices/show')->action(url_lang::lang('texts.Show'))->class('center');
if ($this->acl_check_edit(get_class($this),'devices',$member_id))
$grid->action_field('id')->label(url_lang::lang('texts.Device'))->url(url_lang::base().'devices/edit')->action(url_lang::lang('texts.Edit'))->class('center');
// to do - access control to delete
// $grid->action_field('id')->label(url_lang::lang('texts.Delete'))->url(url_lang::base().'devices/delete')->action(url_lang::lang('texts.Delete'))->class('center');
$grid->datasource($query);
$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 = $grid;
$view->footer = new View('base/footer');
$view->render(TRUE);
if ($this->acl_check_new(get_class($this),'devices',$member_id))
$grid->add_new_button(url_lang::base().'devices/add_whole', url_lang::lang('texts.Add new whole device'));
if ($this->acl_check_new(get_class($this),'devices',$member_id))
$grid->add_new_button(url_lang::base().'devices/add', url_lang::lang('texts.Add new device'));
$grid->add_new_button(url_lang::base().'members/show/'.$member_id, url_lang::lang('texts.Back to the member'));
$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('mac')->label(url_lang::lang('texts.MAC address'));
$grid->order_field('segment_name')->label(url_lang::lang('texts.Segment'));
$grid->order_field('ip_address')->label(url_lang::lang('texts.IP address'));
if ($this->acl_check_view(get_class($this),'devices',$member_id))
$grid->action_field('id')->label(url_lang::lang('texts.Device'))->url(url_lang::base().'devices/show')->action(url_lang::lang('texts.Show'))->class('center');
if ($this->acl_check_edit(get_class($this),'devices',$member_id))
$grid->action_field('id')->label(url_lang::lang('texts.Device'))->url(url_lang::base().'devices/edit')->action(url_lang::lang('texts.Edit'))->class('center');
// if ($this->acl_check_delete('Devices_Controller', 'devices', $member_id))
// $grid->action_field('id')->label(url_lang::lang('texts.Delete'))->url(url_lang::base().'devices/delete')->action(url_lang::lang('texts.Delete'))->class('center');
$grid->datasource($query);
$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 = $grid;
$view->footer = new View('base/footer');
$view->render(TRUE);
}
} // end of show_by_member
//=============================================================================
//----- SHOW ------------------------------------------------------------------
//=============================================================================
/**
* Function shows device.
* @param $device_id
* @return unknown_type
*/
function show($device_id = null)
{
$device = new Device_Model($device_id);
......
$member_id = $device->user->member_id;
if (!$this->acl_check_view(get_class($this),'devices',$member_id)) Controller::error(1);
if (!$this->acl_check_view(get_class($this),'devices',$member_id))
Controller::error(1);
$ssMember_id = $this->session->get('ssMember_id');
$enum_type_model = new Enum_type_Model();
$device_type = $enum_type_model->get_value($device->type);
$this->session->set('ssDevice_id',$device->id);
$user_model = new User_Model;
......
$i = 0;
$ip_iface = '';
$arr_ip = array();
foreach ($ifaces as $iface) {
foreach ($ifaces as $iface)
{
$ip_iface = $ip_model->find_all_by_iface_id($iface->id);
//$model->find_all_by_master_id($master)
foreach ($ip_iface as $ip) {
foreach ($ip_iface as $ip)
{
$arr_ip[$i]['iface_id'] = $iface->id;
$arr_ip[$i]['ip_address'] = $ip->IP_address;
$subnet = $subnet_model->find_by_id($ip->subnet_id);
//print_r($subnet);
$arr_ip[$i]['name'] = $subnet->name;
$arr_ip[$i]['network_address'] = $subnet->network_address;
$arr_ip[$i]['netmask'] = $subnet->netmask;
......
}
}
// shows device engineers
// device engineers
$device_engineer_model = new Device_engineer_Model();
$query = $device_engineer_model->select(array('device_engineers.id as id', 'users.id as user_id', 'users.name', 'users.surname', 'users.login'))
->join('users', 'users.id = device_engineers.user_id')->orderby('id', 'ASC')->find_all_by_device_id($device_id);
......
$grid_device_engineers = $grid;
unset($grid);
// shows device admins
// device admins
$device_admin_model = new Device_admin_Model();
$query = $device_admin_model->select(array('device_admins.id as id', 'users.id as user_id', 'users.name', 'users.surname', 'users.login'))
->join('users','users.id = device_admins.user_id')
......
$grid->field('name')->label(url_lang::lang('texts.name'));
$grid->field('surname')->label(url_lang::lang('texts.surname'));
$grid->field('login')->label(url_lang::lang('texts.username'));
// inappropriate operations in this case, admins should be only added or removed from device
/*
if ($this->acl_check_view(get_class($this),'admin',$member_id))
$grid->action_field('user_id')->label(url_lang::lang('texts.Show')) ->url(url_lang::base().'users/show') ->action(url_lang::lang('texts.Show'))->class('center');
if ($this->acl_check_edit(get_class($this),'admin',$member_id))
$grid->action_field('id')->label(url_lang::lang('texts.Edit')) ->url(url_lang::base().'device_admins/edit') ->action(url_lang::lang('texts.Edit'))->class('center');
*/
$grid->action_field('id')->label(url_lang::lang('texts.Remove')) ->url(url_lang::base().'device_admins/remove')->action(url_lang::lang('texts.Remove'))->class('center');
$grid->datasource($query);
$grid_device_admins = $grid;
unset($grid);
//----------- list of INTERFACES ---------------
// interfaces of device
$iface_model = new Iface_Model();
//$query = $iface_model->find_all_by_device_id($device_id);
$query = $iface_model->select(array('devices.name as device_name', 'segments.name as segment_name', 'ifaces.*'))
->join('devices', 'devices.id = ifaces.device_id')
->join('segments', 'segments.id = ifaces.segment_id', NULL, 'LEFT')
->orderby('id','ASC')
->find_all_by_device_id($device_id);
//$query = $device_model->get_all_devices($sql_offset, (int)$limit_results, $order_by, $order_by_direction);
$grid = new Grid(url_lang::base().'devices', null,array(
'use_paginator' => false,
'use_selector' => false
......
$grid->action_field('id')->label(url_lang::lang('texts.Show')) ->url(url_lang::base().'ifaces/show') ->action(url_lang::lang('texts.Show'))->class('center');
if ($this->acl_check_edit(get_class($this),'iface',$member_id))
$grid->action_field('id')->label(url_lang::lang('texts.Edit')) ->url(url_lang::base().'ifaces/edit') ->action(url_lang::lang('texts.Edit'))->class('center');
// to do - access control
$grid->action_field('id')->label(url_lang::lang('texts.Delete')) ->url(url_lang::base().'ifaces/delete') ->action(url_lang::lang('texts.Delete'))->class('center');;
//if ($this->acl_check_delete('Devices_Controller', 'iface', $member_id))
// $grid->action_field('id')->label(url_lang::lang('texts.Delete')) ->url(url_lang::base().'ifaces/delete') ->action(url_lang::lang('texts.Delete'))->class('center');;
$grid->datasource($query);
$grid_ifaces = $grid;
unset($grid);
//----------- list of PORTS ---------------
// ports of device
$port_model = new Port_Model();
//$query = $iface_model->select(array('devices.name as device_name', 'segments.name as segment_name', 'ifaces.*'))->join('devices', 'devices.id = ifaces.device_id')->join('segments', 'segments.id = ifaces.segment_id')->orderby($order_by,$order_by_direction)->find_all_by_device_id($device_id);
//$query = $port_model->select(array('segments.name as segment_name', 'ports.*'))->join('segments', 'segments.id = ports.segment_id')->orderby('id','ASC')->find_all_by_device_id($device_id);
$query = $port_model->get_ports_of_device($device_id);
$grid = new Grid(url_lang::base().'devices', null,array(
'use_paginator' => false,
......
if ($this->acl_check_view(get_class($this),'port',$member_id))
$grid->action_field('id')->label(url_lang::lang('texts.Show')) ->url(url_lang::base().'ports/show') ->action(url_lang::lang('texts.Show'))->class('center');
if ($this->acl_check_edit(get_class($this),'port',$member_id))
$grid->action_field('id')->label(url_lang::lang('texts.Edit')) ->url(url_lang::base().'ports/edit') ->action(url_lang::lang('texts.Edit'))->class('center');
$grid->action_field('id')->label(url_lang::lang('texts.Edit')) ->url(url_lang::base().'ports/edit') ->action(url_lang::lang('texts.Edit'))->class('center');
//if($this->acl_check_delete('Devices_Controller', 'port', $member_id))
//$grid->action_field('id')->label(url_lang::lang('texts.Delete')) ->url('delete') ->action(url_lang::lang('texts.Delete'))->class('center');
$grid->datasource( $query );
$grid_ports = $grid;
......
$view = new View('template');
$view->header = new View('base/header');
// $view->content = new View('content', $data);
$view->content = new View('show_device');
//$view->content->submenu = $submenu;
$view->content->headline = url_lang::lang('texts.Device detail').' - '.$device->name;
$view->content->device = $device;
$view->content->device_type = $device_type;
// to do - will be solved by autonomous table
//$view->content->engineers = $arr_engineers;
$view->content->count_iface = $iface_model->count_ifaces_of_device($device->id);
$view->content->ifaces = $ifaces;
$view->content->ip_iface = $ip_iface;
......
$view->content->table_device_admins = $grid_device_admins;
$view->content->table_ifaces = $grid_ifaces;
$view->content->table_ports = $grid_ports;
if($ssMember_id)
{
$view->content->link_back = html::anchor(url_lang::base().'devices/show_by_member/'.$ssMember_id, url_lang::lang('texts.Back to devices list of the member'));
$view->content->link_back = html::anchor(url_lang::base().'devices/show_by_member/'.$ssMember_id, url_lang::lang('texts.Back to devices list of the member'));
}
else
{
$view->content->link_back = html::anchor(url_lang::base().'devices/show_all/', url_lang::lang('texts.Back to devices list'));
$view->content->link_back = html::anchor(url_lang::base().'devices/show_all/', url_lang::lang('texts.Back to devices list'));
}
$view->footer = new View('base/footer');
$view->header->title = url_lang::lang('texts.Device detail').' - '.$device->name;
$view->header->menu = Controller::render_menu();
$view->render(TRUE);
}
//----- end SHOW --------------------------------------------------------------
//=============================================================================
} // end of show
//=============================================================================
//----- ADD -------------------------------------------------------------------
//=============================================================================
/**
* Function adds new device only.
* @return unknown_type
*/
function add()
{
$ssMember_id = $this->session->get('ssMember_id');
if (!$this->acl_check_new(get_class($this),'devices',$ssMember_id)) Controller::error(1);
if (!$this->acl_check_new(get_class($this),'devices',$ssMember_id))
Controller::error(1);
$form = new Forge(url_lang::base()."devices/add", '', 'POST', array('id' => 'article_form'));
$form->set_attr('class', 'form_class')->set_attr('method', 'post');
......
$form_data = $form->as_array();
$device_model = new Device_Model();
//foreach($form_data as $key => $value)
//{
// $device_model->$key = htmlspecialchars($value);
//}
$engineers_data[] = $form_data["first_engineer_id"];
if($form_data["second_engineer_id"]>0) $engineers_data[] = $form_data["second_engineer_id"];
......
$device_model->user_id = htmlspecialchars($form_data["user_id"]);
$device_model->name = htmlspecialchars($form_data["name"]);
$device_model->type = htmlspecialchars($form_data["type"]);
// $device_model->description = htmlspecialchars($form_data["description"]);
$device_model->PPPoE_logging_in = htmlspecialchars($form_data["PPPoE_logging_in"]);
$device_model->login = htmlspecialchars($form_data["login"]);
$device_model->password = htmlspecialchars($form_data["password"]);
......
}
unset($form_data);
//$device_model->save()
if ($device_saved && $device_engineer_saved) {
if ($device_saved && $device_engineer_saved)
{
$this->session->set_flash('message', url_lang::lang('texts.Device has been successfully saved.'));
//url::redirect(url_lang::base().'devices/show_all');
url::redirect(url_lang::base().'devices/show/'.$device_model->id);
exit;
}
}
//----- end validate --------------------------------------------------
$view = new View('template');
$view->header = new View('base/header');
// $view->content = new View('content', $data);
$view->content = new View('form');
$view->content->form = $form->html();
if($ssMember_id)
......
$view->header->title = url_lang::lang('texts.Add new device');
$view->header->menu = Controller::render_menu();
$view->render(TRUE);
}
//----- end ADD ---------------------------------------------------------------
//=============================================================================
} // end of add
//=============================================================================
//----- EDIT ------------------------------------------------------------------
//=============================================================================
/**
* Function edits device.
* @param $device_id
* @return unknown_type
*/
function edit($device_id = null)
{
$device = new Device_Model($device_id);
......
}
asort($arr_users);
// creates list of engineers; to do - will be solved by new table of device engineers
/*
$engineers = $model_user->select('id','name','surname','login')->orderby('id')->find_all();
$arr_engineers[0] = '----- '.url_lang::lang('texts.select user').' -----';
foreach ($engineers as $engineer) {
$arr_engineers[$engineer->id] = $engineer->surname.' '.$engineer->name.' - '.$engineer->login;
}
asort($arr_engineers);
*/
$enum_type_model = new Enum_type_Model();
$types = $enum_type_model->get_values(Enum_type_Model::$device_type_id);
......
$form->input('location_address')->label(url_lang::lang('texts.location address').':')->rules('length[3,254]')->value($device->location_address);
$form->input('location_details')->label(url_lang::lang('texts.location details').':')->rules('length[3,254]')->value($device->location_details);
$form->textarea('comment')->label(url_lang::lang('texts.comment').':')->rules('length[0,254]')->value($device->comment);
// creates dropdowns for editing engineers; to do - will be solved by new table of device engineers
/*
$form->dropdown('first_engineer_id')->label(url_lang::lang('texts.engineer').' 1:')->options($arr_engineers)->rules('required')->selected($this->session->get('user_id'));
$form->dropdown('second_engineer_id')->label(url_lang::lang('texts.engineer').' 2:')->options($arr_engineers);
*/
$form->submit('submit')->value(url_lang::lang('texts.update'));
special::required_forge_style($form, ' *', 'required');
//----- validate form and save data -----------------------------------
// validation
if($form->validate())
{
$form_data = $form->as_array();
......
}
$device_model_saved = $device_model->save();
// saves device engineers; to do - will be solved by new table of device engineers
/*
$engineers_data[] = $form_data["first_engineer_id"];
if($form_data["second_engineer_id"] > 0)
$engineers_data[] = $form_data["second_engineer_id"];
foreach($engineers_data as $engineer_data)
{
$device_engineer_model = new Device_engineer_Model();
$device_engineer_model->device_id = $device_model->id;
$device_engineer_model->user_id = $engineer_data;
$device_engineer_saved = $device_engineer_model->save();
}
*/
unset($form_data);
if ($device_model_saved )//&& $device_engineer_saved)
if ($device_model_saved )
{
$this->session->set_flash('message', url_lang::lang('texts.Device has been successfully updated.'));
url::redirect(url_lang::base().'devices/show/'.$device_model->id);
......
} // end of validation
$view = new View('template');
$view->header = new View('base/header');
// $view->content = new View('content', $data);
$view->content = new View('form');
$view->content->form = $form->html();
$view->content->link_back = html::anchor(url_lang::base().'devices/show_all/', url_lang::lang('texts.Back to devices list'));
......
{
// gets member id from current session
$ssMember_id = $this->session->get('ssMember_id');
if (!$this->acl_check_new(get_class($this),'devices',$ssMember_id)) Controller::error(1);
// access rights
if (!$this->acl_check_new(get_class($this),'devices',$ssMember_id))
Controller::error(1);
$form = new Forge(url_lang::base()."devices/add_whole", '', 'POST', array('id' => 'article_form'));
$form->set_attr('class', 'form_class')->set_attr('method', 'post');
......
} // end of function add_whole
/**
* Checks validity of ip address.
* Function checks validity of ip address.
* @param $input ip address to validate
* @return unknown_type
*/
......
}
/**
* Checks ip address if matches subnet and mask.
* Function checks ip address if matches subnet and mask.
* @param $ip
* @param $net
* @param $mask
freenetis/trunk/kohana/application/upgrade_sql/upgrade_sql_358.php
(38, 'Members_Controller', 'organization_id');"
);
?>
?>
freenetis/trunk/kohana/application/upgrade_sql/upgrade_sql_359.php
<?php
$upgrade_sql[359] = array(
"INSERT INTO `acl` (`id`, `section_value`, `allow`, `enabled`, `return_value`, `note`, `updated_date`) VALUES
(64, 'user', 1, 1, '', 'Radni clenove si mohou vytvaret, editovat a mazat sve prace.', 1248160179);",
"INSERT INTO `aco` (`id`, `section_value`, `value`, `order_value`, `name`, `hidden`) VALUES
(36, 'menu', 'my_works', 1, 'My works', 0);",
"INSERT INTO `aco_map` (`acl_id`, `section_value`, `value`) VALUES
(34, 'menu', 'my_works'),
(64, 'freenetis', 'delete_own'),
(64, 'freenetis', 'edit_own'),
(64, 'freenetis', 'new_own'),
(64, 'freenetis', 'view_own');",
"UPDATE `acl_seq` SET `id` = '64' WHERE `acl_seq`.`id` = 63 LIMIT 1;",
... Rozdílový soubor je zkrácen, protože jeho délka přesahuje max. limit.

Také k dispozici: Unified diff