COTONTI.CMSWORKS.RU
Сборка фриланс-биржи на cotonti

Стили для категорий и подкатегорий.

Автор Сообщение

vpktzx

#1/09.11.2018 15:06
0

Пользователи

Карма: +1

В projects.add.tpl тип задания у меня отопражается с помощью тега {PRJADD_FORM_TYPE} и что бы для этого selecta у меня работали стили от uikit 3 я в файле thema.php  сделал так

($R['input_select'] = '<select class="uk-select" name="{$name}"{$attrs}>{$options}</select>{$error}';)  

Стили работаю, все норм. Но для следующего selecta который расположен чуть ниже 

{PHP.c|catselector_selectbox('projects', $this, 'rcat', '', 'W',0)}   это категории и подкатегории, тут не работает  $R['input_select'] = '<select class="uk-select" name="{$name}"{$attrs}>{$options}</select>{$error}';   помогите применить  class="uk-select" к {PHP.c|catselector_selectbox('projects', $this, 'rcat', '', 'W',0)} .    То есть к категориям и подкатегориям.

Сообщения: 58

kopusha

#2/12.11.2018 22:56
0

Пользователи

Карма: +107

Ты на лету меняешь javascriptами стандартные селекты на  что то стилизованное?

Я когда то игрался этим путем, если там только css без активной подмены всего блока select на новый но еще есть смысл. 

plugins/catselector/js/catselector.js там создается новый селейкт и ему можно как то так $(obj).after('\n' + '<select class="uk-select

Я бы сразу в plugins/catselector/inc/catselector.functions.php прописал $result .= "<select class='uk-select

Добавлено 12 минут спустя:

Как там workrocket.ru который ты обещал доделать во что бы то ни стало
Сообщения: 282

vpktzx

#3/13.11.2018 20:19
0

Пользователи

Карма: +1

#16439 kopusha:

Ты на лету меняешь javascriptами стандартные селекты на  что то стилизованное?

Я когда то игрался этим путем, если там только css без активной подмены всего блока select на новый но еще есть смысл. 

plugins/catselector/js/catselector.js там создается новый селейкт и ему можно как то так $(obj).after('\n' + '<select class="uk-select

Я бы сразу в plugins/catselector/inc/catselector.functions.php прописал $result .= "<select class='uk-select

Добавлено 12 минут спустя:

Как там workrocket.ru который ты обещал доделать во что бы то ни стало
Над workrocketom как рвз и пыхтю.  Но он сеейчас на другом домене. 
Сделал как вы сказали:
"Я бы сразу в plugins/catselector/inc/catselector.functions.php прописал $result .= "<select class='uk-select"
И сделал я это так:
$result .= "<select class=\"uk-select\" name=\"".$name."\"  ".$attr." onChange=\"".$onchange_select_set_input."catselector_changeselect(this, '".$area."', '".$name."', '".$userrigths."', '".$rsc."');\">";

 

В итоге проблема решилась на половину. То есть для категорий стили применились,  но подкатегории все так же и остались без  class="uk-select" (((.
Никак не могу понять логику этого php видимо практика не одного года нужна. Может я что то упустил?

 

Сообщения: 58

kopusha

#4/14.11.2018 08:38
+1

Пользователи

Карма: +107

Это не пхп.

Логика там такая: (посмотреть бы, но скорее всего я прав)

на станице есть какой то селект стандартный. При загрузке через javascript его скрывает в display none, и создаёт новый элемент уже красивый с твоими css. Прописав то что я сказал в самом плагине ты этого добился.

Когда же ты в этом красивом элементе (это уже псевдоселект) выбираешь подкатегорию то плагин создаёт тебе новый селект (стандартный) ниже. Но нужен триггер который опять сделает это действие после появления - найдёт новый, скроет и заменит его на красивый.

Скажу больше, это не сложно сделать разобравшись в JavaScript который твои селекты меняет и дописав в JavaScript плагина этот функционал. Но потом начнутся танцы с бубном - человек выбрал категорию а, ему выдало подкатегории аа. Их на лету поменяло. Но он поменял выбор и выбрал б. А бб уже не поменялись и аа не исчезли, или ещё что то в этом роде.

Добавлено 5 минут спустя:

https://getuikit.com/docs/form#select

ты эти селекты хочешь прописать? Они без JavaScript вроде бы, думаю можно сделать и не сложно.

Добавлено 1 минута спустя:

plugins/catselector/js/catselector.js там создается новый селейкт и ему можно как то так $(obj).after('\n' + '<select class="uk-select

делал?

Сообщения: 282

vpktzx

#5/14.11.2018 10:15
0

Пользователи

Карма: +1

#16441 kopusha:

Это не пхп.

Логика там такая: (посмотреть бы, но скорее всего я прав)

на станице есть какой то селект стандартный. При загрузке через javascript его скрывает в display none, и создаёт новый элемент уже красивый с твоими css. Прописав то что я сказал в самом плагине ты этого добился.

Когда же ты в этом красивом элементе (это уже псевдоселект) выбираешь подкатегорию то плагин создаёт тебе новый селект (стандартный) ниже. Но нужен триггер который опять сделает это действие после появления - найдёт новый, скроет и заменит его на красивый.

Скажу больше, это не сложно сделать разобравшись в JavaScript который твои селекты меняет и дописав в JavaScript плагина этот функционал. Но потом начнутся танцы с бубном - человек выбрал категорию а, ему выдало подкатегории аа. Их на лету поменяло. Но он поменял выбор и выбрал б. А бб уже не поменялись и аа не исчезли, или ещё что то в этом роде.

Добавлено 5 минут спустя:

https://getuikit.com/docs/form#select

ты эти селекты хочешь прописать? Они без JavaScript вроде бы, думаю можно сделать и не сложно.

Добавлено 1 минута спустя:

plugins/catselector/js/catselector.js там создается новый селейкт и ему можно как то так $(obj).after('\n' + '<select class="uk-select

делал?

Алилуя. в общем я прямо в plugins/catselector/js/catselector.js в строку с 

$(obj).after('<select class=\"uk-select\" name="'+name+'" onChange="'+onchange_select_set_input+'catselector_changeselect(this, \''+area+'\', \''+name+'\', \''+userrigths+'\', \''+rsc+'\');">' + optHtml + '</select>');

вставил класс class=\"uk-select\"   теперь и подкатегории заработали. Я правда еще функционал не тестил на ошибки и баги. 

Сообщения: 58

kopusha

#6/14.11.2018 10:41
0

Пользователи

Карма: +107

я это тебе в 1 посте сказал делать)

Добавлено 1 минута спустя:

onChange в этом скрипте и есть тот триггер который запускает все при смене выбора в селекте. 

Сообщения: 282

vpktzx

#7/14.11.2018 12:48
0

Пользователи

Карма: +1

#16443 kopusha:
я это тебе в 1 посте сказал делать)

Добавлено 1 минута спустя:

onChange в этом скрипте и есть тот триггер который запускает все при смене выбора в селекте. 

Я там не стал эксперементировать с plugins/catselector/js/catselector.js так как меня смутило "создается новый селейкт" так как я не умею) в итоге просто вставил класс в существующий селект и все работает. 

В любом случае вопрос решен. Спасибо огромное wink

 

Сообщения: 58