示例#1
0
 /**
 *
 */
 function ExternConfig ($range_id, $module_name, $config_id = '') {
     
     if ($config_id != '') {
         if ($configuration = ExternConfig::GetConfigurationMetaData($range_id, $config_id)) {
             $this->id = $config_id;
             $this->module_type = $configuration['type'];
             $this->module_name = $configuration['module_name'];
             $this->config_name = $configuration['name'];
             $this->range_id = $range_id;
             $this->parse();
         } else {
             ExternModule::printError();
         }
     } else {
         foreach ($GLOBALS['EXTERN_MODULE_TYPES'] as $type => $module) {
             if ($module['module'] == $module_name) {
                 $this->module_name = $module_name;
                 $this->module_type = $type;
                 $this->range_id = $range_id;
                 break;
             }
         }
     }
     
 }
示例#2
0
    function getLinkToModule ($linked_element_name = null, $params = null, $with_module_params = false, $self = false) {
        if ($with_module_params) {
            $module_params = $this->getModuleParams();
            $params = array_merge($module_params, $params);
        }
        $query_parts = array();
        if (is_array($params)) {
            $param_key = 'ext_' . strtolower($this->name);
            foreach ($params as $name => $value) {
                $query_parts[] = "{$param_key}[{$name}]=" . $value;
            }
        }

        if (is_null($linked_element_name)) {
            $sriurl = trim($this->config->getValue('Main', 'sriurl'));
            $includeurl = trim($this->config->getValue('Main', 'includeurl'));
        } else {
            $sriurl = trim($this->config->getValue($linked_element_name, 'srilink'));
            $includeurl = trim($this->config->getValue($linked_element_name, 'includlink'));
        }

        if ($sriurl) {
            $url = $sriurl;
        } else if ($includeurl) {
            $url = $includeurl;
        } else {
            $url = $GLOBALS['EXTERN_SERVER_NAME'] . 'extern.php';
        }

        if (parse_url($url, PHP_URL_QUERY)) {
            $url .= '&';
        } else {
            $url .= '?';
        }

        if ($self) {
            $module = $this->name;
        } else {
            // get module name by config id
            $linked_element_id = $this->config->getValue($linked_element_name, 'config');
            // linked with module declared as standard?
            if ($linked_element_id) {
                $config_meta_data = ExternConfig::GetConfigurationMetaData($this->config->range_id, $linked_element_id);
            } else {
                $config_meta_data = array('module_name' => $this->config->module_name);
            }
            if (is_array($config_meta_data)) {
                $module = $config_meta_data['module_name'];
            //  var_dump($this->config);
            } else {
                return '';
            }
        }

        $url .= "module={$module}&config_id=" . (is_null($linked_element_name) ? $this->config->getId() : $this->config->getValue($linked_element_name, 'config')) . "&range_id={$this->config->range_id}";
        if (sizeof($query_parts)) {
            $url .= '&' . implode('&', $query_parts);
        }
        return $url;
    }
 function toString ($args) {
     if (!$args["main_module"]) {
         $args["main_module"] = "Main";
     }
     $config_meta_data = ExternConfig::GetConfigurationMetaData($this->config->range_id, $this->config->getValue($this->name, 'config'));
     $sri_link = $this->config->getValue($this->name, "srilink");
     $extern_link = $this->config->getValue($this->name, "externlink");
     if ($this->config->config[$args["main_module"]]["incdata"]) {
         $link = $sri_link;
         if ($args["link_args"]) {
             if (preg_match("#.*\?.*#", $link)) {
                 $link .= "&" . $args["link_args"];
             } else {
                 $link .= "?" . $args["link_args"];
             }
         }
     } else {
         if ($sri_link) {
             $link = $GLOBALS['EXTERN_SERVER_NAME'] . 'extern.php';
             if ($args["link_args"]) {
                 $link .= "?" . $args["link_args"] . "&";
             } else {
                 $link .= "?";
             }
             $link .= "page_url=" . $sri_link;
         } elseif ($extern_link) {
             if (strrpos($extern_link, '?')) {
                 $link = "$extern_link&module={$config_meta_data['module_name']}";
             } else {
                 $link = "$extern_link?module={$config_meta_data['module_name']}";
             }
             if ($config = $this->config->getValue($this->name, 'config')) {
                 $link .= "&config_id=" . $config;
             }
             $link .= "&range_id={$this->config->range_id}";
             if ($args["link_args"]) {
                 $link .= "&" . $args["link_args"];
             }
         } else {
             $link = $GLOBALS['EXTERN_SERVER_NAME'] . "extern.php?module={$config_meta_data['module_name']}";
             if ($config = $this->config->getValue($this->name, 'config')) {
                 $link .= "&config_id=" . $config;
             }
             $link .= "&range_id={$this->config->range_id}";
             if ($args["link_args"]) {
                 $link .= "&" . $args["link_args"];
             }
         }
     }
     if ($this->config->global_id) {
         $link .= "&global_id=" . $this->config->global_id;
     }
     
     // to set the color of the font in the style-attribute of the a-tag
     if ($color = $this->config->getValue($this->name, "font_color")) {
         $this->config->setValue($this->name, "a_style", "color:$color;"
                 . $this->config->getValue($this->name, "a_style"));
     }
     
     if ($font_attr = $this->config->getAttributes($this->name, "font")) {
         $out = "<font$font_attr>" . $args["content"] . "</font>";
     } else {
         $out = $args["content"];
     }
     $out = "<a href=\"$link\"" . $this->config->getAttributes($this->name, "a") . ">" . $out . "</a>";
     
     return $out;
 }
示例#4
0
    }
}

if (Request::option('com') == 'delete') {
    $config = ExternConfig::GetInstance($range_id, '', $config_id);
    if ($config->deleteConfiguration()) {
        my_msg(sprintf(_("Konfiguration <strong>\"%s\"</strong> für Modul <strong>\"%s\"</strong> gelöscht!"), htmlReady($config->getConfigName()), htmlReady($GLOBALS['EXTERN_MODULE_TYPES'][$config->getTypeName()]['name'])), 'blank', 1, false);
    } else {
        my_error(_("Konfiguration konnte nicht gelöscht werden"));
    }
}

echo "<tr><td class=\"blank\" width=\"100%\" valign=\"top\">\n";

if (Request::option('com') == 'delete_sec') {
    $config = ExternConfig::GetConfigurationMetaData($range_id, $config_id);

    $message = sprintf(_("Wollen Sie die Konfiguration <b>&quot;%s&quot;</b> des Moduls <b>%s</b> wirklich löschen?"), $config["name"], $GLOBALS["EXTERN_MODULE_TYPES"][$config["type"]]["name"]);
    $message .= '<br><br>';
    $message .= LinkButton::createAccept("JA", URLHelper::getURL('?com=delete&config_id='.$config_id));
    $message .= LinkButton::createCancel("NEIN", URLHelper::getURL('?list=TRUE&view=extern_inst'));

    my_info($message, "blank", 1);
    print_footer();

    $template = $GLOBALS['template_factory']->open('layouts/base.php');
    $template->content_for_layout = ob_get_clean();
    echo $template->render();
    page_close();
    die;
}
 function createUrl ($args) {
     if (!$args["main_module"]) {
         $args["main_module"] = "Main";
     }
     $config_meta_data = ExternConfig::GetConfigurationMetaData($this->config->range_id, $this->config->getValue($this->name, 'config'));
     if (is_array($config_meta_data)) {
         $module_name = $config_meta_data['module_name'];
     } else {
         foreach ((array) $this->link_module_type as $type) {
             if (is_array($GLOBALS['EXTERN_MODULE_TYPES'][$type])) {
                 $module_name = $GLOBALS['EXTERN_MODULE_TYPES'][$type]['module'];
                 break;
             }
         }
     }
     $sri_link = $this->config->getValue($this->name, "srilink");
     $extern_link = $this->config->getValue($this->name, "externlink");
     if ($this->config->config[$args["main_module"]]["incdata"]) {
         $link = $sri_link;
         if ($args["link_args"]) {
             if (strrpos($link, '?')) {
                 $link .= "&" . $args["link_args"];
             } else {
                 $link .= "?" . $args["link_args"];
             }
         }
         if ($this->config->global_id) {
             $link .= "&global_id=" . $this->config->global_id;
         }
     } else {
         if ($sri_link) {
             $link = $GLOBALS['EXTERN_SERVER_NAME'] . 'extern.php';
             if ($args["link_args"]) {
                 $link .= "?" . $args["link_args"] . "&";
             } else {
                 $link .= "?";
             }
             if ($this->config->global_id) {
                 $link .= "global_id=" . $this->config->global_id . '&';
             }
             $link .= "page_url=" . $sri_link;
         } elseif ($extern_link) {
             if (strrpos($extern_link, '?')) {
                 $link = "$extern_link&module=$module_name";
             } else {
                 $link = "$extern_link?module=$module_name";
             }
             if ($config = $this->config->getValue($this->name, "config")) {
                 $link .= "&config_id=" . $config;
             }
             $link .= "&range_id={$this->config->range_id}";
             if ($args["link_args"]) {
                 $link .= "&" . $args["link_args"];
             }
             if ($this->config->global_id) {
                 $link .= "&global_id=" . $this->config->global_id;
             }
         } else {
             $link = $GLOBALS['EXTERN_SERVER_NAME'] . "extern.php?module=$module_name";
             if ($config = $this->config->getValue($this->name, "config")) {
                 $link .= "&config_id=" . $config;
             }
             $link .= "&range_id={$this->config->range_id}";
             if ($args["link_args"]) {
                 $link .= "&" . $args["link_args"];
             }
             if ($this->config->global_id) {
                 $link .= "&global_id=" . $this->config->global_id;
             }
         }
     }
     return $link;
 }