/** * Handles what happens when user moves to URL/notify/sms */ public function sms() { //initialize data $data = array(); $data['service_id'] = ''; $data['link_id'] = ''; $data['linked_incoming_msg_id'] = ''; $data['dest_address'] = ''; $data['sender_address'] = ''; $data['correlator'] = ''; $data['batch_id'] = ''; $data['message'] = ''; //get the request data - get $data['service_id'] = Request::get('service_id', true); $data['link_id'] = Request::get('link_id', true); $data['linked_incoming_msg_id'] = Request::get('linked_incoming_msg_id', true); $data['dest_address'] = Request::get('dest_address', true); $data['sender_address'] = Request::get('sender_address', true); $data['correlator'] = Request::get('correlator', true); $data['message'] = Request::get('message', true); $data['batch_id'] = Request::get('batch_id', true); $this->logger->debug('{class_mame}|{method_name}|send-sms-request|{parameters}', array('class_mame' => __CLASS__, 'method_name' => __FUNCTION__, 'parameters' => implode('|', $data))); //call the sender model to process $model = new SendModel($this->logger); $resultData = $model->process($data); $send_ref_id = ""; $status = ""; $status_desc = ""; if (isset($resultData['data']['send_ref_id'])) { $send_ref_id = $resultData['data']['send_ref_id']; } if (isset($resultData['data']['status'])) { $send_ref_id = $resultData['data']['status']; } if (isset($resultData['data']['status_desc'])) { $send_ref_id = $resultData['data']['status_desc']; } $this->logger->info('{class_mame}|{method_name}|send-sms-result|{parameters}|{result}|{result_desc}|{send_ref_id}|{send_status}|{send_status_desc}', array('class_mame' => __CLASS__, 'method_name' => __FUNCTION__, 'parameters' => implode('|', $data), 'result' => $resultData['result'], 'result_desc' => $resultData['resultDesc'], 'send_ref_id' => $send_ref_id, 'send_status' => $status, 'send_status_desc' => $status_desc)); if ($resultData['result'] == 0) { //render the view and pass the raw post data $this->View->renderWithoutHeaderAndFooter('send/index', $resultData); } else { if ($resultData['result'] == 11) { //bad request error header('HTTP/1.0 400 Bad Request'); $this->View->renderWithoutHeaderAndFooter('error/httperror500', array("error" => $resultData['result'] . " - " . $resultData['resultDesc'])); } else { //processing error header('HTTP/1.0 500 Internal Server Error'); $this->View->renderWithoutHeaderAndFooter('error/httperror500', array("error" => $resultData['result'] . " - " . $resultData['resultDesc'])); } } }
/** * Construct the (base) controller. This happens when a real controller is constructed, like in * the constructor of IndexController when it says: parent::__construct(); */ function __construct(LoggerInterface $logger = null) { // always initialize a session Session::init(); // user is not logged in but has remember-me-cookie ? then try to login with cookie ("remember me" feature) if (!Session::userIsLoggedIn() and Request::cookie('remember_me')) { header('location: ' . Config::get('URL') . 'login/loginWithCookie'); } // create a view object to be able to use it inside a controller, like $this->View->render(); $this->View = new View(); //initialize the logger object $this->logger = $logger; }
/** * Handles what happens when user moves to URL/service/all. This returns all servives in the system. */ public function delvryrcpts() { //get request data $delivery_status = Request::get('delivery_status'); $start_date = Request::get('start_date'); $end_date = Request::get('end_date'); //set default start date - 1 month ago if (!isset($start_date) || $start_date == '') { $date = date_create(date('Y-m-d')); date_sub($date, date_interval_create_from_date_string('1 months')); $start_date = date_format($date, 'Y-m-d'); } //set default end date - current day if (!isset($end_date) || $end_date == '') { $end_date = date('Y-m-d'); } //request data to be used in calling the model $data = array('delivery_status' => $delivery_status, 'start_date' => $start_date, 'end_date' => $end_date); //log the event $this->logger->debug('{class_mame}|{method_name}|request|request-data:{data}', array('class_mame' => __CLASS__, 'method_name' => __FUNCTION__, 'data' => json_encode($data))); $model = new ReportModel($this->logger); $result = $model->generateDeliveryReceiptsReport($start_date . ' 00:00:00', $end_date . ' 23:59:59', $delivery_status); //add result $data['result'] = $result; $this->View->render('reports/delvryrcpts', $data); //log the event $this->logger->info('{class_mame}|{method_name}|result|{result}|{result_desc}', array('class_mame' => __CLASS__, 'method_name' => __FUNCTION__, 'result' => $result['result'], 'result_desc' => $result['resultDesc'])); }
/** * Handles what happens when user moves to URL/service/all. This returns all servives in the system. */ public function delete($service_id) { //get request data $id = ''; $service_name = ''; $service_type = ''; $short_code = ''; $criteria = ''; $service_endpoint = ''; $delivery_notification_endpoint = ''; $interface_name = ''; $data = array('id' => $id, 'service_id' => $service_id, 'service_name' => $service_name, 'service_type' => $service_type, 'short_code' => $short_code, 'criteria' => $criteria, 'service_endpoint' => $service_endpoint, 'delivery_notification_endpoint' => $delivery_notification_endpoint, 'interface_name' => $interface_name); //log the event $this->logger->debug('{class_mame}|{method_name}|{service_id}|request-data', array('class_mame' => __CLASS__, 'method_name' => __FUNCTION__, 'request-data' => json_encode($data))); if (null !== Request::post('action', true)) { //form submitted, processing to happen below $service_model = new ServiceModel($this->logger); $result = $service_model->deleteService($service_id); $data['result'] = $result; //success if ($result['result'] == 0) { Session::add('feedback_positive', 'Service deleted successfully'); } else { Session::add('feedback_negative', 'Service deletion failed. Error: ' . $result['result'] . ' - ' . $result['resultDesc']); } //log the event $this->logger->debug('{class_mame}|{method_name}|{service_id}|edit-service-result|result:{result}|result_desc:{result_desc}', array('class_mame' => __CLASS__, 'method_name' => __FUNCTION__, 'result' => $result['result'], 'result_desc' => $result['resultDesc'], 'result_desc' => json_encode($result))); } else { //load servive data from windows $service_model = new ServiceModel($this->logger); $result = $service_model->getService($service_id); $data['result'] = $result; //successful loading of service if ($result['result'] == 0) { $data = json_decode(json_encode($result['service']), true); } else { Session::add('feedback_negative', 'Service ' . $service_id . ' loading failed. Error: ' . $result['result'] . ' - ' . $result['resultDesc']); } //log the event $this->logger->debug('{class_mame}|{method_name}|{service_id}|result|{result}|{result_desc}', array('class_mame' => __CLASS__, 'method_name' => __FUNCTION__, 'result' => $result['result'], 'result_desc' => $result['resultDesc'])); } $this->View->render('servicemanager/delete', $data); }
/** * Set the new password * Please note that this happens while the user is not logged in. The user identifies via the data provided by the * password reset link from the email, automatically filled into the <form> fields. See verifyPasswordReset() * for more. Then (regardless of result) route user to index page (user will get success/error via feedback message) * POST request ! * TODO this is an _action */ public function setNewPassword() { if (Session::userIsLoggedIn()) { PasswordResetModel::setNewPassword(Request::post('user_name'), Request::post('user_password_reset_hash'), Request::post('user_password_new'), Request::post('user_password_repeat')); $user_name = Session::get('user_name'); $this->View->render('login/set_new_password', array('user_name' => $user_name)); } else { Redirect::to('login/index'); } }
public function subscriptions_pdf() { /* Initialize the request data */ //get request data $subscriber_id = Request::get('subscriber_id'); $service_id = Request::get('service_id'); $product_id = Request::get('product_id'); $update_type = Request::get('update_type'); $start_date = Request::get('start_date'); $end_date = Request::get('end_date'); //set default start date - 1 month ago if (!isset($start_date) || $start_date == '') { $date = date_create(date('Y-m-d')); date_sub($date, date_interval_create_from_date_string('1 months')); $start_date = date_format($date, 'Y-m-d'); } //set default end date - current day if (!isset($end_date) || $end_date == '') { $end_date = date('Y-m-d'); } //request data to be used in calling the model $data = array('subscriber_id' => $subscriber_id, 'service_id' => $service_id, 'product_id' => $product_id, 'update_type' => $update_type, 'start_date' => $start_date, 'end_date' => $end_date); //log the event $this->logger->debug('{class_mame}|{method_name}|request|request-data:{data}', array('class_mame' => __CLASS__, 'method_name' => __FUNCTION__, 'data' => json_encode($data))); //call the model $model = new MessageModel($this->logger); $result = $model->getSubscriptionMessages($start_date . ' 00:00:00', $end_date . ' 23:59:59', $subscriber_id, $service_id, $product_id, $update_type, 0, Config::get('MAX_RECORDS_PDF')); //add result $data['result'] = $result; //print_r($result); //request data to be used in calling the model $data = array('subscriber_id' => $subscriber_id, 'service_id' => $service_id, 'product_id' => $product_id, 'update_type' => $update_type, 'start_date' => $start_date, 'end_date' => $end_date); $title = "Subscription Requests Extract - Subscriber: {$subscriber_id}, Service ID: {$service_id}, Product ID: {$product_id}, Update Type: {$update_type}, Start Date: {$start_date}, End Date: {$end_date}"; $headers = array('#', 'Subscriber', 'Service ID', 'Product ID', 'Update Type', 'Effective Time', 'Expiry Time', 'Processing Time'); $sizes = array(15, 43, 40, 40, 35, 35, 35, 35); $max_sizes = array(10, 30, 28, 28, 30, 25, 25, 25); $data = array(); $filename = __FUNCTION__ . '_' . Session::get('user_name') . '_' . date('YmdHis') . '.pdf'; $i = 0; foreach ($result['messages'] as $message) { $data[$i] = array($message->id, $message->subscriber_id, $message->service_id, $message->product_id, $message->update_desc, $message->effective_time, $message->expiry_time, $message->created_on); $i++; } $pdf = new PDF($title, $data, $headers, $sizes, $max_sizes); $pdf->Output($filename, 'I'); //log the event $this->logger->info('{class_mame}|{method_name}|result|{result}|result_desc:{result_desc}', array('class_mame' => __CLASS__, 'method_name' => __FUNCTION__, 'result' => $result['result'], 'result_desc' => $result['resultDesc'])); }