예제 #1
0
파일: ad.php 프로젝트: vNative/vnative
 public function validate($opts = [])
 {
     if (empty($opts)) {
         return parent::validate();
     }
     $view = $opts['view'];
     $advertisers = $opts['advertisers'];
     $categories = Category::all(['org_id' => $this->org_id], ['_id']);
     if (count($advertisers) === 0 || !in_array($this->user_id, $advertisers)) {
         $this->_errors['user_id'] = ['Invalid User ID passed!!'];
         $view->set(['message' => 'Invalid Request']);
         return false;
     }
     if (!ArrayMethods::inArray(array_keys($categories), $this->category)) {
         $this->_errors['category'] = ['Invalid Category!!'];
         $view->set(['message' => 'Invalid Category!!']);
         return false;
     }
     if (!ArrayMethods::inArray($opts['devices'], $this->device)) {
         $this->_errors['device'] = ['Invalid Devices!!'];
         $view->set(['message' => 'Invalid Devices!!']);
         return false;
     }
     parent::validate();
 }