public static function add($characteristic)
		{
			$char = Characteristic::getByCharacteristic($characteristic);
			if( !$char )
			{
				$char = new Characteristic(null, $characteristic);
				return $char->save();
			}
			else
			{
				return $char;
			}
		}
 public function searchPlat($idPlat)
 {
     $criteria = new CDbCriteria();
     //$criteria->select = "id";
     //   $criteria->alias = "t";
     $criteria->mergeWith(array('join' => 'LEFT JOIN characteristic_platforms as cp
                         ON t.id = cp.id_characteristic', 'condition' => 'cp.id_platform = ' . $idPlat));
     Characteristic::model()->findAll($criteria);
     // $criteria->addCondition(array("condtion"=>"id_app = $id_ap"));
     $criteria->compare('id', $this->id);
     $criteria->compare('name', $this->name, true);
     $criteria->compare('id_criteria', $this->id_criteria);
     return new CActiveDataProvider($this, array('criteria' => $criteria, 'pagination' => false));
 }
		public static function getByItem($id)
		{
			global $db;
			//get characteristics linked to item
			$characteristicsSQL = "SELECT * FROM items_have_characteristics WHERE itemid=?";
			$values = array($id);
			$charList = $db->qwv($characteristicsSQL, $values);
			
			//get characteristic info for each characteristic linked to the item
			$characteristicSQL = "SELECT * FROM characteristics WHERE characteristicid=?";
			$characteristics = array();
			$db->prep($characteristicSQL);
			foreach($charList as $charID)
			{
				$values = array($charID['characteristicid']);
				$char = $db->qwv(null, $values);
				array_push($characteristics, $char[0]);
			}
			
			return Characteristic::wrap($characteristics);
		}
Exemple #4
0
	function replaceName($str, $type)
	{
		$itms = array();
		foreach( $str as $splt )
		{
			if( $splt != null && $splt != '' )
			{
				array_push($itms, trim($splt));
			}
		}
		
		$ints = array();
		foreach( $itms as $name )
		{
			switch( $type )
			{
				case 0:
					$cat = Category::getByName($name);
					if( $cat instanceof Category )
					{
						array_push($ints, $cat->categoryid);
					}
					break;
				case 1:
					$ing = Ingredient::getByName($name);
					if( $ing instanceof Ingredient )
					{
						array_push($ints, $ing->ingredientid);
					}
					break;
				case 2:
					$char = Characteristic::getByCharacteristic($name);
					if( $char instanceof Characteristic )
					{
						array_push($ints, $char->characteristicid);
					}
					break;
				default:
					break;
			}
		}
		
		return $ints;
	}
 /**
  * Returns the data model based on the primary key given in the GET variable.
  * If the data model is not found, an HTTP exception will be raised.
  * @param integer $id the ID of the model to be loaded
  * @return Characteristic the loaded model
  * @throws CHttpException
  */
 public function loadModel($id)
 {
     $model = Characteristic::model()->findByPk($id);
     if ($model === null) {
         throw new CHttpException(404, 'The requested page does not exist.');
     }
     return $model;
 }
 protected function saveChar($model)
 {
     if (!($brand = Brand::model()->find('alias=:alias', array(':alias' => $model->brand_alias)))) {
         $brand = new Brand();
     }
     $brand->title = $model->brand;
     $brand->alias = $model->brand_alias;
     $brand->save();
     if (!empty($brand->errors)) {
         d('brand ' . $brand->title);
         d($brand->errors);
     }
     if (!($car = Car::model()->find('alias=:alias', array(':alias' => $model->model_alias)))) {
         $car = new Car();
     }
     $car->brand_id = $brand->id;
     $car->title = $model->model;
     $car->alias = $model->model_alias;
     $car->manufacture_start = $model->modificationManufactureStart . '0101';
     $car->manufacture_end = $model->modificationManufactureEnd ? $model->modificationManufactureEnd . '0101' : null;
     $car->save();
     if (!empty($car->errors)) {
         d('model ' . $car->title);
         d($car->errors);
     }
     if (!($mod = Modification::model()->find('alias=:alias', array(':alias' => $model->mod_alias)))) {
         $mod = new Modification();
     }
     $mod->model_id = $car->id;
     $mod->title = $model->mod;
     $mod->alias = $model->mod_alias;
     $mod->manufacture_start = $model->modificationManufactureStart . '0101';
     $mod->manufacture_end = $model->modificationManufactureEnd ? $model->modificationManufactureEnd . '0101' : null;
     $mod->save();
     if (!empty($mod->errors)) {
         d('mod ' . $mod->title);
         d($mod->errors);
     }
     if (!($char = Characteristic::model()->find('modification_id=:mod_id', array(':mod_id' => $mod->id)))) {
         $char = new Characteristic();
     }
     $char->attributes = $model->char->attributes;
     $char->modification_id = $mod->id;
     $char->save();
     if (!empty($char->errors)) {
         d('char ' . $mod->title);
         d($char->errors);
         d($model->url);
     }
 }
 /**
  * Returns the data model based on the primary key given in the GET variable.
  * If the data model is not found, an HTTP exception will be raised.
  */
 public function loadModel()
 {
     if ($this->_model === null) {
         if (isset($_GET['id'])) {
             $this->_model = Characteristic::model()->findbyPk($_GET['id']);
         }
         if ($this->_model === null) {
             throw new CHttpException(404, 'The requested page does not exist.');
         }
     }
     return $this->_model;
 }
Exemple #8
0
		public function __get($var)
		{
			if( $var == 'ingredients' )
			{
				return Ingredient::getByItem($this->itemid);
			}
			elseif( $var == 'recommendations' )
			{
				return Ingredient::getRecommendedByItem($this->itemid);
			}
			elseif( $var == 'characteristics' )
			{
				return Characteristic::getByItem($this->itemid);
			}
			elseif( $var == 'category' )
			{
				return Category::getByID($this->categoryid);
			}
			elseif( $var == 'price' )
			{
				return money_format('%i', $this->price);
			}
			else
			{
				return $this->$var;
			}
		}
		</div>
		
		<?php 
}
?>

		<?php 
if ($options['select'] != 'Brand' && $options['select'] != 'Car') {
    ?>
		
		<div id='<?php 
    echo $this->id;
    ?>
_modification' style='display: none;'>
			<label for='model_id'><?php 
    echo Characteristic::model()->getAttributeLabel('modification_id');
    ?>
</label><br />
			<?php 
    echo CHtml::dropDownList(get_class($model) . '[modification_id]', '', array());
    ?>
			<img src='/images/loader.gif' class='loader' style='display: none;'>
		</div>
		
		<?php 
}
?>
	
		<?php 
Yii::app()->getClientScript()->registerScript($this->id, "jQuery('#{$this->id}').catalogSelect({\r\n\t\t\t\tid:'{$this->id}', \r\n\t\t\t\tmodel_id:'" . $model->{$name} . "', \r\n\t\t\t\tselect: '" . EString::strtolower($options['select']) . "',\r\n\t\t\t\tmodel:'{$options['select']}',\r\n\t\t\t\tbrandSelect: \$('#" . get_class($model) . "_brand_id'),\r\n\t\t\t\tmodelSelect: \$('#" . get_class($model) . "_model_id'),\r\n\t\t\t\tmodificationSelect: \$('#" . get_class($model) . "_modification_id'),\r\n\t\t\t\turlCatalog: '{$options['urlCatalog']}',\r\n\t\t\t\turlBrand: '{$options['urlBrand']}',\r\n\t\t\t\turlModel: '{$options['urlModel']}',\r\n\t\t\t\tallowEmpty: " . ($options['allowEmpty'] ? 'true' : 'false') . "\r\n\t\t\t});");
?>
 public function actionSelectdos()
 {
     //$id_cri = $_POST['TestCase']['id_criteria'];
     $id_cri = $_POST['TestCase']['id_criteria'];
     $lista = Characteristic::model()->findAll('id_criteria  = :id_cri', array(':id_cri' => $id_cri));
     $lista = CHtml::listData($lista, 'id', 'name');
     //var_dump($lista);
     echo CHtml::tag('option', array('value' => ''), 'Select', TRUE);
     foreach ($lista as $valor => $name) {
         echo CHtml::tag('option', array('value' => $valor), CHtml::encode($name), true);
     }
 }
 /**
  * Lists all models.
  */
 public function actionPlatAutocomplete()
 {
     $term = trim($_GET['term']);
     if ($term != '') {
         // Note: Users::usersAutoComplete is the function you created in Step 2
         $users = Characteristic::platAutoComplete($term);
         echo CJSON::encode($users);
         Yii::app()->end();
     }
 }
Exemple #12
0
	require_once('Ingredient.php');

	$page = new Page(0, "OrderUp - add things");
	$tmpl = new Template();
	
	if( !$_SESSION['active'] || $_SESSION['roleid'] > 2 )
	{
		$loc = urlencode("add.php");
		header("Location: /login.php?code=10&fwd=$loc");
	}
	
	$tmpl->type = isset($_GET['type']) ? $_GET['type'] : null;
	
	if( $tmpl->type == 'characteristic' )
	{
		$chars = Characteristic::getAll();
		if( $chars )
		{
			if( is_object($chars) )
			{
				$tmpl->items = array($chars);
			}
			elseif( is_array($chars) )
			{
				$tmpl->items = $chars;
			}
		}
		else
		{
			$tmpl->items = array();
		}
?>
	<?php 
echo $form->errorSummary($model);
?>
	
<div class="well">
        <div class="well-cinza">
                      <b>Add a Characteristic</b>
                  </div>
                                         <p class="help-block" >If you want add a new characteristic in this platform, choose the characteristic on the list:</p>
        
            <br/>
                                         <div style="overflow:scroll; height: 400px">
        
<?php 
$type_list = CHtml::listData(Characteristic::model()->findAllbySql('SELECT id, CONCAT(name) as name FROM characteristic
                        WHERE id NOT IN
                            (SELECT id_characteristic
                             FROM characteristic_platforms
                             WHERE id_platform =' . $id_plat . ')'), 'id', 'name');
echo $form->radioButtonList($model, 'id_characteristic', $type_list, array('labelOptions' => array('style' => 'font-size:14px')));
?>
            
            
            


        </div>                            
        
</div>
	$name = isset($_POST['name']) ? $_POST['name'] : null;
	
	if( !isset($_SESSION['userid']) || $_SESSION['userid'] == null || $_SESSION['userid'] < 1 )
	{
		throw new RedirectBrowserException("../login.php?code=10");
	}
	
	if( $name != null )
	{
		if( Characteristic::getByCharacteristic($name) )
		{
			print jsonify(false, "This characteristic already exists", $name);
		}
		else
		{
			if( Characteristic::add($name) )
			{
				print jsonify(true, "The characteristic was added successfully", $name);
			}
			else
			{
				print jsonify(false, "The characteristic could not be added", $name);
			}
		}
	}
	else
	{
		print jsonify(false, "There was an error adding this characteristic", $name);
	}
	
	function jsonify($stat, $msg, $data = null)
 public function afterDelete()
 {
     # Проверка и очистка связей
     $characteristics = Characteristic::model()->findAll('Characteristic=:Characteristic', array(':Characteristic' => $this->id));
     if (count($characteristics) > 0) {
         foreach ($characteristics as $characteristic) {
             $characteristic->delete();
         }
     }
     Comment::model()->deleteAll('object_id=:object_id and type=' . L::ritem('CommentType', __CLASS__), array(':object_id' => $this->id));
     return parent::afterDelete();
 }
$selected_characteristic = array();
//para cada plataforma, insere os id_plataforma escolhidos no array
foreach ($model->characteristic as $characteristic) {
    array_push($selected_characteristic, $characteristic->id);
}
?>
			
			<div>
				<?php 
echo TbHtml::label($model->getAttributeLabel('characteristic'), 'Characteristic');
?>
			    <p class="help-block">Choose the platform's characteristics:</p>
                            <div class="model-char">	
				<div class="portlet-content">
				<?php 
echo TbHtml::CheckBoxList('Characteristic', $selected_characteristic, CHtml::listData(Characteristic::model()->findAll(), 'id', 'name'), array('template' => '{input} {label}'));
?>
				<?php 
echo $form->error($model, 'characteristic');
?>
				</div>
			</div>
    </div>
    </div>
    
    
    <?php 
$this->endWidget();
?>

</div><!-- form -->
Exemple #17
0
<?php
	set_include_path('../backbone:../global:../jquery:../components:../content:../images:../model:../render:../scripts:../styles');
	require_once('Characteristic.php');
	
	$q = isset($_GET['q']) ? $_GET['q'] : null;
	
	$chars = Characteristic::getBySearch($q);
	
	header('Content-type: application/json');
	
	if( $chars instanceof Characteristic )
	{
		$json = "[ " . jsonChar($chars) . " ]";
		print $json;
	}
	elseif( is_array($chars) )
	{
		$json = "[ ";
		$arr = array();
		foreach( $chars as $char )
		{
			array_push($arr, jsonChar($char));
		}
		$json .= implode(',', $arr);
		$json .= " ]";
		
		print $json;
	}
	
	function jsonChar($char)
	{