diff --git a/app/Controller/ExtraController.php b/app/Controller/ExtraController.php
index 1307886..b62eb07 100644
--- a/app/Controller/ExtraController.php
+++ b/app/Controller/ExtraController.php
@@ -5,7 +5,12 @@ App::uses('CakeEmail', 'Network/Email');
class ExtraController extends AppController {
- public $uses = array();
+ public $uses = array("DreamjobCompanyPro");
+
+ private static function monthAdd($date,$interval){
+ $date = new DateTime($date);
+ return $date->add(new DateInterval('P'.$interval.'M'))->format("Y-m-d");
+ }
public function contact() {
if ($this->request->is('post')) {
@@ -50,21 +55,27 @@ class ExtraController extends AppController {
$this->render('/Extra/worker');
}
public function premium(){
- if ($this->request->is('post')) {
- $Email = new CakeEmail('dreamjobMain');
- $Email->to('service@dream-job.eu');
- $Email->from(array($this->request->data['mail']['adresse'] => $this->request->data['mail']['owner'] . ' von ' . $this->request->data['mail']['company']));
- $Email->subject('[Dreamjob-Kontakt-Premium]');
- $Email->template('contact');
- $Email->viewVars(array('text' => $this->request->data, 'strip_tags' => $this->MiconwareSession->strip_tags));
- if ($Email->send())
- $this->MiconwareSession->setFlash(__('dreamjob.contactSend.success'), 'flash', array('alert' => 'success'));
- else
- $this->MiconwareSession->setFlash(__('dreamjob.contactSend.error'), 'flash', array('alert' => 'danger'));
- }
$this->MiconwareSession->init($this);
$this->MiconwareSession->initWeb($this);
$this->set('title',__('dreamjob.premium'));
+ $a = $this->MiconwareSession->getCompany();
+ if(empty($a)){
+ $this->set('error', array('title'=>__('dreamjob.error.noCompany.title'),'text'=>__('dreamjob.error.noCompany.text')));
+ if(!$this->MiconwareSession->isLoggedin())
+ $this->render('/Home/login');
+ else
+ $this->render('/Home/error');
+ }
+ if ($this->request->is('post')) {
+ $this->request->data['DreamjobCompanyPro']['company_id']=$a['AppUser']['id'];
+ $this->request->data['DreamjobCompanyPro']['order']=date("Y-m-d");
+ $this->request->data['DreamjobCompanyPro']['till']=ExtraController::monthAdd($this->request->data['DreamjobCompanyPro']['order'],1);
+ $this->request->data['DreamjobCompanyPro']['orderstatus']=0;
+ if($this->DreamjobCompanyPro->askPremium($this->request->data))
+ $this->MiconwareSession->setFlash(__('dreamjob.contactSend.success'), 'flash', array('alert' => 'success'));
+ else
+ $this->MiconwareSession->setFlash(__('dreamjob.contactSend.error'), 'flash', array('alert' => 'danger'));
+ }
$this->render('/Extra/premium');
}
public function advertise(){
@@ -85,4 +96,4 @@ class ExtraController extends AppController {
$this->set('title',__('dreamjob.advertise'));
$this->render('/Extra/advertise');
}
-}
\ No newline at end of file
+}
diff --git a/app/Model/DreamjobCompanyPro.php b/app/Model/DreamjobCompanyPro.php
index ead5f77..51bb929 100755
--- a/app/Model/DreamjobCompanyPro.php
+++ b/app/Model/DreamjobCompanyPro.php
@@ -1,5 +1,6 @@
to($mail);
+ $Email->bcc('service@dream-job.eu');
+ $Email->subject('Bestellung des Premium Pakets');
+ $Email->template('extra_premium');
+ $Email->viewVars(array('id'=>$id,'data'=>$data));
+ $Email->attachments(array('dak.jpg' => WWW_ROOT.DS.'mail'.DS.'dak.jpg'));
+ return $Email->send();
+ }
+
+ public function askPremium($data){
+ $dataSource = $this->getDataSource();
+ $dataSource->begin();
+ $result=$this->saveAssociated($data);
+
+ if($result){
+ $open = $this->DreamjobCompany->find('first', array('conditions' => array('DreamjobCompany.djaccount_ptr_id' => $data['DreamjobCompanyPro']['company_id'])));
+ $result = self::sendMail($open['User']['mail'],array('DreamjobCompany'=>$open['DreamjobCompany']),$this->id);
+ }
+ if ($result) {
+ $dataSource->commit();
+ return true;
+ } else {
+ $dataSource->rollback();
+ }
+ return false;
+ }
+
public $hasOne = array(
'DreamjobCompany' => array(
'className' => 'DreamjobCompany',
diff --git a/app/Model/DreamjobJobApplication.php b/app/Model/DreamjobJobApplication.php
index 2a9dbbc..675b586 100644
--- a/app/Model/DreamjobJobApplication.php
+++ b/app/Model/DreamjobJobApplication.php
@@ -44,16 +44,16 @@ class DreamjobJobApplication extends AppModel {
$Email->attachments(array('dak.jpg' => WWW_ROOT.DS.'mail'.DS.'dak.jpg'));
return $Email->send();
}
-
+
public function sendApplication($data){
$dataSource = $this->getDataSource();
$dataSource->begin();
$result=$this->saveAssociated($data);
-
+
if($result){
$open = $this->DreamjobJobOpening->find('first', array('conditions' => array('DreamjobJobOpening.id' => $data['DreamjobJobApplication']['opening_id'])));
$result = self::sendMail($open['User']['mail'],array('DreamjobCompany'=>$open['DreamjobCompany']),$this->id);
-
+
}
if ($result) {
$dataSource->commit();
@@ -171,8 +171,8 @@ class DreamjobJobApplication extends AppModel {
'foreignKey' => 'opening_id'
)
);
-
-
+
+
public $hasOne = array(
'Mannerofaddress' => array(
'className' => 'Mannerofaddress',
@@ -198,9 +198,9 @@ class DreamjobJobApplication extends AppModel {
'conditions' => array('DreamjobUserWorker.city_id = DreamjobWorkerListCity.id'),
'limit' => 1
),
-
-
-
+
+
+
//achtung
'DreamjobCompany' => array(
'className' => 'DreamjobCompany',
@@ -238,9 +238,9 @@ class DreamjobJobApplication extends AppModel {
'conditions' => array('DreamjobUser.city_id = DreamjobCompanyListCity.id'),
'limit' => 1
),
-
-
-
+
+
+
'DreamjobListGraducation' => array(
'className' => 'DreamjobListGraducation',
'foreignKey' => false,
@@ -259,7 +259,7 @@ class DreamjobJobApplication extends AppModel {
'conditions' => array('DreamjobJobOpening.branch_id = DreamjobListBranch.id'),
'limit' => 1
)
-
+
);
public $hasAndBelongsToMany = array(
'PageText' =>
@@ -284,7 +284,7 @@ class DreamjobJobApplication extends AppModel {
'associationForeignKey' => 'page_id'
)
);
-
+
public $hasMany = array(
'DreamjobJobMsg' => array(
'className' => 'DreamjobJobMsg',
diff --git a/app/View/Emails/html/extra_premium.ctp b/app/View/Emails/html/extra_premium.ctp
new file mode 100644
index 0000000..b98cf2e
--- /dev/null
+++ b/app/View/Emails/html/extra_premium.ctp
@@ -0,0 +1,2 @@
+Sie haben:
+=var_dump($data);?>
diff --git a/app/View/Emails/text/extra_premium.ctp b/app/View/Emails/text/extra_premium.ctp
new file mode 100644
index 0000000..42201bd
--- /dev/null
+++ b/app/View/Emails/text/extra_premium.ctp
@@ -0,0 +1,2 @@
+Sie haben:\n
+=var_dump($data);?>
diff --git a/app/View/Extra/premium.ctp b/app/View/Extra/premium.ctp
index 6312861..8ee2e5a 100644
--- a/app/View/Extra/premium.ctp
+++ b/app/View/Extra/premium.ctp
@@ -1,87 +1,21 @@
=__('dreamjob.premium');?>
*/
?>
Preisliste:
+ Hier +