Example #1
0
 public function testItemFlags()
 {
     $config = FannieConfig::factory();
     $connection = FannieDB::get($config->OP_DB);
     /**
       Setup preconditions for the test
     */
     $upc = BarcodeLib::padUPC('16');
     $product = new ProductsModel($connection);
     $product->upc($upc);
     $product->store_id(0);
     $product->load();
     if ($product->numflag() != 0) {
         $product->numflag(0);
     }
     $product->save();
     $module = new ItemFlagsModule();
     $module->setConnection($connection);
     $module->setConfig($config);
     $form = new \COREPOS\common\mvc\ValueContainer();
     $module->setForm($form);
     $saved = $module->saveFormData($upc);
     $this->assertEquals(true, $saved, 'Handled empty input');
     $product->reset();
     $product->upc($upc);
     $product->load();
     $this->assertEquals(0, $product->numflag(), 'Wrong numflag value ' . $product->numflag());
     /**
       Simulate real form input
     */
     $form = new \COREPOS\common\mvc\ValueContainer();
     $form->flags = array(1, 3);
     // 0b101 == 5
     $module->setForm($form);
     $saved = $module->saveFormData($upc);
     $this->assertEquals(true, $saved, 'Saving item flags failed');
     $product->reset();
     $product->upc($upc);
     $product->load();
     $this->assertEquals(5, $product->numflag(), 'Wrong numflag value ' . $product->numflag());
     /* put record back to normal */
     $product->numflag(0);
     $product->save();
     $form = new \COREPOS\common\mvc\ValueContainer();
     $form->flags = 'not_an_array';
     $module->setForm($form);
     $saved = $module->saveFormData($upc);
     $this->assertEquals(false, $saved, 'Accepted invalid input');
 }
Example #2
0
$model->foodstamp($FS);
$model->scale($Scale);
$model->scaleprice(0);
$model->mixmatchcode(0);
$model->modified($stamp);
$model->advertised(0);
$model->tareweight(0);
$model->discount($NoDisc);
$model->discounttype(0);
$model->unitofmeasure(0);
$model->wicable(0);
$model->qttyEnforced(0);
$model->idEnforced(0);
$model->cost(0.0);
$model->inUse(1);
$model->numflag(0);
$model->subdept(0);
$model->deposit(0.0);
$model->local($local);
$model->default_vendor_id($vendorID);
$model->save();
$model->upc($upc);
$model->pushToLanes();
$checkQ = $sql->prepare("select * from prodExtra where upc=?");
$checkR = $sql->execute($checkQ, array($upc));
if ($sql->num_rows($checkR) == 0) {
    $extraQ = $sql->prepare("insert into prodExtra values (?,?,?,0,0,0,'','',0,'')");
    $extraR = $sql->execute($extraQ, array($upc, $distributor, $manufacturer));
}
if (isset($likeCode) && $likeCode > 0) {
    $delLikeCode = $sql->prepare("DELETE FROM upcLike WHERE upc = ?");
Example #3
0
 public function saveFormData($upc)
 {
     try {
         $flags = $this->form->flags;
     } catch (Exception $ex) {
         $flags = array();
     }
     if (!is_array($flags)) {
         return false;
     }
     $numflag = 0;
     foreach ($flags as $f) {
         if ($f != (int) $f) {
             continue;
         }
         $numflag = $numflag | 1 << $f - 1;
     }
     $dbc = $this->connection;
     $model = new ProductsModel($dbc);
     $model->upc($upc);
     $model->store_id(1);
     $model->numflag($numflag);
     $saved = $model->save();
     return $saved ? true : false;
 }