mngatoff

mngatoff

Был в сети 11 января 2024, 00:10
Заказы не принимаю
по-моему это неправильно — это нативная работа феном вообще-то, почему ее нужно накостыливать? получается, Бруно ( который Мигас написал) как обычно без оглядки на всех делает по-своему, а мы из-за него убираем каноническую опцию из феном? Уж что-что, а ignore точно должен быть из коробки
а если у меня весь сайт построен на тегах {mobile}{/mobile} и {desktop}{/desktop}, которые плагином добавляются, не обновляться теперь что ли? весь сайт покрашится?
по-моему проблема с источниками файлов такого не стоит вообще. Если человек включает феном на весь сайт, пофиксить пути в источнике должно быть его ответственностью, как ты и говорил
upd. кстати, ниже всплыл пример использования таких тегов в самом феноме — {ignore}{/ignore}. Крайне нужная штука порой.
пользуйтесь на здоровье
case 'OnHandleRequest':
        // Приведение к нижнему регистру
        $request = $_REQUEST;
        $url = $request['q'];
        if (!empty($url)) {
            unset($_GET['q']);
            $params = http_build_query($_GET);
            if (strlen($params)) {
                $params = '?' . $params;
            }
            if (preg_match('/[A-Z]/', $url)) {
                $modx->sendRedirect(strtolower($url).$params);
            }
        }
        break;
«использовать fenom на страницах» тоже надо включить. И следить потом, чтобы все что с фигурными скобками и при этом не феном (какая-нибудь гугл-аналитика, к примеру) либо было в теге {ignore}{/ignore}, либо имело пробел после скобки.
Стандартные теги будут работать, но возможны сюрпризы. Да и зачем.
вот всплыл косячок.

если пользователь создает тикет, но не сохраняет ее, а в это время другой пользователь тоже начинает создавать тикет — он видит фотки, загруженные другим пользователем, как будто это он их залил. В сниппете в выборке файлов пропущен параметр 'createdby' => $modx->user->id. С ним всё норм стало.
я вот воплощаю пашиным плагином, и у меня на методе renderInput вот такое на страницу вылезает



это при том, что migx полей у шаблона нет. Для проверки отключаю плагин migx — вылезает путь из yandexcoordstv. Включаю migx обратно, лезу в него, закоменчиваю строки
case 'OnTVInputRenderList':
        $modx->event->output($corePath.'elements/tv/input/');
        break;

— всё норм. Что за колдунство?) как это работает? как убрать надпись?
приветствую! а пробовал кто-нибудь водяной знак накладывать?
настройка источника:
{
  "thumb": {
    "w": 120,
    "h": 80,
    "q": 90,
    "zc": "1",
    "bg": "000000",
    "fltr": "wmi|wm-100.png|C|100"
  },
  "large": {
  	"wp": 600,
	"hp": 900,
	"wl": 900,
	"hl": 600,
	"ws": 900,
	"hs": 900,
	"q": 90,
	"zc": "1",
    "bg": "000000",
  	"fltr": "wmi|wm-320.png|BR|100|10|10"
  }
}
с админки знак проставляется, с фронта нет
а я влез в тикетовый процессор web/upload/file, и в методе process() дописал после проверки на дубли:
// Check for files limit
        if ($filesLimit = $this->modx->getOption('tickets.max_files_upload')) {
        	$checkLimit = $this->modx->newQuery($this->classKey, array('class' => $this->class));
	        if (!empty($this->ticket->id)) {
	            $checkLimit->andCondition(array('parent:IN' => array(0, $this->ticket->id)));
	        } else {
	            $checkLimit->andCondition(array('parent' => 0));
	        }
        	$checkLimit->andCondition(array('createdby' => $this->modx->user->id));
        	if ($this->modx->getCount($this->classKey, $checkLimit) >= $filesLimit) {
        		@unlink($data['tmp_name']);

            	return $this->failure('Вы не можете загрузить больше '.$filesLimit.' файлов');
        	}
        }
и джаваскрипт можно не трогать, и надежнее.
Хочется попросить Василия что-то подобное таки включить в релиз, полезная штука.
здравствуйте, Сергей! мое решение продиктовано желанием уйти полностью от сравнения json строки к сравнению фактичкских данных. Ваше опять возвращает к строкам. И оно чревато неточностями там, где перепутан порядок опций в строке или число сохранено как строка… воть