Conflicts:
	application/core/FHC_Controller.php
This commit is contained in:
root
2016-06-21 16:31:06 +02:00
25 changed files with 798 additions and 265 deletions
+59 -146
View File
@@ -23,9 +23,13 @@ class Dms extends APIv1_Controller
{
parent::__construct();
// Load model PersonModel
$this->load->model('content/dms_model', 'DmsModel');
// Load set the uid of the model to let to check the permissions
$this->load->model('content/Dms_model', 'DmsModel');
$this->load->model('content/DmsVersion_model', 'DmsVersionModel');
$this->load->model('content/DmsFS_model', 'DmsFSModel');
// Set the uid of the model to let to check the permissions
$this->DmsModel->setUID($this->_getUID());
$this->DmsVersionModel->setUID($this->_getUID());
$this->DmsFSModel->setUID($this->_getUID());
}
/**
@@ -41,9 +45,52 @@ class Dms extends APIv1_Controller
$result = $this->_getDms($dms_id, $version);
if (is_object($result) && $result->error == EXIT_SUCCESS && is_array($result->retval) && count($result->retval) > 0)
{
if (($fileContent = $this->_readFile($result->retval[0]->filename)) != false)
$resultFS = $this->DmsFSModel->read($result->retval[0]->filename);
if (is_object($resultFS) && $resultFS->error == EXIT_SUCCESS)
{
$result->retval[0]->file_content = $fileContent;
$result->retval[0]->file_content = $resultFS->retval;
}
}
$this->response($result, REST_Controller::HTTP_OK);
}
else
{
$this->response();
}
}
/**
*
*/
public function postDms()
{
$dms = $this->_parseData($this->post());
if ($this->_validate($dms))
{
$result = null;
if (isset($dms['dms_id']))
{
if ($this->_saveFileOnUpdate($dms))
{
$result = $this->DmsModel->update($dms['dms_id'], $this->DmsModel->filterFields($dms));
if ($result->error == EXIT_SUCCESS)
{
$result = $this->DmsVersionModel->update(array($dms['dms_id'], $dms['version']), $this->DmsVersionModel->filterFields($dms));
}
}
}
else
{
if (($filename = $this->_saveFileOnInsert($dms)) !== false)
{
$result = $this->DmsModel->insert($this->DmsModel->filterFields($dms));
if ($result->error == EXIT_SUCCESS)
{
$result = $this->DmsVersionModel->insert($this->DmsVersionModel->filterFields($dms, $result->retval, $filename));
}
}
}
@@ -89,102 +136,6 @@ class Dms extends APIv1_Controller
return $result;
}
/**
*
*/
public function postDms()
{
$dms = $this->_parseData($this->post());
if ($this->_validate($dms))
{
if (isset($dms['dms_id']))
{
if ($this->_saveFileOnUpdate($dms))
{
$result = $this->DmsModel->update($dms['dms_id'], $this->_dmsFieldsArray($dms));
if ($result->error == EXIT_SUCCESS)
{
$result = $this->DmsModel->updateDmsVersion($dms['dms_id'], $this->_dmsVersionFieldsArray($dms));
}
}
}
else
{
if (($fileName = $this->_saveFileOnInsert($dms)) !== false)
{
$result = $this->DmsModel->insert($this->_dmsFieldsArray($dms));
if ($result->error == EXIT_SUCCESS)
{
$result = $this->DmsModel->insertDmsVersion($this->_dmsVersionFieldsArray($dms, $result->retval, $fileName));
}
}
}
$this->response($result, REST_Controller::HTTP_OK);
}
else
{
$this->response();
}
}
/**
*
*/
private function _dmsFieldsArray($dms)
{
$fieldsArray = array('oe_kurzbz', 'dokument_kurzbz', 'kategorie_kurzbz');
$returnArray = array();
foreach ($fieldsArray as $value)
{
if (isset($dms[$value]))
{
$returnArray[$value] = $dms[$value];
}
}
return $returnArray;
}
/**
*
*/
private function _dmsVersionFieldsArray($dms, $dms_id = null, $fileName = null)
{
$fieldsArray = array(
'version',
'mimetype',
'name',
'beschreibung',
'letzterzugriff',
'insertamum',
'insertvon',
'updateamum',
'updatevon'
);
$returnArray = array();
foreach ($fieldsArray as $value)
{
if (isset($dms[$value]))
{
$returnArray[$value] = $dms[$value];
}
}
if (isset($dms_id))
{
$returnArray['dms_id'] = $dms_id;
}
if (isset($fileName))
{
$returnArray['filename'] = $fileName;
}
return $returnArray;
}
/**
*
*/
@@ -193,19 +144,11 @@ class Dms extends APIv1_Controller
if(isset($dms['version']))
{
$result = $this->_getDms($dms['dms_id'], $dms['version']);
}
else
{
$result = $this->_getDms($dms['dms_id']);
}
if (is_object($result) && $result->error == EXIT_SUCCESS && is_array($result->retval) && count($result->retval) > 0)
{
$fileName = DMS_PATH . $result->retval[0]->filename;
if (($fileContent = base64_decode($dms['file_content'])))
if (is_object($result) && $result->error == EXIT_SUCCESS && is_array($result->retval) && count($result->retval) > 0)
{
if (file_put_contents($fileName, $fileContent))
$result = $this->DmsFSModel->write($result->retval[0]->filename, $dms['file_content']);
if (is_object($result) && $result->error == EXIT_SUCCESS)
{
return true;
}
@@ -220,47 +163,17 @@ class Dms extends APIv1_Controller
*/
private function _saveFileOnInsert($dms)
{
$fileName = uniqid() . '.' . pathinfo($dms['name'], PATHINFO_EXTENSION);
$FileNamePath = DMS_PATH . $fileName;
$filename = uniqid() . '.' . pathinfo($dms['name'], PATHINFO_EXTENSION);
if (($fileContent = base64_decode($dms['file_content'])))
$result = $this->DmsFSModel->write($filename, $dms['file_content']);
if (is_object($result) && $result->error == EXIT_SUCCESS)
{
if ($fileHandle = fopen($FileNamePath, 'w'))
{
if(fwrite($fileHandle, $fileContent))
{
fclose($fileHandle);
return $fileName;
}
}
return $filename;
}
return false;
}
/**
*
*/
private function _readFile($fileName)
{
$fileNamePath = DMS_PATH . $fileName;
if (file_exists($fileNamePath))
{
if ($fileHandle = fopen($fileNamePath, 'r'))
{
$cTmpHEX = '';
while (!feof($fileHandle))
{
$cTmpHEX .= fread($fileHandle, 8192);
}
fclose($fileHandle);
return base64_encode($cTmpHEX);
}
}
return false;
}
private function _validate($dms = NULL)
{
if (!isset($dms['file_content']) || (isset($dms['file_content']) && $dms['file_content'] == ''))
@@ -274,4 +187,4 @@ class Dms extends APIv1_Controller
return true;
}
}
}
@@ -23,45 +23,20 @@ class Message extends APIv1_Controller
{
parent::__construct();
// Load model MessageModel
$this->load->model('system/message_model', 'MessageModel');
// Load set the uid of the model to let to check the permissions
$this->MessageModel->setUID($this->_getUID());
$this->load->library('MessageLib', array('uid' => $this->_getUID()));
}
/**
* @return void
*/
public function getMessage()
public function getMessagesByPersonID()
{
$messageID = $this->get('message_id');
$person_id = $this->get('person_id');
$all = $this->get('all');
if (isset($messageID))
if (isset($person_id))
{
$result = $this->MessageModel->load($messageID);
$this->response($result, REST_Controller::HTTP_OK);
}
else
{
$this->response();
}
}
/**
* @return void
*/
public function postMessage()
{
if ($this->_validate($this->post()))
{
if (isset($this->post()['message_id']))
{
$result = $this->MessageModel->update($this->post()['message_id'], $this->post());
}
else
{
$result = $this->MessageModel->insert($this->post());
}
$result = $this->messagelib->getMessagesByPerson($person_id, $all);
$this->response($result, REST_Controller::HTTP_OK);
}
@@ -71,8 +46,39 @@ class Message extends APIv1_Controller
}
}
private function _validate($message = NULL)
/**
* @return void
*/
public function postMessage()
{
if ($this->_validate($this->post()))
{
$this->messagelib->addRecipient($this->post()['person_id']);
$result = $this->messagelib->sendMessage(
$this->post()['person_id'],
$this->post()['subject'],
$this->post()['body'],
PRIORITY_NORMAL,
NULL,
$this->post()['oe_kurzbz']
);
$this->response($result, REST_Controller::HTTP_OK);
}
else
{
$this->response();
}
}
private function _validate($message = null)
{
if (!isset($message['person_id']) || !isset($message['subject']) ||
!isset($message['body']) || !isset($message['oe_kurzbz']))
{
return false;
}
return true;
}
}
+18 -9
View File
@@ -1,34 +1,43 @@
<?php
if (! defined('BASEPATH')) exit('No direct script access allowed');
class Messages extends FHC_Controller
class Messages extends VileSci_Controller
{
public function __construct()
{
parent::__construct();
$this->load->library('messaging');
$this->load->library('MessageLib');
//$this->load->model('person/Person_model');
//$this->load->model('system/Message_model');
}
public function index()
{
//$messages = $this->Message_model->getMessages();
$msg = $this->Message_model->load(1);
$this->load->view('system/messages.php');
}
public function table()
{
$person_id = $this->input->post('person_id', TRUE);
if ($person_id)
$msg = $this->messagelib->getMessagesByPerson($person_id);
else
$msg = $this->messagelib->getMessagesByUID($this->getUID());
if ($msg->error)
show_error($msg->retval);
$data = array
(
'message' => $msg->retval[0]
'messages' => $msg->retval
);
$v = $this->load->view('message.php', $data);
var_dump ($data);
$this->load->view('system/messagesList.php', $data);
}
public function view($msg_id)
{
$msg = $this->messaging->getMessage($msg_id);
$msg = $this->messagelib->getMessage($msg_id);
//var_dump($msg);
if ($msg->error)
show_error($msg->retval);
@@ -57,9 +66,9 @@ class Messages extends FHC_Controller
{
$body = $this->input->post('body', TRUE);
$subject = $this->input->post('subject', TRUE);
if (! $this->messaging->addRecipient(1))
if (! $this->messagelib->addRecipient(1))
show_error('Error: AddRecipient');
$msg = $this->messaging->sendMessage(1,$body ,$subject);
$msg = $this->messagelib->sendMessage(1,$body ,$subject);
if ($msg->error)
show_error($msg->retval);
$msg_id = $msg->retval;