示例#1
0
 /**
  * Devuelve un array con los atributos de cada columna del módulo $modulo
  *
  * Los atributos son: caption, visible, updatable, default, permission, help
  *
  * Los valores de los atributos se obtienen  de las variables de entorno del módulo,
  * y si no existen, se cargan del config.yml correspondiente
  *
  * @param string $modulo El nombre del módulo
  * @return array Array de atributos
  */
 public function getAtributos($modulo)
 {
     $atributos = array();
     // PRIMERO LEO LOS ATRIBUTOS DE LAS COLUMNAS QUE ESTÁN EN CONFIG.YML
     $columnasConfig = $this->getNode('columns');
     foreach ($columnasConfig as $keyColumna => $valueColumna) {
         foreach (VariablesEnv::$varEnvMod as $keyVar => $keyColumnaConfig) {
             $atributos[$keyColumna][$keyVar] = isset($valueColumna[$keyColumnaConfig]) ? $valueColumna[$keyColumnaConfig] : "";
         }
     }
     return $atributos;
     // LUEGO LOS SUSTITUYO POR LOS ESPECIFICOS QUE ESTAN EN LAS VAR DE ENTORNO DE PROYECTO
     // DE TAL MANERA QUE PREVALECEN LOS DEFINIDOS EN LAS VARIABLES DE ENTORNO, PERO
     // SI NO EXISTIERA LA VARIABLE DE ENTORNO CORRESPONDIENTE ENTONCES PONGO LA DEL CONFIG.
     $variables = new Variables('Mod', 'Env', $modulo);
     if (is_array($variables->getDatosYml())) {
         $arrayColumnas = $variables->getNode('columns');
         foreach ($arrayColumnas as $key => $value) {
             $atributos[$key] = $value;
             if (is_array($columnasConfig[$key])) {
                 foreach ($columnasConfig[$key] as $keyConfig => $valueConfig) {
                     if (!isset($atributos[$key][$keyConfig])) {
                         $atributos[$key][$keyConfig] = $valueConfig;
                     }
                 }
             }
         }
     } else {
         // Aún no se han definido las variables, por lo tanto cargo los atributos
         // en base al array de correspondencia de atributos predeterminados
         foreach ($columnasConfig as $keyColumna => $valueColumna) {
             foreach (VariablesEnv::$varEnvMod as $keyVar => $keyColumnaConfig) {
                 $atributos[$keyColumna][$keyVar] = isset($valueColumna[$keyColumnaConfig]) ? $valueColumna[$keyColumnaConfig] : "";
             }
         }
     }
     unset($variables);
     // Si el usuario es super pongo la visibilidad a TRUE
     //if ($_SESSION['usuarioPortal']['Id'] == '1')
     //    foreach ($atributos as $key => $value)
     //        ++$atributos[$key]['visible'];
     /**
      if (!$atributos[$key]['visible']) {
      $atributos[$key]['visible'] = '1';
      $atributos[$key]['caption'] .= " (oculta)";
      }
     */
     return $atributos;
 }