/** * @return array validation rules for model attributes. */ public function isUniqueViivakoodi($attribute, $params) { $criteria = new CDbCriteria(); $criteria->condition = "\n\t\t\tid!='" . $this->id . "'\n\t\t\tAND viivakoodi='" . $this->viivakoodi . "'\n\t\t\tAND status='1'\n\t\t"; $model = Viivakoodi::model()->find($criteria); if (isset($model->id) and !empty($this->viivakoodi)) { $this->addError('viivakoodi', 'Tällä viivakoodi numerolla on jo lisätty tuote.'); } }
public function actionTb() { switch ($_GET['model']) { case 'viivakoodi': $user = User::model()->findbypk($_POST['user']); if (isset($_POST['keyword']) and isset($user->id)) { $criteria = new CDbCriteria(); $criteria->condition = " \n\n\t\t\t(\n\t\t\ttuote_nimi LIKE '%" . $_POST['keyword'] . "%'\n\t\t\tOR valmistaja LIKE '%" . $_POST['keyword'] . "%'\n\t\t\tOR viivakoodi LIKE '%" . $_POST['keyword'] . "%'\n\t\t\t)\n\n\t\t\tAND ((luoja='" . $user->id . "' AND status=0) OR (status=1))\n\n\t\t"; $data = Viivakoodi::model()->findAll($criteria); $vastaus = ''; if (isset($data[0])) { $vastaus .= ' <div class="panel panel-primary"> <div class="panel-heading">Tuotteet</div> <div class="panel-body table-responsive"> <table class="table table-hover tabTuotteet"> <tr> <th>Tuote</th> <th>Valmistaja</th> <th>Energia kcal/100g</th> <th>Suosiki</th> <th></th> </tr>'; foreach ($data as $model) { if ($model->energia_kcal != '') { $energia_kcal = round(str_replace(".", ",", round($model->energia_kcal / $model->annoskoko * 100, 2))); } $criteria = new CDbCriteria(); $criteria->condition = " tuote_id='" . $model->id . "' AND user_id='" . Yii::app()->user->id . "' "; $s = RuokaSuosikit::model()->find($criteria); if (isset($s->id)) { $s = '<b class="onSuosiki fa fa-star" title="Poista suosikeista" style="font-size:150%;color:#FF9900; margin-top: 5px;" suID="su_' . $s->id . '" forID="su_' . $model->id . '"></b>'; } else { $s = '<b class="tahti fa fa-star-o" title="Lisää suosikkeihin" style="font-size:150%; margin-top: 5px;" forID="su_' . $model->id . '"></b>'; } $vastaus .= ' <tr> <td>' . $model->tuote_nimi . '</td> <td>' . $model->valmistaja . '</td> <td>' . $energia_kcal . ' kcal</td> <td id="su_' . $model->id . '">' . $s . '</td> <td width=1><button class="pull-right btn btn-xs btn-info link viivat"title="Katso ja valitse"id="' . $model->id . '" data-toggle="modal" data-target="#la"><i class="fa fa-list-alt"></i></button></td> </tr>'; } $vastaus .= ' </table> </div> </div> <div id="la" class="modal fade" role="dialog"></div> '; $this->_sendResponse(200, json_encode($vastaus)); exit; } $this->_sendResponse(200, json_encode("Jotain on väärin")); } else { $this->_sendResponse(200, json_encode("Jotain on väärin")); } break; } }
public function actionStatus_change() { if (isset($_POST['status_change'])) { $muutettu = ''; $viv = Viivakoodi::model()->findbypk($_POST['status_change']); $criteria = new CDbCriteria(); $criteria->condition = "\n\t\t\t\tviivakoodi='" . $viv->viivakoodi . "'\n\t\t\t\tAND id!='" . $viv->id . "' AND viivakoodi!=''\n\t\t\t\tAND status=1\n\t\t\t"; $vivCheck = Viivakoodi::model()->findAll($criteria); if (isset($viv->status) and $viv->status == 0 and !isset($vivCheck[0])) { Viivakoodi::model()->updatebypk($viv->id, array('status' => 1)); $muutettu = 1; } elseif (isset($viv->status) and $viv->status == 1 and !isset($vivCheck[0])) { Viivakoodi::model()->updatebypk($viv->id, array('status' => 0)); $muutettu = 0; } elseif (isset($vivCheck[0])) { $muutettu = 'onKaytossa'; } echo $muutettu; } }
<input type="submit" class="btn btn-primary" value="Hae"> </span> </div> </form> <br> <div class="table-responsive"> <table class="table"> <tr> <th>Tuote id</th> <th>Tuote</th> </tr> <?php foreach ($model as $data) { $viv = Viivakoodi::model()->findbypk($data->tuote); if (isset($viv->tuote_nimi)) { $tuote_nimi = $viv->tuote_nimi; } else { $tuote_nimi = ''; } if (isset($viv->valmistaja)) { $valmistaja = $viv->valmistaja; } else { $valmistaja = ''; } echo ' <tr> <td>' . $data->tuote . '</td> <td>' . $tuote_nimi . ', ' . $valmistaja . ' kpl: ' . $data->count . '</td> </tr>';
<div class="panel-body"> <div class="row"> <?php } ?> <div class="table-responsive tb"> <table class="table table-hover table-bordered"> <thead> <tr> <th>PVM</th> <th>Paino</th> <?php $m = new Viivakoodi(); $attr = Viivakoodi::model()->getAttributes(); $attributes = $this->unsetViivakoodista($attr); foreach ($attributes as $key => $val) { echo '<th>' . mb_strimwidth($m->getAttributeLabel($key), 0, 8, "") . '</th>'; } ?> </tr> </thead> <?php foreach ($data as $model) { $return = array(); $return['energia_kcal'] = $model->viivakoodi_energia_kcal; $return['proteiini'] = $model->viivakoodi_proteiini; $return['hiilihydraatti'] = $model->viivakoodi_hiilihydraatti; $return['rasva'] = $model->viivakoodi_rasva;
protected function ruokaYmpyra($pvm, $nimike) { $return = 0; $paino = 0; $criteria = new CDbCriteria(); $criteria->condition = "\n\t\t\tpvm='" . $pvm . "'\n\t\t\tAND user_id = '" . Yii::app()->user->id . "' \n\n\t\t"; $model = KayttajanSisalto::model()->findAll($criteria); if (isset($model[0])) { foreach ($model as $data) { $v = Viivakoodi::model()->findbypk($data->tuote); $annoskoko = 100; if (!empty($v->annoskoko)) { $annoskoko = (double) $v->annoskoko; } $return += (double) ($v->{$nimike} / $annoskoko * $data->gramm); $paino += $data->gramm; } } if ($return > 0) { return round($return / $paino * 100, 1); } else { return $return; } }