Exemplo n.º 1
0
 public function append()
 {
     $mailingList = MailingList::findOne($this->mailing_list_id);
     $partners = Partner::findAll(explode(',', $this->partner_ids));
     foreach ($partners as $partner) {
         $mailingList->unlink('partners', $partner, true);
         $mailingList->link('partners', $partner);
     }
     return true;
 }
Exemplo n.º 2
0
 public function update($event)
 {
     $model = $this->owner;
     $ids = array_filter($this->partners_ids);
     $current_ids = [];
     foreach ($model->partners as $partner) {
         $current_ids[] = $partner->id;
     }
     if ($ids_new = array_diff($ids, $current_ids)) {
         foreach (Partner::findAll($ids_new) as $partner) {
             $model->link('partners', $partner);
         }
     }
     if ($ids_removed = array_diff($current_ids, $ids)) {
         foreach (Partner::findAll($ids_removed) as $partner) {
             $model->unlink('partners', $partner, true);
         }
     }
 }
Exemplo n.º 3
0
 public function actionMap(array $ids)
 {
     $models = Partner::findAll(['id' => $ids]);
     return $this->render('map', ['models' => $models]);
 }