but1head

but1head

Был в сети 04 ноября 2021, 20:02
Заказы принимаю
так у вас дизайн стоил в районе сотки, если не больше, темболее что делала его студия (Advertising Boulevard)

Они не бось заломили вам ценник в 400-500 т.р. вот Вы и ищите фрилансера. Или Вы и есть сотрудник этого агентства (опираясь на ваши тикеты).

Мой ценник скажем так, еще и занижен. Геморроя с разработкой очень много будет.

p.s. можем по договору и безналу поработать, есть ООО
можно ткнуть носом на пример такой сортировки (или на тигхабе старенькую версию)? как я понимаю что-то вроде этого в getTickets?
// Adding fields to row
		$additional_fields = $pdoFetch->getObject('Ticket', $row['id'], array(
			'leftJoin' => array(
				'View' => array('class' => 'TicketView', 'on' => '`Ticket`.`id` = `View`.`parent`'),
				'LastView' => array('class' => 'TicketView', 'on' => '`Ticket`.`id` = `LastView`.`parent` AND `LastView`.`uid` != 0 AND `LastView`.`uid` = '.$modx->user->id),
				'Thread' => array('class' => 'TicketThread', 'on' => '`Thread`.`resource` = `Ticket`.`id`  AND `Thread`.`deleted` = 0'),
			),
			'select' => array(
				'View' => 'COUNT(`View`.`parent`) as `views`',
				'LastView' => '`LastView`.`timestamp` as `new_comments`',
				'Thread' => '`Thread`.`id` as `thread`',
			),
			'groupby' => $class.'.id'
		));
		$row = array_merge($row, $additional_fields);
у меня есть сниппет TicketGetTV, переделайте под свои нужды. но у меня он висит на update тикета, ибо тикеты создаются при регистрации (компании).

вызов такой, name название tv
[[!TicketGetTV? &tid=`[[+id]]` &name=`services_services`]]
код
<?php
$title = (!empty($title) ? $title : 'Услуги');
$output = '';
// current tv $name values
$page = $modx->getObject('modResource', $tid);
$tv_current_array = $page->getTVValue($name);
$tv_current = (!empty($tv_current_array) ? $tv_current = explode("||", $tv_current_array) : array());
// all tv $name values
$tvs = $modx->getObject('modTemplateVar', array('name' => $name));
$tv_all = explode('||', $tvs->get('elements'));

if($type == 'select'){
	foreach ($tv_all as $i => $val){
	  $output .= '<option ' . (in_array ($val, $tv_current) ? 'selected' : '') . ' value="'.$val.'">'.$val.'</option>';
	}
	return '<div class="form-group params '.$name.'"><label>'.$title.'</label><div class="inner">
	<select class="chosen-select" multiple name="'.$name.'[]">'.$output.'</select></div><div class="clear"></div></div>';
}else{

	$i = 0; $b = 0;
	foreach ($tv_all as $i => $val){
	  $output .= '<label class="checkbox" for="'.$name.'_'.$i++.'"><input type="checkbox" id="'.$name.'_'.$b++.'" name="'.$name.'[]"
	  ' . (in_array ($val, $tv_current) ? 'checked' : '') . ' value="'.$val.'"><i></i><div>'.$val.'</div></label>';
  	}
  	return '<div class="form-group params '.$name.' hidden"><label class="title_block">'.$tvs->get('caption').'</label><div class="inner_block">'.$output.'</div><div class="clear"></div></div>';
}
Весь код плагина
<?php
if($mode == 'new' && $resource->class_key == 'Ticket' && $modx->event->name == 'OnDocFormSave'){
	$tv1 = implode("||", $_POST['tv1']);
	if (!$resource->setTVValue('tv1', $tv1)) {
		$modx->log(xPDO::LOG_LEVEL_ERROR, 'tv1 - ERROR');
	}
}

<select name="tv1" id="ticket-type">[[+tv1]]</select>
вам тут равнозначные параметрам админки сделать надо, или спарсить все возможные значения
не подскажите как скрыть точки? у меня фильтр через mfilter2, ловлю калл бэк, вызываю функцию

в ней такое:

// всем точкам ставим current: none;
$.each( allObjects, function( index, objectId ){
	   var obj = objectManager.objects.getById(objectId);
       objectManager.objects.setObjectProperties(objectId, {visible: false, type : {current: 'none'}});
       objectManager.objects.setObjectOptions(objectId, {visible: false});
       
	   console.log('all', obj);
	});
	// вимым ставим current: true
	$.each( e.ids, function( index, objectId ){
		visibleFilterObjects.push(parseInt(objectId));
		var obj = objectManager.objects.getById(parseInt(objectId));
        objectManager.objects.setObjectProperties(parseInt(objectId), {type : {current: 'true'}});
		
		console.log('current', obj);
	});
собственно как скрыть current none? ибо через visible: false и opacity: 0 не работает…