Exemplo n.º 1
0
 function _init_map_values()
 {
     $cache_key = AMP_CACHE_TOKEN_XML_DATA . get_class($this);
     //check for cached version of map
     if ($map =& AMP_cache_get($cache_key)) {
         return $map;
     }
     //load map values from XML
     $map_source = new AMPSystem_XMLEngine('Map');
     $map = $map_source->readData();
     if (!$map) {
         return array();
     }
     //load custom extensions to XML map
     $map_extensions_source = new AMPSystem_XMLEngine('Map_Override');
     $map_extensions = $map_extensions_source->readData();
     if (!$map_extensions) {
         $complete_map =& $map;
     } else {
         $complete_map = array_merge($map, $map_extensions);
     }
     //cache the map
     AMP_cache_set($cache_key, $complete_map);
     return $complete_map;
 }
Exemplo n.º 2
0
 function readFields()
 {
     $fieldsource = new AMPSystem_XMLEngine("Modules/Payment/Item/Fields");
     if ($fields = $fieldsource->readData()) {
         return $fields;
     }
     return false;
 }
Exemplo n.º 3
0
 function _readXML($file_name)
 {
     $fieldsource = new AMPSystem_XMLEngine($file_name);
     if ($fields = $fieldsource->readData()) {
         return $fields;
     }
     return false;
 }
Exemplo n.º 4
0
 function readFields()
 {
     $xmlEngine = new AMPSystem_XMLEngine('Registration/SetupFields');
     if ($fields = $xmlEngine->readData()) {
         return $fields;
     }
     return false;
 }
Exemplo n.º 5
0
 function _init_nav_values()
 {
     $navs_source = new AMPSystem_XMLEngine('Nav');
     $navs = $navs_source->readData();
     $nav_extensions_source = new AMPSystem_XMLEngine('Nav_Override');
     $nav_extensions = $nav_extensions_source->readData();
     if (!$nav_extensions) {
         return $navs;
     }
     return array_merge($navs, $nav_extensions);
 }
Exemplo n.º 6
0
 function _read_xml_fields($file_name)
 {
     $fieldsource = new AMPSystem_XMLEngine($file_name);
     if ($fields = $fieldsource->readData()) {
         foreach ($fields as $field_name => $field_def) {
             if (!isset($fields[$field_name]['enabled'])) {
                 $fields[$field_name]['enabled'] = true;
             }
             if (!isset($fields[$field_name]['public'])) {
                 $fields[$field_name]['public'] = true;
             }
         }
         return $fields;
     }
     return false;
 }
Exemplo n.º 7
0
/**
 * Converts an XML file into an AMP_Menu instance
 *
 * @param   string     $xml_filename    Filename of the XML to be read
 * @param   string     $format          the type of menu object desired, default is "FWTable"
 * @param   string     $name            Name of the menu object to be produced
 * @param   string     $top             ID of the top level element
 * @access  public
 * @return  AMP_Menu
 */
function &AMP_Menu_XML($xml_filename, $format = "FWTable", $name = "menu", $top = AMP_MENU_ROOT_ENTRY)
{
    require_once 'AMP/System/XMLEngine.inc.php';
    $xmlGet = new AMPSystem_XMLEngine($xml_filename);
    if (!($menuset = $xmlGet->readData())) {
        trigger_error('Failed to read Menu XML ' . $xml_filename);
        return false;
    }
    $menumap = AMP_Menu_XML_getMenu($menuset, $top);
    $menumap[AMP_MENU_ROOT_ENTRY] = $menumap[$top];
    $classname = "AMP_Menu_" . $format;
    return new $classname($menumap, $name);
}
Exemplo n.º 8
0
 function _register_fields()
 {
     $md = $this->_module_def;
     $fields = array_map(array(&$this, "_register_fields_filter"), array_keys($md));
     $keys = array('label', 'public', 'type', 'required', 'values', 'lookup', 'size', 'enabled');
     foreach ($fields as $fname) {
         if (!$fname) {
             continue;
         }
         if (!$this->admin) {
             if (!isset($md['enabled_' . $fname])) {
                 continue;
             }
             if (!$md['enabled_' . $fname]) {
                 continue;
             }
         }
         $field = array();
         foreach ($keys as $key) {
             $field[$key] = $md[$key . "_" . $fname];
         }
         $field = $this->_register_lookups($field);
         $this->fields[$fname] = $field;
     }
     //Publish Field Hack
     if ($this->admin && $md['publish']) {
         $publish_field = array('type' => 'checkbox', 'label' => '<span class=publish_label>PUBLISH</span>', 'required' => false, 'public' => false, 'values' => 0, 'size' => null, 'enabled' => true);
         $this->fields['publish'] = $publish_field;
     }
     //override from custom folder
     $override_file_name = 'form' . $this->instance . '.xml';
     $override_fields = false;
     $cache_key = AMP_CACHE_TOKEN_XML_DATA . $override_file_name;
     if (!($override_fields =& AMP_cache_get($cache_key))) {
         if (file_exists_incpath($override_file_name)) {
             require 'AMP/System/XMLEngine.inc.php';
             $fieldsource = new AMPSystem_XMLEngine($override_file_name);
             $override_fields = $fieldsource->readData();
         }
     }
     if ($override_fields) {
         $this->fields = array_merge($this->fields, $override_fields);
         AMP_cache_set($cache_key, $override_fields);
     }
     return true;
 }