нужен плагин (доработка)

под инстант 2

#1 29 марта 2014 в 15:47
Нужно реализовать возможность чтоб админ мог из админки устанавливать вон сайта, с указанием на какой период будет выводится установленный фон, а по истечении срока автоматом устанавливается дефолтный фон.
Это возможно? Цена вопроса?
#2 29 марта 2014 в 16:00
SE7EN, в личку написал
#3 30 марта 2014 в 20:36
в папке шаблона в файле "options.form.php" после слов "return array(" вставить этот код
  1. 'type' => 'fieldset',
  2. 'title' => 'Фон сайта',
  3. 'childs' => array(
  4.  
  5. new fieldImage('bg_image', array(
  6. 'title' => 'Изображение'
  7. )),
  8.  
  9. new fieldList('bg_attach', array(
  10. 'title' => 'Фиксация при скроллинге страницы',
  11. 'default' => 'scroll',
  12. 'items' => array(
  13. 'scroll' => 'Прокручивается',
  14. 'fixed' => 'Зафиксирован'
  15. )
  16. )),
  17.  
  18. new fieldList('bg_repeat', array(
  19. 'title' => 'Повторение',
  20. 'default' => 'no-repeat',
  21. 'items' => array(
  22. 'no-repeat' => 'Без повторения',
  23. 'repeat' => 'По горизонтали и вертикали',
  24. 'repeat-x' => 'По горизонтали',
  25. 'repeat-y' => 'По вертикали'
  26. )
  27. )),
  28.  
  29. new fieldList('bg_position_hor', array(
  30. 'title' => 'Позиция по горизонтали',
  31. 'default' => 'left',
  32. 'items' => array(
  33. 'left' => 'С левой стороны',
  34. 'center' => 'По центру',
  35. 'right' => 'С правой стороны'
  36. )
  37. )),
  38.  
  39. new fieldList('bg_position_vert', array(
  40. 'title' => 'Позиция по вертикали',
  41. 'default' => 'top',
  42. 'items' => array(
  43. 'top' => 'Сверху',
  44. 'center' => 'По центру',
  45. 'bottom' => 'Снизу'
  46. )
  47. )),
  48.  
  49. new fieldList('bg_full', array(
  50. 'title' => 'На всю ширину окна',
  51. 'default' => 'false',
  52. 'items' => array(
  53. 'true' => 'Растянуть',
  54. 'false' => 'Не растягивать'
  55. )
  56. )),
  57.  
  58. new fieldDate('bg_showed', array(
  59. 'title' => 'Показывать до'
  60. ))
  61. )
  62. ),
в файле "options.css.php" в конце вставить это
  1. <?php if (!empty($this->options['bg_image'])){ ?>
  2. <?php $show = !empty($this->options['bg_showed']) ? new DateTime($this->options['bg_showed']) > new DateTime('now') : true; ?>
  3. <?php if ($show){ ?>
  4. body {
  5. background-image: url("<?php echo $config->upload_root . $this->options['bg_image']['original']; ?>");
  6. background-attachment: <?php echo $this->options['bg_attach'] ?>;
  7. background-repeat: <?php echo $this->options['bg_repeat'] ?>;
  8. background-position: <?php echo $this->options['bg_position_hor'] ?> <?php echo $this->options['bg_position_vert'] ?>;
  9. <?php if ($this->options['bg_full']=='true'){ ?>-moz-background-size:100%;-webkit-background-size:100%;-o-background-size:100%;background-size:100%;<?php } ?>
  10. }
  11. <?php } ?>
  12. <?php } ?>
#4 30 марта 2014 в 20:58
neomaster, огромнейшие спасибо, сделал именно так как и хотелось. Всё работает. Класс, вчера пообещал сегодня сделано!
Спасибо!
Вы не можете отвечать в этой теме.
Войдите или зарегистрируйтесь, чтобы писать на форуме.
Используя этот сайт, вы соглашаетесь с тем, что мы используем файлы cookie.