Perfiles funcionales

git-svn-id: https://192.168.0.254/svn/Proyectos.Incam_IntranetNueva/trunk@51 77cfc57b-8ef4-1849-9df6-4a38aa5da120
This commit is contained in:
roberto 2012-04-23 14:42:43 +00:00
parent 82d2b25aaa
commit 540f207ddd
9 changed files with 299 additions and 1 deletions

View File

@ -0,0 +1,101 @@
<?php
class PerfilFuncionalController extends Controller
{
/**
* Creates a new model.
* If creation is successful, the browser will be redirected to the 'view' page.
*/
public function actionCreate()
{
$model=new PerfilFuncional;
// Uncomment the following line if AJAX validation is needed
// $this->performAjaxValidation($model);
if(isset($_POST['PerfilFuncional']))
{
$model->attributes=$_POST['PerfilFuncional'];
if($model->save())
$this->redirect(array('index','id'=>$model->id));
}
$this->render('create',array(
'model'=>$model,
));
}
/**
* Updates a particular model.
* If update is successful, the browser will be redirected to the 'view' page.
* @param integer $id the ID of the model to be updated
*/
public function actionUpdate($id)
{
$model=$this->loadModel($id);
// Uncomment the following line if AJAX validation is needed
// $this->performAjaxValidation($model);
if(isset($_POST['PerfilFuncional']))
{
$model->attributes=$_POST['PerfilFuncional'];
if($model->save())
$this->redirect(array('index','id'=>$model->id));
}
$this->render('update',array(
'model'=>$model,
));
}
/**
* Deletes a particular model.
* If deletion is successful, the browser will be redirected to the 'admin' page.
* @param integer $id the ID of the model to be deleted
*/
public function actionDelete($id)
{
if(Yii::app()->request->isPostRequest)
{
// we only allow deletion via POST request
$this->loadModel($id)->delete();
// if AJAX request (triggered by deletion via admin grid view), we should not redirect the browser
if(!isset($_GET['ajax']))
$this->redirect(isset($_POST['returnUrl']) ? $_POST['returnUrl'] : array('admin'));
}
else
throw new CHttpException(400,'Invalid request. Please do not repeat this request again.');
}
/**
* Lists all models.
*/
public function actionIndex()
{
$model=new PerfilFuncional('search');
$model->unsetAttributes(); // clear any default values
if(isset($_GET['PerfilFuncional']))
$model->attributes=$_GET['PerfilFuncional'];
$this->render('index',array(
'model'=>$model,
));
}
/**
* Returns the data model based on the primary key given in the GET variable.
* If the data model is not found, an HTTP exception will be raised.
* @param integer the ID of the model to be loaded
*/
public function loadModel($id)
{
$model=PerfilFuncional::model()->findByPk($id);
if($model===null)
throw new CHttpException(404,'The requested page does not exist.');
return $model;
}
}

View File

@ -81,8 +81,13 @@ class PerfilFuncional extends CActiveRecord
$criteria->compare('id',$this->id);
$criteria->compare('descripcion',$this->descripcion,true);
$sort = new CSort;
$sort->defaultOrder = 'descripcion ASC';
return new CActiveDataProvider($this, array(
'criteria'=>$criteria,
'sort' => $sort,
));
}
}

View File

@ -10,7 +10,7 @@ $this->menu=array(
'linkOptions'=>array('class'=>'iconlink'),
),
array(
'label'=>'<img class="mgright5" alt="Nuevo pefil técníco" src="' . Yii::app()->baseUrl . '/images/icons/small/white/user.png"/>Nuevo perfil técnico',
'label'=>'<img class="mgright5" alt="Nuevo perfil técníco" src="' . Yii::app()->baseUrl . '/images/icons/small/white/user.png"/>Nuevo perfil técnico',
'url'=>array('create'),
'linkOptions'=>array('class'=>'iconlink2'),
),

View File

@ -0,0 +1,41 @@
<?php $form=$this->beginWidget('CActiveForm', array(
'id'=>'perfilfuncional-form',
'enableAjaxValidation'=>false,
)); ?>
<div class="two_third last">
<div class="notification msginfo">
<a class="close"></a>
<p>Los campos marcados con <span class="required">*</span> son obligatorios.</p>
</div><!-- notification msginfo -->
<?php echo $form->errorSummary($model, "<a class='close'></a>", "", array('class'=>"notification msgerror")); ?>
</div>
<br clear="all" />
<div class="widgetbox two_third last form_default">
<h3>
<span>
<legend>Datos del perfil funcional</legend>
</span>
</h3>
<div class="content nopadding">
<div class="padding1020 ">
<?php echo $form->labelEx($model,'descripcion'); ?>
<div class="marginleft150">
<?php echo $form->textField($model,'descripcion',array('maxlength'=>255,'class'=>'mf')); ?>
<?php echo $form->error($model,'descripcion', array('class'=>'errortext')); ?>
</div>
</div>
<div class="padding1020">
<button type="submit"><?php echo $model->isNewRecord ? 'Crear' : 'Guardar'; ?></button>
</div>
</div>
</div> <!--widgetbox-->
<br clear="all" />
<?php $this->endWidget(); ?>

View File

@ -0,0 +1,24 @@
<div class="wide form">
<?php $form=$this->beginWidget('CActiveForm', array(
'action'=>Yii::app()->createUrl($this->route),
'method'=>'get',
)); ?>
<div class="row">
<?php echo $form->label($model,'id'); ?>
<?php echo $form->textField($model,'id'); ?>
</div>
<div class="row">
<?php echo $form->label($model,'descripcion'); ?>
<?php echo $form->textField($model,'descripcion',array('size'=>60,'maxlength'=>255)); ?>
</div>
<div class="row buttons">
<?php echo CHtml::submitButton('Search'); ?>
</div>
<?php $this->endWidget(); ?>
</div><!-- search-form -->

View File

@ -0,0 +1,17 @@
<?php
$this->breadcrumbs=array(
Yii::t('intranet', 'Perfil funcional')=>array('index'),
Yii::t('intranet', 'Nuevo perfil funcional'),
);
$this->menu=array(
array(
'label'=>'<img class="mgright5" alt="Lista de perfiles funcionales" src="' . Yii::app()->baseUrl . '/images/icons/small/white/user.png"/>Lista de perfiles funcionales',
'url'=>array('index'),
'linkOptions'=>array('class'=>'iconlink'),
),
);
$this->pageTitle=Yii::t('intranet', 'Nuevo perfil funcional');
?>
<?php echo $this->renderPartial('_form', array('model'=>$model)); ?>

View File

@ -0,0 +1,86 @@
<?php
$this->breadcrumbs = array(
Yii::t('Intranet', 'Perfil funcional'),
);
$this->menu = array(
array(
'label'=>'<img class="mgright5" alt="' . Yii::t('intranet', 'Nuevo perfil funcional') . '" src="' . Yii::app()->baseUrl . '/images/icons/small/white/user.png"/>' . Yii::t('intranet', 'Nueva perfil funcional'),
'url'=>array('create'),
'linkOptions'=>array('class'=>'iconlink'),
),
);
$this->pageTitle = Yii::t('intranet', 'Gestión de perfiles funcionales');
?>
<div class="search-form" style="display:none">
<?php $this->renderPartial('_search',array(
'model'=>$model,
)); ?>
</div>
<div class="clear"></div>
<div class="dataTables_wrapper">
<div class="top">
<div class="dataTables_length">
<?php
$this->widget('application.extensions.PageSize.PageSize', array(
'mGridId' => 'perfilfuncional-grid',
'mPageSize' => @$_GET['pageSize'],
'mDefPageSize' => Yii::app()->params['defaultPageSize'],
'mPageSizeOptions' => Yii::app()->params['pageSizeOptions'],
));
?>
</div>
<div class="dataTables_filter">
<label class="disabled">Buscar: <input type="text" disabled /></label>
</div>
</div>
<?php
$columns = array(
array(
'header'=>Yii::t('intranet', 'Acciones'),
'class'=>'CButtonColumn',
'headerHtmlOptions'=>array(
'style' => 'width:55px;',
'class' => 'head1',
),
'template'=>'{update}{delete}',
'cssClassExpression' => '"con1"',
),
array(
'type' => 'html',
'name' => 'descripcion',
'value' => 'CHtml::link(CHtml::encode($data->descripcion), array("update", "id"=>$data->id));',
'headerHtmlOptions'=>array(
'class' => 'head0',
),
'cssClassExpression' => '"con0"',
),
);
$dataProvider = $model->search();
$pageSize = Yii::app()->user->getState('pageSize', Yii::app()->params['defaultPageSize']);
$dataProvider->getPagination()->setPageSize($pageSize);
$this->widget('application.extensions.SelGridView', array(
'id'=>'perfilfuncional-grid',
'dataProvider'=>$dataProvider,
'columns'=>$columns,
'filter'=>$model,
'filterPosition' => 'footer',
'cssFile' => Yii::app()->baseUrl . '/css/gridview2.css',
'itemsCssClass' => 'display',
'pagerCssClass' => 'dataTables_paginate',
'template' => '{items}{summary}{pager}',
'emptyText' => Yii::t('intranet', 'No hay perfiles técnicos'),
'summaryCssClass' => 'dataTables_info',
'summaryText' => 'Mostrando registros del {start} al {end} de {count} en total.',
'selectableRows' => 1,
));
?>
</div>

View File

@ -0,0 +1,23 @@
<?php
$this->breadcrumbs=array(
Yii::t('intranet', 'Perfil funcional')=>array('index'),
Yii::t('intranet', 'Modificar perfil funcional'),
);
$this->menu=array(
array(
'label'=>'<img class="mgright5" alt="Lista de perfiles funcionales" src="' . Yii::app()->baseUrl . '/images/icons/small/white/user.png"/>Lista de perfiles funcionales',
'url'=>array('index'),
'linkOptions'=>array('class'=>'iconlink'),
),
array(
'label'=>'<img class="mgright5" alt="Nuevo perfil funcional" src="' . Yii::app()->baseUrl . '/images/icons/small/white/user.png"/>Nuevo perfil funcional',
'url'=>array('create'),
'linkOptions'=>array('class'=>'iconlink2'),
),
);
$this->pageTitle=Yii::t('intranet', 'Modificar perfil funcional ') . $model->descripcion;
?>
<?php echo $this->renderPartial('_form', array('model'=>$model)); ?>

View File

@ -10,5 +10,6 @@ $this->breadcrumbs = array(
<li><?php echo CHtml::link('<img src="images/icons/document.png" alt="Titulaciones" /><span>Titulaciones</span>', $this->createAbsoluteUrl('/titulacion')); ?></li>
<li><?php echo CHtml::link('<img src="images/icons/document.png" alt="Tecnologias" /><span>Tecnologías</span>', $this->createAbsoluteUrl('/tecnologia')); ?></li>
<li><?php echo CHtml::link('<img src="images/icons/document.png" alt="Perfiles Técnicos" /><span>Perfiles Técnicos</span>', $this->createAbsoluteUrl('/PerfilTecnico')); ?></li>
<li><?php echo CHtml::link('<img src="images/icons/document.png" alt="Perfiles Funcionales" /><span>Perfiles Funcionales</span>', $this->createAbsoluteUrl('/PerfilFuncional')); ?></li>
</ul>
<!-- END WIDGET LIST -->