示例#1
0
 public function postUser()
 {
     $Company = Input::only("Title", "Address1", "Address2", "ZipCode", "City", "Phone", "Email", "CountryID");
     $Inputs = Input::only("Username", "Password");
     $Validator = Validator::make($Inputs, ["Username" => "required", "Password" => "required"]);
     $hasConnection = Storage::disk('local')->exists('instapack-connections.json');
     $hasEmailSettings = Storage::disk('local')->exists('instapack-emails.json');
     if ($Validator->fails() || $hasConnection == FALSE || $hasEmailSettings == FALSE) {
         return redirect()->route("instapack::user")->withInput()->withErrors($Validator)->with("Errormessage", "test");
     }
     $Company["isOwn"] = 1;
     $Inputs["Password"] = Hash::make($Inputs["Password"]);
     $Data = array("Status" => "Installed", "ResultCode" => str_random(40));
     $Connection = json_decode(Storage::disk('local')->get('instapack-connections.json'));
     $Emails = json_decode(Storage::disk('local')->get('instapack-emails.json'));
     $deg = new DotEnvGen();
     $deg->parseExample();
     $deg->setField("APP_ENV", "production");
     $deg->setField("APP_DEBUG", "false");
     $deg->setField("APP_KEY", $Data["ResultCode"]);
     $deg->setField("APP_URL", Request::root());
     $deg->setField("DB_HOST", $Connection->Hostname);
     $deg->setField("DB_PORT", "3306");
     $deg->setField("DB_DATABASE", $Connection->Database);
     $deg->setField("DB_USERNAME", $Connection->Username);
     $deg->setField("DB_PASSWORD", $Connection->Password);
     $deg->setField("MAIL_DRIVER", "smtp");
     $deg->setField("MAIL_HOST", $Emails->Hostname);
     $deg->setField("MAIL_PORT", "587");
     $deg->setField("MAIL_USERNAME", $Emails->Hostname);
     $deg->setField("MAIL_PASSWORD", $Emails->Hostname);
     $deg->setField("MAIL_ENCRYPTION", "null");
     $deg->createEnv(base_path() . "/.env");
     /* Migration and Seeds */
     Artisan::call('migrate');
     Artisan::call('db:seed');
     Users::create($Inputs);
     Companies::create($Company);
     Storage::disk('local')->delete(['instapack-connections.json', 'instapack-emails.json']);
     Storage::disk('local')->put('instapack.json', $Data);
     return redirect("/");
 }
 /**
  * Store a newly created resource in storage.
  *
  * @param  Request  $request
  * @return Response
  */
 public function store(Request $request)
 {
     if (isset($request['add_new']) && $request['add_new']) {
         $mediaData = $this->mediaValidator($request);
         Session::set('MediaContacts', Session::get('MediaContacts')->push(new \App\Models\MediaContacts($mediaData)));
         return Redirect::back()->withInput($request->except(["Full_Name_Media_Contact", "Media_contact_Email", "Media_Contact_Phone"]));
     } else {
         if (isset($request['attach_file']) && $request['attach_file']) {
             $attachmentFields = $this->attachFileValidator($request);
             Session::set('CompanyAttachments', Session::get('CompanyAttachments')->push(new \App\Models\Attachments($attachmentFields)));
             return Redirect::back()->withInput($request->except(["attached_file"]));
         }
     }
     $address = $this->addressValidator($request);
     $addressModel = Addresses::create($address);
     $phone = $this->phoneValidator($request);
     $phoneModel = Phones::create($phone);
     $companyFields = $this->companyValidator($request);
     $companyFields['Date_Created'] = Carbon::now();
     $companyModel = Companies::create($companyFields);
     $companyModel->mediaContacts()->saveMany(Session::get('MediaContacts'));
     foreach (Session::get('CompanyAttachments') as $atts) {
         $companyModel->attachments()->save($atts);
     }
     $companyModel->headquaters()->save(new \App\Models\HeadquartersInformation(['PhoneId' => $phoneModel->PhoneId, 'AddressId' => $addressModel->AddressId]));
     return redirect(route('admin.companies.index'))->with('flash', 'The Company was created');
 }
 /**
  * Run the database seeds.
  *
  * @return void
  */
 public function run()
 {
     \App\Models\Companies::create(['name' => 'Pingado Web - Agência Digital', 'uri' => 'pingadoweb.com.br', 'active' => true, 'token' => uniqid()]);
     \App\Models\Configurations::create(['company_id' => 1]);
 }
示例#4
0
 public function checkCompanyemail()
 {
     $email = strtolower($this->request->query['email']);
     $uuid = new Uuid();
     $emails = Documents::find('first', array('conditions' => array('email' => $email)));
     if (count($emails) === 0) {
         $kyc_id = $uuid->v4v();
         $email_code = substr($kyc_id, 0, 4);
         $data = array('kyc_id' => $kyc_id, 'email_code' => $email_code, 'email' => $email, 'hash' => md5($email), 'IP' => $_SERVER['REMOTE_ADDR']);
         $Companies = Companies::create($data);
         $saved = $Companies->save();
     } else {
         $emails = Companies::find('first', array('conditions' => array('email' => $email)));
         $kyc_id = $emails['kyc_id'];
         if ($emails['Verify']['Score'] >= 80) {
             return $this->render(array('json' => array('success' => 0, 'reason' => 'Aleredy KYC complete')));
         }
     }
     /////////////////////////////////Email//////////////////////////////////////////////////
     $emaildata = array('kyc_id' => $kyc_id, 'email' => $email);
     $function = new Functions();
     $compact = array('data' => $emaildata);
     $from = array(NOREPLY => "noreply@" . COMPANY_URL);
     $email = $email;
     $function->sendEmailTo($email, $compact, 'process', 'sendKYCCompany', "KYCGlobal - Email Code", $from, '', '', '', null);
     /////////////////////////////////Email//////////////////////////////////////////////////
     return $this->render(array('json' => array('success' => 1)));
 }