Перейти к содержанию

Ruskat

Актив
  • Постов

    264
  • Зарегистрирован

  • Посещение

  • Победитель дней

    5

Сообщения, опубликованные Ruskat

  1. Иногда бывает, что появляется ошибка: Table '.\db_name\core_sessions' is marked as crashed and should be repaired.

    Нужно лезть в май админ и ручками её восстанавливать.
    Можно ли в страницу ошибки внедрить код, который будет следить за совпадениями по описанию ошибки.
    И если найдётся совпадение "marked as crashed", значит задействовать процедуру, которая будет с выводом соответствующего сообщения, самостоятельно запускать процедуру ремонта или восстановления проблемной таблицы.

  2. 8 минут назад, by_ix сказал:

    Ruskat может тогда лучше обновиться на актуальную версию? чтоб в будущем проблем очередных не было.

    Я немного привязан. В основном к приложению видео. Обновив систему, надо обновить приложение, ясно что не купленное, до актуальной версии.

    Потому, благодарен за совет, но на всё своё время.

  3. 20 часов назад, by_ix сказал:

    Ruskat можно было просто нажать на "восстановление" и в шаблон ввелись бы актуальные данные от последнего обновления.

    А вот тут то и прикол...
    Ни в сравнениях ничего небыло, ни в востановлении ничего не менялось.

  4. Имеется Wowbook jQuery plugin.  Хорошая листалка PDF. Хочу подмять под себя именно просмотр PDF.

    Создал базу - библиотека. Ковыряю шаблон под базу. Сделал выгрузку PDF, путь есть. Но нужно, чтобы при переходе на страницу книги в  PDF сразу открывалась книга в развёрнутом виде, как в примере. Не могу JS-ом сымитировать нажатие на элемент book2-trigger, чтобы книга автоматом раскрылась на весь экран при загрузке страницы.

  5. 3 часа назад, by_ix сказал:

    Ruskat шаблоны mobileNavBar и mobileNavigation не редактировались?
    и ссылку на сайт лучше.

    Спасибо. Решил сам разобраться.

    Оказывается, почему то в шаблоне mobileNavBar версии 4.5.4.2 отсутствовала секция, отвечающая за показ кнопки меню в мобильной версии:

      	<li data-ipsDrawer data-ipsDrawer-drawerElem='#elMobileDrawer'>
    		<a href='#'>
    			{{$total = \IPS\Member::loggedIn()->notification_cnt;}}
    			{{if !\IPS\Member::loggedIn()->members_disable_pm and \IPS\Member::loggedIn()->canAccessModule( \IPS\Application\Module::get( 'core', 'messaging' ) )}}
    				{{$total += \IPS\Member::loggedIn()->msg_count_new;}}
    			{{endif}}
    			{{if \IPS\Member::loggedIn()->canAccessModule( \IPS\Application\Module::get( 'core', 'modcp' ) ) and \IPS\Member::loggedIn()->modPermission('can_view_reports')}}
    				{{$total += \IPS\Member::loggedIn()->reportCount();}}
    			{{endif}}
    			{{if $total}}
    				<span class='ipsNotificationCount' data-notificationType='total'>{$total}</span>
    			{{endif}}
    			<i class='fa fa-navicon'></i>
    		</a>
    	</li>

    Решением было одолжить недостающий фрагмент кода у версии 4.4.10.

    Работает.

  6. aknight Спасибо. Таки ковырнул шаблы и погнул под себя. Думал, может есть какое дополнение, чтобы это по-проще настроить можно было для каждой базы данных.

    Может кто в курсе, где можно поискать шаблоны для баз даных, или сами базы ?

  7. Хочу убрать информацию об авторе сообщения -  Аватар и ник в списке статей и самой статье, чтобы нигде информации об авторе небыло.

    Интересует, есть ли какое-то расшитение, чтобы не ковырять стиль базы данных.

    Заранее благодарен.

    Автор публікації_02.PNG

  8. SuperBlocks версии 1.0.3 и IPS v4.5.4.2.

    Ошибка выскакивает при попытке просмотреть статью. В "Изменение базы данных ---  - Детали  - Шаблоны - (Группа шаблонов отображения записи)".

    И то, при просмотре иным пользователем, в какой  бы группе он не был. Для админа же проблем с отображением нет - показывает нормально.

    Шаблон стандартный.

    Подробности:

    Спойлер

    Error: Call to a member function url() on bool (0)
    #0 ---\www\applications\cms\modules\front\database\record.php(321): IPS\Theme\class_cms_database_supergrid_recorddisplay->record(Object(IPS\cms\Records1), '\n<div data-cont...', NULL, true)
    #1 ---\www\system\Dispatcher\Controller.php(101): IPS\cms\modules\front\database\_record->manage()
    #2 ---\www\system\Content\Controller.php(50): IPS\Dispatcher\_Controller->execute()
    #3 ---\www\applications\cms\sources\Databases\Dispatcher.php(327): IPS\Content\_Controller->execute()
    #4 ---\www\applications\cms\widgets\Database.php(128): IPS\cms\Databases\_Dispatcher->run()
    #5 ---\www\applications\cms\sources\Pages\Page.php(1300): IPS\cms\widgets\_Database->render()
    #6 ---\www\applications\cms\sources\Pages\Page.php(2259): IPS\cms\Pages\_Page->getWidgets()
    #7 ---\www\applications\cms\modules\front\pages\page.php(116): IPS\cms\Pages\_Page->output()
    #8 ---\www\applications\cms\modules\front\pages\page.php(43): IPS\cms\modules\front\pages\_page->view()
    #9 ---\www\system\Dispatcher\Controller.php(101): IPS\cms\modules\front\pages\_page->manage()
    #10 --\www\applications\cms\modules\front\pages\page.php(33): IPS\Dispatcher\_Controller->execute()
    #11 --\www\system\Dispatcher\Dispatcher.php(152): IPS\cms\modules\front\pages\_page->execute()
    #12 --\www\index.php(13): IPS\_Dispatcher->run()
    #13 {main}

     

  9. v4.5.4.2 - исправил.

    Была проблема, когда вручную нужно было одобрять регистрацию пользователя.

    Таблица: core_statisticsid_00 - По умолчанию выставил NULL, и всё наладилось.

     

    Таблица: core_statistТаблица: core_statisticsics

  10. Respected Сейчас его содержание такое:

    define( 'TEMP_DIRECTORY', dirname( __FILE__ ) . '/uploads' ); //Файл constants.php

    Физическое размещение папки uploads в папке, где стоит скрипт: S:\host\usr\site005\www-(папка со скриптом)\uploads

    Zero108 ВСЕ папки доступны для записи.

    О системе:

    Спойлер
    • PHP версия 7.1.10.
    •  cURL расширение загружено
    •  Multibyte String расширение загружено
    •  DOM расширение загружено
    •  GD расширение загружено
    •  MySQLi расширение загружено
    •  OpenSSL расширение загружено
    •  Session расширение загружено
    •  SimpleXML расширение загружено
    •  XML расширение загружено
    •  XMLReader расширение загружено
    •  XMLWriter расширение загружено
    •  Phar расширение загружено
    •  Zip расширение загружено
    •  Exif расширение загружено
    •  Лимит памяти 128 МБ.
    • MySQL версия 5.7.19-log.

    Путь кэша шаблонов на диске (F:\storage\site005\uploads - виртуальная папка в IIS): F:\storage\site005\uploads\tpl_cache

    Хранение данных:

    -Файловая система

    --Директория (со скриптом): S:\host\usr\site005\www/datastore

  11. Собственно, имеется сайт версии 4.3.3.

    В Настройках хранения задал свои пути для хранения файлов статей и стилей.

    Спустя некоторое время и непонятно, почему всё сбрасывается на пути по умолчанию в файле, находящемся по пути datastore/settings.4e52a1ea3c.php.

    Почему так происходит и как это предотвратить не могу понять. Прошу помощи. Заранее благодарю.

  12. Есть один интересный ресурс, называющийся 

    Цитата

    scribblemaps.com

    Его фишка в том,  что там можно рисовать на картах, устанавливать маркеры и много чего еще...

    В году 2015 как-то спарсил этот сервис под свои нужды, но в процессе переезда в другой дом диск, на котором всё это лежало просто перестал работать.

    Повторил труды снова....

    API:

    Цитата

    Карты пользователей ресурса:

    Цитата

    Можно спокойно встроить в IPS.  У меня сам скрипт лежит по пути (в папке) //сайт/scr/umaps/1.551f/

    В будущем реализую публикование в базе данных. 

    Из проблем сейчас - возможность группировать маркеры по группам... Как у них:

    Цитата

    Краткое описание основных файлов:

    cnf.php - Для задания/автоматизации настроек скрипта

    embed.php -  страница вставки карты на другой странице. Например в view.php. Пример: embed.php?ol&d&s&z&mc&l&gc&sc&width=100%&dfe&mt=true&height=100%&id=001 или просто embed.php?id=001

    view.php - страница вставки карты. Например view.php?id=001

    index.php - Главная страница со всем этим безобразием 🙂

    Кто может помочь в дальнейшем развитии - пожалуйста.

    Ни на что не претендую, никому не впариваю. Просто поделился.

    1.551f_27052020_3-11.7z

  13. 12 часов назад, Zero108 сказал:

    Есть два принципиально разных способа копания в настоящее время. Они приобрели чёткие границы, принципиальную разницу и значительное расстояние между собой, чтобы говорить, что ситуация не такая, как 10-15 лет назад. 

    1. Вам все настраивают, панели у вас нет. Чтобы настроить что-то еще вы платите еще раз.
    2. У вас есть панель ISP Lite (другие не рекомендую), которую просто установить (или немного заплатить за первичную настройку сервера - в пределах 80-100 USD). Далее вы просто ничего не ломаете, донастраиваете всё с минимальными знаниями в панели, так как панель сама подсказывает, какие настройки необходимы, много чего автоматизировано, например, получение и установка бесплатных сертификатов на домен от Let's Encrypt.

    Цитата

    ISPmanager работает с серверами:

    • Nginx версии не ниже 1.1.15,
    • Apache 2.2 и apache 2.4.

    Виндовые серванты в пролёте...

  14. 9 часов назад, Zero108 сказал:

    Ага, буду как негр копаться в синтаксисе всяких *.ini, *.conf и т.д. 

    Чисто ИМХО, но есть же "негры", которые в этом всём копаются.

    Даже купив готовый продукт (скрипт) иногда приходится стыкаться  с ошибками во время установки или эксплуатации. Потому, или сами копаетесь или платите тем, кто покопается за вас.

    shystrik 

     unexpected '?'...

    Вы может выложите файл init.php, или весь код с него, чтобы понять, в чём там проблема.

    Так же,  создайте файл с именем, например, phpinfo.php , или как-то ещё, и содержимым

    Цитата
    
    <?php
    // Показать всю информацию, по умолчанию INFO_ALL
    phpinfo();
    ?>

    чтобы сведения о PHP посмотреть.

  15. Все наверное знают, что внутри системы IPS, при вставке ссылки на другую статью, будь то ссылка на тот же сайт или форум со ссылкой  с окончанием ?do=embed ссылка преобразуется в краткое содержимое.

    Где и как можно отредактировать параметры, чтобы при вставке ссылки, к примеру, на видео, сразу "iframeилась" отдельно назначенная страничка с плеером того же видео? 

  16. WaNted 

    1. Да, он говорит,что не может прочитать видео. Я полагаю, что этот код предназначен для последующей обработки в РНР или в местах, где нужны обратные слеши и где мультибайтовая кодировка нужна.
    2. Cинтаксис не тот получается.

    Примеры по формовке плейлистов JSON или XML есть здесь:

     

  17. WaNted Спасибо за ответ, но по ходу я что-то делаю не так...

    Файл  pls.php:

    Спойлер
    
    <?php
    /**
     * @package		Videos
     * @author		<a href='http://www.devfuse.com'>DevFuse</a>
     * @copyright	(c) 2015 DevFuse
     */
    namespace IPS\videos\modules\front\videos;
    /* To prevent PHP errors (extending class does not exist) revealing path */
    if ( !defined( '\IPS\SUITE_UNIQUE_KEY' ) )
    {
    	header( ( isset( $_SERVER['SERVER_PROTOCOL'] ) ? $_SERVER['SERVER_PROTOCOL'] : 'HTTP/1.0' ) . ' 403 Forbidden' );
    	exit;
    }
    /*** view*/
    class _pls extends \IPS\Content\Controller
    {
    	protected static $contentModel = 'IPS\videos\Video';       
    	/**
    	 * View Video Page	http://.../v/pls/53
    	 */
    	protected function manage()
    	{
    		$document = \IPS\Xml\Rss::newDocument( \IPS\Http\Url::internal( 'app=videos&module=videos&controller=pls', 'front', 'videos' ), \IPS\Member::loggedIn()->language()->get('latest_videos_main'), \IPS\Member::loggedIn()->language()->get('latest_videos_main') );
    		$video = \IPS\videos\Video::loadAndCheckPerms( \IPS\Request::i()->id ); 
    		$description = $video->description;
    		$title = $video->title;
    		$date = $video->date;
    		//$description = strip_tags($description); //	Чистимо опис від тегів
    		$description = str_replace(array("\r\n", "\r", "\n"), '',  strip_tags($description));
    		//$description = mb_strimwidth($description, 0, 10, "");
    		$description = preg_replace( '/"([^"]*)"/', "«$1»", $description );
    		//$title = mb_strimwidth($title, 0, 10, "");
    		//$title = trim($title, "\x00..\x1F");
    		$title = str_replace(array("\r\n", "\r", "\n", "\n"), '',  strip_tags($title));
    		$title = preg_replace( '/"([^"]*)"/', "«$1»", $title );
    		$vid = "http://сайт/путь к видео/video/files/".$video->video_data;
    		$img = "http://сайт/путь к видео/video/preview/".$video->thumbnail;
            \IPS\Output::i()->json( array(
            	'title'		    	=> $title,
            	'description'		=> $description,
            	'playlist' => array(
            		'title'			=> $title,
            		'mediaid'		=> $video->tid,
            		'link'			=> $video->url(),
            		'image'			=> $img,
            		'description'	=> $description,
            		'file'          => $vid
            	)
            ));
    	} 
    }

     

    Выхлоп:
     

    {"title":"\u0420\u0435\u0444\u043e\u0440\u043c\u0430 \u0432 \u043d\u0456\u043a\u0443\u0434\u0438 - 24.04.2020","description":"\t\u041c\u0435\u0434\u0438\u0447\u043d\u0430 \u00ab\u0440\u0435\u0444\u043e\u0440\u043c\u0430\u00bb \u043d\u0430 \u0432\u0435\u0441\u043d\u0456 2020 \u0440\u043e\u043a, \u0442\u0430 \u0449\u0435 \u0439 \u0432 \u043f\u0435\u0440\u0456\u043e\u0434 \u043f\u0430\u043d\u0434\u0435\u043c\u0456\u0457 COVID2019 \u043c\u043e\u0436\u043b\u0438\u0432\u043e \u0439 \u043f\u0440\u0438\u0437\u0432\u0430\u043d\u0430 \u043f\u043e\u043a\u0440\u0430\u0449\u0438\u0442\u0438 \u0434\u043e\u0431\u0440\u043e\u0431\u0443\u0442 \u043c\u0435\u0434\u0438\u043a\u0456\u0432 \u0442\u0430 \u0437\u0430\u043e\u0445\u043e\u0447\u0443\u0432\u0430\u0442\u0438 \u0457\u0445 \u0434\u043e \u0440\u043e\u0431\u043e\u0442\u0438 \u0442\u0430 \u043f\u0440\u043e\u0434\u0443\u043a\u0442\u0438\u0432\u043d\u043e\u0441\u0442\u0456, \u0430\u043b\u0435 \u043f\u043e \u0444\u0430\u043a\u0442\u0443 - \u0432\u0456\u0434\u0431\u0438\u0432\u0430\u0454 \u043d\u0430\u0432\u0456\u0442\u044c \u0431\u0430\u0436\u0430\u043d\u043d\u044f \u00ab\u0441\u0432\u0456\u0442\u0438\u0442\u0438 \u0456\u043d\u0448\u0438\u043c\u00bb \u0447\u0435\u0440\u0435\u0437 \u0444\u0456\u043d\u0430\u043d\u0441\u043e\u0432\u0456 \u0432\u0438\u0440\u0430\u0445\u0443\u0432\u0430\u043d\u043d\u044f.","playlist":{"title":"\u0420\u0435\u0444\u043e\u0440\u043c\u0430 \u0432 \u043d\u0456\u043a\u0443\u0434\u0438 - 24.04.2020","mediaid":"45","link":"http:\/\/bsemd.in.ua\/videos\/v\/view\/45\/","image":"http:\/\/сайт\/путь\/video\/preview\/monthly_2020_04\/Krokus_24_04.2020_Reforma_v_nikudy.mp4_snapshot_01_44_946.jpg.9cb070a47af496bd5a4cbdf78f7acbe9.jpg","description":"\t\u041c\u0435\u0434\u0438\u0447\u043d\u0430 \u00ab\u0440\u0435\u0444\u043e\u0440\u043c\u0430\u00bb \u043d\u0430 \u0432\u0435\u0441\u043d\u0456 2020 \u0440\u043e\u043a, \u0442\u0430 \u0449\u0435 \u0439 \u0432 \u043f\u0435\u0440\u0456\u043e\u0434 \u043f\u0430\u043d\u0434\u0435\u043c\u0456\u0457 COVID2019 \u043c\u043e\u0436\u043b\u0438\u0432\u043e \u0439 \u043f\u0440\u0438\u0437\u0432\u0430\u043d\u0430 \u043f\u043e\u043a\u0440\u0430\u0449\u0438\u0442\u0438 \u0434\u043e\u0431\u0440\u043e\u0431\u0443\u0442 \u043c\u0435\u0434\u0438\u043a\u0456\u0432 \u0442\u0430 \u0437\u0430\u043e\u0445\u043e\u0447\u0443\u0432\u0430\u0442\u0438 \u0457\u0445 \u0434\u043e \u0440\u043e\u0431\u043e\u0442\u0438 \u0442\u0430 \u043f\u0440\u043e\u0434\u0443\u043a\u0442\u0438\u0432\u043d\u043e\u0441\u0442\u0456, \u0430\u043b\u0435 \u043f\u043e \u0444\u0430\u043a\u0442\u0443 - \u0432\u0456\u0434\u0431\u0438\u0432\u0430\u0454 \u043d\u0430\u0432\u0456\u0442\u044c \u0431\u0430\u0436\u0430\u043d\u043d\u044f \u00ab\u0441\u0432\u0456\u0442\u0438\u0442\u0438 \u0456\u043d\u0448\u0438\u043c\u00bb \u0447\u0435\u0440\u0435\u0437 \u0444\u0456\u043d\u0430\u043d\u0441\u043e\u0432\u0456 \u0432\u0438\u0440\u0430\u0445\u0443\u0432\u0430\u043d\u043d\u044f.","file":"http:\/\/сайт\/путь\/video\/files\/monthly_2020_04\/Krokus_24_04.2020_Reforma_v_nikudy_900.webm.467c125080bed5ac030aaaba286004bb.webm"}}

    Плеер этого не понимает. Да. конечно,  можно выводить данные, дорисрвывая вручную нужный синтаксис, только значения подавай, но хочется сделать максимально правильно и работоспособно.

  18. В общем, файл pls.php оставил при таком мнениии:

    <?php
    /**
     * @package		Videos
     * @author		<a href='http://www.devfuse.com'>DevFuse</a>
     * @copyright	(c) 2015 DevFuse
     */
    namespace IPS\videos\modules\front\videos;
    /* To prevent PHP errors (extending class does not exist) revealing path */
    if ( !defined( '\IPS\SUITE_UNIQUE_KEY' ) )
    {
    	header( ( isset( $_SERVER['SERVER_PROTOCOL'] ) ? $_SERVER['SERVER_PROTOCOL'] : 'HTTP/1.0' ) . ' 403 Forbidden' );
    	exit;
    }
    /*** view*/
    class _pls extends \IPS\Content\Controller
    {
    	/**
    	 * [Content\Controller]	Class
    	 */
    	protected static $contentModel = 'IPS\videos\Video';       
    	/**
    	 * View Video Page	http://.../v/pls/53
    	 *
    	 * @return	void
    	 */
    	protected function manage()
    	{
    		$document = \IPS\Xml\Rss::newDocument( \IPS\Http\Url::internal( 'app=videos&module=videos&controller=pls', 'front', 'videos' ), \IPS\Member::loggedIn()->language()->get('latest_videos_main'), \IPS\Member::loggedIn()->language()->get('latest_videos_main') );
    		$video = \IPS\videos\Video::loadAndCheckPerms( \IPS\Request::i()->id ); 
    		$description = $video->description;
    		$title = $video->title;
    		$date = $video->date;
    		//$description = strip_tags($description); //	Чистимо опис від тегів
    		$description = str_replace(array("\r\n", "\r", "\n"), '',  strip_tags($description));
    		//$description = mb_strimwidth($description, 0, 10, "");
    		$description = preg_replace( '/"([^"]*)"/', "«$1»", $description );
    		$title = str_replace(array("\r\n", "\r", "\n", "\n"), '',  strip_tags($title));
    		$title = preg_replace( '/"([^"]*)"/', "«$1»", $title );
    		
    		$document = '[{"file":"'.$video->video_data.'","image":"'.$video->thumbnail.'","title":"'.$title.'","description":"'.$description.'","mediaid":"'.$video->tid.'"}]'; // http://json.parser.online.fr/
    		\IPS\Output::i()->sendOutput( $document, 200, 'text/json' ); 
    	} 
    }

    но беда в том, что из заголовка и описания влазят лишние пробелы, из-за которых плеер не может таботать. Кавычки я исправил, а как от остальных скрытых отступов, пробелов и переносов почистить заголовок и онисание?

  19. 26 минут назад, WaNted сказал:
    
    \IPS\Output::i()->json( array() );

    Заполните массив значениями. У Вас невалидный json.

    Сделал по вашему примеру: \IPS\Output::i()->json( array($document) ); - окантовалось квдратными скобками. Вот тут уже я не знаю, как правильно организовать по подобию оригинального плейлиста, но под свои нужды.

×
×
  • Создать...