Esempio n. 1
0
 public function autocomplete()
 {
     $client = Client::createFromArray(Input::all());
     if (!$client) {
         return ['results' => [], 'more' => false];
     }
     /**
      * @var Speedy $speedy
      */
     $speedy = app('speedy');
     $speedy->user($client);
     $settlement = Input::get('settlement');
     if ((string) (int) $settlement != $settlement) {
         $site = Site::find($settlement);
         if ($site instanceof Site) {
             $settlement = $site->id;
         }
     }
     $settlement = (int) $settlement;
     $name = htmlentities(Input::get('query'), ENT_QUOTES, 'UTF-8', false);
     if (0 >= $settlement) {
         return ['results' => [], 'more' => false];
     }
     $offices = $speedy->listOfficesEx($settlement, Language::create(), $name);
     if (!$offices || !isset($offices->return)) {
         return ['results' => [], 'more' => false];
     }
     $result = [];
     $offices = OfficeEx::createFromSoapResponse($offices->return);
     foreach ($offices as $office) {
         if (!$office instanceof OfficeEx) {
             continue;
         }
         $entry = ['id' => $office->id, 'name' => $office->name];
         $entry['ref'] = $office->name;
         $result[] = (object) $entry;
     }
     return ['results' => $result, 'more' => false];
 }
Esempio n. 2
0
 public static function detect($site)
 {
     return (string) (int) $site == $site ? Site::getById((int) $site) : Site::find($site);
 }
Esempio n. 3
0
 protected function mapSites()
 {
     foreach (static::SiteMapping as $index => $expected) {
         if ((string) (int) $this->{$expected} != $this->{$expected}) {
             $site = Site::find($this->{$expected});
             if ($site instanceof Site) {
                 $this->{$expected} = $site->id;
                 $this->{static::CountryMapping[$index]} = $site->countryId;
             }
         }
     }
 }