Forum CMS Made Simple FR

Version complète : [Résolu] problème UDT après upgrade vers cmsms 1.10.1
Vous consultez actuellement la version basse qualité d’un document. Voir la version complète avec le bon formatage.
Citation :#~~~~~ DEBUT BLOC A NE PAS SUPPRIMER ~~~~~
#~ Version du CMS: #1.10.0
#~ Url du site : nextrides.yannlamy.com
#~ Hébergeur / Soft : hébergeur pas cher
#~ Informations Système :
#~ ----------------------------------------------
#~ Cms Version: 1.10.1
#~ Installed Modules:
#~ CMSMailer: 2.0.2
#~ FileManager: 1.2.0
#~ MenuManager: 1.7.7
#~ ModuleManager: 1.5.1
#~ News: 2.12.3
#~ Printing: 1.1.2
#~ Search: 1.7
#~ ThemeManager: 1.1.4
#~ TinyMCE: 2.8.4
#~ CGExtensions: 1.27.1
#~ FrontEndUsers: 1.16.2
#~ FEmessages: 1.1
#~ CGSimpleSmarty: 1.4.9
#~ CGFeedback: 1.5
#~ CTLModuleMaker: 2.0.3
#~ SelfRegistration: 1.6.13
#~ AjaxMadeSimple: 0.3.1
#~ Products: 2.15
#~ FormBuilder: 0.7
#~ FormBrowser: 0.4
#~ annonces: 1.0
#~ CustomContent: 1.7.3
#~ JQueryTools: 1.0.10
#~ CGUserDirectory: 1.2.6
#~ Skeleton: 1.8.1
#~ CGSmartImage: 1.6
#~ Chat: 0.3.0
#~ advert: 1.0
#~ AdvancedContent: 0.9
#~ CMSPrinting: 1.0
#~ MicroTiny: 1.1.1
#~ Config Information:
#~ php_memory_limit:
#~ process_whole_template: false
#~ output_compression: true
#~ max_upload_size: 6000000
#~ default_upload_permission: 664
#~ url_rewriting: mod_rewrite
#~ page_extension: .html
#~ query_var: page
#~ image_manipulation_prog: GD
#~ auto_alias_content: true
#~ locale:
#~ default_encoding: utf-8
#~ admin_encoding: utf-8
#~ set_names: true
#~ Php Information:
#~ phpversion: 5.3.8
#~ md5_function: On (Vrai)
#~ gd_version: 2
#~ tempnam_function: On (Vrai)
#~ magic_quotes_runtime: Off (Faux)
#~ E_STRICT: 0
#~ E_DEPRECATED: 0
#~ memory_limit: 64M
#~ max_execution_time: 90
#~ output_buffering: On
#~ safe_mode: Off (Faux)
#~ file_uploads: On (Vrai)
#~ post_max_size: 10M
#~ upload_max_filesize: 6M
#~ session_save_path: /tmp (1777)
#~ session_use_cookies: On (Vrai)
#~ xml_function: On (Vrai)
#~ Server Information:
#~ Server Api: cgi-fcgi
#~ Server Db Type: MySQL (mysql)
#~ Server Db Version: 5.1.56
#~ ----------------------------------------------
#~~~~~ FIN BLOC A NE PAS SUPPRIMER ~~~~~



Bonjour à tous,

une question pt'être stupide, mais je n'ai pas trouver la réponse jusque là.
depuis ma migration vers cmsms 1.10.1, plus aucune de mes UDT ne veut s'afficher avec un message du style:

string(178) "Smarty error: [in module_db_tpl:FrontEndUsers;feusers_changesettingsform line 49]: syntax error: custom function 'avatar' is not implemented (Smarty_Compiler.class.php, line 805)"

J'ai bien vu qu'il fallait vérifier la compatibilité de nos tags avec la nouvelle mouture de cmsms, ce que j'ai fait, mais même un tag avec pour seul code:

Code :
echo 'test de balise';

ne veut pas s'afficher lors de son appel.

Je suppose que j'ai loupé un truc, que c'est au niveau de l'appel que ça merdouille donc, est-ce que l'appel des UDT a changé avec cette nouvelle version de cmsms?
si non, pourquoi mes UDT se retrouvent "non implementées", comme le dit le message d'erreur?

merci pour vos lumières.
string(178) "Smarty error: [in module_db_tpl:FrontEndUsers;feusers_changesettingsform line 49]:

l'erreur viendrait elle pas du module FEU plutôt ?
non, dans cet exemple, c'est que j'ai une udt appelée 'avatar' dans un template du module FEU.
il situe donc l'erreur dans le gabarit de changement de paramètres du module FEU.
ça me fait la même chose pour la 'custom_copyright' de base et toutes les autres UDT.
et si tu essai d’exécuter l'UDT depuis le panneau de gestion des udt directement ?
elles fonctionnent
Ca c'est la fonction qui chie apparemment dans la page Smarty.compiler.class.php:

Code :
function _compile_custom_tag($tag_command, $tag_args, $tag_modifier, &$output)
    {
        $found = false;
        $have_function = true;

        /*
         * First we check if the custom function has already been registered
         * or loaded from a plugin file.
         */
        if (isset($this->_plugins['function'][$tag_command])) {
            $found = true;
            $plugin_func = $this->_plugins['function'][$tag_command][0];
            if (!is_callable($plugin_func)) {
                $message = "custom function '$tag_command' is not implemented";
                $have_function = false;
            }
        }
        /*
         * Otherwise we need to load plugin file and look for the function
         * inside it.
         */
        else if ($plugin_file = $this->_get_plugin_filepath('function', $tag_command)) {
            $found = true;

            include_once $plugin_file;

            $plugin_func = 'smarty_function_' . $tag_command;
            if (!function_exists($plugin_func)) {
                $message = "plugin function $plugin_func() not found in $plugin_file\n";
                $have_function = false;
            } else {
                $this->_plugins['function'][$tag_command] = array($plugin_func, null, null, null, true);

            }
        }

        if (!$found) {
            return false;
        } else if (!$have_function) {
            $this->_syntax_error($message, E_USER_WARNING, __FILE__, __LINE__);
            return true;
        }

        /* declare plugin to be loaded on display of the template that
           we compile right now */
        $this->_add_plugin('function', $tag_command);

        $_cacheable_state = $this->_push_cacheable_state('function', $tag_command);
        $attrs = $this->_parse_attrs($tag_args);
        $_cache_attrs = '';
        $arg_list = $this->_compile_arg_list('function', $tag_command, $attrs, $_cache_attrs);

        $output = $this->_compile_plugin_call('function', $tag_command).'(array('.implode(',', $arg_list)."), \$this)";
        if($tag_modifier != '') {
            $this->_parse_modifiers($output, $tag_modifier);
        }

        if($output != '') {
            $output =  '<?php ' . $_cacheable_state . $_cache_attrs . 'echo ' . $output . ';'
                . $this->_pop_cacheable_state('function', $tag_command) . "?>" . $this->_additional_newline;
        }

        return true;
    }

apparemment le $have_function n'existe pas d'où la syntax_error

ce qui est étrange aussi, c'est quand rafraichissant la page, le message d'erreur disparait mais la page ne présente aucune trace de l'UDT, comme si elle n'était pas appelée.
bizarre... je pencherais plutôt sur un fichier manquant durant ta mise à jour ...
je vais rebalancer un transfert total des fichiers pour voir et je dirais si ça a changé quoi que ce soit...
alors tout retransférer, mise à jour des modules comme FEU mais toujours le même soucis, les UDT ne sont pas "implemented"

Code :
string(153) "Smarty error: [in globalcontent:footer line 1]: syntax error: custom function 'custom_copyright' is not implemented (Smarty_Compiler.class.php, line 805)"

Code :
string(135) "Smarty error: [in tpl_body:25 line 57]: syntax error: custom function 'avatar' is not implemented (Smarty_Compiler.class.php, line 805)"

la même erreur sur tous les UDT
Comme pôur les autres post datant de la même époque, vu le nombre de soucis rencontré après mon upgrade vers 1.10.1, j'ai tout effacé et recommencé une install propre, ce qui a résolu le problème!
Topic donc clos puisque faux problème dû à "je ne sais pas ce qui s'est passé pendant l'upgrade"

Un grand merci, en tout cas, à ceux qui ont pris le temps de chercher la source du problème avec moi