public function sign_in_modeuse()
 {
     $session = $this->request->session();
     if ($session->read('user') == true) {
         return $this->redirect(['controller' => 'Offers', 'action' => 'index']);
     }
     $user = $this->Users->newEntity();
     if ($this->request->is('post')) {
         $data = $this->request->data;
         $check_user = $this->Users->findByIdFacebook($data['id_facebook'])->toArray();
         // On vérifie qu'il n'existe pas déjà un user avec le même username
         if (!$check_user) {
             $check = $this->Jsonification();
             $user = $this->Users->patchEntity($user, $data);
             $data['password'] = Security::hash($data['password'], 'sha1', true);
             if ($this->Users->save($user)) {
                 // On créé les cookies
                 // $this->Cookie->config('path', '/');
                 // $this->Cookie->config([
                 //     'expires' => '+10 days',
                 //     'httpOnly' => true
                 // ]);
                 // $this->Cookie->write('user', true);
                 // $this->Cookie->write('username', $data['username']);
                 // $this->Cookie->write('password', $data['password']);
                 $user = $this->Users->find()->where(['username' => $data['username']])->toArray();
                 $data['user_id'] = $user[0]['id'];
                 $data['id'] = $user[0]['id'];
                 // On se prépare à insérer la modeuse en BDD
                 $data['offers_attempted'] = 0;
                 $data['offers_accepted'] = 0;
                 $tabs_implode = array();
                 $tabs_implode[] = "lifestyle";
                 $tabs_implode[] = "personnality";
                 $tabs_implode[] = "hobbies";
                 $tabs_implode[] = "socialPresence";
                 for ($i = 0; $i < count($tabs_implode); $i++) {
                     $data[$tabs_implode[$i]] = implode(",", $data[$tabs_implode[$i]]);
                     str_replace("_", " ", $data[$tabs_implode[$i]]);
                 }
                 $data['boost'] = 1;
                 $modeuse = $this->Modeuses->newEntity();
                 $modeuse = $this->Modeuses->patchEntity($modeuse, $data);
                 // On vériéfie que la sauvegarde a bien marché
                 if ($this->Modeuses->save($modeuse)) {
                     $modeuse = $this->Modeuses->find('all')->where(['user_id' => $data['user_id']])->toArray()[0];
                     $modeuse_id = $modeuse->id;
                     $this->writeSession($data, $modeuse);
                     $session = $this->request->session();
                     $session->write('modeuse_id', $modeuse_id);
                     $check = 'OK';
                     // On met à jour les informations des RS de la Modeuse
                     $cron = new CronController();
                     $cron->launchModeuse($modeuse_id);
                 }
                 echo $this->getResponse($check);
             }
         } else {
             $this->Flash->error(__('Cet username a déjà été pris.'));
             return $this->redirect(['action' => 'sign_in']);
         }
     }
 }
Exemple #2
0
 public function main()
 {
     $cron = new CronController();
     $cron->launch();
 }