Conjunto e987163 en sipp
- Fecha y hora:
- 23/10/2015 17:47:51 (hace 9 años)
- Branches:
- 0.3-stable
- Children:
- 057a625
- Parents:
- 6a22cd8
- Fichero:
-
- 1 editado
Leyenda
- No modificado
- Añadido
- Eliminado
-
0.3-stable-modules/proyectos_operativos_seguimiento/accion_especifica_de_proyecto_seguimiento.module
ra0b4327 re987163 30 30 */ 31 31 function accion_especifica_de_proyecto_seguimiento_help($path, $arg) { 32 33 34 35 36 37 32 switch ($path) { 33 case "admin/help/aeproyectoseguimiento": 34 $output = '<p>'. t("Este modulo se encarga de la gestión del seguimiento de las acciones especÃficas de un proyecto operativo") .'</p>'; 35 break; 36 } 37 return $output; 38 38 } // function accion_especifica_de_proyecto_seguimiento_help 39 39 … … 42 42 */ 43 43 function accion_especifica_de_proyecto_seguimiento_menu() { 44 $items = array(); 45 46 //----------------------------------------------------------------------------Seguimiento de acciones especificas de proyectos operativos 44 $items = array(); 45 //-------------------------Seguimiento de acciones especificas de proyectos operativos 47 46 $items['node/%node/seguimiento_aeproyecto'] = array( 48 47 'title' => 'Seguimiento', … … 82 81 'weight' => 2, 83 82 ); 84 //----------------------- -----------------------------------------------------Administracion Seguimiento de acciones especificas de proyectos operativos83 //-----------------------Administracion Seguimiento de acciones especificas de proyectos operativos 85 84 $items['admin/settings/ente_planificador/seguimiento_proyecto_y_aes'] = array( 86 85 'title' => t('Seguimiento Proyecto y sus Acciones Especificas'), … … 92 91 'file' => 'includes/accion_especifica_de_proyecto_seguimiento.admin.inc', 93 92 ); 94 //------------------------ ----------------------------------------------------workflow93 //------------------------workflow 95 94 $items['node/%node/seguimiento_aeproyecto/%messegaepartida/workflow/%seg_proyecto_y_aes_wk_menu'] = array( 96 95 'title' => 'Seguimiento', … … 118 117 } 119 118 120 //**************************************************************** **********************************************************************************119 //**************************************************************** 121 120 //permisos de acceso a las paginas 122 121 … … 149 148 } // function _accion_especifica_de_proyecto_seguimiento_modificar_mes_access 150 149 151 //********************************************************** ****************************************************************************************150 //********************************************************** 152 151 /* 153 152 * Implementation of hook_ente_procesos_alter() … … 213 212 $m_fin = intval($mes_fin); 214 213 215 if (($m_inicio<=$mes)&&($m_fin>=$mes)){214 if (($m_inicio<=$mes) && ($m_fin>=$mes)) { 216 215 $resp = TRUE; 217 }else{ 216 } 217 else { 218 218 $resp = FALSE; 219 219 } 220 220 } 221 222 221 return $resp; 223 222 } … … 226 225 * verificar si por la fecha actual, esta activo el perio de ingreso de seguimiento 227 226 */ 228 function _periodo_de_seguimiento_proyecto_y_aes_esta_activo(){ 229 227 function _periodo_de_seguimiento_proyecto_y_aes_esta_activo() { 230 228 $current_time = time(); 231 229 $tipo_plan = 'proyecto_y_accionesespecificas_seguimiento'; 232 230 $mi_fecha = ente_planificador_user_acceso_proceso($tipo_plan, 2); 233 231 $fecha = FALSE; 234 235 232 if ($mi_fecha[1] + 86399 > $current_time && $mi_fecha[0] < $current_time) { 236 233 $fecha = TRUE; … … 241 238 function _es_usuario_autenticado(){ 242 239 global $user; 243 if ($user->uid > 0){240 if ($user->uid > 0) { 244 241 return TRUE; 245 242 } … … 247 244 } 248 245 249 function _permiso_para_realizar_transicion_estado($node, $mes = 0, $estadonuevo=0){ 250 246 function _permiso_para_realizar_transicion_estado($node, $mes = 0, $estadonuevo=0) { 251 247 $consultaseguimientoactual = _seguimiento_mesactual_partida_ae_deproyecto_load($node, $mes); 252 248 $estado = (isset($consultaseguimientoactual['segmes']['estado'])) ? $consultaseguimientoactual['segmes']['estado'] : -1; 253 249 254 if ($estado == $estadonuevo){250 if ($estado == $estadonuevo) { 255 251 return FALSE; 256 252 } 257 258 253 $states = _obtener_estados_seguimiento_mes(); 259 260 254 $estado_aprobado = variable_get('acciones_centralizadas_state_aprobado', NULL); 261 255 $estado_naprobado = variable_get('acciones_centralizadas_state_naprobado', NULL); 262 263 256 global $user; 264 257 $ente = usuario_tiene_ente($user->uid); 265 266 258 $roles = array_keys($user->roles); 267 259 if ($user->uid == 1) { 268 260 // Superuser is special. 269 261 $roles_transition = 'ALL'; 270 }else { 262 } 263 else { 271 264 $roles_transition = $roles; 272 265 if ($user->uid == $consultaseguimientoactual['segmes']['uid']&& $consultaseguimientoactual['segmes']['uid'] > 0) {//verificar si es el autor del seguimiento … … 289 282 * verificar nivel de usuario para modificar 290 283 */ 291 292 function _estado_seg_en_nivel_de_usuario($node, $mes=0){ 284 function _estado_seg_en_nivel_de_usuario($node, $mes=0) { 293 285 294 286 //calcular el estado 295 287 $transiciones_dispo = _obtener_transiciones_disponibles($node, $mes); 296 288 $nivel_usuario = _obtener_nivel_usuario_segun_estado($transiciones_dispo['nombre_estado_actual']); 297 298 289 $rol_ente_usuario = _obtener_rol_y_ente_de_usuario(); 299 290 300 if (($transiciones_dispo['estado_actual'] < 0)&&($rol_ente_usuario['rol']=='enlace'||$rol_ente_usuario['rol']=='administrador')){301 return true; 302 } 303 if (($nivel_usuario == $rol_ente_usuario['rol'])||$rol_ente_usuario['rol']=='administrador'){//nivel de usuario == rol actor291 if (($transiciones_dispo['estado_actual'] < 0) && ($rol_ente_usuario['rol'] == 'enlace' || $rol_ente_usuario['rol'] == 'administrador')) { 292 return true; 293 } 294 if (($nivel_usuario == $rol_ente_usuario['rol']) || $rol_ente_usuario['rol']=='administrador') {//nivel de usuario == rol actor 304 295 return TRUE; 305 296 } … … 311 302 */ 312 303 313 function _es_elmismo_ente_proyecto_y_usuario($node){ 314 304 function _es_elmismo_ente_proyecto_y_usuario($node) { 315 305 $rol_ente_usuario = _obtener_rol_y_ente_de_usuario(); 316 317 if($rol_ente_usuario['rol']=='enlace'||$rol_ente_usuario['rol']=='supervisor'){//enlace o supervisor 306 if ($rol_ente_usuario['rol']=='enlace'||$rol_ente_usuario['rol']=='supervisor') {//enlace o supervisor 318 307 $nodo_proyecto = node_load($node->field_accion_esp_proyecto[0]['nid']); 319 if ($rol_ente_usuario['id_ente'] == $nodo_proyecto->field_proyecto_ente[0]['nid']){//deben ser del mismo ente que el proyecto308 if ($rol_ente_usuario['id_ente'] == $nodo_proyecto->field_proyecto_ente[0]['nid']) {//deben ser del mismo ente que el proyecto 320 309 return TRUE; 321 }else{ 310 } 311 else { 322 312 return FALSE; 323 313 } … … 329 319 * verificar que sea el mismo ente, tanto para el proyecto como para el usuario (si es enlace o supervisor) 330 320 */ 331 332 function _seg_esta_aprobado($node, $mes=0){ 333 321 function _seg_esta_aprobado($node, $mes=0) { 334 322 $transiciones_dispo = _obtener_transiciones_disponibles($node, $mes); 335 323 $estado = $transiciones_dispo['estado_actual']; 336 337 324 $estado_aprobado = variable_get('acciones_centralizadas_state_aprobado', NULL); 338 339 325 if ($estado == $estado_aprobado) { 340 326 return TRUE; … … 346 332 * verificar anno habilitado 347 333 */ 348 function _anno_habilitado_para_seg($node){ 349 334 function _anno_habilitado_para_seg($node) { 350 335 $anno = variable_get('accion_especifica_de_proyecto_seguimiento_anho_seguimiento', 0); 351 336 $idnodo_proyecto = 0; 352 353 if ($node->type == 'proyectos_operativos'){ 337 if ($node->type == 'proyectos_operativos') { 354 338 $idnodo_proyecto = $node->nid; 355 }elseif($node->type == 'accion_especifica'){ 339 } 340 elseif ($node->type == 'accion_especifica') { 356 341 $nodo_proyecto = node_load($node->field_accion_esp_proyecto[0]['nid']); 357 342 $idnodo_proyecto = $nodo_proyecto->nid; 358 343 } 359 360 if($idnodo_proyecto){ 344 if ($idnodo_proyecto) { 361 345 $query = "SELECT * from {proyectos_operativos} where nid=%d"; 362 346 $queryResult = db_query ( $query, $idnodo_proyecto); 363 347 $datosproyecto = db_fetch_object ( $queryResult ) ; 364 365 348 if ($datosproyecto->year == $anno) { 366 349 return TRUE; 367 350 } 368 351 } 369 370 return FALSE; 371 } 372 373 //************************************************************************************************************************************************** 352 return FALSE; 353 } 354 355 //*************************************************** 374 356 //pagina de formulario 375 357 … … 377 359 378 360 379 //************************************************************************************************************************************************** 380 361 //************************************************** 381 362 //funciones auxiliares 382 363 383 364 module_load_include('inc', 'accion_especifica_de_proyecto_seguimiento' , 'includes/00_generales/funciones_auxiliares.pages'); 384 365 385 //************************************************** ************************************************************************************************366 //************************************************** 386 367 //funciones para consultas a base de datos 387 368 //carga de datos comprometido, causado, pagado, asignado 388 369 module_load_include('inc', 'accion_especifica_de_proyecto_seguimiento' , 'includes/ae_proyecto/funciones_consulta_bd.pages'); 389 370 390 //************************************************** ************************************************************************************************371 //************************************************** 391 372 //workflow 392 373 // codificada lunes 18 03 13, por Diego Uzcátegui 393 394 374 /* 395 375 * Implementation of seg_proyecto_y_aes_wk_menu_load()
Nota: Vea TracChangeset
para ayuda en el uso del visor de conjuntos de cambios.