Projekt

Obecné

Profil

« Předchozí | Další » 

Revize 197

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

Dodelana editace prekladu. Predelana sprava techniku zarizeni. Je mozna libovolne pridavat a menit techniky zarizeni. Chybi osetreni prav, ceka se na Klimu, az je da do poradku.

Zobrazit rozdíly:

freenetis/trunk/kohana/application/i18n/cs_CZ/texts.php
'add new contact' => 'Přidat nový kontakt',
'add new device' => 'Přidat nové zařízení',
'add new device admin' => 'Přidat nového správce zařízení',
'add new device engineer' => 'Přidat nového technika zařízení',
'add new interface' => 'Přidat nové rozhraní',
'add new ip address' => 'Přidat novou IP adresu',
'add new member' => 'Přidat nového člena',
'add new port' => 'Přidat nový port',
'add new segment' => 'Přidat nový segmnet',
'add new segment' => 'Přidat nový segment',
'add new subnet' => 'Přidat novu podsíť',
'add new translation' => 'Přidat nový překlad',
'add new user' => 'Přidat nového uživatele',
......
'device admin is successfully saved' => 'Správce zařízení byl úspěšně uložen.',
'device admin is successfully updated' => 'Správce zařízení byl úspěšně upraven.',
'device admins' => 'Správci zařízení',
'device engineers' => 'Technici zařízení',
'device detail' => 'Detail zařízení',
'device is successfully saved' => 'Zařízení bylo úspěšně uloženo.',
'device is successfully updated' => 'Zařízení bylo úspěšně upraveno.',
......
'edit registrations' => 'Upravit přihlášky',
'edit segment' => 'Úprava segmentu',
'edit the work' => 'Upravit práci',
'edit translation' => 'Upravit překlad',
'edit user' => 'Upravit uživatele',
'edit vlan interface' => 'Úprava VLAN rozhraní',
'edit vlan' => 'Úprava VLANu',
......
'netmask' => 'Maska',
'network address' => 'Síťová adresa',
'networks' => 'Síť',
'new device admin was successfully saved.' => 'Nový správce zařízení byl úspěšně uložen.',
'new member' => 'Nový člen',
'new password' => 'Nové heslo',
'new transfer' => 'Nová transakce',
......
'registration' => 'Přihláška',
'registrations' => 'Přihlášky',
'registration form' => 'Registrační formulář',
'remove' => 'Odebrat',
'save changes' => 'Uložit změny',
'save' => 'Uložit',
'send' => 'Odeslat',
freenetis/trunk/kohana/application/controllers/device_engineers.php
<?php
class Device_engineers_Controller extends Controller
{
/**
* 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'));
if ($ssDevice_id)
{
$device = new Device_Model($ssDevice_id);
$form->dropdown('device_id')->label(url_lang::lang('texts.Device name'))->options(array($ssDevice_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');
}
$user_model = new User_Model();
$Device_engineer_Model = new Device_engineer_Model();
if($ssDevice_id)
$engineers = $Device_engineer_Model->find_all_by_device_id($ssDevice_id);
else
$engineers = array();
$users = $user_model->find_all();
$arr_users[0] = '----- '.url_lang::lang('texts.select user').' -----';
foreach($users as $user)
{
$clause = 1;
foreach($engineers as $engineer)
if($engineer->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'));
special::required_forge_style($form, ' *', 'required');
//----- validate form and save data -----------------------------------
if($form->validate())
{
$form_data = $form->as_array();
$device_engineer = new Device_engineer_Model();
foreach($form_data as $key => $value)
{
$device_engineer->$key = htmlspecialchars($value);
}
$device_id = $form_data['device_id'];
unset($form_data);
if ($device_engineer->save()) {
$this->session->set_flash('message', url_lang::lang('texts.New device engineer was successfully saved.'));
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 = 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);
}
/**
* Removes engineer association from device.
* @param $id id of association
* @return unknown_type
*/
function remove($id = null)
{
// quimi's version of access control
//if (!$this->acl_check_new(get_class($this),'translations'))
// Controller::error(1);
if (isset($id))
{
$device_engineer_model = new Device_engineer_Model();
$device_engineer_model->find($id, FALSE)->delete($id);
if ($device_engineer_model->save())
{
url::redirect(url_lang::base().'devices/show/'.$this->session->get('ssDevice_id'));
}
else
{
$this->session->set_flash('message', url_lang::lang('texts.Error - can\'t remove engineer.'));
}
}
else
{
Controller::warning(1);
}
}
}
?>
freenetis/trunk/kohana/application/controllers/translations.php
if (isset($id))
{
$translation_model = new Translation_model();
// creates translation model with given id
$translation = new Translation_Model($id);
// creates form for editing
$form = new Forge(url_lang::base()."translations/edit/".$id, '', 'POST', array('id' => 'article_form'));
$form->set_attr('class', 'form_class')->set_attr('method', 'post');
// creates input fields and fills them with data
$form->input('original_term')->label(url_lang::lang('texts.Original term').':')->rules('required|length[1,254]')->value($translation->original_term);
$form->input('translated_term')->label(url_lang::lang('texts.Translated term').':')->rules('required|length[1,254]')->value($translation->translated_term);
$form->input('lang')->label(url_lang::lang('texts.Destination language').':')->rules('required|length[1,50]')->value($translation->lang);
$form->submit('submit')->value(url_lang::lang('texts.Update'));
// sets required fields
special::required_forge_style($form, ' *', 'required');
// validates form
if ($form->validate())
{
$form_data = $form->as_array();
$translation_model = new Translation_Model();
$translation_model->find_by_id($id);
foreach($form_data as $key => $value)
{
$translation_model->$key = htmlspecialchars($value);
}
unset($form_data);
if ($translation_model->save())
{
$this->session->set_flash('message', url_lang::lang('texts.Translation was successfully updated.'));
url::redirect(url_lang::base().'translations/show_all');
exit;
}
}
// view for editing user
$view = new View('template');
$view->header = new View('base/header');
$view->content = new View('translations/edit');
$view->footer = new View('base/footer');
$view->header->menu = Controller::render_menu();
$view->header->title = url_lang::lang('texts.Edit translation');
$view->header->other_styles = html::stylesheet('media/css/forms.css');
$view->content->form = $form->html();
$view->render(TRUE);
}
else
{
freenetis/trunk/kohana/application/controllers/device_admins.php
unset($form_data);
if ($device_admin->save()) {
$this->session->set_flash('message', url_lang::lang('texts.New device admin is successfully saved.'));
$this->session->set_flash('message', url_lang::lang('texts.New device admin was successfully saved.'));
url::redirect(url_lang::base().'devices/show/'.$device_id);
exit;
}
......
//----- end EDIT --------------------------------------------------------------
//=============================================================================
/**
* Removes admin association from device.
* @param $id id of association
* @return unknown_type
*/
function remove($id = null)
{
// quimi's version of access control
//if (!$this->acl_check_new(get_class($this),'translations'))
// Controller::error(1);
if (isset($id))
{
$device_admin_model = new Device_admin_Model();
$device_admin_model->find($id, FALSE)->delete($id);
if ($device_admin_model->save())
{
url::redirect(url_lang::base().'devices/show/'.$this->session->get('ssDevice_id'));
}
else
{
$this->session->set_flash('message', url_lang::lang('texts.Error - can\'t remove engineer.'));
}
}
else
{
Controller::warning(1);
}
}
}
?>
freenetis/trunk/kohana/application/controllers/devices.php
$user_model = new User_Model;
$iface_model = new Iface_Model;
$ifaces = $iface_model->find_all_by_device_id($device->id);
$ip_model = new Ip_address_Model;
$subnet_model = new Subnet_Model;
// previous version of showing engineers
/*
$device_engineer_model = new Device_engineer_Model();
$engineers = $device_engineer_model->find_all_by_device_id($device->id);
$ifaces = $iface_model ->find_all_by_device_id($device->id);
$arr_engineers = array();
foreach($engineers as $engineer) {
foreach($engineers as $engineer)
{
$arr_engineers[] = $engineer->user->name . ' ' . $engineer->user->surname;
}
*/
//print_r($ifaces);
$i = 0;
$ip_iface = '';
......
}
}
// shows 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 = new Grid(url_lang::base().'devices', null, array(
'use_paginator' => false,
'use_selector' => false
));
// to do - set up rights
//if ($this->acl_check_new(get_class($this),'engineer',$member_id))
$grid->add_new_button(url_lang::base().'device_engineers/add', url_lang::lang('texts.Add new device engineer'));
$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.User name'));
$grid->action_field('id')->label(url_lang::lang('texts.Remove')) ->url(url_lang::base().'device_engineers/remove')->action(url_lang::lang('texts.Remove'))->class('center');
$grid->datasource($query);
$grid_device_engineers = $grid;
unset($grid);
// shows 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')
->orderby('id','ASC')
->find_all_by_device_id($device_id);
$grid = new Grid(url_lang::base().'devices', null, array(
'use_paginator' => false,
'use_selector' => false
));
if ($this->acl_check_new(get_class($this),'admin',$member_id))
$grid->add_new_button(url_lang::base().'device_admins/add', url_lang::lang('texts.Add new device admin'));
$grid->field('id')->label('ID')->class('center');
$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'));
// bad 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.Delete')) ->url('delete') ->action(url_lang::lang('texts.Delete'))->class('center');;
$grid->datasource( $query );
$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);
......
$view->content->headline = url_lang::lang('texts.Device detail').' - '.$device->name;
$view->content->device = $device;
$view->content->device_type = $device_type;
$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;
// 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->set('arr_ip',$arr_ip);
$view->content->table_device_admins = $grid_device_admins;
$view->content->table_ifaces = $grid_ifaces;
$view->content->table_ports = $grid_ports;
$view->content->table_device_engineers = $grid_device_engineers;
$view->content->table_device_admins = $grid_device_admins;
$view->content->table_ifaces = $grid_ifaces;
$view->content->table_ports = $grid_ports;
if($ssMember_id)
{
......
$form->input('location_address')->label(url_lang::lang('texts.location address').':')->rules('length[3,254]');
$form->input('location_details')->label(url_lang::lang('texts.location details').':')->rules('length[3,254]');
$form->textarea('comment')->label(url_lang::lang('texts.comment').':')->rules('length[0,254]');
$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->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.Save'));
special::required_forge_style($form, ' *', 'required');
......
$device_engineer_saved = TRUE;
// saves device engineers
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_saved && $device_engineer_model->save();
}
unset($form_data);
......
$arr_users[$user->id] = $user->surname.' '.$user->name.' - '.$user->login;
}
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::id_type_of_device);
......
$form->dropdown('user_id')->label(url_lang::lang('texts.user'))->options($arr_users)->rules('required')->selected($device->user_id);
$form->input('name')->label(url_lang::lang('texts.Device name').':')->rules('required|length[3,250]')->value($device->name);
$form->dropdown('type')->label(url_lang::lang('texts.type'))->options($types)->rules('required')->selected($device->type);
$form->dropdown('type')->label(url_lang::lang('texts.type'))->options($types)->rules('required')->selected($device->type);
$form->checkbox('PPPoE_logging_in')->label(url_lang::lang('texts.PPPoE'))->value('1')->checked($device->PPPoE_logging_in);
$form->input('login')->label(url_lang::lang('texts.username').':')->rules('length[0,250]')->value($device->login);
$form->input('password')->label(url_lang::lang('texts.password').':')->rules('length[0,250]')->value($device->password);
......
$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');
......
if($form->validate())
{
$form_data = $form->as_array();
// saves device changes
$device_model = new Device_Model();
$device_model->find_by_id($device_id);
foreach($form_data as $key => $value)
{
$device_model->$key = htmlspecialchars($value);
}
$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->save()) {
if ($device_model_saved )//&& $device_engineer_saved)
{
$this->session->set_flash('message', url_lang::lang('texts.Device is successfully updated.'));
url::redirect(url_lang::base().'devices/show/'.$device_model->id);
exit;
freenetis/trunk/kohana/application/views/show_device.php
<th><?php echo url_lang::lang('texts.ID') ?></th>
<td><?php echo $device->id ?></td>
</tr>
<!-- list of engineers will be replaced by autonomous table
<tr>
<th><?php if(count($engineers)<=1) echo url_lang::lang('texts.Engineer'); else echo url_lang::lang('texts.Engineers')?></th>
<td><?php echo implode(', ',$engineers) ?></td>
<th><?php //if(count($engineers)<=1) echo url_lang::lang('texts.Engineer'); else echo url_lang::lang('texts.Engineers')?></th>
<td><?php //echo implode(', ',$engineers) ?></td>
</tr>
-->
<tr>
<th><?php echo url_lang::lang('texts.User') ?></th>
<td><?php echo html::anchor(url_lang::base().'users/show/'.$device->user->id,$device->user->name.' '.$device->user->surname); ?></td>
......
<td><?php echo $device->comment ?></td>
</tr>
</table><br />
<?php if ($this->acl_check_view(get_class($this),'admin',$device->user->member_id)) { ?>
<!-- device engineers -->
<?php //if ($this->acl_check_view(get_class($this),'engineer',$device->user->member_id)) { ?>
<h3><?php echo url_lang::lang('texts.Device engineers') ?></h3>
<?php echo $table_device_engineers ?>
<br />
<?php //} ?>
<?php if ($this->acl_check_view(get_class($this),'admin',$device->user->member_id)) { ?>
<h3><?php echo url_lang::lang('texts.Device admins') ?></h3>
<?php echo $table_device_admins ?>
<br />
freenetis/trunk/kohana/application/views/translations/edit.php
<h2><?php echo url_lang::lang('texts.Edit translation') ?></h2><br />
<?php echo html::anchor(url_lang::base().'translations/show_all/',url_lang::lang('texts.Back to list of translations')) ?>
<br /><br />
<?php echo $form?>

Také k dispozici: Unified diff