public function actionIndex() { $usuarioActual = Usuario::model()->find('usuario=:x', array(':x' => Yii::app()->user->name)); $detalleProyectos = DetalleProyecto::model()->findAll('responsable_did =' . $usuarioActual->id . '&& ayuda_did = 3'); if (isset($usuarioActual) && $usuarioActual->tipoUsuario_did == 1) { $actividades = Actividad::model()->findAll(array('order' => 'id DESC')); $proyectos = Proyecto::model()->findAll(array("order" => "responsable_did ASC", "condition" => "estatus_did = 1")); $this->render('administracion', array("actividades" => $actividades, 'proyectos' => $proyectos, 'detalleProyectos' => $detalleProyectos, 'usuarioActual' => $usuarioActual)); } else { if (isset($usuarioActual) && $usuarioActual->tipoUsuario_did == 2) { $model = new LoginForm(); // if it is ajax validation request if (isset($_POST['ajax']) && $_POST['ajax'] === 'login-form') { echo CActiveForm::validate($model); Yii::app()->end(); } // collect user input data if (isset($_POST['LoginForm'])) { $model->attributes = $_POST['LoginForm']; Yii::app($model->username . ' se ha logueado', 'info', 'application.*'); // validate user input and redirect to the previous page if valid if ($model->validate() && $model->login()) { Yii::app()->db->createCommand("insert into Actividad (mensaje, usuario) \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tValues ('Ha iniciado sesión', \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t'" . $model->username . "')")->execute(); $this->redirect(Yii::app()->user->returnUrl); } } // display the login form $this->render('login', array('model' => $model)); } else { if (isset($usuarioActual) && $usuarioActual->tipoUsuario_did != 2 || isset($usuarioActual) && $usuarioActual->tipoUsuario_did != 1) { $proyectos = Proyecto::model()->findAll("responsable_did = " . $usuarioActual->id); $this->render('staff', array('usuarioActual' => $usuarioActual, 'proyectos' => $proyectos, 'detalleProyectos' => $detalleProyectos)); } } } }
$this->pageDescription='comentario'; $this->breadcrumbs=array( 'Comentario'=>array('index'), 'Adminsitrar', ); $this->menu=array( array('label'=>'Listar Comentario','url'=>array('index')), array('label'=>'Crear Comentario','url'=>array('create')), ); $this->widget('bootstrap.widgets.TbGridView',array( 'id'=>'comentario-grid', 'dataProvider'=>$model->search(), 'filter'=>$model, 'columns'=>array( 'id', array('name'=>'detalleProyecto_did', 'value'=>'$data->detalleProyecto->nombre', 'filter'=>CHtml::listData(DetalleProyecto::model()->findAll(), 'id', 'nombre'),), 'descripcion', array('name'=>'estatus_did', 'value'=>'$data->estatus->nombre', 'filter'=>CHtml::listData(Estatus::model()->findAll(), 'id', 'nombre'),), 'fechaCreacion_f', array( 'class'=>'bootstrap.widgets.TbButtonColumn', ), ), )); ?>
public function edit_detalle_ajax() { // If there was an error, respond with 404 status if (!Request::ajax() || !Auth::check()) { return Response::json(array('success' => false), 200); } if (Auth::check()) { $data["user"] = Session::get('user'); $data["permisos"] = Session::get('permisos'); $data["user_info"] = User::searchUserById($data["user"]->id)->get(); if (in_array('side_nuevo_proyecto', $data["permisos"])) { $iddetalle_proyectos = Input::get('iddetalle'); $detalle_proyecto = DetalleProyecto::find($iddetalle_proyectos); $nombre_disponible = DetalleProyecto::getNombreDisponibleEdit($detalle_proyecto->iddetalle_proyectos, $detalle_proyecto->idproyectos, Input::get('titulo_detalle'))->get(); if ($nombre_disponible->isEmpty()) { $nombre_disponible = null; $detalle_proyecto->titulo = Input::get('titulo_detalle'); $detalle_proyecto->presupuesto = Input::get('presupuesto_detalle'); $detalle_proyecto->gasto_real = Input::get('gasto_real_detalle'); $detalle_proyecto->save(); // Llamo a la función para registrar el log de auditoria $descripcion_log = "Se editó el detalle con id {{$detalle_proyecto->iddetalle_proyectos}} para el proyecto con id {{$detalle_proyecto->idproyectos}}"; Helpers::registrarLog(4, $descripcion_log); } return Response::json(array('success' => true, 'nombre_disponible' => $nombre_disponible), 200); } else { return Response::json(array('success' => false), 200); } } else { return Response::json(array('success' => false), 200); } }
<div class="clearfix"> <?php echo $form->label($model,'id'); ?> <div class="input"> <?php echo $form->textField($model,'id',array('size'=>11,'maxlength'=>11,'class'=>'form-control')); ?> </div> </div> <div class="clearfix"> <?php echo $form->label($model,'detalleProyecto_did'); ?> <div class="input"> <?php echo $form->dropDownList($model,"detalleProyecto_did",CHtml::listData(DetalleProyecto::model()->findAll(), 'id', 'nombre')); ?> </div> </div> <div class="clearfix"> <?php echo $form->label($model,'descripcion'); ?> <div class="input"> <?php echo $form->textArea($model,'descripcion',array('rows'=>6, 'cols'=>50)); ?> </div> </div> <div class="clearfix"> <?php echo $form->label($model,'estatus_did'); ?> <div class="input">
'Proyecto', ); $this->menu=array( array('label'=>'Volver','url'=>array('site/index')), array('label'=>'Crear Proyecto','url'=>array('create')), ); $c = 0; $categoriaTmp = 0; foreach($proyectos as $proyecto){ $c++; $actividadesPendientes = DetalleProyecto::model()->findAll("estatus_did = 3 && proyecto_did = :p || estatus_did = 1 && proyecto_did = :p", array(":p"=>$proyecto->id)); $actividadesRealizadas = DetalleProyecto::model()->findAll("estatus_did = 2 && proyecto_did = :p", array(":p"=>$proyecto->id)); $actividadesTotales = DetalleProyecto::model()->findAll("proyecto_did = " . $proyecto->id); if (time() < strtotime($proyecto->fechaFin_ft) && time() > strtotime($proyecto->fechaInicio_ft)){ $actual = new DateTime("now"); $inicio = new DateTime($proyecto->fechaInicio_ft); $fin = new DateTime($proyecto->fechaFin_ft); $tiempoProduccion = date_diff($inicio, $fin); $actual = date_diff($inicio, $actual); $avance = ($actual->format('%a') / $tiempoProduccion->format('%a'))*100; } else if(time() < strtotime($proyecto->fechaInicio_ft)){ $avance = 0; } else if(time() > strtotime($proyecto->fechaFin_ft)){ $avance = 100; } ?> <h1> <?php
public function actionImprimir($id) { $proyecto = Proyecto::model()->findByPk($id); $actividades = DetalleProyecto::model()->findAll('proyecto_did=' . $id); $this->layout = "pdf"; $mPDF1 = Yii::app()->ePdf->mpdf(); $stylesheet = file_get_contents(Yii::getPathOfAlias('webroot.themes.bootstrap.css') . '/print.css'); $mPDF1->WriteHTML($stylesheet, 1); $mPDF1->AddPage('P'); $mPDF1->WriteHTML($this->renderPartial('imprimir', array('proyecto' => $proyecto, 'actividades' => $actividades), true), 2); $mPDF1->Output(); }
<?php $form=$this->beginWidget('bootstrap.widgets.TbActiveForm',array( 'id'=>'comentario-form', 'type'=>'horizontal', 'enableAjaxValidation'=>false, )); ?> <div class="alert alert-info"> <button type="button" class="close" data-dismiss="alert">×</button> <h4>Instrucciones</h4> Los campos con <span class="required">*</span> son requeridos. </div> <?php echo $form->errorSummary($model); ?> <div class="form-group"> <?php echo $form->labelEx($model,'detalleProyecto_did',array('class'=>'control-label col-lg-2')); ?> <div class="col-lg-3"> <?php echo $form->dropDownList($model,'detalleProyecto_did',CHtml::listData(DetalleProyecto::model()->findAll(), "id", "nombre"),array("class"=>"form-control")); ?> <?php echo $form->error($model,'detalleProyecto_did'); ?> </div> </div> <div class="form-group"> <?php echo $form->labelEx($model,'descripcion',array('class'=>'control-label col-lg-2')); ?> <div class="col-lg-3"> <?php echo $form->textArea($model,'descripcion',array('rows'=>6, 'cols'=>50)); ?> <?php echo $form->error($model,'descripcion'); ?> </div> </div> <div class="form-group"> <?php echo $form->labelEx($model,'estatus_did',array('class'=>'control-label col-lg-2')); ?> <div class="col-lg-3"> <?php echo $form->dropDownList($model,'estatus_did',CHtml::listData(Estatus::model()->findAll(), "id", "nombre"),array("class"=>"form-control")); ?> <?php echo $form->error($model,'estatus_did'); ?> </div> </div>
<?php $this->pageCaption='Solicitudes'; $this->pageTitle=Yii::app()->name . ' - ' . $this->pageCaption; $this->pageDescription='Pendientes'; $this->breadcrumbs=array( 'Actividad'=>array('index'), $model->id, ); $usuarioActual = Usuario::model()->obtenerUsuarioActual(); ?> <?php $ayudas = DetalleProyecto::model()->findAll('ayuda_did=3 && responsable_did='.$usuarioActual->id); $ayudaPendiente = new DetalleProyecto; foreach ($ayudas as $ayuda) {?> <div class="well"> <?php $this->widget('zii.widgets.CDetailView', array( 'data'=>$ayuda, 'baseScriptUrl'=>false, 'cssFile'=>false, 'htmlOptions'=>array('class'=>'table table-bordered table-striped'), 'attributes'=>array( 'id', 'nombre', 'descripcion', array( 'name'=>'proyecto_did', 'value'=>$ayuda->proyecto->nombre,), ), )); ?> <div style="margin-right:1px;" class="row"> <?php echo CHtml::link('<button class="btn btn-info pull-right">Aceptar</button>',array( 'detalleProyecto/update','id'=>$ayuda->id,'Ayuda'=>1)); echo CHtml::link('<button style="margin-right:10px;" class="btn btn-danger pull-right">Rechazar</button>',array( 'detalleProyecto/update','id'=>$ayuda->id,'Ayuda'=>2));?>
<?php $this->pageCaption='Proyectos Externos'; $this->pageTitle=Yii::app()->name . ' - ' . $this->pageCaption; $this->pageDescription='Ayudar'; $this->breadcrumbs=array( 'Proyecto', ); $c = 0; $usuarioActual = Usuario::model()->obtenerUsuarioActual(); foreach($proyectosExternos as $proyectoExterno){ $actividadesExternas = DetalleProyecto::model()->findAll('estatus_did = 1 && ayuda_did = 1 && responsable_did = :r && proyecto_did = :p || estatus_did = 3 && responsable_did = :r && proyecto_did = :p ',array(":r"=>$usuarioActual->id, ':p'=>$proyectoExterno->id)); if(count($actividadesExternas) > 0) { ?> <h3><?php echo $proyectoExterno->nombre; ?></h3> <table class="table table-bordered table-striped table-hover"> <tr class="head"> <th>No.</th> <th>Encargado</th> <th>Nombre</th> <th>Peso</th> <th>Estatus</th> <th>Acciones</th> </tr> <?php foreach($actividadesExternas as $actividadExterna){ $c++;?> <tr> <td><?php echo $c; ?></td> <td><?php echo $actividadExterna->proyecto->responsable->nombre; ?></td> <td><?php echo $actividadExterna->nombre; ?></td>
<span><?php echo CHtml::link('<i class="fa fa-sign-out"></i>',array('site/logout'),array('data-logout-msg'=>"Está seguro que desea cerrar sesión")); ?></span> </div><!-- end logout button --> <!-- fullscreen button --> <div class="btn-header transparent pull-right" id="fullscreen"> <span><a href="javascript:void(0);" onclick="launchFullscreen(document.documentElement);" title="Pantalla completa"><i class="fa fa-desktop"></i></a></span> </div> </header> <aside id="left-panel"> <!-- User info --> <div class="login-info"> <span> <?php $categorias = Categoria::model()->findAll(); ?> <?php $usuarioActual = Usuario::model()->obtenerUsuarioActual(); ?> <?php $ayudasPendientes = DetalleProyecto::model()->count('ayuda_did=3 && responsable_did='.$usuarioActual->id); ?> <?php $ayudasAceptadas = detalleProyecto::model()->count('ayuda_did=1 && responsable_did='.$usuarioActual->id); ?> <a href="<?php array("usuario/view",'id'=>$usuarioActual->id)?>" id="show-shortcut"> <img alt="me" class="online" src="<?php echo Yii::app()->theme->baseUrl . '/img/avatars/male.png';?>"> <span><?php echo $usuarioActual->nombre; ?></span> </a> </span> </div> <!-- end user info --> <nav> <?php if($usuarioActual->tipoUsuario_did == 1){ ?> <ul> <li class="active"><?php echo CHtml::link('<i class="fa fa-dashboard"></i> Cuadro de mando',array('site/index')); ?></li> <?php foreach($categorias as $cat){ ?>
public function actionCambiar($id) { if (isset($_GET["estatus"])) { $model = $this->loadModel($id); $model->estatus_did = $_GET["estatus"]; if ($_GET["estatus"] == 2) { $model->fechaFinalizado = date('Y-m-d H:i:s'); } elseif ($_GET["estatus"] == 1) { $model->fechaFinalizado = NULL; } if ($model->save()) { if ($model->estatus_did == 1) { Yii::app()->user->setFlash("warning", "No se ha realizado la actividad: " . $model->nombre . " del Proyecto " . $model->proyecto->nombre); $proyecto = Proyecto::model()->find("id = " . $model->proyecto_did); if ($proyecto->estatus_did == 2) { $proyecto->estatus_did = 1; if ($proyecto->save()) { Yii::app()->user->setFlash("info", "El proyecto: " . $proyecto->nombre . " se volvió a poner en Proceso, debido a que tiene más de 1 actividad en pendiente"); } } } else { Yii::app()->user->setFlash("info", "Se realizó la actividad: " . $model->nombre . " del Proyecto " . $model->proyecto->nombre); $criteria = new CDbCriteria(); $criteria->condition = "estatus_did = 2 && proyecto_did = " . $model->proyecto_did; $actividadesTotales = DetalleProyecto::model()->count("proyecto_did = " . $model->proyecto_did); $actividadesRealizadas = DetalleProyecto::model()->count($criteria); if ($actividadesTotales == $actividadesRealizadas) { $proyecto = Proyecto::model()->find("id = " . $model->proyecto_did); $proyecto->estatus_did = 2; if ($proyecto->save()) { Yii::app()->user->setFlash("info", "Se completó el proyecto: " . $proyecto->nombre); Yii::app()->db->createCommand("insert into Actividad (mensaje, usuario) Values ('Se completó el proyecto: " . $proyecto->nombre . "', '" . Yii::app()->user->name . "')")->execute(); } } } Yii::app()->db->createCommand("insert into Actividad (mensaje, usuario) Values ('Cambió de Estatus de la actividad " . $model->nombre . " del Proyecto " . $model->proyecto->nombre . " a " . $model->estatus->nombre . "', '" . Yii::app()->user->name . "')")->execute(); if (isset($_GET["ver"])) { $this->redirect(array("proyecto/view", 'id' => $model->proyecto_did)); } if (isset($_GET["accion"])) { $this->redirect(array("proyecto/otros")); } else { $this->redirect(array("proyecto/index")); } } } }