Welches Programm gibt diese Meldung??? Das ist definitiv kein Systax-Error..... Evtl. versteht das Prog die Smarty-Syntax nicht.... Ich habe das "{literal}" mal außerhalb des "script"-Tags gelegt, probiere das mal... Bei mir funktioniert das problemlos. PHP: {xtc_template_init use_template_language="true" section="index"}{if count($module_content)>0}<div id="live_search_head"> {#gm_live_search_head#}:</div><div id="live_search_close"><a href="#" onclick="close_search_window();return false;">{#close_window#}</a></div><div style="clear:both"></div><table id="livesearch_frame"> <tr class="search_keywords"> <td class="left">Suchberiff(e)</td> <td class="right">{$SEARCH_KEYWORDS}</td> </tr> <tr> <td colspan="2"> <div id="search_explain"> Mit 'Klick' auf einen Eintrag in der Spalte 'Funktion' wird diese Funktion aktiviert. </div> </td> </tr> <tr class="search_headline"> <td class="left">Funktion</td> <td class="right">Treffer<span style="font-weight: normal"> (Anzahl)</span></td> </tr> {foreach name=aussen item=module_data from=$module_content} <tr> <td class="left search_result_entry"> {*<span class="search_module">{$module_data.SEARCH_MODULE}</span>*} <a href="{$module_data.SEARCH_MODULE}">{$module_data.SEARCH_TEXT}</a> </td> <td class="right"> <span class="search_keys">{$module_data.SEARCH_KEYS}</span> </td> </tr> {/foreach}</table>{literal}<script type="text/javascript">function close_search_window(){ $('#live_search_container').hide(); $('#search_field').val('').focus(); return false;}</script>{/literal}{else}<div id="no_search_result">Kein Ergebnis für Suchbegriff(e) "{$SEARCH_KEYWORDS}".</div>{/if}
jetzt kommt dies: FATAL ERROR(256): "Smarty error: [in EyeCandy/module/pt_admin_live_search.html line 1]: syntax error
Nein, kann nicht, da ich ja nur das vorhandene linke Menü per Javascript zu einem Top-Menü umbaue........ Da steckt keinerlei Gambio-Logik dahinter
Ja, wenn das ein komplett neues Menu ist, dann fehlt es in der Tat.... In "admin\gm\javascript\horizontal_admin_menu.js" werden die zu übernehmenden Menüs in folgendem Array definiert: PHP: var menu_entries_sort=new Array( "BOX_HEADING_FAVORITES", "BOX_HEADING_CUSTOMERS", "BOX_HEADING_PRODUCTS", "BOX_HEADING_STATISTICS", "BOX_HEADING_MODULES", "BOX_HEADING_TOOLS", "BOX_HEADING_MAGNALISTER", "BOX_HEADING_XTBOOSTER", "BOX_HEADING_GV_ADMIN", "BOX_HEADING_CONFIGURATION", "BOX_HEADING_ZONE", "BOX_HEADING_GAMBIO", "BOX_HEADING_GAMBIO_SEO", "BOX_HEADING_COMPAT_MODULES" ); Da musst Du dann das "Box_heading" Deines Menüs noch einbauen.... Oder Du verwendest die folgende neue Version von "admin\gm\javascript\horizontal_admin_menu.js"... Da habe ich einen neuen Parameter PHP: var copy_all_menues=true && hide_left_menue; //Copy all available menues definiert.. Der bewirkt, dass einfach alle vorhandenen Menüs umgebaut werden, ohne die "menu_entries_sort" zu interpretieren. Dann hat man allerdings keine Möglichkeit mehr, die Menü-Reihenfolge zu ändern.... PHP: //Hide left menu completely (true/false)var hide_left_menue=true; //Show only horizontal flyout menue//var hide_left_menue=false; //Show horizontal flyout menue and left menuvar copy_all_menues=true; //Copy all available menuesvar fade_flyouts=true; //Smooth fading in/out of flyouts//var fade_flyouts=false; //Immediate show/hide of flyoutsvar admin_function_search=true;if (admin_function_search){ var search_form="<li id='search_function_frame'>FUNKTION: <input id='search_form' type='text' size='10' name='search_function'><div id='live_search_container'></div></li>"; var min_search_length=5; //Minimum number of characters for search}/*var admin_function_links=new Array();*/$(document).ready(function(){ var div_content_width=$(".content_width"); if (div_content_width.length) { //Specify order in which to display menu entries //If you want to omit some entries altogether just place "//" in front of an entry, e.g. //"BOX_HEADING_MAGNALISTER", var menu_entries_sort=new Array( "BOX_HEADING_FAVORITES", "BOX_HEADING_CUSTOMERS", "BOX_HEADING_PRODUCTS", "BOX_HEADING_STATISTICS", "BOX_HEADING_MODULES", "BOX_HEADING_TOOLS", "BOX_HEADING_MAGNALISTER", "BOX_HEADING_XTBOOSTER", "BOX_HEADING_GV_ADMIN", "BOX_HEADING_CONFIGURATION", "BOX_HEADING_ZONE", "BOX_HEADING_GAMBIO", "BOX_HEADING_GAMBIO_SEO", "BOX_HEADING_COMPAT_MODULES" ); var menu_id,key; if (hide_left_menue) { var menu_entries_to_copy=new Array,menu_entry_to_copy,not_hide_left_menue=!hide_left_menue; var menu_entries=$(".columnLeft2 .leftmenu_box"); if (menu_entries.length==0) { menu_selector="div.content_width > table > tbody > tr > td[width=160]"; menu_entries=$(menu_selector+" .leftmenu_box"); } if (menu_entries.length) { menu_entries.each(function(i){ menu_id=$(this).attr("id"); if (copy_all_menues) { menu_entries_to_copy[i]=menu_id; } else { i=array_search(menu_id, menu_entries_sort, false); if (i) { i=parseInt(i); menu_entries_to_copy[i]=menu_id; } } }) } } else { var menu_entries_to_copy=menu_entries_sort; } var menu_entry,menu_image,padding_left,padding_top; var menu_entries_to_copy_length=menu_entries_to_copy.length,flyout; var top_menu="<ul id=\"top_menu\">",menu_selector,box_heading_favorites; var top_level_entry="<li class=\"top_level_entry\"></li>",top_level_entry0; top_menu=$(top_menu); top_level_entry0=$(top_level_entry); for (var i=0;i<menu_entries_to_copy_length;i++) { menu_entry_to_copy=menu_entries_to_copy[i]; menu_id="#"+menu_entry_to_copy; menu_entry=$(menu_id); if (menu_entry.length) { menu_id=menu_entry.html(); if (menu_entry_to_copy=='BOX_HEADING_FAVORITES' || (menu_id.indexOf("<li") != -1 && jQuery.trim(menu_id) != "")) { menu_image=menu_entry.prev().prev(); if (not_hide_left_menue) { menu_image=menu_image.clone(); menu_entry=menu_entry.clone(); menu_id=menu_entry.attr("id")+"_top"; menu_entry.attr("id",menu_id); } menu_entry.attr("style","display:none"); top_level_entry=top_level_entry0.clone(); top_level_entry .append(menu_image) .append(menu_entry); //.addClass(menu_id) top_menu.append(top_level_entry); } } } div_content_width=div_content_width.first(); padding_left=top_menu.css("padding-left"); if (padding_left) { padding_left=parseInt(padding_left); } else { padding_left=0; } top_menu.width(div_content_width.width()-padding_left); div_content_width.append(top_menu); padding_top=top_menu.css("margin-bottom"); if (padding_top) { padding_top=parseInt(padding_top); } else { padding_top=0; } padding_top+=top_menu.height(); //+20; $(".content_width + .content_width").css("padding-top",padding_top+"px"); if (hide_left_menue) { if (!menu_selector) { menu_selector=".columnLeft2"; } $(menu_selector).hide(); } if (admin_function_search) { var topmenu_left=$("#topmenu_left"); if (topmenu_left.length) { var target; //search_form=search_form.replace("#",location.href); search_form=$(search_form); topmenu_left.append(search_form); search_form.find('input').keyup(function(e){ if ( e.keyCode == 13) { key=$(this).val(); if (key && key.length>=min_search_length) { $('body').css('cursor','wait'); search_form.attr('disabled', 'disabled'); $.ajax({ url: "pt_find_admin_functions_by_text.php", cache: false, data: key, type: 'POST', async: false, success: function(html){ search_form.removeAttr('disabled'); $('body').css('cursor','default'); if (html) { target=$("#live_search_container") if (target.length) { target .html(html) .show(); } } } }); } else { alert('Sie müssen mindestens '+min_search_length+" Zeichen eingeben!") return false; } } }); } } $('body').mouseup(function(){ var gm_fav_dropzone=$("#gm_fav_dropzone"); if (gm_fav_dropzone.length && gm_fav_dropzone.is(":visible")) { box_heading_favorites=$("#BOX_HEADING_FAVORITES"); if (!gm_fav_dropzone.hasClass("gm_fav_remove")) { box_heading_favorites.fadeIn(); flyout.fadeOut(); } window.setTimeout(function(){ box_heading_favorites.fadeOut(); }, 5000); } }); $("#top_menu li.top_level_entry").hoverIntent( function () { flyout=$(this).find("> ul"); if (fade_flyouts) { flyout.fadeIn(); } else { flyout.show(); } }, function () { flyout=$(this).find("> ul"); if (fade_flyouts) { flyout.fadeOut(); } else { flyout.hide(); } } ); }});function array_search (needle, haystack, argStrict) { // http://kevin.vanzonneveld.net // + original by: Kevin van Zonneveld (http://kevin.vanzonneveld.net) // + input by: Brett Zamir (http://brett-zamir.me) // + bugfixed by: Kevin van Zonneveld (http://kevin.vanzonneveld.net) // * example 1: array_search('zonneveld', {firstname: 'kevin', middle: 'van', surname: 'zonneveld'}); // * returns 1: 'surname' // * example 2: ini_set('phpjs.return_phpjs_arrays', 'on'); // * example 2: var ordered_arr = array({3:'value'}, {2:'value'}, {'a':'value'}, {'b':'value'}); // * example 2: var key = array_search(/val/g, ordered_arr); // or var key = ordered_arr.search(/val/g); // * returns 2: '3' var strict = !!argStrict, key = ''; if (haystack && typeof haystack === 'object' && haystack.change_key_case) { // Duck-type check for our own array()-created PHPJS_Array return haystack.search(needle, argStrict); } if (typeof needle === 'object' && needle.exec) { // Duck-type for RegExp if (!strict) { // Let's consider case sensitive searches as strict var flags = 'i' + (needle.global ? 'g' : '') + (needle.multiline ? 'm' : '') + (needle.sticky ? 'y' : ''); // sticky is FF only needle = new RegExp(needle.source, flags); } for (key in haystack) { if (needle.test(haystack[key])) { return key; } } return false; } for (key in haystack) { //if ((strict && haystack[key] === needle) || (!strict && haystack[key] == needle)) { if ((strict && haystack[key] === needle) || (!strict && haystack[key].indexOf(needle) != -1)) { return key; } } return false;}
Du meinst diesen: Message: Smarty error: [in EyeCandy/module/pt_admin_live_search.html line 1]: syntax error: unrecognized tag 'xtc_template_init' (Smarty_Compiler.class.php, line 590) Ursache?
Ersetze die 1. Zeile im Template mal damit: PHP: {config_load file="$language/lang_$language.conf" section="index"}
Gemacht - neues Ergebnis: Level: FATAL ERROR(256) Message: Smarty error: the $compile_dir 'templates_c' does not exist, or is not a directory. in /www/htdocs/w00c64ab/_gx/includes/classes/Smarty/Smarty.class.php:1116
Wie bekommt man eigentlicht die Icon vor den Menüs weg? Soweit ich das sehen, stecken die "background-image: url("images/gm_icons/..." in unzähligen Scripten!? <grrrr>
Das ist doch ganz easy, CSS macht das für Dich.... Einfach das zur CSS-Datei hinzufügen: PHP: #top_menu .leftmenu_head { background-image: none !important; padding-left: 0 !important;}
Ohne Bildchen & a´bisserl in der CSS rumgewühlt ... gefällt es mir immer besser. Jetzt ein "hover" in #top_menu .leftmenu_head ...