Перейти к контенту

Ночь на форуме


Рекомендуемые сообщения

Есть: один скин, одна папка с картинками

 

Делаем:

 

1. Картинки из первой папки в черно-бело-серые тона и делаем другую папку, куда их отправляем.

 

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

 

Первое делает:

 

	 $this->ipsclass->DB->simple_construct( array (
			  'update' => 'ibf_skin_sets',
			  'set'	=> "set_image_dir='названиевторой' ",
			  'where'  => 'set_skin_set_id=3' //предположим
	   )	   );

 $this->ipsclass->DB->simple_exec();

 

Второе:

 

	 $this->ipsclass->DB->simple_construct( array (
			  'update' => 'ibf_skin_sets',
			  'set'	=> "set_image_dir='названиепервой' ",
			  'where'  => 'set_skin_set_id=3' //предположим
	   )	   );

 $this->ipsclass->DB->simple_exec();

 

вот такая идея)

Ссылка на комментарий
Поделиться на других сайтах

файл day.php

<?php
if ( ! defined( 'IN_IPB' ) )
{
print "<h1>Incorrect access</h1>You cannot access this file directly. If you have recently upgraded, make sure you upgraded all the relevant files.";
exit();
}
class task_item
{
var $class	 = "";
var $root_path = "";
var $task	  = "";

/*-------------------------------------------------------------------------*/
// Our 'auto_run' function
// ADD CODE HERE
/*-------------------------------------------------------------------------*/

function run_task()
{
	//-----------------------------------------
	//Day
	//-----------------------------------------
	$dayfolder = "'НАЗВАНИЕ'";

	$this->ipsclass->DB->simple_update('skin_sets',
									   "set_image_dir=".$dayfolder,
									   'set_skin_set_id=НОМЕР'
									  );
	$this->ipsclass->DB->simple_exec();
	//-----------------------------------------
	// Log to log table - modify but dont delete
	//-----------------------------------------

	$this->class->append_task_log( $this->task, "Day at forum" );

	//-----------------------------------------
	// Unlock Task: DO NOT MODIFY!
	//-----------------------------------------

	$this->class->unlock_task( $this->task );
}

/*-------------------------------------------------------------------------*/
// register_class
// LEAVE ALONE
/*-------------------------------------------------------------------------*/

function register_class(&$class)
{
	$this->class	 = $class;
	$this->ipsclass  =& $class->ipsclass;
	$this->root_path = $this->class->root_path;
}

/*-------------------------------------------------------------------------*/
// pass_task
// LEAVE ALONE
/*-------------------------------------------------------------------------*/

function pass_task( $this_task )
{
	$this->task = $this_task;
}


}
?>

выполнять в

0 минут

7 часов

каждый день

каждый день

лог - да

включить - да

 

файл night.php

<?php
if ( ! defined( 'IN_IPB' ) )
{
print "<h1>Incorrect access</h1>You cannot access this file directly. If you have recently upgraded, make sure you upgraded all the relevant files.";
exit();
}
class task_item
{
var $class	 = "";
var $root_path = "";
var $task	  = "";

/*-------------------------------------------------------------------------*/
// Our 'auto_run' function
// ADD CODE HERE
/*-------------------------------------------------------------------------*/

function run_task()
{
	//-----------------------------------------
	// Delete old subscriptions
	//-----------------------------------------
	$nightfolder= "'НАЗВАНИЕ'";

	$this->ipsclass->DB->simple_update('skin_sets',
									   "set_image_dir=".$nightfolder,
									   'set_skin_set_id=НОМЕР'
									  );
	$this->ipsclass->DB->simple_exec();

	//-----------------------------------------
	// Log to log table - modify but dont delete
	//-----------------------------------------

	$this->class->append_task_log( $this->task, "Night at forum" );

	//-----------------------------------------
	// Unlock Task: DO NOT MODIFY!
	//-----------------------------------------

	$this->class->unlock_task( $this->task );
}

/*-------------------------------------------------------------------------*/
// register_class
// LEAVE ALONE
/*-------------------------------------------------------------------------*/

function register_class(&$class)
{
	$this->class	 = $class;
	$this->ipsclass  =& $class->ipsclass;
	$this->root_path = $this->class->root_path;
}

/*-------------------------------------------------------------------------*/
// pass_task
// LEAVE ALONE
/*-------------------------------------------------------------------------*/

function pass_task( $this_task )
{
	$this->task = $this_task;
}


}
?>

запускать в

0 минут

21 часов

каждый день

каждый день

лог - да

включить - да

 

В ОБОИХ файлах заменить только слово НАЗВАНИЕ И НОМЕР на название папки с картинками и номер скина соответственно

Ссылка на комментарий
Поделиться на других сайтах

Интересно получается... Ночь ото дня отличается только цветом кнопок?

ИМХО, лучше сделать 2 скина и в зависимости от времени суток менять таском дефолтный скин. Ну а лучше не таском, а завести в настройках доп. поле с 2-мя значениями - дневной скин и ночной и при выдаче страницы считать дефолтным тот, который соответствует времени (кстати неплохо бы время брать с учетом часового пояса пользователя).

Ссылка на комментарий
Поделиться на других сайтах

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

 

и потом, не только цветам кнопок, но и заполняющих картинок (tile_cat и т.д.)

Ссылка на комментарий
Поделиться на других сайтах

давайте вариант чтоб для всех меняла... а не так что со штатов будут сидеть на ночном скине днём и наоборот. =) Изменено пользователем freeman85
Ссылка на комментарий
Поделиться на других сайтах

тоесть рабочий вариант?

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

Ссылка на комментарий
Поделиться на других сайтах

  • 6 месяцев спустя...
а как сделать 2 php файлика в задачах и прописать время выполнения их в задачах ночь и день, первый будет выбирать изначальный дневной стиль, а второй ночной стиль - каждая задача по своему, кто подскажет как так сделать? :D
Ссылка на комментарий
Поделиться на других сайтах

что то у меня папка с картинками меняется а изменения в шаблонах и CCS не изменяется, тоесть наверное не выполняется это:

 

'set_skin_set_id=НОМЕР'

 

начальный ИД в 2.1.Х это 2 вроде как, вписываю, и ещё 11, смотрю по cashe/skin_cashe/номера скинов как и папки, пишу вот так:

 

'set_skin_set_id=2'

 

что то не работает, только вот как сказал папка с картинками меняется, может что пропустил но я только 2 строчки редактирую это:

 

$dayfolder = "'2'";

'set_skin_set_id=2'

Изменено пользователем VOTEX
Ссылка на комментарий
Поделиться на других сайтах

  • 2 недели спустя...

Кто поможет разобраться в скрипте:

Меняет шапку форума по времени суток

<script LANGUAGE="JavaScript">
function process(){}
today = new Date()
if(today.getMinutes() < 10) {
pad = "0"}
else
pad = "";
if((today.getHours() <= 6) && (today.getHours() >= 12))
{ document.write("<td valign='bottom' align='left' style='padding-left: 50px;' height='250'><a href='index.php' title='Утро'><img src='картинка' border='0' height='152' width='700'></a></td>")}
if((today.getHours() >= 12) && (today.getHours() <= 18))
{ document.write("<td valign='bottom' align='left' style='padding-left: 50px;' height='250'><a href='index.php' title='День'><img src='картинка' border='0' height='152' width='700'></a></td>")}
if((today.getHours() >= 18) && (today.getHours() <= 23))
{ document.write("<td valign='bottom' align='left' style='padding-left: 50px;' height='250'><a href='index.php' title='Вечер'><img src='картинка' border='0' height='152' width='700'></a></td>")}
if((today.getHours() >= 23) && (today.getHours() <= 6))
{ document.write("<td valign='bottom' align='left' style='padding-left: 50px;' height='250'><a href='index.php' title='Ночь'><img src='картинка' border='0' height='152' width='700'></a></td>")}

// end hiding contents -->
</SCRIPT>

 

Картинка день и вечер отображается,а вот ночь и утро нет.Почему?

Может кто поможет разобраться и найдёт ошибки

Ссылка на комментарий
Поделиться на других сайтах

  • 4 месяца спустя...
а можно как-то сделать что бы у меня логотип только менялся на утро, день, вечер и ночь? если да, то подскажите как плз, а то не очень понял как вствить этот мод... (версия 2,1,7)
Ссылка на комментарий
Поделиться на других сайтах

  • 1 месяц спустя...

Вот сделал 2 скина - дневной и ночной. Меняю соответственно в таблице ibf_skin_sets значения set_default для ночного и дневного скина. В таблице значения меняются, даже если зайти во вкладку Админцентр > Список стилей, то там правильно поменялся скин по умолчанию. Но вот форум как был, так и остался с прежним скином.

 

Пробовал ещё обновить кэш

$this->ipsclass->update_forum_cache(), но не помогает.

 

Может кто-нить знает, что ещё нужно обновить, чтобы скин сменился?

Изменено пользователем zapretnyii_plod
Ссылка на комментарий
Поделиться на других сайтах

Нужно обновлять кеш skin_id_cache имхо ещё, но проверять лень.

 

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

Ссылка на комментарий
Поделиться на других сайтах

Присоединиться к обсуждению

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

Гость
Unfortunately, your content contains terms that we do not allow. Please edit your content to remove the highlighted words below.
Ответить в этой теме...

×   Вы вставили отформатированный текст.   Удалить форматирование

  Допустимо не более 75 смайлов.

×   Ваша ссылка была автоматически заменена на медиа-контент.   Отображать как ссылку

×   Ваши публикации восстановлены.   Очистить редактор

×   Вы не можете вставить изображения напрямую. Загрузите или вставьте изображения по ссылке.

Зарузка...
×
×
  • Создать...

Важная информация

Находясь на нашем сайте, вы соглашаетесь на использование файлов cookie, а также с нашим положением о конфиденциальности Политика конфиденциальности и пользовательским соглашением Условия использования.