Апр 29
remitmasterjQuery checkbox, checked, jquery
Иногда элементарным вещам не уделяешь должного места в своей голове и они плохо запоминаются, вот и с этой выборкой так, постоянно забываю o_O
$("input[name='group_name[]']:checked");
||
$("input").filter(":checkbox:checked");
||
$('input[type="checkbox"]').prop('checked');
||
$("input[type='checkbox'][checked='true']");
||
$("input:checked");
Взято
Апр 27
remitmasterApache apache, bitrix, MAMP Pro, mod_rewrite
По умолчанию почему то не заработал ЧПУ на сайте, apache не хотел читать .htaccess, заходим FIle -> Edit Template -> Apache -> httpd.conf
; у меня строка 205
<Directory />
Options Includes
AllowOverride All ; меняем на All
</Directory>
AllowOverride директива
Синтаксис: AllowOverride override override …
Значение по умолчанию: AllowOverride All
Контекст: каталог
Состояние: основное
Когда сервер находит .htaccess файл (как определено AccessFileName) ему необходимо знать какие директивы, объявленные в том файле могут отменять ранее утановленную информацию доступа.
Эта директива может быть установлена в None, т.е. чтобы сервер не читал файл .htaccess. Если она установленна в All — сервер будет допускать все директивы .htaccess файла. Возможны следующие одно или несколько значений:
AuthConfig — допускает использование директив разрешения (AuthDBMGroupFile, AuthDBMUserFile, AuthGroupFile, AuthName, AuthType, AuthUserFile, require, и т.д..).
FileInfo — допускает использование директив, управляющих типами документа (AddEncoding, AddLanguage, AddType, DefaultType, ErrorDocument, LanguagePriority, и т.д..).
Indexes — допускает использование деректив управления индексацией каталога(AddDescription, AddIcon, AddIconByEncoding, AddIconByType, DefaultIcon, DirectoryIndex, FancyIndexing, HeaderName, IndexIgnore, IndexOptions, ReadmeName, и т.д..).
Limit — допускает использование основных директив управления доступом (allow, deny и order).
Options — допускает использование директив, управляющих специфическими особенностями каталога (Options и XBitHack).
Мар 22
remitmasterJavaScript svg
$('svg')[0].setAttribute('width', '100%');
Мар 06
remitmasterJavaScript, Без рубрики Highcharts, javascript графики

Из всего что было попробовано остановился на этой библиотеке и не прогадал. Эту библиотеку не даром даже яндекс использует в web мастере. Разобраться можно довольно быстро, есть масса примеров, api тоже не плохо описано. В общем записываю чтобы не забыть.
Ну и результаты работы с Highcharts
Аналитика стоимости 1м² жилья в Ставрополе
Ссылка на сайт проекта
Ноя 24
remitmaster1С-Битрикс, Bitrix API bitrix_api, bitrix_user
Думаю метод проверки пользователя в определенной группе обязан быть в API, но его почему-то там не оказалось, есть пару(CUser::GetUserGroupArray(),
CUser::GetUserGroup(), CUser::GetUserGroupString()) методов для выборки всех групп пользователя. Чтобы сделать проверку с помощью этих методов нужны дополнительные манипуляции.
Предложу решение:
/**
* Функция проверки нахождения пользователя в определенной группе
* @param {intva} $i_GroupID - ID группы
* @param {intval} $i_UserID - ID пользователя, если не указан, то текущий
* @return {bool}
*/
function isUserGroupID($i_GroupID, $i_UserID = false)
{
if(!$i_UserID && $GLOBALS['USER']->IsAuthorized())
$i_UserID = intval($GLOBALS['USER']->GetID());
if($i_UserID)
return in_array($i_GroupID, CUser::GetUserGroup(intval($i_UserID)));
}
var_dunp( isUserGroupID(1, 1) ); // true
Ноя 09
remitmaster1С-Битрикс, Bitrix API, function, PHP bitrix date api, php
В методе CIBlockElement::GetList() есть параметр фильтра для выборки активных элементов по дате. Т.е. проверка происходит еще в запросе и не надо в списке нечего проверять дополнительно.
Если вам нужно обратная сторона действия с фильтрацией по дате активности, то у вас это не получится сделать. Мной ожидалось поведение, что если
заменить Y на N то выборка отдаст только не активные по дате элементы, но к сожалению это не так, читаем еще раз док и убеждаемся в этом.
ACTIVE_DATE — непустое значение задействует фильтр по датам активности.
Будут выбраны активные по датам элементы.Если значение не установлено («»), фильтрация по датам активности не производится;
Приходится делать полную выборку и проверят уже в результате что конечно не очень хорошо.
function __isElelementDateActive($s_DateFrom, $s_DateTo)
{
$stmp_DateFrom = MakeTimeStamp($s_DateFrom, "DD.MM.YYYY HH:MI:SS");
$stmp_DateTo = MakeTimeStamp($s_DateTo, "DD.MM.YYYY HH:MI:SS");
$stmp_Date = MakeTimeStamp(date('d.m.Y H:i:s'), "DD.MM.YYYY HH:MI:SS");
return ($stmp_Date > $stmp_DateFrom && $stmp_Date < $stmp_DateTo);
}
+ бонус, проверка если дата истекает за 1 день
function __isOneDayShowElement($s_DateTo)
{
$stmp_DateTo = MakeTimeStamp($s_DateTo, "DD.MM.YYYY");
$stmp_Date = MakeTimeStamp(date('d.m.Y'), "DD.MM.YYYY");
return (($stmp_DateTo - $stmp_Date) == 86400);
}
+ дата и время
function isDateTimeActive($date_from, $date_to)
{
$ar_From = explode(' ', $date_from);
$ar_DateFrom = explode('.', $ar_From[0]);
$ar_TimeFrom = explode(':', $ar_From[1]);
$ar_To = explode(' ', $date_to);
$ar_DateTo = explode('.', $ar_To[0]);
$ar_TimeTo = explode(':', $ar_To[1]);
$ar_Date = explode('.', date('d.m.Y'));
$ar_Time = explode(':', date('H:i:s'));
$s_MetaDateFrom = mktime($ar_TimeFrom[0], $ar_TimeFrom[1], $ar_TimeFrom[2], $ar_DateFrom[1], $ar_DateFrom[0], $ar_DateFrom[2]);
$s_MetaDateTo = mktime($ar_TimeTo[0], $ar_TimeTo[1], $ar_TimeTo[2], $ar_DateTo[1], $ar_DateTo[0], $ar_DateTo[2]);
$s_MetaDate = mktime($ar_Time[0], $ar_Time[1], $ar_Time[2], $ar_Date[1], $ar_Date[0], $ar_Date[2]);
return ($s_MetaDate >= $s_MetaDateFrom && $s_MetaDate <= $s_MetaDateTo);
}
Окт 01
remitmasterJavaScript, PHP JavaScript
Функция вставляет (в данном случае точку) после десятой, сотой, и тысячной доли числа.
var __formatSumm = function(sum)
{
var c = sum.length, s = sum, m = "", i = 0;
while(c--){if(i==3){m+='.'+s[c];i=0;}else{m += s[c];}i++;}
return m.split("").reverse().join("");
}
1.000
10.000
100.000
1.000.000
10.000.000
100.000.000
1.000.000.000
10.000.000.000
100.000.000.000
UP
Для php
function __formatSumm($s)
{
$c = strlen($s);
$ar = preg_split('//', $s, -1, PREG_SPLIT_NO_EMPTY);
$i = 0;
while($c--){if($i == 3){ $m .='.'.$ar[$c]; $i = 0;}else{ $m .= $ar[$c];}$i++;}
return strrev($m);
}
Сен 28
remitmasterJavaScript random
function randomString() {
return '' + new Date().getTime();
}
function randomString(length) {
var chars = '0123456789ABCDEFGHIJKLMNOPQRSTUVWXTZabcdefghiklmnopqrstuvwxyz'.split('');
if (! length) {
length = Math.floor(Math.random() * chars.length);
}
var str = '';
for (var i = 0; i < length; i++) {
str += chars[Math.floor(Math.random() * chars.length)];
}
return str;
}
Сен 21
remitmasterDevelopment no_skype
<meta name="SKYPE_TOOLBAR" content="SKYPE_TOOLBAR_PARSER_COMPATIBLE" />
Сен 12
remitmaster1С-Битрикс, PHP active date, date
function _isDateActive($date_from, $date_to)
{
$ar_DateFrom = explode('.', $date_from);
$ar_DateTo = explode('.', $date_to);
$ar_Date = explode('.', date('d.m.Y'));
$s_MetaDateFrom = mktime(0, 0, 0, $ar_DateFrom[1], $ar_DateFrom[0], $ar_DateFrom[2]);
$s_MetaDateTo = mktime(0, 0, 0, $ar_DateTo[1], $ar_DateTo[0], $ar_DateTo[2]);
$s_MetaDate = mktime(0, 0, 0, $ar_Date[1], $ar_Date[0], $ar_Date[2]);
return ($s_MetaDate >= $s_MetaDateFrom && $s_MetaDate <= $s_MetaDateTo);
}
Older Entries
Свежие комментарии