Conjunto 4084a77 en sipp
- Fecha y hora:
- 23/10/2015 17:05:22 (hace 9 años)
- Branches:
- 0.3-stable
- Children:
- 5497eef
- Parents:
- 85c05e9
- Fichero:
-
- 1 editado
Leyenda
- No modificado
- Añadido
- Eliminado
-
0.3-stable-modules/proyectos_reformulacion/proyectos_reformulacion.module
ra0b4327 r4084a77 717 717 function proyectos_reformulacion_menu() { 718 718 $items = array(); 719 $items['proyectos_operativos/proyectos/reformular'] = array( 720 'title' => t('Consultar Modificaciones sin Aprobar'), 719 //consultar el estado de las reformulaciones sin aprobar 720 $items['proyectos_operativos/reformular'] = array( 721 'title' => t('Modificaciones'), 721 722 'page callback' => 'proyectos_reformulacion_search_ac_display_not_approved', 722 723 'access arguments' => array('ver planificador'), 723 724 'type' => MENU_LOCAL_TASK, 725 ); 726 $items['proyectos_operativos/reformular/entramite'] = array( 727 'title' => t('Lista de Modificaciones sin Aprobar'), 728 'page callback' => 'proyectos_reformulacion_search_ac_display_not_approved', 729 'access arguments' => array('ver planificador'), 730 'type' => MENU_LOCAL_TASK, 731 ); 732 $items['proyectos_operativos/reformular/default'] = array( 733 'title' => t('Lista de Modificaciones'), 734 'page callback' => 'proyectos_reformulacion_search_ac_display_approved', 735 'access arguments' => array('ver planificador'), 736 'type' => MENU_DEFAULT_LOCAL_TASK, 724 737 ); 725 738 $items['proyectosop/%proyectosop/reformular'] = array( … … 2685 2698 */ 2686 2699 function proyectos_reformulacion_search_ac_display_not_approved() { 2700 drupal_set_title(t("Consultar Modificaciones sin Aprobar")); 2687 2701 global $user; 2688 2702 $format_number = array( … … 2691 2705 'thousands_sep' => variable_get('proyectos_operativos_number_thousands_sep', '.'), 2692 2706 ); 2707 $step = 10; 2693 2708 $current_time = time(); 2694 2709 $add_reformular = _proyectos_reformulacion_reformula_node_add_tab_access($node); … … 2727 2742 $estado_naprobado = variable_get('proyectos_operativos_state_naprobado', NULL); 2728 2743 $estado_aprobado = variable_get('proyectos_operativos_state_aprobado', NULL); 2729 $result = db_query('SELECT re.*, u.name, u.uid FROM {proyectos_reformular} re INNER JOIN {users} u ON u.uid = re.uid WHERE estado <> %d AND estado <> %d ORDER BY id_ref DESC', $estado_naprobado, $estado_aprobado); 2744 $sql = ''; 2745 $sql_count = ''; 2746 if (!user_access('admin planificador') && $user->entes) { 2747 $inputs[] = $estado_naprobado; 2748 $inputs[] = $estado_aprobado; 2749 $inputs[] = $user->entes; 2750 $sql .= 'SELECT re.*, u.name, u.uid FROM {proyectos_reformular} re INNER JOIN {users} u ON u.uid = re.uid INNER JOIN {proyectos_operativos} AS ac ON ac.nid = re.nid WHERE re.estado <> %d AND re.estado <> %d AND ac.ente = %d ORDER BY re.id_ref DESC'; 2751 $sql_count .= 'SELECT count(re.nid) FROM {proyectos_reformular} re INNER JOIN {users} u ON u.uid = re.uid INNER JOIN {proyectos_operativos} AS ac ON ac.nid = re.nid WHERE re.estado <> %d AND re.estado <> %d AND ac.ente = %d'; 2752 } 2753 elseif (user_access('admin planificador')) { 2754 $inputs[] = $estado_naprobado; 2755 $inputs[] = $estado_aprobado; 2756 $sql .= 'SELECT re.*, u.name, u.uid, ac.ente FROM {proyectos_reformular} re INNER JOIN {users} u ON u.uid = re.uid INNER JOIN {proyectos_operativos} AS ac ON ac.nid = re.nid WHERE re.estado <> %d AND re.estado <> %d ORDER BY re.id_ref DESC'; 2757 $sql_count .= 'SELECT count(re.nid) FROM {proyectos_reformular} re INNER JOIN {users} u ON u.uid = re.uid INNER JOIN {proyectos_operativos} AS ac ON ac.nid = re.nid WHERE re.estado <> %d AND re.estado <> %d'; 2758 } 2730 2759 $header = array(); 2760 $header[] = array('data' => t('Ente')); 2731 2761 $header[] = array('data' => t('Proyecto')); 2732 2762 $header[] = array('data' => t('Fecha')); … … 2741 2771 $i = 1; 2742 2772 $roles = array_keys($user->roles); 2743 $ estado_aprobado = variable_get('proyectos_operativos_state_aprobado', NULL);2773 $result = pager_query($sql, $step, 0, $sql_count, $inputs); 2744 2774 while($reformular = db_fetch_object($result)) { 2745 2775 $node = node_load($reformular->nid); … … 2763 2793 $acciones = array(); 2764 2794 $row = array(); 2795 //Ente de relacion con la reformulación 2796 $ente = node_load($node->field_proyecto_ente[0]); 2797 2798 $row[] = array('data' => $ente->title, 'style' => 'background:' . $color,); 2765 2799 $row[] = array('data' => $node->title, 'style' => 'background:' . $color,); 2766 2800 $row[] = array('data' => format_date($reformular->date), 'style' => 'background:' . $color,); … … 2773 2807 $total = $reformular->monto + $reformular->variacion; 2774 2808 $row[] = array('data' => number_format($total, $format_number['decimals'], $format_number['dec_point'], $format_number['thousands_sep']), 'style' => 'background:' . $color,); 2775 $row[] = array('data' => l($reformular->name, 'user/' . $reformular->uid ), 'style' => 'background:' . $color,);2809 $row[] = array('data' => l($reformular->name, 'user/' . $reformular->uid, array('html' => true, 'query' => 'destination=proyectos_operativos/reformular')), 'style' => 'background:' . $color,); 2776 2810 //display options 2777 2811 if ($editar) { 2778 $acciones[] = l(t('Ver'), 'proyectosop/' . $node->nid . '/reformular/' . $reformular->id_ref . '/view' );2812 $acciones[] = l(t('Ver'), 'proyectosop/' . $node->nid . '/reformular/' . $reformular->id_ref . '/view', array('html' => true, 'query' => 'destination=proyectos_operativos/reformular')); 2779 2813 } 2780 2814 if ($add_reformular) { 2781 $acciones[] = l(t('Agregar nueva modificación'), 'proyectosop/' . $node->nid . '/reformular/add' );2815 $acciones[] = l(t('Agregar nueva modificación'), 'proyectosop/' . $node->nid . '/reformular/add', array('html' => true, 'query' => 'destination=proyectos_operativos/reformular')); 2782 2816 } 2783 2817 if ($editar && $fecha && $reformular->estado != $estado_naprobado && $reformular->estado != $estado_aprobado && $reformular->id_ref) { 2784 $acciones[] = l(t('Actualizar'), 'proyectosop/' . $node->nid . '/reformular/' . $reformular->id_ref . '/edit' );2818 $acciones[] = l(t('Actualizar'), 'proyectosop/' . $node->nid . '/reformular/' . $reformular->id_ref . '/edit', array('html' => true, 'query' => 'destination=proyectos_operativos/reformular')); 2785 2819 } 2786 2820 if ($enlaces_estados && count($transitions) && $reformular->estado != $estado_aprobado) { … … 2789 2823 } 2790 2824 if (_proyectos_reformulacion_reformula_node_edit_tab_access($node) && $editar && $fecha && $reformular->estado != $estado_naprobado && $reformular->estado != $estado_aprobado && $reformular->id_ref) { 2791 $links[] = l(t('Actualizar'), 'proyectosop/' . $node->nid . '/reformular/' . $reformular->id_ref . '/edit' );2825 $links[] = l(t('Actualizar'), 'proyectosop/' . $node->nid . '/reformular/' . $reformular->id_ref . '/edit', array('html' => true, 'query' => 'destination=proyectos_operativos/reformular')); 2792 2826 } 2793 2827 } … … 2801 2835 } 2802 2836 $output = ''; 2803 $output .= theme('table', $header, $rows) . '</fieldset>'; 2837 $output .= theme('table', $header, $rows); 2838 $output .= theme('pager', NULL); 2804 2839 return $output; 2805 2840 } 2841 2842 /** 2843 * Implementation of proyectos_reformulacion_search_ac_display_not_approved(). 2844 * Muestra la lista de las reformulaciones disponibles que no han sido aprobados. 2845 */ 2846 function proyectos_reformulacion_search_ac_display_approved() { 2847 drupal_set_title(t("Consultar Lista de Reformulaciones")); 2848 global $user; 2849 $format_number = array( 2850 'decimals' => variable_get('proyectos_operativos_number_decimals', 0), 2851 'dec_point' => variable_get('proyectos_operativos_number_dec_point', ','), 2852 'thousands_sep' => variable_get('proyectos_operativos_number_thousands_sep', '.'), 2853 ); 2854 $step = 10; 2855 $current_time = time(); 2856 $add_reformular = _proyectos_reformulacion_reformula_node_add_tab_access($node); 2857 $tipo_plan = 'proyectos_operativos_reformular'; 2858 $mi_fecha = ente_planificador_user_acceso_proceso($tipo_plan, $ente_planificador->tipo); 2859 $fecha = FALSE; 2860 $ente = usuario_tiene_ente($user->uid); 2861 if ($mi_fecha[1] + 86399 > $current_time && $mi_fecha[0] < $current_time) { 2862 $fecha = TRUE; 2863 } 2864 if (!$fecha) { 2865 if ($muestra) { 2866 muestra_mensaje($tipo_plan, $ente->tipo); 2867 } 2868 } 2869 else { 2870 if ($ente->nid) { 2871 $fecha = TRUE; 2872 if ($muestra) { 2873 muestra_mensaje($tipo_plan, $ente->tipo, 0); 2874 } 2875 } 2876 elseif (!user_access('admin planificador')) { 2877 $fecha = FALSE; 2878 } 2879 } 2880 $enlaces_estados = TRUE; 2881 if ($ente->nid && !user_access('admin planificador')) { 2882 $enlaces_estados = FALSE; 2883 } 2884 $states = _proyectos_operativos_reformulacion_obtiene_estados(); 2885 $first_state = 0; 2886 if ($states['wid']) { 2887 $first_state = _workflow_creation_state($states['wid']); 2888 } 2889 $estado_naprobado = variable_get('proyectos_operativos_state_naprobado', NULL); 2890 $estado_aprobado = variable_get('proyectos_operativos_state_aprobado', NULL); 2891 $sql = ''; 2892 $sql_count = ''; 2893 if (!user_access('admin planificador') && $user->entes) { 2894 $inputs[] = $estado_naprobado; 2895 $inputs[] = $user->entes; 2896 $sql .= 'SELECT re.*, u.name, u.uid FROM {proyectos_reformular} re INNER JOIN {users} u ON u.uid = re.uid INNER JOIN {proyectos_operativos} AS ac ON ac.nid = re.nid WHERE re.estado <> %d AND ac.ente = %d ORDER BY re.id_ref DESC'; 2897 $sql_count .= 'SELECT count(re.nid) FROM {proyectos_reformular} re INNER JOIN {users} u ON u.uid = re.uid INNER JOIN {proyectos_operativos} AS ac ON ac.nid = re.nid WHERE re.estado <> %d AND ac.ente = %d'; 2898 } 2899 elseif (user_access('admin planificador')) { 2900 $inputs[] = $estado_naprobado; 2901 $sql .= 'SELECT re.*, u.name, u.uid, ac.ente FROM {proyectos_reformular} re INNER JOIN {users} u ON u.uid = re.uid INNER JOIN {proyectos_operativos} AS ac ON ac.nid = re.nid WHERE re.estado <> %d ORDER BY re.id_ref DESC'; 2902 $sql_count .= 'SELECT count(re.nid) FROM {proyectos_reformular} re INNER JOIN {users} u ON u.uid = re.uid INNER JOIN {proyectos_operativos} AS ac ON ac.nid = re.nid WHERE re.estado <> %d'; 2903 } 2904 $header = array(); 2905 $header[] = array('data' => t('Ente')); 2906 $header[] = array('data' => t('Proyecto')); 2907 $header[] = array('data' => t('Fecha')); 2908 $header[] = array('data' => t('Estado Actual')); 2909 $header[] = array('data' => t('Fecha de Aprobación')); 2910 $header[] = array('data' => t('Monto (Bs)')); 2911 $header[] = array('data' => t('Variación (Bs)')); 2912 $header[] = array('data' => t('Total monto (Bs)')); 2913 $header[] = array('data' => t('Usuario')); 2914 $header[] = array('data' => t('Acción')); 2915 $rows = array(); 2916 $i = 1; 2917 $roles = array_keys($user->roles); 2918 $result = pager_query($sql, $step, 0, $sql_count, $inputs); 2919 while($reformular = db_fetch_object($result)) { 2920 $node = node_load($reformular->nid); 2921 $editar = ($node->_workflow == $estado_aprobado); 2922 if ($user->uid == 1) { 2923 // Superuser is special. 2924 $roles_transition = 'ALL'; 2925 } 2926 else { 2927 $roles_transition = $roles; 2928 if ($user->uid == $reformular->uid && $reformular->uid > 0) { 2929 $roles_transition += array('author' => 'author'); 2930 } 2931 } 2932 $transitions = array(); 2933 if ($states['wid']) { 2934 $transitions = workflow_allowable_transitions($reformular->estado, 'to', $roles_transition); 2935 } 2936 $color = variable_get('proyectos_operativos_state_color_' . $reformular->estado, array()); 2937 unset($transitions[$reformular->estado]); 2938 $acciones = array(); 2939 $row = array(); 2940 //Ente de relacion con la reformulación 2941 $ente = node_load($node->field_proyecto_ente[0]); 2942 2943 $row[] = array('data' => $ente->title, 'style' => 'background:' . $color,); 2944 $row[] = array('data' => $node->title, 'style' => 'background:' . $color,); 2945 $row[] = array('data' => format_date($reformular->date), 'style' => 'background:' . $color,); 2946 $estado = isset($states['states'][$reformular->estado]) ? $states['states'][$reformular->estado] : 'N/A'; 2947 $row[] = array('data' => $estado, 'style' => 'background:' . $color,); 2948 $estado = isset($states['states'][$reformular->estado_ant]) ? $states['states'][$reformular->estado_ant] : 'N/A'; 2949 $row[] = array('data' => date( 'd/m/Y', $reformular->fecha_onapre), 'style' => 'background:' . $color,); 2950 $row[] = array('data' => number_format($reformular->monto, $format_number['decimals'], $format_number['dec_point'], $format_number['thousands_sep']), 'style' => 'background:' . $color,); 2951 $row[] = array('data' => number_format($reformular->variacion, $format_number['decimals'], $format_number['dec_point'], $format_number['thousands_sep']), 'style' => 'background:' . $color,); 2952 $total = $reformular->monto + $reformular->variacion; 2953 $row[] = array('data' => number_format($total, $format_number['decimals'], $format_number['dec_point'], $format_number['thousands_sep']), 'style' => 'background:' . $color,); 2954 $row[] = array('data' => l($reformular->name, 'user/' . $reformular->uid, array('html' => true, 'query' => 'destination=proyectos_operativos/reformular')), 'style' => 'background:' . $color,); 2955 //display options 2956 if ($editar) { 2957 $acciones[] = l(t('Ver'), 'proyectosop/' . $node->nid . '/reformular/' . $reformular->id_ref . '/view', array('html' => true, 'query' => 'destination=proyectos_operativos/reformular')); 2958 } 2959 if ($add_reformular) { 2960 $acciones[] = l(t('Agregar nueva reformulación'), 'proyectosop/' . $node->nid . '/reformular/add', array('html' => true, 'query' => 'destination=proyectos_operativos/reformular')); 2961 } 2962 if ($editar && $fecha && $reformular->estado != $estado_naprobado && $reformular->estado != $estado_aprobado && $reformular->id_ref) { 2963 $acciones[] = l(t('Modificar'), 'proyectosop/' . $node->nid . '/reformular/' . $reformular->id_ref . '/edit', array('html' => true, 'query' => 'destination=proyectos_operativos/reformular')); 2964 } 2965 if ($enlaces_estados && count($transitions) && $reformular->estado != $estado_aprobado) { 2966 foreach($transitions as $id => $transition) { 2967 $acciones[] = l(t('Enviar a @state', array('@state' => $transition)), 'proyectosop/' . $node->nid . '/reformular/' . $reformular->id_ref . '/workflow/' . $id, array('html' => true, 'query' => 'destination=proyectos_operativos/reformular')); 2968 } 2969 if (_proyectos_reformulacion_reformula_node_edit_tab_access($node) && $editar && $fecha && $reformular->estado != $estado_naprobado && $reformular->estado != $estado_aprobado && $reformular->id_ref) { 2970 $links[] = l(t('Modificar'), 'proyectosop/' . $node->nid . '/reformular/' . $reformular->id_ref . '/edit', array('html' => true, 'query' => 'destination=proyectos_operativos/reformular')); 2971 } 2972 } 2973 $row[] = array('data' => theme('item_list', $acciones), 'style' => 'background:' . $color,); 2974 $rows[] = $row; 2975 $i++; 2976 } 2977 if (!count($rows)) { 2978 $row[] = array('data' => 'No existen reformulaciones sin Aprobar', 'colspan' => 9); 2979 $rows[] = $row; 2980 } 2981 $output = ''; 2982 $output .= theme('table', $header, $rows); 2983 $output .= theme('pager', NULL); 2984 return $output; 2985 } 2986
Nota: Vea TracChangeset
para ayuda en el uso del visor de conjuntos de cambios.