function show()
 {
     if (isset($_GET['new'])) {
         $this->return .= $this->new_exhibition_form();
     } else {
         if ($_GET['add'] && !isset($_POST['room'])) {
             $this->return .= $this->add_rooms_table();
         } else {
             if ($_GET['order'] && !isset($_POST['new_world_order'])) {
                 $this->return .= $this->order_rooms();
             } else {
                 if ($_GET['rename_exhibition']) {
                     $this->return .= $this->rename_form();
                 } else {
                     if (isset($_GET['orderexhibitions']) && !isset($_POST['new_world_order'])) {
                         $this->return .= $this->order_exhibitions();
                     } else {
                         $this->return .= $this->select_exhibition();
                     }
                 }
             }
         }
     }
     return Html::div($this->return);
 }
Пример #2
0
 function show($meldung = '')
 {
     if (defined('HTTPS') && HTTPS && !isset($_SERVER['HTTPS'])) {
         header("Location: " . 'https://' . $_SERVER['SERVER_NAME'] . $_SERVER['REQUEST_URI']);
     }
     if ($_SESSION['uuid']) {
         $vars['uuid'] = $_SESSION['uuid'];
     } else {
         $vars['uuid'] = $_SESSION['uuid'] = General::uuid();
     }
     $template = $this->system->login_template ? $this->system->login_template : INSTALL_PATH . '/Templates/Login.template.html';
     $login_form = new Template($template);
     $meldungen = Template::get_all_parts($login_form->template);
     $vars['meldung'] = $meldungen[$meldung] ? $meldungen[$meldung] : $meldung;
     $vars['action'] = SELF_URL;
     if (isset($_GET['logout'])) {
         $vars['user'] = $_GET['logout'];
         $vars['meldung'] = $login_form->parse_template('LOGOUT-MELDUNG', $vars);
         return Html::div($login_form->parse_template('FORM', $vars));
     }
     if (!isset($_POST['user']) || !isset($_POST['pass'])) {
         $vars['meldung'] .= Html::br() . $meldungen['KENNWORT_EINGEBEN'];
         return Html::div($login_form->parse_template('FORM', $vars));
     } else {
         $vars['meldung'] .= Html::br() . $meldungen['FAIL'];
         return Html::div($login_form->parse_template('FORM', $vars));
     }
 }
Пример #3
0
 function show()
 {
     if (!$this->check_right('User')) {
         return Html::div('Sie haben kein Recht diese Aktion auszuführen!', array('class' => 'rot'));
     }
     return $this->user_table();
 }
Пример #4
0
 function show()
 {
     if (isset($_GET['new'])) {
         $this->return .= $this->new_room_form();
     } else {
         if ($_GET['add'] && !isset($_POST['bild'])) {
             $this->return .= $this->add_pictures_table();
         } else {
             if ($_GET['order'] && !isset($_POST['new_world_order'])) {
                 $this->return .= $this->order_images();
             } else {
                 if ($_GET['rename_room']) {
                     $this->return .= $this->rename_form();
                 } else {
                     if (isset($_GET['orderrooms']) && !isset($_POST['new_world_order'])) {
                         $this->return .= $this->order_rooms();
                     } else {
                         $this->return .= $this->select_room();
                     }
                 }
             }
         }
     }
     return Html::div($this->return);
 }
Пример #5
0
 function show($meldung = '')
 {
     if (defined('HTTPS') && HTTPS && !isset($_SERVER['HTTPS'])) {
         header("Location: " . 'https://' . $_SERVER['SERVER_NAME'] . $_SERVER['REQUEST_URI']);
     }
     $vars['uuid'] = $_SESSION['uuid'] = General::uuid();
     $template = $this->system->login_template ? $this->system->login_template : INSTALL_PATH . '/Templates/Login.template.html';
     $login_form = new Template($template);
     $meldungen = Template::get_all_parts($login_form->template);
     $vars['meldung'] = $meldungen[$meldung] ? $meldungen[$meldung] : $meldung;
     $vars['action'] = SELF_URL;
     if (isset($_GET['logout'])) {
         $vars['user'] = $_GET['logout'];
         $vars['meldung'] = $login_form->parse_template('LOGOUT-MELDUNG', $vars);
     }
     if (isset($_GET['recover'])) {
         if ($_POST['recover_submit']) {
             $email = General::input_clean($_POST['email'], true);
             foreach ($this->system->user_tables as $t) {
                 $sql = "SELECT * FROM `{$t}` WHERE `E-Mail` = '{$email}'";
                 $result = $this->system->connection->db_single_row($sql);
                 if ($result) {
                     break;
                 }
             }
             if ($result) {
                 $mail = $login_form->parse_template('RECOVER_MAIL', $result);
                 mail($result['E-Mail'], 'Ihr ' . PROJECT_NAME . ' Passwort', $mail, 'From: ' . PROJECT_NAME . '<noreply@' . preg_replace('/^www\\./i', '', $_SERVER['HTTP_HOST']) . '>');
                 return $login_form->parse_template('RECOVER_THANKYOU', $result);
             } else {
                 return $login_form->parse_template('RECOVER_NOFOUND', $result);
             }
         } else {
             $vars['meldung'] = 'Bitte geben Sie Ihre E-Mail-Adresse ein: ';
         }
         return Html::div($login_form->parse_template('RECOVER_FORM', $vars));
     }
     if (!isset($_POST['user']) || !isset($_POST['pass'])) {
         $vars['meldung'] .= Html::br() . $meldungen['KENNWORT_EINGEBEN'];
         return Html::div($login_form->parse_template('FORM', $vars));
     } else {
         /*if ($this->check_login($system))
         		{
         			//if (HTTPS) header("Location: ".'http://'.$_SERVER['SERVER_NAME'].$_SERVER['REQUEST_URI']);
         			header("Location: ".'http://'.$_SERVER['SERVER_NAME'].$_SERVER['REQUEST_URI']);
         		}
         		else
         		{*/
         $vars['meldung'] .= Html::br() . $meldungen['FAIL'];
         return Html::div($login_form->parse_template('FORM', $vars));
         //	}
     }
 }
Пример #6
0
 function show()
 {
     $img_scan = Html::img('/Module/RheinaufExhibition/Backend/icons/search.png', '');
     $scan_button = Html::a('/Admin/RheinaufExhibitionAdmin/Scan', $img_scan . 'Ordner scannen', array('class' => 'button'));
     $img_up = Html::img('/Module/RheinaufExhibition/Backend/icons/up.png', '');
     $up_button = Html::a('/Admin/RheinaufExhibitionAdmin/Upload', $img_up . 'Bilder hochladen', array('class' => 'button'));
     $return = Html::div($scan_button . $up_button);
     if ($_GET['edit']) {
         $entry = $this->pics_scaff->get_entry($_GET['edit']);
         return $return . Html::div($this->pics_scaff->make_form($_GET['edit']), array('style' => 'float:left')) . Html::div(Html::img(SELF . '/InputPreview?img=' . $entry['Dateiname'], 'Vorschau'));
     }
     return $return . $this->overview();
 }
Пример #7
0
 function make_sitemap()
 {
     $return_string;
     for ($i = 0; $i < count($this->navi); $i++) {
         $rubrik = $this->navi[$i]['Rubrik'];
         $rubrik_enc = $this->path_encode($rubrik);
         $return = Html::div(Html::bold($rubrik));
         for ($j = 0; $j < count($this->navi[$i]['Subnavi']); $j++) {
             $seite = $this->navi[$i]['Subnavi'][$j]['Seite'];
             $seite_enc = $this->path_encode($seite);
             $return .= Html::div(Html::a("/{$rubrik_enc}/{$seite_enc}", $seite));
         }
         $return_string .= Html::div($return, array('style' => 'float:left;margin-left:40px'));
     }
     return Html::div($return_string, array('style' => 'width:500px'));
 }
Пример #8
0
    function show()
    {
        $return_string = '';
        if (count($files = $this->get_names()) > 0) {
            $return_string = Html::script("var minigal_pix = new Array('" . implode("','", $files) . "');\nvar galpath = '" . $this->gal_path . "'");
            $return_string .= Html::img('', PROJECT_NAME . ' MiniGal', array('id' => 'MiniGal'));
            $return_string .= Html::div('<input class="slider-input" id="slider-input-1" name="slider-input-1"/>', array('class' => "slider", 'id' => "slider-1"));
            $return_string .= Html::div(Html::span('&nbsp;', array('id' => 'nummer')) . '/' . count($files), array('class' => 'klein'));
            $return_string .= Html::script('
var s = new Slider(document.getElementById("slider-1"), document.getElementById("slider-input-1"));
var rand = Math.ceil(Math.random() * minigal_pix.length);
document.getElementById("MiniGal").src = galpath + minigal_pix[rand-1];
document.getElementById("nummer").firstChild.nodeValue = rand.toString();
s.setMinimum(1);
s.setMaximum(minigal_pix.length);
s.setValue(rand);
s.onchange = function () {
document.getElementById("nummer").firstChild.nodeValue = s.getValue().toString();
document.getElementById("MiniGal").src = galpath + minigal_pix[s.getValue()-1];

}');
        }
        return $return_string;
    }
Пример #9
0
echo Html::div_close();
echo Html::div_open(array('class' => 'dependency'));
echo Html::link(array('class' => 'description', 'content' => $_LANG['PHP_MODULE'] . ' - SimpleXML', 'href' => 'http://www.php.net/manual/en/book.simplexml.php', 'target' => '_blank'));
if (in_array('SimpleXML', $php_modules)) {
    echo Html::div(array('class' => 'status_pass', 'content' => $_LANG['PASS']));
} else {
    $dependencies = false;
    echo Html::div(array('class' => 'status_fail', 'content' => $_LANG['FAIL']));
}
echo Html::div_close();
echo Html::div_open(array('class' => 'dependency'));
if ($writing_test) {
    echo Html::div(array('class' => 'status_pass', 'content' => $_LANG['PASS']));
} else {
    $dependencies = false;
    echo Html::div(array('class' => 'status_fail', 'content' => $_LANG['FAIL']));
}
echo Html::div_close();
?>
        </section>

        <section id="configuration">

            <?php 
echo Html::form_open(array('id' => 'js_form', 'name' => 'form', 'method' => 'post'));
// LANGUAGE
echo Html::label(array('content' => $_LANG['LANGUAGE'], 'class' => 'blocked'));
echo Html::select(array('id' => 'js_language', 'name' => 'language'), $languages, isset($_GET['language']) ? $_GET['language'] : 'en_US');
echo Html::label(array('content' => $_LANG['BLOG_TITLE']));
echo Html::input(array('id' => 'js_name', 'name' => 'name', 'type' => 'text', 'autocomplete' => 'off', 'maxlength' => '254', 'value' => ''));
echo Html::label(array('content' => $_LANG['BLOG_SLOGAN']));
Пример #10
0
 function menu_print()
 {
     $return = $this->return;
     $this->return = '';
     return Html::div($return, array('class' => 'menu_row'));
 }
Пример #11
0
 function admin_module_reorder()
 {
     $array_to_reorder = $this->connection->db_assoc("SELECT `id`,`sysID`,`Name` FROM `RheinaufCMS>Module` WHERE `Backend` != '' ORDER BY `id` ASC");
     $array_name_to_reorder = 'admin_module';
     $form_tag = Form::form_tag(SELF, 'post', 'application/x-www-form-urlencoded', array('name' => 'draglist_form'));
     $draglist_scripts = Html::script('', array('src' => '/' . INSTALL_PATH . '/Libraries/Draglist/assets/dom-drag.js'));
     $draglist_scripts .= Html::script('', array('src' => '/' . INSTALL_PATH . '/Libraries/Draglist/assets/draglist.js'));
     $dragable_divs = '';
     for ($i = 0; $i < count($array_to_reorder); $i++) {
         $draglist_item = Form::add_input('hidden', "draglist_items[{$i}]", $i);
         $name = $array_to_reorder[$i]['Name'];
         $dragable_divs .= Html::div($name . $draglist_item, array('style' => 'margin-left:150px;padding:0 5px;position: relative; left: 0px; top: 0px;cursor:move;border:thin solid white;background:#eeeeee;width:200px;height:20px;'));
     }
     $draglist_container = Html::div($dragable_divs, array('id' => 'draglist_container'));
     $draglist_cmd = Form::add_input('hidden', 'reorder', '');
     $draglist_apply = Form::add_input('button', 'reorder', 'Speichern', array('title' => 'Speichern', 'onclick' => "draglist_manager.do_submit('draglist_form','draglist_container')"));
     $form_close = Form::close_form();
     $draglist_call = "var dragListIndex = new Array();\r\n\t\t\t\t\t\t\tdraglist_manager = new fv_dragList( 'draglist_container' );\r\n\t\t\t\t\t\t\tdraglist_manager.setup();\r\n\t\t\t\t\t\t\taddDragList( draglist_manager );";
     $draglist_call = Html::script($draglist_call);
     $this->return = '<p>Ordnen Sie die Einträge neu an, indem Sie sie mit der Maus ziehen.</p>' . $draglist_scripts . $form_tag . $draglist_container . $draglist_cmd . $draglist_apply . $form_close . $draglist_call;
 }
Пример #12
0
    function make_form($edit = '', $action = null, $action_parameter_filter = array(), $template = null)
    {
        if ($edit) {
            $values = $this->get_entry($edit);
            $edit = is_array($edit) ? current($edit) : $edit;
        }
        $GLOBALS['scripts'] .= Html::script("onLoad.push(checkConditions);");
        //$GLOBALS['scripts'] .= Html::script("onLoad.push(sizeTextAreas);");
        $return = '';
        $url = $action ? $action : SELF_URL;
        $url .= strstr($url, '?') ? '&amp;' : '?';
        $url .= $this->GET_2_url(array_merge(array('edit', 'new', 'noframe', 'reentry'), $action_parameter_filter));
        //$url .= ($_GET['edit']) ? '#entry'.$_GET['edit'] : '';
        $return .= Form::form_tag($url, 'post', 'multipart/form-data', array('onsubmit' => "loading();return checkform();"));
        $table = new Table(2, array('class' => 'scaffold'));
        $return .= $this->text_above_form;
        if ($this->show_buttons_above_form) {
            $input = $this->submit_button ? $this->submit_button : Form::add_input('submit', 'submit', 'Eintragen', array('class' => 'button'));
            if ($this->show_cancel) {
                $input .= Form::add_input('button', 'cancel', 'Abbrechen', array('class' => 'button', 'onclick' => 'cancelEdit(this)'));
            }
            $table->add_td(array(array(2 => $input)));
        }
        foreach ($this->cols_array as $key => $col) {
            $name = $key;
            //$show_name  =  General::wrap_string($col['name'],30);
            $show_name = $col['name'];
            $show_name .= $col['required'] ? ' *' : '';
            $id = 'input_' . $GLOBALS['input_id'];
            $encoded_name = rawurlencode($name);
            $attr_array = $col['attributes'];
            if ($col['disabled']) {
                $attr_array['disabled'] = 'disabled';
            } else {
                if ($attr_array['disabled']) {
                    unset($attr_array['disabled']);
                }
            }
            if ($this->re_entry || isset($_REQUEST['reentry']) && $_POST[$name]) {
                $value = $_POST[$name];
            } else {
                if ($values[$key]) {
                    $value = $values[$key];
                } else {
                    if ($col['value']) {
                        $value = $col['value'];
                    } else {
                        $value = '';
                    }
                }
            }
            if (isset($col['options'])) {
                $options = $this->get_options($col['options'], $col['options_sort'], $col['options_insert_id']);
                if (!$col['options_hide_edit_button']) {
                    $edit_options_btn = is_string($col['options']) && $this->edit_enabled ? Html::a("javascript:void(0);", 'Optionen bearbeiten', array('class' => 'button', 'onclick' => "window.open('" . SELF_URL . "?nomenu&editoptions={$encoded_name}','scaff_dialog','toolbar=no,menubar=yes,personalbar=no,width=500,scrollbars=yes,resizable=yes,modal=yes,dependable=yes');var refresh=document.getElementById('{$id}_refresh');refresh.style.display='';refresh.focus();return false;")) : '';
                    $edit_options_btn .= Form::add_input('submit', 'reentry', 'Aktualisieren', array('id' => $id . '_refresh', 'style' => 'display:none'));
                    $edit_options_btn = Html::br() . $edit_options_btn;
                }
            }
            if ($name != 'id') {
                switch ($col['type']) {
                    case 'text':
                        $attr_array['id'] = $id;
                        if (isset($col['length'])) {
                            $attr_array['size'] = $field['length'];
                            $attr_array['maxlength'] = $field['length'];
                        } else {
                            if (!stristr($attr_array['style'], 'width')) {
                                $attr_array['style'] .= "width:{$this->input_width};";
                            }
                        }
                        if ($col['multiple']) {
                            $input = Form::add_input('text', $encoded_name . '[]', $value, $attr_array);
                            $info .= Html::a('javascript:void(0);', '+', array('onclick' => 'cloneInput(\'' . $id . '\')'));
                        } else {
                            $input = Form::add_input('text', $encoded_name, $value, $attr_array);
                        }
                        break;
                    case 'select':
                        $attr_array['id'] = $id;
                        $select = new Select($encoded_name, array_merge($attr_array, array('onchange' => "selectOtherOption('{$id}','" . $col['other_option'] . "')")));
                        $select->add_option('', '--Bitte auswählen--');
                        $attr_array = array();
                        if (is_array($options)) {
                            if (!in_array($value, $options) && !key_exists($value, $options)) {
                                $col['other'] = $value;
                            }
                            foreach ($options as $option => $name) {
                                if ($value == $option) {
                                    $attr_array['selected'] = 'selected';
                                } else {
                                    unset($attr_array['selected']);
                                }
                                $select->add_option($option, $name, $attr_array);
                            }
                            if ($col['other_option']) {
                                if ($col['other']) {
                                    $attr_array['selected'] = 'selected';
                                }
                                $attr_array['onclick'] = 'otherOption(this,\'' . rawurlencode($encoded_name) . '\')';
                                $select->add_option('', $col['other_option'], $attr_array);
                            } else {
                                unset($attr_array['onclick']);
                            }
                        }
                        $input = $select->flush_select();
                        if ($col['other']) {
                            $input .= Form::add_input('text', $encoded_name, $col['other'], array('onfocus' => "selectOtherOption('{$id}','" . $col['other_option'] . "')", 'id' => $id . '_other'));
                        }
                        $input .= $edit_options_btn;
                        break;
                    case 'radio':
                        $attr_array['id'] = $id;
                        $attr_array = array();
                        $input = '';
                        foreach ($options as $option => $name) {
                            if ($value == $option) {
                                $attr_array['checked'] = 'checked';
                            } else {
                                unset($attr_array['checked']);
                            }
                            if (isset($col['condition'][$option])) {
                                $condition = "{input:'" . $encoded_name . "',value:'" . $option . "',target:'" . $col['condition'][$option] . "'}";
                                $input .= Html::script("conditions.push({$condition})");
                                //$attr_array['onchange'] = "checkCondition($condition)";
                            } else {
                                //unset($attr_array['onchange']);
                            }
                            if (isset($col['condition'])) {
                                $attr_array['onchange'] = "checkCondition({$condition})";
                            } else {
                                unset($attr_array['onchange']);
                            }
                            $input .= Form::add_input('radio', $encoded_name, $option, $attr_array) . ' ' . $name . Html::br();
                        }
                        if ($col['condition']) {
                        }
                        $input .= $edit_options_btn;
                        break;
                    case 'check':
                        $input = '';
                        if (!is_array($value)) {
                            $value = explode('&delim;', $value);
                        }
                        foreach ($options as $option => $name) {
                            if (is_array($value) && in_array($option, $value)) {
                                $attr_array['checked'] = 'checked';
                            } else {
                                unset($attr_array['checked']);
                            }
                            $input .= Form::add_input('checkbox', $encoded_name . '[]', $option, $attr_array) . ' ' . $name . Html::br();
                        }
                        if ($col['other_option']) {
                            $other = array_diff($value, $options);
                            $input .= $col['other_option'] . ' ' . Form::add_input('text', $encoded_name . '[]', implode(', ', $other)) . Html::br();
                        }
                        $input .= $edit_options_btn;
                        $input = Html::div($input, array('id' => $id, 'name' => $encoded_name));
                        break;
                    case 'textarea':
                        $attr_array['id'] = $id;
                        if ($col['attributes']['cols']) {
                            $col['attributes']['cols'];
                        } else {
                            if (!stristr($attr_array['style'], 'width')) {
                                $attr_array['style'] .= "width:{$this->input_width};";
                            }
                        }
                        $attr_array['rows'] = $col['attributes']['rows'] ? $col['attributes']['rows'] : 10;
                        if ($col['max_length']) {
                            $attr_array['onkeydown'] = 'return maxLength(event,this,' . $col['max_length'] . ')';
                        }
                        $input = Form::add_textarea($encoded_name, $value, $attr_array);
                        //,'cols'=>'35','rows'=>'2','onfocus'=>'textarea_grow(\''.$id.'\')','onblur'=>'textarea_shrink(\''.$id.'\')'));
                        if ($col['max_length']) {
                            $input .= Html::span("Noch " . Html::span($col['max_length'] - strlen($value), array('id' => $id . '_charsleft')) . " Zeichen");
                        }
                        if ($col['options']) {
                            $input .= Html::br() . $edit_options_btn;
                        }
                        if ($col['html']) {
                            $this->xinha_scripts();
                        }
                        break;
                    case 'upload':
                        $input = '';
                        $value = $values[$key];
                        $entries = array();
                        if (!is_array($value)) {
                            $entries = explode('&delim;', $value);
                        } else {
                            $entries = $value;
                        }
                        $upload_folder = '';
                        if (is_string($this->upload_folder)) {
                            $this->upload_folder = array($this->upload_folder);
                        }
                        foreach ($this->upload_folder as $col_name) {
                            $upload_folder .= $values[$col_name];
                        }
                        $upload_folder .= '/';
                        if (count(General::trim_array($entries)) > 0) {
                            $subtable = new Table(3);
                            foreach ($entries as $file) {
                                $img_info = @getimagesize($this->upload_path . $upload_folder . $file);
                                if ($img_info) {
                                    $thumb = Html::img(SELF_URL . '?img=' . rawurlencode($upload_folder . $file) . '&amp;x=100', $file);
                                } else {
                                    $thumb = '';
                                }
                                $check = Form::add_input('hidden', $encoded_name . '[]', $file);
                                $check .= Html::br() . Form::add_input('checkbox', $encoded_name . '_delfile[]', $file, array("onclick" => "confirmDelPic(this)")) . ' Datei löschen';
                                $subtable->add_td(array($thumb, $file . $check));
                            }
                            $input .= $subtable->flush_table();
                            if ($col['upload_max_count']) {
                                $input .= Html::span("Maximal " . $col['upload_max_count'] . " Dateien" . Html::br(), array('class' => 'klein'));
                            }
                        }
                        if ($col['upload_max_count'] && count(General::trim_array($entries)) >= $col['upload_max_count']) {
                            continue;
                        }
                        $attr_array['id'] = $id;
                        //$input = ($value) ? $value.Form::add_input('hidden',$encoded_name,$value,$attr_array).Html::br().Html::span('Neue Datei verknüpfen:',array('class'=>'klein')).Html::br():'';
                        $input .= Form::add_input('file', $encoded_name . '_upload[]');
                        //	if ($col['upload_max_count'])
                        //	{
                        $input .= Form::add_input('submit', 'reentry', 'Hochladen');
                        //	}
                        if ($col['upload_extensions']) {
                            $input .= Html::br() . Html::span("Erlaubte Erweiterungen: " . implode(', ', $col['upload_extensions']), array('class' => 'klein'));
                        }
                        if ($col['upload_size']) {
                            $input .= Html::br() . Html::span("Maximale Dateigröße: " . $col['upload_size'] . 'KB', array('class' => 'klein'));
                        }
                        break;
                    case 'EFM':
                        break;
                    case 'custom':
                        $input = $col['custom_input'];
                        break;
                    case 'timestamp':
                        $this->calendar_script();
                        $attr_array['id'] = 'tag_' . $GLOBALS['input_id'];
                        $attr_array['size'] = '2';
                        $input = Form::add_input('text', $encoded_name . '_tag', ($tag = Date::tag($value)) != 0 && $value != '' ? $tag : '', $attr_array) . '.';
                        $attr_array['id'] = 'monat_' . $GLOBALS['input_id'];
                        $attr_array['size'] = '2';
                        $input .= Form::add_input('text', $encoded_name . '_monat', ($monat = Date::monat($value)) != 0 && $value != '' ? $monat : '', $attr_array) . '.';
                        $attr_array['id'] = 'jahr_' . $GLOBALS['input_id'];
                        $attr_array['size'] = '2';
                        $input .= Form::add_input('text', $encoded_name . '_jahr', ($jahr = Date::jahr($value)) != 0 && $value != '' ? $jahr : '', $attr_array) . '&emsp;';
                        $attr_array['id'] = 'stunde_' . $GLOBALS['input_id'];
                        $attr_array['size'] = '2';
                        $input .= Form::add_input('text', $encoded_name . '_stunde', ($stunde = Date::stunde($value)) != 0 && $value != '' ? $stunde : '', $attr_array) . ':';
                        $attr_array['id'] = 'minute_' . $GLOBALS['input_id'];
                        $attr_array['size'] = '2';
                        $input .= Form::add_input('text', $encoded_name . '_minute', ($minute = Date::minute($value)) != 0 && $value != '' ? $minute : '', $attr_array);
                        $input .= Form::add_input('hidden', $encoded_name, $value, array('id' => $id));
                        $input .= Form::add_input('button', '', 'Kalender', array('id' => 'trigger_' . $GLOBALS['input_id']));
                        $script = '
						Calendar.setup(
							{
								inputField : "' . $id . '", // ID of the input field
								ifFormat : "%Y/%m/%d", // the date format
								button : "trigger_"+' . $GLOBALS['input_id'] . ', // ID of the button
								showsTime : false,
								timeFormat : "24",
								showOthers : true,
								onSelect : onSelect,
								onUpdate : onUpd,
								inputId : ' . $GLOBALS['input_id'] . ',
								prevInput : "test"

							}
						);
						timefields.push("' . $id . '");
				';
                        $input .= Html::script($script);
                        break;
                    case 'email':
                        preg_match('/(.*?)<?([0-9a-z.+-]{2,}\\@[0-9a-z.-]{2,}\\.[a-z]{2,6})>?/', $value, $matches);
                        $name_value = trim($matches[1]);
                        $mail_value = $matches[2];
                        $attr_array['id'] = 'name_' . $GLOBALS['input_id'];
                        $input = 'Name ' . Form::add_input('text', $encoded_name . '_name', $name_value, $attr_array);
                        $attr_array['id'] = 'mail_' . $GLOBALS['input_id'];
                        $input .= 'E-Mail ' . Form::add_input('text', $encoded_name . '_mail', $mail_value, $attr_array);
                        break;
                    case 'info':
                        $input = $col['value'];
                        //$hidden_inputs .= Form::add_input('hidden',$encoded_name,$value,$attr_array);
                        break;
                    case 'hidden':
                        $attr_array['id'] = $id;
                        $hidden_inputs .= Form::add_input('hidden', $encoded_name, $value, $attr_array);
                        $input = '';
                        break;
                    case 'ignore':
                        unset($input);
                        break;
                    case 'changed':
                        $input = Form::add_textarea('', $value, array("disabled" => "disabled")) . Form::add_input('hidden', $encoded_name, $value);
                        break;
                }
                if ($col['required'] && $input) {
                    if ($col['type'] == 'timestamp') {
                        $input .= Html::script("\nrequired_fields.push('" . 'tag_' . $GLOBALS['input_id'] . "');");
                        $input .= Html::script("\nrequired_fields.push('" . 'monat_' . $GLOBALS['input_id'] . "');");
                        $input .= Html::script("\nrequired_fields.push('" . 'jahr_' . $GLOBALS['input_id'] . "');");
                    } else {
                        $input .= Html::script("\nrequired_fields.push('{$id}');");
                    }
                }
                $alternatig_rows = $alternatig_rows == 1 ? 0 : 1;
                $td_atributes['class'] = ' alt_row_' . $alternatig_rows;
                if ($col['hidden']) {
                    $td_atributes['style'] = 'display:none;';
                } else {
                    unset($td_atributes['style']);
                }
                if ($col['info']) {
                    if (!$GLOBALS['toolTipScriptLoaded']) {
                        $GLOBALS['scripts'] .= Html::script(null, array('src' => '/Libraries/ToolTip/ToolTip.js'));
                        $GLOBALS['scripts'] .= Html::script('onLoad.push(toolTipOnLoad)');
                        $GLOBALS['toolTipScriptLoaded'] = true;
                    }
                    $trigger_id = 'info' . $GLOBALS['input_id'];
                    $source_id = "tooltip" . $GLOBALS['input_id'];
                    $info = ' ' . Html::img('/' . INSTALL_PATH . "/System/Scaffold/info.gif", strip_tags($col['info']), array('id' => $trigger_id, 'title' => strip_tags($col['info'])));
                    $info .= Html::div($col['info'], array('id' => $source_id, "style" => "display:none"));
                    $info .= Html::script("toolTips.push({trigger : '{$trigger_id}',source : '{$source_id}',className : 'tooltip'});");
                } else {
                    $info = '';
                }
                if ($input) {
                    $table->add_td(array(Form::add_label($id, $show_name) . $info, $input), $td_atributes);
                }
                ++$GLOBALS['input_id'];
            }
        }
        $input = $this->submit_button ? $this->submit_button : Form::add_input('submit', 'submit', 'Eintragen', array('class' => 'button'));
        if ($this->show_cancel) {
            if ($this->use_ajax) {
                $input .= Form::add_input('button', 'cancel', 'Abbrechen', array('class' => 'button', 'onclick' => 'cancelEdit(this)'));
            } else {
                $input .= Form::add_input('submit', 'cancel', 'Abbrechen', array('class' => 'button'));
            }
        }
        $input .= Form::add_input('hidden', 'edit_id', $edit ? $edit : '');
        $input .= Form::add_input('hidden', 'submit', 'submit');
        $input .= $hidden_inputs;
        $table->add_td(array(array(2 => $input)));
        $return .= $table->flush_table();
        $return .= Form::close_form();
        if ($template) {
            $t = new Template($template);
            $vars['form'] = $return;
            return $t->parse_template(null, $vars);
        } else {
            return $return;
        }
    }
Пример #13
0
 function getDateLink($day, $month, $year)
 {
     $date = Date::unify_timestamp($year . Date::add_0($month) . Date::add_0($day));
     if (isset($this->dates[$date])) {
         $id = 'link_' . $date;
         $start = $this->dates[$date][0]['start'];
         $summary = array();
         foreach ($this->dates[$date] as $entry) {
             $summary[] = $entry['SUMMARY'];
             $this->cal_links[$id][] = array($entry['id'], $entry['SUMMARY'], $date);
         }
         $summary = implode(', ', $summary);
         $link = $this->root . '/' . Date::jahr($start) . '/' . Date::monat($start) . '/' . Date::tag($start);
         $attr = array();
         return Html::div(Html::a($link, $day, array('id' => $id)), array('title' => $summary));
     } else {
         return '';
     }
 }
Пример #14
0
 /**
  * Creates the html for the nav bar.
  */
 function create_nav($header_content, $ylapainikkeet, $asetuspainikkeet)
 {
     // Puts the buttons together and the link (last one) inside li elements:
     $buttons1 = "";
     $loginlink = array_pop($ylapainikkeet);
     // Removes the last one.
     foreach ($ylapainikkeet as $button) {
         $buttons1 .= $button;
     }
     $togglenavbutton = Html::luo_button(Html::luo_span("", array(Attr::classs("icon-bar"))) . Html::luo_span("", array(Attr::classs("icon-bar"))) . Html::luo_span("", array(Attr::classs("icon-bar"))), array(Attr::classs("btn btn-primary btn-xs navbar-toggle"), Attr::BS_data_toggle("collapse"), Attr::BS_data_target("#ylanapit")));
     $text = Html::div(array(Attr::classs("navbar navbar-default")), Html::div(array(Attr::classs("container-fluid")), Html::div(array(Attr::classs("navbar-header")), $togglenavbutton . Html::luo_a_linkto("../index.php", Html::luo_span("", array(Attr::classs("glyphicon glyphicon-home"), Attr::title(Tekstit::$home_link_home))), array(Attr::classs("navbar-brand"))) . Html::a(array(Attr::classs("navbar-brand")), $header_content, "#")) . Html::div(array(Attr::classs("collapse navbar-collapse"), Attr::id("ylanapit")), Html::div(array(Attr::classs("nav navbar-nav navbar-right")), $buttons1 . Html::ul(array(Attr::classs("nav navbar-nav navbar-right")), $loginlink))) . Html::div(array(Attr::id("asetusnapit"), Attr::style("display:none")), $asetuspainikkeet)));
     return $text;
 }
Пример #15
0
 /**
  * Palauttaa kokonaisuuden html-koodin.
  * 
  * Huomaa, että täällä käsitellään aika paljon turvallisuusarkoja aiheita,
  * kuten esimerkiksi kokonaisuuden lukitus. Ois parempi ehkä sellaisen
  * olla aiemmin, mutta en vielä ole jaksanut muuttaa..
  *
  * @param Parametrit $parametriolio
  * @param Kokonaisuusolio $kokonaisuus
  * @param <type> $selitys_auki jos true, niin selitys näytetään, muuten ei.
  * @param type $id_prev Edellisen kokonaisuuden id.
  * @param type $id_next Seuraavan kokonaisuuden id.
  * @return string|\<type>
  */
 function tulosta_kokonaisuus($kokonaisuus, $parametriolio, $selitys_auki, $id_prev, $id_next)
 {
     $btn_type = Kokonaisuusnakymat::$btn_type_article;
     $btn_size = Kokonaisuusnakymat::$btn_size_article;
     $omaid = $parametriolio->get_omaid() + 0;
     $tietokantaolio = $parametriolio->get_tietokantaolio();
     $kayttajan_valtuudet = $parametriolio->get_valtuudet();
     // Luodaan tämä tehtävien lkm:n hakua varten. Vähän raskasta, mutta olkoon.
     $tehtavakontrolleri = new Tehtavakontrolleri($tietokantaolio, $parametriolio);
     $palaute = "";
     $selitys = "";
     $poistonappi = "";
     $muokkausnappi = "";
     $tehtavanappi = "";
     /* Tehtävien näyttö */
     $uusi_teht_nappi = "";
     /* Tästä luodaan uusi tehtävä. */
     $nayta_selitys_nappi = "";
     /* Näyttää selityksen. */
     $siirra_ylemmaksi_nappi = "";
     $siirra_alemmaksi_nappi = "";
     $jaa_oikeuksia_nappi = "";
     $nayta_jarj_luku = "";
     $korjausnappi = "";
     // Tämän avulla järjestysluvun voi korjata
     $nakyvyysmuutosnappi = "";
     $nayta_ed_nappi = $this->create_button_show_prev($id_prev);
     $nayta_seur_nappi = $this->create_button_show_next($id_next);
     /*======================== käyttäjän oikeudet ========================*/
     $kohdeoikeudet = Henkilo::hae_kayttajan_kohdeoikeudet($kokonaisuus->getHenkiloId(), $omaid, Oliotyyppi::$KOKONAISUUS, $kokonaisuus->get_id(), $tietokantaolio);
     /*====================================================================*/
     // Koodia voivat kaikki vilkaista, ellei ole piilotettu:
     if ($kohdeoikeudet >= Lisavaltuudet::$SAA_NAHDA_EI_MUOKATA_EI_POISTAA || $kokonaisuus->getNakyvyys() + 0 === Nakyvyys::$JULKINEN) {
         $nayta_koodi_nappi = Html::luo_button(Painikkeet::$NAYTA_KOODI_value, array(Attr::title(Painikkeet::$NAYTA_KOODI_title), Attr::onclick("hae_koodi", array($kokonaisuus->get_id(), Oliotyyppi::$KOKONAISUUS)), Attr::classs("btn btn-" . $btn_type . " btn-" . $btn_size . " article")));
     } else {
         $nayta_koodi_nappi = "";
     }
     /* Kuvan lisäyspainikkeet: */
     $uusi_kuva_tiivis = "";
     $uusi_kuva_seli = "";
     // Alla jostakin syystä !empty($kokonaisuus->getSelitys()) ei toiminut!
     if ($kokonaisuus->getSelitys() != "") {
         $onsubmit_parametrit = array($kokonaisuus->get_id());
         /* Tämän avulla löytyvät */
         $form_maaritteet = array('method' => 'post', 'class' => 'rinnakkain', 'action' => "{$_SERVER['PHP_SELF']}?" . "id_kokon=" . $kokonaisuus->get_id());
         if ($selitys_auki) {
             $title = Painikkeet::$SULJE_SELITYS_title;
             $onsubmit_funktionimi = "sulje_selitys";
             $input_maaritteet = array('name' => Toimintonimet::$kokonaisuustoiminto, 'value' => Painikkeet::$SULJE_SELITYS_value, 'title' => $title, 'class' => "btn btn-" . $btn_type . " btn-" . $btn_size . " article");
         } else {
             $title = Painikkeet::$NAYTA_SELITYS_title;
             $onsubmit_funktionimi = "nayta_selitys";
             $input_maaritteet = array('name' => Toimintonimet::$kokonaisuustoiminto, 'value' => Painikkeet::$NAYTA_SELITYS_value, 'title' => $title, 'class' => "btn btn-" . $btn_type . " btn-" . $btn_size . " article");
         }
         $nayta_selitys_nappi = Html::luo_submit_painike_onsubmit_toiminnolla($onsubmit_funktionimi, $onsubmit_parametrit, $form_maaritteet, $input_maaritteet);
     }
     // Haetaan kokonaisuuden tehtävien lkm:
     $teht_lkm = sizeof($tehtavakontrolleri->hae_tehtavat());
     // Tehtävät näkyvät kaikille, jos niitä on:
     if ($teht_lkm > 0) {
         $onsubmit_funktionimi = "nayta_tehtavat";
         $onsubmit_parametrit = array($kokonaisuus->get_id());
         /* Tämän avulla löytyvät */
         $form_maaritteet = array('method' => 'post', 'class' => 'article', 'action' => "{$_SERVER['PHP_SELF']}?" . "id_kokon=" . $kokonaisuus->get_id() . "&" . Oliotyyppi::$naytettava_name . "=" . Palaute::$NAYTETTAVA_OLIOTYYPPI_TEHTAVA);
         $title = Painikkeet::$tehtava_nayta_tehtavat_title . " (" . $teht_lkm . ")";
         $input_maaritteet = array('name' => Toimintonimet::$tehtavatoiminto, 'value' => Painikkeet::$tehtava_nayta_tehtavat_value, 'title' => $title, 'class' => "btn btn-" . $btn_type . " btn-" . $btn_size);
         $tehtavanappi = Html::luo_submit_painike_onsubmit_toiminnolla($onsubmit_funktionimi, $onsubmit_parametrit, $form_maaritteet, $input_maaritteet);
     }
     /** 
      * Muokkaus ja poisto tietysti kunkulle ja kokonaisuuden tekijälle. 
      * Vain heille on myös luvallista jakaa lisäoikeuksia olioon.
      
      <p>Jos kokonaisuus lukittu toisen toimesta, ei sitä voida poistaa
      eikä muokata. Uusia tehtäviä voi kuitenkin lisätä,
      koska siinä mahdollinen samanaikaisuus ei haittaa.</p>
     
      <p>Uusia tehtäviä voi lisätä valtuusarvot >= "tehtävien_lisäys".</p>
     
      Kokonaisuuksien poisto sallitaan turvallisuussyistä vain
      lapsettomille kokonaisuuksille.
     */
     if ($kohdeoikeudet == Lisavaltuudet::$KAIKKI_OIKEUDET) {
         // Oikeuksien eli lisävaltuuksien jakopainike:======================
         $action_os = "oLetUs";
         // Testaan samalla kirjainkoon vaikutusta.
         $action_kyselymuuttujat = array("id_kokon", "oppiaine_kokon", "kieli_id", Kayttajakontrolleri::$lv_name_kohdeolio_id, Kayttajakontrolleri::$lv_name_kohdeoliotyyppi, Kayttajakontrolleri::$lv_name_omistaja_id);
         $action_kyselyarvot = array($kokonaisuus->get_id(), $kokonaisuus->getOppiaine(), $kokonaisuus->getKieli(), $kokonaisuus->get_id(), Oliotyyppi::$KOKONAISUUS, $kokonaisuus->getHenkiloId());
         $jaa_oikeuksia_nappi = Kayttajanakymat::luo_jaa_lisaoikeuksia_painike($action_os, $action_kyselymuuttujat, $action_kyselyarvot);
         //==================================================================
     }
     if ($kohdeoikeudet >= Lisavaltuudet::$SAA_MUOKATA_EI_POISTAA) {
         //====================== LUKITUKSEN HUOMIOINTI =====================
         // Muokkaus- ja poistonapit lukitsemattomalle tai omalle.
         if (!$this->lukitus_estaa_muokkauksen($kokonaisuus, $omaid)) {
             // Muokkauspainike:
             $elementti = Elementti::$MUUTTUJAA_EI_MAARITELTY;
             $elemryhma = Elementtiryhma::$MUUTTUJAA_EI_MAARITELTY;
             $muokkausnappi = $this->luo_muokkauspainike($kokonaisuus, $elementti, $elemryhma);
             //=============================================================
             if ($kohdeoikeudet >= Lisavaltuudet::$SAA_MUOKATA_JA_POISTAA) {
                 // Poisto vain lapsettomille ja tehtävättömille:
                 if ($kokonaisuus->getOn_lapsia() == 0) {
                     $tehtavat = Tehtava::hae_kokonaisuuden_tehtavat($kokonaisuus->get_id(), $parametriolio->get_tietokantaolio());
                     // Ellei tehtäviä löydy, voidaan poistaa:
                     if (empty($tehtavat)) {
                         // POistopainike:
                         $poistonappi = Html::luo_forminput_painike(array(Attr::classs("article"), Attr::action("{$_SERVER['PHP_SELF']}?id_kokon=" . $kokonaisuus->get_id())), array(Attr::classs("btn btn-" . $btn_type . " btn-" . $btn_size), Attr::name("toiminta"), Attr::value(Painikkeet::$POISTA_KOKON_VALUE)));
                         if ($kokonaisuus->getLukitus() == $omaid) {
                             $poistonappi .= "<span style='color: green; font-weight:bold'>" . Tekstit::$ilm_kokon_omalukitus_paalla . "<br/></span>";
                         }
                     }
                 }
             }
             //=============================================================
             // Julkista/piilota-painike:
             if ($kokonaisuus->getNakyvyys() + 0 === Nakyvyys::$JULKINEN) {
                 $value = Painikkeet::$PIILOTA_KOKON_value;
                 $title = Painikkeet::$PIILOTA_KOKON_title;
             } else {
                 $value = Painikkeet::$JULKISTA_KOKON_value;
                 $title = Painikkeet::$JULKISTA_KOKON_title;
             }
             $onsubmit_funktionimi = "";
             // Tulevaa varten.
             $onsubmit_parametrit = "";
             // Ei ole vielä.
             $form_maaritteet = array("class" => "article", "method" => "post", "action" => "{$_SERVER['PHP_SELF']}?id_kokon=" . $kokonaisuus->get_id() . "&oppiaine_kokon=" . $kokonaisuus->getOppiaine() . "&kieli_id=" . $kokonaisuus->getKieli());
             $input_maaritteet = array("class" => "btn btn-" . $btn_type . " btn-" . $btn_size, "value" => $value, "title" => $title, "name" => Toimintonimet::$kokonaisuustoiminto);
             try {
                 $nakyvyysmuutosnappi = Html::luo_submit_painike_onsubmit_toiminnolla($onsubmit_funktionimi, $onsubmit_parametrit, $form_maaritteet, $input_maaritteet);
             } catch (Exception $poikkeus) {
                 $nakyvyysmuutosnappi = $poikkeus->getMessage();
             }
             //=============================================================
             // Järjestyksen muutosnapit (jos mielekästä):
             $siirra_ylemmaksi_nappi = "";
             if ($kokonaisuus->getEdellisenId_taso() != Kokonaisuusolio::$kokon_edellista_ei_ole) {
                 $onsubmit_funktionimi = "";
                 // Tulevaa varten.
                 $onsubmit_parametrit = "";
                 // Ei ole vielä.
                 $form_maaritteet = array("class" => "article", "method" => "post", "action" => "{$_SERVER['PHP_SELF']}?id_kokon=" . $kokonaisuus->get_id() . "&oppiaine_kokon=" . $kokonaisuus->getOppiaine() . "&kieli_id=" . $kokonaisuus->getKieli() . "&ed_id_kokon=" . $kokonaisuus->getEdellisenId_taso() . "&siirto_ylos=true");
                 $input_maaritteet = array("value" => Painikkeet::$SIIRRA_YLEMMAKSI_KOKON_value, "title" => Painikkeet::$SIIRRA_YLEMMAKSI_KOKON_title, "name" => Toimintonimet::$kokonaisuustoiminto, "class" => "btn btn-" . $btn_type . " btn-" . $btn_size);
                 try {
                     $siirra_ylemmaksi_nappi = Html::luo_submit_painike_onsubmit_toiminnolla($onsubmit_funktionimi, $onsubmit_parametrit, $form_maaritteet, $input_maaritteet);
                 } catch (Exception $poikkeus) {
                     $siirra_ylemmaksi_nappi = $poikkeus->getMessage();
                 }
             }
             // Alaspäin siirto:
             $siirra_alemmaksi_nappi = "";
             if ($kokonaisuus->getSeuraavanId_taso() != Kokonaisuusolio::$kokon_seuraavaa_ei_ole) {
                 $onsubmit_funktionimi = "";
                 // Tulevaa varten.
                 $onsubmit_parametrit = "";
                 // Ei ole vielä.
                 $form_maaritteet = array("class" => "article", "method" => "post", "action" => "{$_SERVER['PHP_SELF']}?id_kokon=" . $kokonaisuus->get_id() . "&oppiaine_kokon=" . $kokonaisuus->getOppiaine() . "&kieli_id=" . $kokonaisuus->getKieli() . "&seur_id_kokon=" . $kokonaisuus->getSeuraavanId_taso() . "&siirto_ylos=0");
                 $input_maaritteet = array("value" => Painikkeet::$SIIRRA_ALEMMAKSI_KOKON_value, "title" => Painikkeet::$SIIRRA_ALEMMAKSI_KOKON_title, "name" => Toimintonimet::$kokonaisuustoiminto, "class" => "btn btn-" . $btn_type . " btn-" . $btn_size);
                 try {
                     $siirra_alemmaksi_nappi = Html::luo_submit_painike_onsubmit_toiminnolla($onsubmit_funktionimi, $onsubmit_parametrit, $form_maaritteet, $input_maaritteet);
                 } catch (Exception $poikkeus) {
                     $siirra_alemmaksi_nappi = $poikkeus->getMessage();
                 }
             }
             // Tämä liittyy vanhan järjestysnumeron korjaukseen (kun monilla
             // kokonaisuuksilla oli sama järjestysnumero -1). Nykyään
             // tekniikka on muuttunut, eikä sitä yleensä tarvita.
             if ($kokonaisuus->getJarjestysnro() == -1) {
                 $nayta_jarj_luku = " jarjestysnro: " . $kokonaisuus->getJarjestysnro();
                 $class = "rinnakkain";
                 $id = "";
                 $action = "{$_SERVER['PHP_SELF']}?id_kokon=" . $kokonaisuus->get_id() . "&oppiaine_kokon=" . $kokonaisuus->getOppiaine() . "&kieli_id=" . $kokonaisuus->getKieli();
                 $name = Toimintonimet::$kokonaisuustoiminto;
                 $value = "Korjaa jarjestysnro";
                 $korjausnappi = Html::luo_painikelomake($class, $id, $action, $name, $value);
             }
             /**************************************************************/
         } else {
             if ($kokonaisuus->lukitus != Kokonaisuusolio::$LUKITUS_OFF) {
                 $poistonappi = "<span style='color: red; font-weight:bold'>" . Tekstit::$ilm_kokon_lukitus_paalla . "<br/></span>";
             }
         }
         /* Uuden kuvan lisäyspainike tiivistelmään*/
         $onsubmit_funktionimi = "nayta_kuvalomake";
         $onsubmit_parametrit = array($kokonaisuus->get_id());
         /* Kokonaisuuden id*/
         $form_maaritteet = array('method' => 'post', 'class' => 'article', 'action' => "{$_SERVER['PHP_SELF']}?" . "id_kokon=" . $kokonaisuus->get_id() . "&" . "kohde_kuva=" . Kuvat::$kohde_kokonaisuus_tiivistelma);
         $input_maaritteet = array('name' => Toimintonimet::$kokonaisuustoiminto, 'value' => Painikkeet::$LISAA_KUVA_TIIVIS_KOKON_VALUE, 'title' => Painikkeet::$LISAA_KUVA_TIIVIS_KOKON_TITLE, "class" => "btn btn-" . $btn_type . " btn-" . $btn_size);
         try {
             $uusi_kuva_tiivis = Html::luo_submit_painike_onsubmit_toiminnolla($onsubmit_funktionimi, $onsubmit_parametrit, $form_maaritteet, $input_maaritteet);
         } catch (Exception $poikkeus) {
             $palaute .= "Virhe kuvanapin luomisessa: " . $poikkeus->getMessage();
         }
         /* Uuden kuvan lisäyspainike selitykseen:*/
         $onsubmit_funktionimi = "nayta_kuvalomake";
         $onsubmit_parametrit = array($kokonaisuus->get_id());
         /* Kokonaisuuden id*/
         $form_maaritteet = array('method' => 'post', 'class' => 'article', 'action' => "{$_SERVER['PHP_SELF']}?" . "id_kokon=" . $kokonaisuus->get_id() . "&" . "kohde_kuva=" . Kuvat::$kohde_kokonaisuus_selitys);
         $input_maaritteet = array('name' => Toimintonimet::$kokonaisuustoiminto, 'value' => Painikkeet::$LISAA_KUVA_SELITYS_KOKON_VALUE, 'title' => Painikkeet::$LISAA_KUVA_SELITYS_KOKON_TITLE, "class" => "btn btn-" . $btn_type . " btn-" . $btn_size);
         try {
             $uusi_kuva_seli = Html::luo_submit_painike_onsubmit_toiminnolla($onsubmit_funktionimi, $onsubmit_parametrit, $form_maaritteet, $input_maaritteet);
         } catch (Exception $poikkeus) {
             $palaute .= "Virhe kuvanapin luomisessa: " . $poikkeus->getMessage();
         }
     }
     // Hallinnan / muokkaaajan / luojan osuus päättyy
     // Tehtävien lisääminen sopivasti oikeutetuille:
     if ($kayttajan_valtuudet >= Valtuudet::$TEHTAVA_LISAYS) {
         $elementti = Elementti::$MUUTTUJAA_EI_MAARITELTY;
         $elemryhma = Elementtiryhma::$MUUTTUJAA_EI_MAARITELTY;
         $uusi_teht_nappi = $this->luo_uusi_teht_painike($kokonaisuus, $elementti, $elemryhma);
     }
     // TEhtävien lisäyspainikekoodi loppuu.
     /* haetaan mahdolliset kuvat */
     $kuvahtml_tiivis = $kokonaisuus->hae_kuvat(Kuvat::$kohde_kokonaisuus_tiivistelma, $omaid, $tietokantaolio, false);
     /* kokolaisuuksien hierarkia: html-otsikkotasot. */
     $class_arvo = "kokonaisuus";
     $painikkeet_ylla = $nayta_ed_nappi . $siirra_ylemmaksi_nappi . $siirra_alemmaksi_nappi . $tehtavanappi . $uusi_teht_nappi . $muokkausnappi . $korjausnappi . $nakyvyysmuutosnappi . $jaa_oikeuksia_nappi . $nayta_seur_nappi;
     $painikkeet_alla = $nayta_koodi_nappi . $uusi_kuva_tiivis . $uusi_kuva_seli . $nayta_selitys_nappi . $poistonappi;
     $otsikko = "<div class = " . $class_arvo . " id=" . $kokonaisuus->get_id() . ">" . "<h" . ($kokonaisuus->getOtsikkotaso() + 1) . ">" . $kokonaisuus->getOtsikkomerkinta() . " " . $kokonaisuus->getOtsikko() . " " . "</h" . ($kokonaisuus->getOtsikkotaso() + 1) . ">";
     /* Haetaan vielä tarvittaessa selitys: */
     if ($selitys_auki) {
         /* haetaan mahdolliset kuvat */
         $kuvahtml_selitys = $kokonaisuus->hae_kuvat(Kuvat::$kohde_kokonaisuus_selitys, $omaid, $tietokantaolio, false);
         $selitysotsikko = "<div class='selitysotsikko'>" . Tekstit::$otsikko_selitys . "</div>";
         /* Muotoillaan selitys: */
         $selitys_muokattu = muotoile_merkit($kokonaisuus->getSelitys());
         // Pikkukaavat ensin, jotta kursiivin poisto onnistuu ennen
         // sulkujen käsittelyä.
         $selitys_muokattu = Kaavaeditori::muotoile_pikkukaavat($selitys_muokattu);
         // Sitten normaalikaavat:
         $selitys_muokattu = Kaavaeditori::muotoile_kaavat($selitys_muokattu);
         $selitys = $selitysotsikko . $kuvahtml_selitys . $selitys_muokattu;
     }
     /* Muotoillaan tiivistelmän merkit ja kaavat: */
     $tiivistelma = muotoile_merkit($kokonaisuus->getTiivis());
     $tiivistelma = Kaavaeditori::muotoile_pikkukaavat($tiivistelma);
     $tiivistelma = Kaavaeditori::muotoile_kaavat($tiivistelma);
     $tiivistelma = $kuvahtml_tiivis . $tiivistelma . "<br />";
     /* Ja sitten vain palaset pakettiin: HUOM! Täällä katsotaan, ettei
      * piilotetun sisältö näy. 
      */
     $piilotushuomautus = "<div class='piilotushuomautus'>" . Tekstit::$ilm_kokon_piilotettu_paitsi_ots . "</div>";
     $yksityisilmoitus = "<div class='yksityisilmoitus'>" . Tekstit::$ilm_kokon_yksityinen . "</div>";
     $vainkoosteilmoitus = "<div class='koosteilmoitus'>" . Tekstit::$ilm_kokon_vain_kooste . "</div>";
     /**
      * Tänne mennään, kun kokonaisuus näytetään,
      * oli se sitten piilossa tahi ei.
      */
     if ($kokonaisuus->getNakyvyys() + 0 === Nakyvyys::$JULKINEN || $kokonaisuus->getHenkiloId() == $omaid || $kayttajan_valtuudet + 0 === Valtuudet::$HALLINTA) {
         $normaali_kokonaisuus = Html::div(array(Attr::classs("kokon_ylanapit")), $painikkeet_ylla) . $otsikko;
         // Jos kokonaisuus on muilta piilossa, lisätään viesti:
         if ($kokonaisuus->getNakyvyys() + 0 === Nakyvyys::$VAIN_OTSIKKO) {
             $normaali_kokonaisuus .= $piilotushuomautus . $tiivistelma;
         } else {
             if ($kokonaisuus->getNakyvyys() + 0 === Nakyvyys::$YKSITYINEN) {
                 $normaali_kokonaisuus .= $yksityisilmoitus . $tiivistelma;
             } else {
                 if ($kokonaisuus->getNakyvyys() + 0 === Nakyvyys::$VAIN_KOOSTEESSA) {
                     $normaali_kokonaisuus .= $vainkoosteilmoitus . $tiivistelma;
                 } else {
                     $normaali_kokonaisuus .= $tiivistelma;
                 }
             }
         }
         $normaali_kokonaisuus .= Html::div(array(Attr::classs("kokon_alanapit")), $painikkeet_alla);
         /* Lisätään vielä div selitystä varten: */
         if ($selitys_auki) {
             $normaali_kokonaisuus .= "<div class='selitys' id='selitys" . $kokonaisuus->get_id() . "'>" . $selitys . "</div>";
         }
         $normaali_kokonaisuus .= "</div>";
         /* Kokonaisuus loppuu. */
         $palaute = $normaali_kokonaisuus;
     } else {
         if ($kokonaisuus->getNakyvyys() + 0 === Nakyvyys::$VAIN_OTSIKKO) {
             $class_arvo = "kokonaisuus";
             $otsikko = "<div class = " . $class_arvo . " id=" . $kokonaisuus->get_id() . ">" . "<h" . ($kokonaisuus->getOtsikkotaso() + 1) . ">" . $kokonaisuus->getOtsikkomerkinta() . " " . $kokonaisuus->getOtsikko() . " " . "</h" . ($kokonaisuus->getOtsikkotaso() + 1) . ">";
             $palaute = $nayta_ed_nappi . $siirra_ylemmaksi_nappi . $siirra_alemmaksi_nappi . $nayta_koodi_nappi . $nakyvyysmuutosnappi . $nayta_seur_nappi . $otsikko;
             $palaute .= $piilotushuomautus;
             $palaute .= "</div>";
             /* Kokonaisuus loppuu. */
         } else {
             // Kun jonkun toisen yksityinen / vain koosteessa, eikä hallintavaltuuksia:
             $palaute = "";
         }
     }
     return $palaute;
 }
 function login($meldung = '', $navi = true)
 {
     $page = new Seite($this->path_information);
     $login_form = new Template(INSTALL_PATH . '/Templates/Login.template.html');
     $meldungen = Template::get_all_parts($login_form->template);
     $vars['meldung'] = $meldungen[$meldung] ? $meldungen[$meldung] : $meldung;
     $vars['action'] = SELF;
     if (isset($_GET['logout'])) {
         $vars['user'] = $_GET['logout'];
         $vars['meldung'] = $login_form->parse_template('LOGOUT-MELDUNG', $vars);
     }
     $vars['title'] = $this->seite != 'index' ? $this->rubrik . ' | ' . $this->seite : $this->rubrik;
     if ($navi) {
         $navi = new Navi($this->path_information, $this->navi);
         $vars['navi'] = $navi->rubriken();
     }
     if (!isset($_POST['user']) || !isset($_POST['pass'])) {
         $vars['meldung'] .= Html::br() . $meldungen['KENNWORT_EINGEBEN'];
         die($page->header($vars) . Html::div($login_form->parse_template('FORM', $vars)) . $page->footer($vars));
     } else {
         if ($this->check_login()) {
             header("Location: " . 'http://' . $_SERVER['SERVER_NAME'] . $_SERVER['REQUEST_URI']);
         } else {
             die($page->header($vars) . Html::div($login_form->parse_template('FORM', $vars)) . $page->footer($vars));
         }
     }
 }
Пример #17
0
 /**
  * Test non-existing div method as tag
  */
 public function testDiv()
 {
     $data = Html::div();
     $this->assertEquals('<div></div>', $data);
 }
Пример #18
0
 function show()
 {
     return Html::div($this->ls(), array('id' => $this->list_id));
 }
Пример #19
0
 function order_images()
 {
     $images_sql = "SELECT bilder.*, indices.Bild_id,indices.Raum_id,indices.index\n\t\tFROM `{$this->pics_db_table}` `bilder`\n\t\tLEFT JOIN `{$this->indices_db_table}` `indices`\n\t\t     ON bilder.id = indices.Bild_id\n\t\tWHERE indices.Raum_id = " . $_GET['order'] . "\n\t\tORDER BY indices.index, indices.id ASC, bilder.Name ASC";
     $images = $this->connection->db_assoc($images_sql);
     $room_info = $this->get_room_info($_GET['order']);
     $return = Html::h(2, $room_info['Roomname'] . ': Reihenfolge bearbeiten');
     $return .= Form::form_tag(SELF . '?order=' . $_GET['order'], '', '', array('onsubmit' => 'updateOrder()', 'id' => 'orderform', 'style' => 'float:left;margin-right:20px;'));
     $GLOBALS['scripts'] .= Html::script('', array('src' => '/' . INSTALL_PATH . '/Module/RheinaufExhibition/Backend/order.js'));
     $select = new Select('select[]', array('size' => 24, 'id' => 'select', 'onclick' => "preview(this)", 'style' => 'min-width:220px;'));
     foreach ($images as $img) {
         $dateiname = $img['Dateiname'];
         $select->add_option($img['id'], $dateiname . '  ' . $img['Name'], array('filename' => $dateiname));
     }
     $return .= $select->flush_select() . Html::br();
     $return .= Html::a('javascript:void(0);', 'Hoch', array('class' => 'button', 'onclick' => 'up()'));
     $return .= Html::a('javascript:void(0);', 'Runter', array('class' => 'button', 'onclick' => 'down()'));
     $return .= Html::a('javascript:void(0);', 'Löschen', array('class' => 'button', 'onclick' => 'del()'));
     $return .= Html::a('javascript:void(0);', 'Titelbild', array('class' => 'button', 'onclick' => 'coverpic()'));
     if (!$room_info['Titelbild']) {
         $room_info['Titelbild'] = $images[0]['Dateiname'];
     }
     $return .= Form::add_input('hidden', 'coverpic', $room_info['Titelbild'], array('id' => 'coverpic'));
     $return .= Form::add_input('submit', 'submit', 'Speichern', array('class' => 'button'));
     $return .= Html::a(SELF, 'Zurück', array('class' => 'button', 'onclick' => 'return getChanged()'));
     $return .= Form::close_form();
     $return .= Html::div('Ausgewähltes Bild' . Html::br() . Html::img('', '', array('id' => 'selected_preview')), array('style' => 'display:none'));
     $return .= Html::br();
     $return .= 'Titelbild' . Html::br();
     $return .= Html::img('/' . $this->filepath . $this->landscape_thumb_dir . $room_info['Titelbild'], 'Noch nicht festgelegt', array('id' => 'coverpic_preview'));
     return $return;
 }
Пример #20
0
                    $url = "";
                }
            }
        }
    }
}
// Kieli- taso- ja oppiainevalikot:
if ($palauteolio->get_valikkonaytto()) {
    // Lisätään pikapainikkeet koulutason muuttamiseen:
    $show_curr = false;
    $ylapalkkipainikkeet = $kokonaisuusnakymat->create_level_buttons(Koulutasot::hae_koulutasojen_arvot(), $parametriolio->taso_kokon, $show_curr, true);
    // Lisätään koostepainike täällä, koska se on luontevasti samassa
    // paikassa kuin oppiainetiedot:
    array_push($ylapalkkipainikkeet, $kokonaisuusnakymat->create_summary_button());
    // muut valikot:
    $valikot = Html::form(array(Attr::classs("navbar-form"), Attr::id("kielivalikko")), Html::div(array(Attr::classs("form-group")), $kokonaisuusnakymat->nayta_kielivalikko($parametriolio->get_kieli_id()) . " " . $kokonaisuusnakymat->nayta_oppiainevalikko($parametriolio->get_oppiaine_kokon()) . " " . $kokonaisuusnakymat->nayta_tasovalikko($parametriolio->get_taso_kokon()) . " " . $kokonaisuusnakymat->nayta_nayttotapavalikko($parametriolio->get_kokonaisuuksien_nayttotapa())) . Html::luo_input(array(Attr::type("submit"), Attr::classs("btn btn-default"), Attr::name(Toimintonimet::$kokonaisuustoiminto), Attr::value("->"))));
} else {
    $valikot = "";
}
// Muokattu näkyviin:
if ($palauteolio->get_muokatun_id() > -1) {
    $parametriolio->id_kokon = $palauteolio->get_muokatun_id();
}
/* Lisätään pari painiketta, jotka saavat olla aina näkyvissä tehtävissä ja ratkaisuissa: */
/* Tämän avulla saadaan sisältö-laatikko levennettyä esim.
 * videotykkiesitystä varten. Toimii nyt vain fixed-näytöllä.*/
if ($palauteolio->get_naytettava_oliotyyppi() == Palaute::$NAYTETTAVA_OLIOTYYPPI_TEHTAVA || $palauteolio->get_naytettava_oliotyyppi() == Palaute::$NAYTETTAVA_OLIOTYYPPI_RATKAISU) {
    /*$suurenna_nappi = "<button type='button' id='suurenna_nappi'".
                        "onclick='suurenna()'
                        title='".Painikkeet::$SUURENNA_title."'>".
                        Painikkeet::$SUURENNA_value."</button>";
Пример #21
0
 function admin_module_reorder()
 {
     $array_to_reorder = $this->admin_installed;
     $array_name_to_reorder = 'admin_module';
     $form_tag = Form::form_tag($_SERVER['REDIRECT_URL'], 'post', 'application/x-www-form-urlencoded', array('name' => 'draglist_form'));
     $draglist_scripts = Html::script('', array('src' => '/' . INSTALL_PATH . '/Libraries/Draglist/assets/dom-drag.js'));
     $draglist_scripts .= Html::script('', array('src' => '/' . INSTALL_PATH . '/Libraries/Draglist/assets/draglist.js'));
     $dragable_divs = '';
     for ($i = 0; $i < count($array_to_reorder); $i++) {
         $draglist_item = Form::add_input('hidden', "draglist_items[{$i}]", $i);
         $name = $array_to_reorder[$i]['Name'];
         $dragable_divs .= Html::div($name . $draglist_item, array('style' => 'position: relative; left: 0px; top: 0px;cursor:move;'));
     }
     $draglist_container = Html::div($dragable_divs, array('id' => 'draglist_container'));
     $draglist_cmd = Form::add_input('hidden', 'rubrik_reorder', '');
     $draglist_apply = Form::add_input('image', $array_name_to_reorder . '_reorder', 'Speichern', array('src' => $this->images['img_apply_path'], 'alt' => 'Speichern', 'title' => 'Speichern', 'onclick' => "draglist_manager.do_submit('draglist_form','draglist_container')"));
     $form_close = Form::close_form();
     $draglist_call = "var dragListIndex = new Array();\r\n\t\t\t\t\t\t\tdraglist_manager = new fv_dragList( 'draglist_container' );\r\n\t\t\t\t\t\t\tdraglist_manager.setup();\r\n\t\t\t\t\t\t\taddDragList( draglist_manager );";
     $draglist_call = Html::script($draglist_call);
     $this->return = '<p>Ordnen Sie die Einträge neu an, indem Sie sie mit der Maus ziehen.</p>' . $draglist_scripts . $form_tag . $draglist_container . $draglist_cmd . $draglist_apply . $form_close . $draglist_call;
 }
Пример #22
0
<?php 
include 'html.php';
?>
<html>
<head>
	<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
	<title>HTML Test</title>
	<style type="text/css">
		body{
			font-family: Verdana, Arial, Sans-Serif;
		}
		.message{
			color:#c54;
		}
	</style>
</head>
<body>
	<h1>HTML Test</h1>
	<p><a href="htmltest.php">Reload</a></p>
	
	<?php 
$cnt = 5;
$markup = Html::div(Html::div("123"), Html::div(array('style' => 'color:red;'), "abcd", "efg", "hi"), Html::div("количество:", $cnt), Html::ul(Html::li("abc"), Html::li("def"), Html::li("ghi")));
echo $markup;
?>
	
</body>
</html>
Пример #23
0
 function show()
 {
     return Html::div($this->ls(), array('id' => $this->list_id, 'class' => 'filelist'));
 }
Пример #24
0
 function groups_select($r = '', $s = '')
 {
     $existent_groups = $this->existent_groups();
     $selected = array();
     $return_string = '';
     if ($r != '' && $s == '') {
         $show_to = $this->navi[$r]['Show_to'];
         $groups = is_array($show_to) ? $show_to : array();
     } else {
         if ($r != '' && $s != '') {
             $show_to = $this->navi[$r]['Subnavi'][$s]['Show_to'];
             $groups = is_array($show_to) ? $show_to : array();
         } else {
             $groups = array();
         }
     }
     for ($i = 0; $i < count($existent_groups); $i++) {
         if (in_array($existent_groups[$i]['Name'], $groups)) {
             $selected = array('checked' => 'checked');
         } else {
             $selected = array();
         }
         $return_string .= Form::add_input('checkbox', 'Gruppen[]', $i, $selected) . ' ' . $existent_groups[$i]['Name'] . Html::br();
     }
     return Html::div(Html::bold('Zugang beschränken')) . $return_string . Html::div('Nichts gewählt = keine Beschränkung', array('class' => 'klein'));
 }
 function scan()
 {
     if ($_POST['Dateiname']) {
         $this->scaff->db_insert();
         $meldung = 'Datei ' . $_POST['Dateiname'] . ' gespeichert.';
     }
     $db_files = $this->connection->db_assoc("SELECT `Dateiname` FROM `{$this->db_table}`");
     $scanned_files = RheinaufFile::dir_array($this->filepath, false, 'jpg');
     $existent_files = array();
     foreach ($db_files as $entry) {
         $existent_files[] = $entry['Dateiname'];
     }
     $new_files = array();
     foreach ($existent_files as $file) {
         if (!in_array($file, $scanned_files)) {
             $this->connection->db_query("DELETE FROM `{$this->db_table}` WHERE `Dateiname`='{$file}'");
         }
     }
     foreach ($scanned_files as $file) {
         if (!in_array($file, $existent_files)) {
             $new_files[] = $file;
         }
     }
     if (count($new_files) == 0) {
         return 'Keine neuen Bilder';
     }
     $this->scaff->cols_array['Dateiname']['type'] = 'info';
     $this->scaff->cols_array['Dateiname']['value'] = $new_files[0];
     $this->scaff->cols_array['delete']['type'] = 'custom';
     $this->scaff->cols_array['delete']['custom_input'] = Html::a(SELF . "?delete_file=" . $new_files[0], 'Datei löschen', array('class' => 'button', 'onclick' => "return confirm('Datei löschen?');"));
     $this->maxscale($this->filepath . $new_files[0]);
     $this->make_thumbs($new_files[0]);
     return $meldung . Html::div($this->scaff->make_form(), array('style' => 'float:left')) . Html::div(Html::img(SELF . '/InputPreview?img=' . $new_files[0]));
 }
 function neu_form()
 {
     $this->return .= Html::div($this->scaff->make_form(), array('style' => 'margin-top:10px'));
 }
Пример #27
0
 public static function menu($links)
 {
     $menu = '';
     foreach ($links as $title => $link) {
         $menu .= Html::a(['href' => $link], $title);
     }
     return Html::div(['class' => 'menu'], $menu);
 }
Пример #28
0
 function revert_menu()
 {
     $folder = $this->work_folder();
     if (!RheinaufFile::is_dir($folder)) {
         RheinaufFile::mkdir($folder);
         RheinaufFile::chmod($folder, '0777');
     }
     if (isset($_GET['workingversion'])) {
         $get_working_version = 'workingversion&';
     } else {
         $get_working_version = '';
     }
     $files = RheinaufFile::dir_array($folder, false, 'html');
     rsort($files, SORT_NUMERIC);
     $list = new HtmlList('ul', array('id' => 'workingvmenu'));
     foreach ($files as $file) {
         if ($file != 'content.html' && $file != 'tmp.html') {
             $list->add_li(Html::a('javascript:revert(\'' . $file . '\',xinha_editors.editor);', Date::timestamp2datum(preg_replace('#(.*?)\\.html$#' . ' ', "\$1", $file))));
         }
     }
     return Html::div($list->flush_list(), array('id' => 'revert_menu'));
 }
 function login($meldung = '', $template = '')
 {
     die('DEPRECATED LOGIN METHOD: ' . __FILE__ . ' ' . __LINE__);
     if (!isset($_SESSION)) {
         session_start();
     }
     if (isset($_POST['user']) && isset($_POST['pass']) && $this->check_login()) {
         return true;
     }
     $vars['uuid'] = $_SESSION['uuid'] = General::uuid();
     if (defined('HTTPS') && HTTPS && !isset($_SERVER['HTTPS'])) {
         header("Location: " . 'https://' . $_SERVER['SERVER_NAME'] . $_SERVER['REQUEST_URI']);
     }
     $page = new Seite($this, $template);
     $login_form = new Template(INSTALL_PATH . '/Templates/Login.template.html');
     $meldungen = Template::get_all_parts($login_form->template);
     $vars['meldung'] = $meldungen[$meldung] ? $meldungen[$meldung] : $meldung;
     $vars['action'] = SELF_URL;
     $vars['title'] = $this->seite != 'index' ? $this->rubrik . ' | ' . $this->seite : $this->rubrik;
     if ($navi) {
         $navi = new Navi($this);
         $vars['navi'] = $navi->rubriken();
     }
     if (!isset($_POST['user']) || !isset($_POST['pass'])) {
         $vars['meldung'] .= Html::br() . $meldungen['KENNWORT_EINGEBEN'];
         die($page->header($vars) . Html::div($login_form->parse_template('FORM', $vars)) . $page->footer($vars));
     } else {
         if ($this->check_login()) {
             //if (HTTPS) header("Location: ".'http://'.$_SERVER['SERVER_NAME'].$_SERVER['REQUEST_URI']);
             header("Location: " . 'http://' . $_SERVER['SERVER_NAME'] . $_SERVER['REQUEST_URI']);
         } else {
             die($page->header($vars) . Html::div($login_form->parse_template('FORM', $vars)) . $page->footer($vars));
         }
     }
 }
Пример #30
0
 public function testRetornaClasseAnyComConteudoEAtributo()
 {
     $tag = Html::div(['content' => 'Conteúdo da div', 'attributes' => ['class' => 'alert alert-info']]);
     $expected = '<div class="alert alert-info">Conteúdo da div</div>';
     $this->assertEquals($expected, (string) $tag);
 }