diff --git a/controllers/enquiry_files_controller.php b/controllers/enquiry_files_controller.php new file mode 100644 index 00000000..fea2b7f1 --- /dev/null +++ b/controllers/enquiry_files_controller.php @@ -0,0 +1,45 @@ +params['named']['enquiryid'])) { + $enquiryid = $this->params['named']['enquiryid']; + $this->set('enquiry', $this->EnquiryFile->Enquiry->findById($enquiryid)); + } + + if (!$enquiryid && empty($this->data)) { + $this->Session->setFlash(__('Invalid Enquiry ID', true)); + $this->redirect(array('controller'=>'Enquiries', 'action'=>'index')); + } + + if (!empty($this->data) && + is_uploaded_file($this->data['EnquiryFile']['File']['tmp_name'])) { + $fileData = fread(fopen($this->data['EnquiryFile']['File']['tmp_name'], "r"), + $this->data['EnquiryFile']['File']['size']); + + $this->data['EnquiryFile']['name'] = $this->data['EnquiryFile']['File']['name']; + $this->data['EnquiryFile']['type'] = $this->data['EnquiryFile']['File']['type']; + $this->data['EnquiryFile']['size'] = $this->data['EnquiryFile']['File']['size']; + $this->data['EnquiryFile']['data'] = $fileData; + + $this->EnquiryFile->save($this->data); + + $this->redirect(array('controller' => 'enquiries', 'action' => 'view/'.$enquiryid)); + } + } + + + function download($id) { + Configure::write('debug', 0); + $file = $this->EnquiryFile->findById($id); + header('Content-type: ' . $file['EnquiryFile']['type']); + header('Content-length: ' . $file['EnquiryFile']['size']); + header('Content-Disposition: attachment; filename="'.$file['EnquiryFile']['name'].'"'); + echo $file['EnquiryFile']['data']; + exit(); + } + + +} diff --git a/models/enquiry_file.php b/models/enquiry_file.php new file mode 100644 index 00000000..601c54db --- /dev/null +++ b/models/enquiry_file.php @@ -0,0 +1,6 @@ + + + + + + + + + + + + > + + + + + + + + +
nice($file['EnquiryFile']['created']);?>link($file['EnquiryFile']['name'], array('controller'=>'enquiry_files', 'action' => 'download/', $file['EnquiryFile']['id']));?>image('pdf_type.png'); + } + else if($file['EnquiryFile']['type'] == 'application/msword') { + echo $html->image('document_type.png'); + } + else if($file['EnquiryFile']['type'] == 'message/rfc822') { + echo $html->image('message_type.png'); + } + else if($file['EnquiryFile']['type'] == 'application/vnd.ms-excel') { + echo $html->image('spreadsheet_document_type.png'); + } + else if($file['EnquiryFile']['type'] == 'image/jpeg') { + echo $html->image('image_type.png'); + } + else { + echo $html->image('unknown_type.png'); + } + ?>toReadableSize($file['EnquiryFile']['size']);?> + link(__('View', true), array('controller'=> 'enquiry_files', 'action'=>'download/', $file['EnquiryFile']['id'])); ?> +
+ + +
+ +
diff --git a/views/enquiry_files/add.ctp b/views/enquiry_files/add.ctp new file mode 100644 index 00000000..49cf999d --- /dev/null +++ b/views/enquiry_files/add.ctp @@ -0,0 +1,13 @@ +create('EnquiryFile', array('action' => 'add/enquiryid:'.$enquiry['Enquiry']['id'], 'type' => 'file')); + echo '
'; + echo''; + __("Add File to Enquiry ".$enquiry['Enquiry']['title']); + echo ''; + echo $form->file('File'); + echo $form->input('description'); + echo $form->input('enquiry_id', array('type'=>'hidden', 'value' => $enquiry['Enquiry']['id'])); + //echo $form->submit('Upload'); + echo $form->end('Upload'); + echo '
'; +?> diff --git a/webroot/img/address-book-new.png b/webroot/img/address-book-new.png new file mode 100755 index 00000000..cddaa67f Binary files /dev/null and b/webroot/img/address-book-new.png differ diff --git a/webroot/img/document.png b/webroot/img/document.png new file mode 100755 index 00000000..311665c0 Binary files /dev/null and b/webroot/img/document.png differ diff --git a/webroot/img/document_type.png b/webroot/img/document_type.png new file mode 100755 index 00000000..749b244d Binary files /dev/null and b/webroot/img/document_type.png differ diff --git a/webroot/img/image_type.png b/webroot/img/image_type.png new file mode 100755 index 00000000..b25a25cf Binary files /dev/null and b/webroot/img/image_type.png differ diff --git a/webroot/img/kaddressbook.png b/webroot/img/kaddressbook.png new file mode 100755 index 00000000..e16e85db Binary files /dev/null and b/webroot/img/kaddressbook.png differ diff --git a/webroot/img/message_type.png b/webroot/img/message_type.png new file mode 100755 index 00000000..250b4d53 Binary files /dev/null and b/webroot/img/message_type.png differ diff --git a/webroot/img/pdf_type.png b/webroot/img/pdf_type.png new file mode 100755 index 00000000..a219069e Binary files /dev/null and b/webroot/img/pdf_type.png differ diff --git a/webroot/img/spreadsheet_document_type.png b/webroot/img/spreadsheet_document_type.png new file mode 100755 index 00000000..6e382b56 Binary files /dev/null and b/webroot/img/spreadsheet_document_type.png differ diff --git a/webroot/img/txt_type.png b/webroot/img/txt_type.png new file mode 100755 index 00000000..4abfa1f1 Binary files /dev/null and b/webroot/img/txt_type.png differ diff --git a/webroot/img/unknown_type.png b/webroot/img/unknown_type.png new file mode 100755 index 00000000..28bfe3c4 Binary files /dev/null and b/webroot/img/unknown_type.png differ diff --git a/webroot/img/x-office-address-book.png b/webroot/img/x-office-address-book.png new file mode 100755 index 00000000..6377a84c Binary files /dev/null and b/webroot/img/x-office-address-book.png differ