Esempio n. 1
0
function type_output_edit_container($type_container, $type_number, $type_typenumber, $type_config)
{
    global $cms_side, $DB_cms, $cms_db, $cms_edittype, $sess, $cfg_client, $mod_lang, $idcatside;
    global $cfg_cms, $idcatside, $con_side, $cms_mod;
    if (($cms_side['edit_all'] || $type_config['editable'] == 'true' && $cms_side['view'] == 'edit') && $type_config['editable'] != 'false' && is_array($cms_edittype[$type_container])) {
        //catch vars and arrays from the tag attributes
        eval(_type_get_dynamic_val_string($type_config));
        $edit_content = $type_container . '.' . $type_number . '.';
        foreach ($cms_edittype[$type_container][$type_number] as $value) {
            $edit_content .= $value . ',';
        }
        $edit_content = substr($edit_content, 0, strlen($edit_content) - 1);
        //echo $edit_content .'<br>';
        // nur Edit-URL
        if ($type_config['mode'] == 'editurl') {
            return $con_side[$idcatside]['link'] . "&action=edit&content={$edit_content}";
        }
        if ($type_config['menuoptions'] != 'false') {
            $title = empty($type_config['title']) ? $mod_lang['type_container'] : $type_config['title'];
            // advanced Modus
            if ($type_config['menuoptions'] == 'advanced') {
                $new = false;
                $delete = false;
                $up = false;
                $down = false;
                // gibt es schon einen Eintrag?
                $sql = "SELECT\n\t\t\t\t\t\t\t*\n\t\t\t\t\t\tFROM\n\t\t\t\t\t\t\t{$cms_db['content']}\n\t\t\t\t\t\tWHERE\n\t\t\t\t\t\t\tidsidelang='" . $con_side[$idcatside]['idsidelang'] . "'\n\t\t\t\t\t\t\tAND container='{$type_container}'\n\t\t\t\t\t\t\tAND number='{$type_number}'";
                $db = new DB_cms();
                $db->query($sql);
                // neu anlegen & loeschen
                if ($type_number != '1' || $db->affected_rows()) {
                    $new = true;
                    $delete = true;
                }
                // nach oben verschieben
                if ($type_number != '1') {
                    $up = true;
                }
                // nach unten verschieben
                if ($db->affected_rows() && $cms_mod['modul']['lastentry'] != 'true') {
                    $down = true;
                }
            }
            $ids = array(NULL);
            $infos = array('container_number' => $type_container, 'pre_compiled' => $edit_content, 'tag_type' => 'edit_container', 'mod_repeat_id' => $type_number, 'title' => $title, 'base_url' => $con_side[$idcatside]['link'], 'mode' => $type_config['menuoptions']);
            //menu erstellen
            $layer_menu = _type_get_layer_menu($ids, $infos, $delete, $new, $up, $down);
        }
        return $layer_menu;
    }
}