*//Мини хак написания смайлов для JohnCMS 3.x.x от LeoNSа, после его установки смайлы нужно писать просто с двух сторон точками, а не двоеточием, т.е к примеру .лол. вместо :лол: //* *//Официальный сайт: http://leonsefan.ru (Просьба зарегестрироваться) //* *//Установака: _________________________________________________________________ 1. Заменить файл str/smile.php на тот что в архиве. _________________________________________________________________ 2. В файле incfiles/func.php ищем строку (функцию): ////////////////////////////////////////////////////////// // Обработка смайлов // /////////////////////////////////////////////////////////// _________________________________________________________________ после того как нашли, до самого конца обработки смайлов заменяем код на данный: _________________________________________________________________ ////////////////////////////////////////////////////////// // Обработка смайлов // //////////////////////////////////////////////////////////// // $adm=1 покажет и обычные и Админские смайлы // // $adm=2 пересоздаст кэш смайлов // //////////////////////////////////////////////////////////// global $rootpath; // Записываем КЭШ смайлов if ($adm == 2) { // Обрабатываем простые смайлы $array1 = array (); $path = $rootpath . 'smileys/simply/'; $dir = opendir($path); while ($file = readdir($dir)) { $name = explode(".", $file); if ($name[1] == 'gif' || $name[1] == 'jpg' || $name[1] == 'png') { $array1[':' . $name[0]] = ''; ++$count; } } closedir($dir); // Обрабатываем Админские смайлы $array2 = array (); $array3 = array (); $path = $rootpath . 'smileys/admin/'; $dir = opendir($path); while ($file = readdir($dir)) { $name = explode(".", $file); if ($name[1] == 'gif' || $name[1] == 'jpg' || $name[1] == 'png') { $array2['.' . trans($name[0]) . '.'] = ''; $array3['.' . $name[0] . '.'] = ''; ++$count; } } // Обрабатываем смайлы в каталогах $array4 = array (); $array5 = array (); $cat = glob($rootpath . 'smileys/user/*', GLOB_ONLYDIR); $total = count($cat); for ($i = 0; $i < $total; $i++) { $dir = opendir($cat[$i]); while ($file = readdir($dir)) { $name = explode(".", $file); if ($name[1] == 'gif' || $name[1] == 'jpg' || $name[1] == 'png') { $array4['.' . trans($name[0]) . '.'] = ''; $array5['.' . $name[0] . '.'] = ''; ++$count; } } closedir($dir); } $smileys = serialize(array_merge($array1, $array4, $array5)); $smileys_adm = serialize(array_merge($array2, $array3)); // Записываем в файл Кэша if ($fp = fopen($rootpath . 'cache/smileys_cache.dat', 'w')) { fputs($fp, $smileys . "\r\n" . $smileys_adm); fclose($fp); return $count; } else { return false; } } else { // Выдаем кэшированные смайлы if (file_exists($rootpath . 'cache/smileys_cache.dat')) { $file = file($rootpath . 'cache/smileys_cache.dat'); $smileys = unserialize($file[0]); if ($adm) $smileys = array_merge($smileys, unserialize($file[1])); return strtr($str, $smileys); } else { return $str; } } } function display_error($error = false, $link = '') { _________________________________________________________________ 3. Зайдите в админку на сайте и обновите кэш смайлов _________________________________________________________________ 4. Готово, можна пользоваться!