/** * Implementation of the singleton design pattern * See http://www.talkphp.com/advanced-php-programming/1304-how-use-singleton-design-pattern.html * * @return SessionWrapper */ public static function getInstance() { if (null === self::$_instance) { self::$_instance = new self(); } return self::$_instance; }
public function loginAction() { $userForm = new Form_LoginForm(); $userForm->setAction('/auth/login'); if ($this->_request->isPost() && $userForm->isValid($_POST)) { $data = $userForm->getValues(); $db = Zend_Db_Table::getDefaultAdapter(); $authAdapter = new Zend_Auth_Adapter_DbTable($db, 'utils', 'username', 'source'); $authAdapter->setIdentity($data['username']); $authAdapter->setCredential($data['password']); $result = $authAdapter->authenticate(); if ($result->isValid()) { $auth = Zend_Auth::getInstance(); $data1 = $authAdapter->getResultRowObject(null, 'source'); // $auth->getStorage()->write($data1); // $auth->getStorage()->write($data); $dom = $auth->getIdentity()->domainadmin; $host = $auth->getIdentity()->hostadmin; $mySession = SessionWrapper::getInstance(); $mySession->setSessVar('username', $formData['username']); date_default_timezone_set('Europe/Brussels'); echo 'valid'; } else { $this->view->loginMessage = "Sorry, your username or password was incorrect"; } } $this->view->form = $userForm; }
function processPost($formvalues) { $session = SessionWrapper::getInstance(); // trim spaces from the name field if (isArrayKeyAnEmptyString('create', $formvalues)) { $formvalues['create'] = 0; } if (isArrayKeyAnEmptyString('edit', $formvalues)) { $formvalues['edit'] = 0; } if (isArrayKeyAnEmptyString('view', $formvalues)) { $formvalues['view'] = 0; } if (isArrayKeyAnEmptyString('list', $formvalues)) { $formvalues['list'] = 0; } if (isArrayKeyAnEmptyString('delete', $formvalues)) { $formvalues['delete'] = 0; } if (isArrayKeyAnEmptyString('export', $formvalues)) { $formvalues['export'] = 0; } if (isArrayKeyAnEmptyString('approve', $formvalues)) { $formvalues['approve'] = 0; } if (isArrayKeyAnEmptyString('flag', $formvalues)) { $formvalues['flag'] = 0; } // debugMessage($formvalues); exit(); parent::processPost($formvalues); }
public static function initialize() { if (self::$initialized) { return; } self::$initialized = true; try { // Initialize local session Session::init(); if (!empty($_GET['logout'])) { self::destroy(); Session::init(); } if (!Session::userIsLoggedIn() && Request::cookie('remember_me')) { if (!LoginModel::loginWithCookie(Request::cookie('remember_me'))) { LoginModel::deleteCookie(); } } $currentUrl = $_SERVER['REQUEST_URI']; $end = strpos($currentUrl, '?'); if ($end === false) { $end = strpos($currentUrl, '#'); } if ($end !== false) { $currentUrl = substr($currentUrl, 0, $end); } // Initialize Facebook session /*self::$facebookSession = new FacebookSessionWrapper( Tools::getBaseUrl() . $currentUrl, Tools::getBaseUrl() . '/logout/' );*/ } catch (\Exception $ex) { } }
function updatestatusAction() { $this->_helper->layout->disableLayout(); $this->_helper->viewRenderer->setNoRender(TRUE); $formvalues = $this->_getAllParams(); debugMessage($formvalues); $session = SessionWrapper::getInstance(); $this->_translate = Zend_Registry::get("translate"); $formvalues['id'] = $id = $formvalues['id']; $formvalues['dateapproved'] = date("Y-m-d H:i:s", strtotime('now')); $formvalues['approvedbyid'] = $session->getVar('userid'); // debugMessage($formvalues); $leave = new Leave(); $leave->populate($id); $leave->setStatus($formvalues['status']); $leave->setDateApproved(DEFAULT_DATETIME); $leave->setApprovedByID($session->getVar('userid')); if (!isArrayKeyAnEmptyString('reason', $formvalues)) { $leave->setReason("<br/>Rejected with remarks: " . $formvalues['reason']); } try { $leave->save(); $leave->afterApprove($formvalues['status']); $session->setVar(SUCCESS_MESSAGE, $this->_translate->translate($formvalues[SUCCESS_MESSAGE])); } catch (Exception $e) { // debugMessage('error '.$e->getMessage()); $session->setVar(ERROR_MESSAGE, $e->getMessage()); } // exit(); $this->_helper->redirector->gotoUrl(decode($formvalues[URL_SUCCESS])); }
function eventsAction() { $this->_helper->layout->disableLayout(); $this->_helper->viewRenderer->setNoRender(TRUE); $config = Zend_Registry::get("config"); $session = SessionWrapper::getInstance(); $formvalues = $this->_getAllParams(); $acl = getACLInstance(); $user = new UserAccount(); // $user->populate($formvalues['id']); $events = getLeaveRequests("", getYearStart(), getYearEnd()); // debugMessage($events); $jsondata = array(); $i = 0; if (count($events) > 0) { // $jsondata = $events; $leaveoptions = getHoursDaysDropdown(); foreach ($events as $key => $value) { $jsondata[$key]['id'] = $value['id']; $unit = ''; if (!isArrayKeyAnEmptyString($value['durationtype'], $leaveoptions)) { $unit = ' on Leave'; } $jsondata[$key]['title'] = $value['user'] . $unit; $jsondata[$key]['start'] = $value['startdate']; $jsondata[$key]['end'] = $value['enddate']; if (isTimesheetEmployee() && $value['userid'] == $session->getVar('userid') || $acl->checkPermission('Leave', ACTION_APPROVE)) { // $jsondata[$key]['url'] = $this->view->serverUrl($this->view->baseUrl('leave/view/id/'.encode($value['id']))); } } } // debugMessage($jsondata); echo json_encode($jsondata); }
function excelAction() { $this->_helper->layout->disableLayout(); $this->_helper->viewRenderer->setNoRender(TRUE); $session = SessionWrapper::getInstance(); $formvalues = $this->_getAllParams(); // debugMessage($formvalues); $title = $this->_getParam('reporttitle'); // debugMessage($formvalues); $cvsdata = decode($formvalues['csv_text']); if (!isEmptyString($title)) { $cvsdata = str_replace('"--"', '""', $cvsdata); $title = str_replace(', ', ' ', $title); $cvsdata = $title . "\r\n" . $cvsdata; } // debugMessage($cvsdata); exit(); $currenttime = time(); $filename = $currenttime . '.csv'; /*$full_path = BASE_PATH.DIRECTORY_SEPARATOR."temp".DIRECTORY_SEPARATOR.$filename; file_put_contents($full_path, $cvsdata);*/ $data = stripcslashes($cvsdata); // debugMessage($data); // exit(); //OUPUT HEADERS header("Pragma: public"); header("Expires: 0"); header("Cache-Control: must-revalidate, post-check=0, pre-check=0"); header("Cache-Control: private", false); header("Content-Type: application/octet-stream"); header("Content-Disposition: attachment; filename=\"{$filename}\";"); header("Content-Transfer-Encoding: binary"); //OUTPUT CSV CONTENT echo $data; exit; }
/** * Sends the details of the support form by email */ public function processcontactusAction() { $session = SessionWrapper::getInstance(); $this->_helper->layout->disableLayout(); $this->_helper->viewRenderer->setNoRender(TRUE); $formvalues = $this->_getAllParams(); // debugMessage($formvalues); $profile = new UserAccount(); if ($profile->sendContactNotification($formvalues)) { // after send events $session->setVar(SUCCESS_MESSAGE, "Thank you for contacting us. We shall get back to you shortly."); $this->_redirect($this->view->baseUrl('contactus/index/result/success')); } else { $session->setVar(ERROR_MESSAGE, 'Sorry! An error occured in sending the message. Please try again later '); $this->_redirect($this->view->baseUrl('contactus/index/result/error')); } }
public function init() { // initialize the parent controller parent::init(); $session = SessionWrapper::getInstance(); // check whether the user is logged in if (isEmptyString($session->getVar('userid'))) { // clear the session $this->_helper->redirector->gotoSimpleAndExit("login", "user", $this->getRequest()->getModuleName(), array('redirecturl' => encode(Zend_Controller_Front::getInstance()->getRequest()->getRequestUri()))); } $cache = Zend_Registry::get('cache'); // load the acl instance $acl = getACLInstance(); // debugMessage('resource is '.$this->getResourceForACL()." action ".$this->getActionforACL()); exit; if (!$acl->checkPermission($this->getResourceForACL(), $this->getActionforACL())) { // debugMessage('resource is '.$this->getResourceForACL()." action ".$this->getActionforACL()); // redirect to the access denied page $this->_helper->redirector->gotoSimpleAndExit("accessdenied", "index"); } }
function checkinAction() { $session = SessionWrapper::getInstance(); $this->_helper->layout->disableLayout(); $this->_helper->viewRenderer->setNoRender(TRUE); $formvalues = $this->_getAllParams(); debugMessage('test'); $testarray = array("userid" => 15, 'datein' => 'Jan 27, 2015', 'timein' => '08:00 AM', 'dateout' => '', 'timeout' => '', 'reason' => '', 'createdby' => 15); $attendance = new Attendance(); debugMessage($attendance->toArray()); $attendance->processPost($testarray); debugMessage($attendance->toArray()); debugMessage('errors are ' . $attendance->getErrorStackAsString()); try { $attendance->save(); debugMessage('saved successfully'); debugMessage($attendance->toArray()); } catch (Exception $e) { debugMessage('error: ' . $e->getMessage()); } }
public function uploadAction() { $this->_helper->layout->disableLayout(); $this->_helper->viewRenderer->setNoRender(TRUE); $formvalues = $this->_getAllParams(); // debugMessage($formvalues); $config = Zend_Registry::get("config"); $this->_translate = Zend_Registry::get("translate"); $session = SessionWrapper::getInstance(); }
function processreplyAction() { $this->_helper->layout->disableLayout(); $this->_helper->viewRenderer->setNoRender(TRUE); $session = SessionWrapper::getInstance(); $config = Zend_Registry::get("config"); $formvalues = $this->_getAllParams(); debugMessage($formvalues); $messages = array(); $messages['senderid'] = $formvalues['senderid']; $messages['parentid'] = $formvalues['parentid']; $messages['subject'] = $formvalues['subject']; $messages['contents'] = $formvalues['contents']; $recipients_array = array(); $users = array(); $users = $formvalues['recipientids']; foreach ($users as $userid) { $recipients_array[$userid]['recipientid'] = $userid; } $messages['recipients'] = $recipients_array; // debugMessage($messages); $msg = new Message(); $msg->processPost($messages); /*debugMessage($msg->toArray()); debugMessage('error is '.$msg->getErrorStackAsString()); exit();*/ // save the messages to system inbox if ($msg->hasError()) { $session->setVar(ERROR_MESSAGE, "An error occured in sending the message. " . $msg->getErrorStackAsString()); } else { try { $msg->save(); // copy message to recepient's email of specified / required for admin contact $messagereceipients = $msg->getRecipients(); if ($this->_getParam('copytoemail') == 1) { foreach ($messagereceipients as $messageuser) { if (!isEmptyString($messageuser->getRecipient()->getEmail())) { $messageuser->sendInboxEmailNotification(); } } } if ($this->_getParam('copytophone') == 1) { foreach ($messagereceipients as $messageuser) { if (!isEmptyString($messageuser->getRecipient()->getPhone())) { # check if user has phone number on profile $messageuser->sendSmsNotification(); } } } // copy message to user's phone if specified $session->setVar(SUCCESS_MESSAGE, "Message successfully replied. "); } catch (Exception $e) { $session->setVar(ERROR_MESSAGE, "An error occured in sending the message. " . $e->getMessage()); } } $this->_helper->redirector->gotoUrl(decode($formvalues[URL_SUCCESS])); // exit(); }
function schedulecreateAction() { $session = SessionWrapper::getInstance(); $this->_helper->layout->disableLayout(); $this->_helper->viewRenderer->setNoRender(TRUE); // parent::createAction(); $formvalues = $this->_getAllParams(); // debugMessage($formvalues); exit(); $formvalues['id'] = $id = decode($formvalues['id']); $status = $formvalues['status']; $old_shift = $formvalues['shift_old']; $isactive = false; $shift = new ShiftSchedule(); if (!isArrayKeyAnEmptyString('id', $formvalues)) { $shift->populate($id); $isactive = $shift->isActive(); } else { $formvalues['addedbyid'] = $session->getVar('userid'); $formvalues['dateadded'] = DEFAULT_DATETIME; } $shift->processPost($formvalues); if ($shift->hasError()) { debugMessage('errors are ' . $shift->getErrorStackAsString()); exit; $session->setVar(ERROR_MESSAGE, $shift->getErrorStackAsString()); $this->_helper->redirector->gotoUrl(decode($this->_getParam(URL_FAILURE))); exit; } // exit; try { $updateshift = false; if ($status == 1) { if ($old_shift != $shift->getSessionID()) { $shift->getUser()->setShift($shift->getSessionID()); $updateshift = true; } } else { if (!isEmptyString($old_shift) && $isactive) { $shift->getUser()->setShift(NULL); $updateshift = true; } } // debugMessage($shift->toArray()); exit; $shift->save(); # update any previous shifts that could still be active when setting a new active session if ($status == 1) { $updateableshifts = $shift->getCurrentActiveShiftsForUser($shift->getUserID()); // debugMessage($updateableshifts->toArray()); if ($updateableshifts->count() > 0) { foreach ($updateableshifts as $ashift) { $ashift->setStatus(0); $ashift->save(); } } } $session->setVar(SUCCESS_MESSAGE, $this->_getParam('successmessage')); $this->_helper->redirector->gotoUrl(decode($this->_getParam(URL_SUCCESS))); } catch (Exception $e) { $session->setVar(ERROR_MESSAGE, $e->getMessage()); //debugMessage('save error '.$e->getMessage()); $this->_helper->redirector->gotoUrl(decode($this->_getParam(URL_FAILURE))); } }
function sendApprovalConfirmationNotification() { $template = new EmailTemplate(); # create mail object $mail = getMailInstance(); $view = new Zend_View(); $session = SessionWrapper::getInstance(); // assign values $template->assign('firstname', $this->getUser()->getFirstName()); $statuslabel = $this->isApproved() ? "Approved" : "Rejected"; $subject = "Leave " . $statuslabel; $save_toinbox = true; $type = "leave"; $subtype = "leave_" . strtolower($statuslabel); $viewurl = $template->serverUrl($template->baseUrl('leave/view/id/' . encode($this->getID()))); $rejectreason = ""; if ($this->isRejected()) { $rejectreason = "<br><b>Synopsis:</b> " . $this->getComments() . ""; } $days = $this->getDuration() / getHoursInDay(); $message_contents = "<p>This is to confirm that your Leave Request from <b>" . changeMySQLDateToPageFormat($this->getStartDate()) . "</b> to <b> " . changeMySQLDateToPageFormat($this->getEndDate()) . "</b> has been successfully " . $statuslabel . $rejectreason . ".</p>\n\t\t<p>To view your request online <a href='" . $viewurl . "'>click here<a></p>\n\t\t<br />\n\t\t<p>" . $this->getApprover()->getName() . "<br />\n\t\t" . getAppName() . "</p>\n\t\t"; $template->assign('contents', $message_contents); $mail->clearRecipients(); $mail->clearSubject(); $mail->setBodyHtml(''); // configure base stuff $mail->addTo($this->getUser()->getEmail(), $this->getUser()->getName()); // set the send of the email address $mail->setFrom(getDefaultAdminEmail(), getDefaultAdminName()); $mail->setSubject($subject); // render the view as the body of the email $html = $template->render('default.phtml'); $mail->setBodyHtml($html); // debugMessage($html); exit(); if ($this->getUser()->allowEmailForTimesheetApproval() && !isEmptyString($this->getUser()->getEmail())) { try { $mail->send(); $session->setVar("custommessage1", "Email sent to " . $this->getUser()->getEmail()); } catch (Exception $e) { $session->setVar(ERROR_MESSAGE, 'Email notification not sent! ' . $e->getMessage()); } } $mail->clearRecipients(); $mail->clearSubject(); $mail->setBodyHtml(''); $mail->clearFrom(); if ($save_toinbox) { # save copy of message to user's application inbox $message_dataarray = array("senderid" => DEFAULT_ID, "subject" => $subject, "contents" => $message_contents, "html" => $html, "type" => $type, "subtype" => $subtype, "refid" => $this->getID(), "recipients" => array(md5(1) => array("recipientid" => $this->getUserID()))); // debugMessage($message_dataarray); // process message data $message = new Message(); $message->processPost($message_dataarray); $message->save(); } return true; }
function sendPayslipNotification() { $template = new EmailTemplate(); # create mail object $mail = getMailInstance(); $view = new Zend_View(); $session = SessionWrapper::getInstance(); // assign values $template->assign('firstname', $this->getUser()->getFirstName()); $subject = "Payslip " . date('F Y', strtotime($this->getPayroll()->getStartDate())); $save_toinbox = true; $type = "payroll"; $subtype = "payslip_generated"; $viewurl = $template->serverUrl($template->baseUrl('temp/' . $this->getPDFName() . '.pdf')); $message_contents = "<p>This is to confirm that your Payslip for <b>" . date('F Y', strtotime($this->getPayroll()->getStartDate())) . "</b> has been completed and attached.</p>\n\t\t<p>You can also view it online <a href='" . $viewurl . "'>click here<a></p>\n\t\t<br />\n\t\t<p>" . $this->getPayroll()->getCreator()->getName() . "<br />\n\t\t" . getAppName() . "</p>\n\t\t"; $template->assign('contents', $message_contents); $mail->clearRecipients(); $mail->clearSubject(); $mail->setBodyHtml(''); // configure base stuff $mail->addTo($this->getUser()->getEmail(), $this->getUser()->getName()); // set the send of the email address $mail->setFrom(getDefaultAdminEmail(), getDefaultAdminName()); $mail->setSubject($subject); // add attachment $content = file_get_contents($this->getPDFPath()); // e.g. ("attachment/abc.pdf") $attachment = new Zend_Mime_Part($content); $attachment->type = 'application/pdf'; $attachment->disposition = Zend_Mime::DISPOSITION_ATTACHMENT; $attachment->encoding = Zend_Mime::ENCODING_BASE64; $attachment->filename = $this->getPDFName(); // name of file $mail->addAttachment($attachment); // render the view as the body of the email $html = $template->render('default.phtml'); $mail->setBodyHtml($html); // debugMessage($html); // exit(); if ($this->getUser()->allowEmailForPayslip() && !isEmptyString($this->getUser()->getEmail())) { try { $mail->send(); // $session->setVar("custommessage1", "Email sent to ".$this->getUser()->getEmail()); } catch (Exception $e) { debugMessage('Email notification not sent! ' . $e->getMessage()); $session->setVar(ERROR_MESSAGE, 'Email notification not sent! ' . $e->getMessage()); } } $mail->clearRecipients(); $mail->clearSubject(); $mail->setBodyHtml(''); $mail->clearFrom(); if ($save_toinbox) { # save copy of message to user's application inbox $message_dataarray = array("senderid" => DEFAULT_ID, "subject" => $subject, "contents" => $message_contents, "html" => $html, "type" => $type, "subtype" => $subtype, "refid" => $this->getID(), "recipients" => array(md5(1) => array("recipientid" => $this->getUserID()))); // debugMessage($message_dataarray); // process message data $message = new Message(); $message->processPost($message_dataarray); $message->save(); } return true; }
/** * Action to display the Login page */ public function logoutAction() { $this->_helper->layout->disableLayout(); $this->_helper->viewRenderer->setNoRender(TRUE); $session = SessionWrapper::getInstance(); $browser = new Browser(); $audit_values = $session->getVar('browseraudit'); $audit_values['module'] = 1; $audit_values['usecase'] = '1.2'; $audit_values['transactiontype'] = USER_LOGOUT; $audit_values['status'] = "Y"; $audit_values['userid'] = $session->getVar('userid'); $audit_values['transactiondetails'] = "Logout for user with id '" . $session->getVar('username') . "' successful"; // debugMessage($audit_values); $this->notify(new sfEvent($this, USER_LOGIN, $audit_values)); $this->clearSession(); // redirect to the login page $this->_helper->redirector->gotoUrl($this->view->baseUrl("user/login")); }
public static function getId() { if (null === self::$_instance) { self::$_instance = new self(); } return Zend_Session::getId(); }
public static function startSession() { if (self::$sessionStarted) { return; } self::$sessionStarted = true; SessionWrapper::initialize(); // language $_SESSION['lang'] = 'es'; }
/** * Overide to save persons relationships * @return true if saved, false otherwise */ function afterSave() { $session = SessionWrapper::getInstance(); $conn = Doctrine_Manager::connection(); $update = false; # save changes if ($update) { $this->save(); } // find any duplicates and delete them $duplicates = $this->getDuplicates(); if ($duplicates->count() > 0) { $duplicates->delete(); } // exit(); return true; }
function isTimesheetEmployee() { $session = SessionWrapper::getInstance(); $acl = getACLInstance(); return $this->getType() == '2' && ($this->getIsTimesheetuser() == '1' || $this->getIsTimesheetuser() == '2') ? true : false; }
Tools::lang(array('es' => 'Enviar', 'en' => 'Submit')); ?> "/> </div> </form> <?php } else { SessionWrapper::clearFeedback(); if ($_SESSION['lang'] == 'en') { echo '<h3>Your password has been updated.</h3>'; echo '<h3>Now you can <a href="' . Tools::getBaseUrl(true) . '/login/">log in</a>.</h3>'; } else { echo '<h3>Su contraseña ha sido actualizada.</h3>'; echo '<h3>Ahora puede <a href="' . Tools::getBaseUrl(true) . '/login/">iniciar sesión</a>.</h3>'; } } } else { SessionWrapper::clearFeedback(); if ($_SESSION['lang'] == 'en') { echo '<h3>Your password reset code has expired.</h3>'; echo '<h3>Please <a href="' . Tools::getBaseUrl(true) . '/recuperar-cuenta/">request a new one</a>.</h3>'; } else { echo '<h3>El código para reestablecer su contraseña ha expirado.</h3>'; echo '<h3>Por favor <a href="' . Tools::getBaseUrl(true) . '/recuperar-cuenta/">solicite uno nuevo</a>.</h3>'; } } ?> </main> <?php require_once '../footer.php';
public function processrolesAction() { $session = SessionWrapper::getInstance(); $this->_helper->layout->disableLayout(); $this->_helper->viewRenderer->setNoRender(TRUE); $this->_translate = Zend_Registry::get("translate"); $post_array = $this->_getAllParams(); // debugMessage($this->_getAllParams()); exit; $id = $post_array['id']; $post_array['id'] = decode($id); $perms = $post_array['permissions']; unset($post_array['permissions']); if (isEmptyString($id)) { // add new role first $newrole = new AclGroup(); $post_array['createdby'] = $session->getVar('userid'); $newrole->processPost($post_array); // debugMessage($newrole->toArray()); debugMessage('error is '.$newrole->getErrorStackAsString()); $newrole->save(); $post_array['id'] = $newrole->getID(); } else { // update role first $newrole = new AclGroup(); $newrole->populate(decode($id)); $newrole->processPost($post_array); // debugMessage($newrole->toArray()); debugMessage('error is '.$newrole->getErrorStackAsString()); // exit(); $newrole->save(); } // exit; $role = new AclGroup(); $role->populate($post_array['id']); $permissions = $role->getPermissions(); $permissions_array = $permissions->toArray(); $post_array['permissions'] = $perms; // set audit entry before save if (!isArrayKeyAnEmptyString('permissions', $post_array)) { $data = array(); foreach ($post_array['permissions'] as $key => $value) { $data[$key] = $value; $post_array['permissions'][$key]['groupid'] = $post_array['id']; if (isArrayKeyAnEmptyString('flag', $value)) { $post_array['permissions'][$key]['flag'] = 0; } else { $post_array['permissions'][$key]['flag'] = trim(intval($value['flag'])); } if (isArrayKeyAnEmptyString('create', $value)) { $post_array['permissions'][$key]['create'] = 0; } else { $post_array['permissions'][$key]['create'] = trim(intval($value['create'])); } if (isArrayKeyAnEmptyString('edit', $value)) { $post_array['permissions'][$key]['edit'] = 0; } else { $post_array['permissions'][$key]['edit'] = trim(intval($value['edit'])); } if (isArrayKeyAnEmptyString('view', $value)) { $post_array['permissions'][$key]['view'] = 0; } else { $post_array['permissions'][$key]['view'] = trim(intval($value['view'])); } if (isArrayKeyAnEmptyString('list', $value)) { $post_array['permissions'][$key]['list'] = 0; } else { $post_array['permissions'][$key]['list'] = trim(intval($value['list'])); } if (isArrayKeyAnEmptyString('delete', $value)) { $post_array['permissions'][$key]['delete'] = 0; } else { $post_array['permissions'][$key]['delete'] = trim(intval($value['delete'])); } if (isArrayKeyAnEmptyString('approve', $value)) { $post_array['permissions'][$key]['approve'] = 0; } else { $post_array['permissions'][$key]['approve'] = trim(intval($value['approve'])); } if (isArrayKeyAnEmptyString('export', $value)) { $post_array['permissions'][$key]['export'] = 0; } else { $post_array['permissions'][$key]['export'] = trim(intval($value['export'])); } if (isArrayKeyAnEmptyString('id', $value)) { $post_array['permissions'][$key]['id'] = NULL; } $post_array['permissions'][$key]['createdby'] = $session->getVar('userid'); $post_array['permissions'][$key]['datecreated'] = getCurrentMysqlTimestamp(); if (!isArrayKeyAnEmptyString('id', $value)) { $post_array['permissions'][$key]['lastupdatedby'] = $session->getVar('userid'); $post_array['permissions'][$key]['lastupdatedate'] = getCurrentMysqlTimestamp(); } else { $post_array['createdby'] = $session->getVar('userid'); } } // end loop through permissions to unset empty groupids } // debugMessage($post_array); exit(); if (!isEmptyString($id)) { $beforesave = $post_array['permissions']; // debugMessage($beforesave); } $perm_collection = new Doctrine_Collection(Doctrine_Core::getTable("AclPermission")); foreach ($post_array['permissions'] as $key => $value) { $perm = new AclPermission(); if (!isArrayKeyAnEmptyString('id', $value)) { $perm->populate($value['id']); } $perm->processPost($value); if ($perm->isValid()) { $perm_collection->add($perm); } else { debugMessage('Error: ' . $perm->getErrorStackAsString()); exit; } } try { $perm_collection->save(); if (isEmptyString($id)) { # add log to audit trail $url = $this->view->serverUrl($this->view->baseUrl('role/view/id/' . encode($newrole->getID()))); $usecase = '0.4'; $module = '0'; $type = SYSTEM_CREATEROLE; $details = "Role <a href='" . $url . "' class='blockanchor'>" . $newrole->getName() . "</a> created"; } else { $url = $this->view->serverUrl($this->view->baseUrl('role/view/id/' . encode($newrole->getID()))); $usecase = '0.5'; $module = '0'; $type = SYSTEM_UPDATEROLE; $details = "Role <a href='" . $url . "' class='blockanchor'>" . $newrole->getName() . "</a> updated"; $prejson = json_encode($beforesave); $after = $perm_collection->toArray(); debugMessage($after); $postjson = json_encode($post_array); // debugMessage($postjson); // $diff = array_diff($beforesave, $after); // debugMessage($diff); $jsondiff = ''; // debugMessage($jsondiff); } $browser = new Browser(); $audit_values = $session->getVar('browseraudit'); $audit_values['module'] = $module; $audit_values['usecase'] = $usecase; $audit_values['transactiontype'] = $type; $audit_values['status'] = "Y"; $audit_values['userid'] = $session->getVar('userid'); $audit_values['transactiondetails'] = $details; $audit_values['url'] = $url; if (!isEmptyString($id)) { $audit_values['isupdate'] = 1; $audit_values['prejson'] = $prejson; $audit_values['postjson'] = $postjson; $audit_values['jsondiff'] = $jsondiff; } // debugMessage($audit_values); $this->notify(new sfEvent($this, $type, $audit_values)); if (!isEmptyString($this->_getParam(SUCCESS_MESSAGE))) { $session->setVar(SUCCESS_MESSAGE, $this->_translate->translate($this->_getParam(SUCCESS_MESSAGE))); } $this->_helper->redirector->gotoUrl($this->view->baseUrl("role/view/id/" . encode($role->getID()))); } catch (Exception $e) { // debugMessage($perm_collection->toArray()); // debugMessage('error in save. '.$e->getMessage()); $session->setVar(ERROR_MESSAGE, $e->getMessage()); $this->_helper->redirector->gotoUrl(decode($this->_getParam(URL_FAILURE))); } }
function afterSave() { $session = SessionWrapper::getInstance(); # add log to audit trail $view = new Zend_View(); $url = $view->serverUrl($view->baseUrl('role/view/id/' . encode($this->getID()))); $usecase = '0.4'; $module = '0'; $type = SYSTEM_CREATEROLE; $details = "Role <a href='" . $url . "' class='blockanchor'>" . $this->getName() . "</a> created"; $browser = new Browser(); $audit_values = $session->getVar('browseraudit'); $audit_values['module'] = $module; $audit_values['usecase'] = $usecase; $audit_values['transactiontype'] = $type; $audit_values['status'] = "Y"; $audit_values['userid'] = $session->getVar('userid'); $audit_values['transactiondetails'] = $details; $audit_values['url'] = $url; // debugMessage($audit_values); $this->notify(new sfEvent($this, $type, $audit_values)); }
function indexAction() { $session = SessionWrapper::getInstance(); $this->_helper->layout->disableLayout(); $this->_helper->viewRenderer->setNoRender(TRUE); $conn = Doctrine_Manager::connection(); $formvalues = $this->_getAllParams(); $userid = $session->getVar('userid'); $companyid = getCompanyID(); $acl = getACLInstance(); $company_query = ""; $company_query = " u.companyid = '" . $companyid . "' AND "; $q = $formvalues['searchword']; $html = ''; $hasdata = false; // ) # search users if loggedin user has access if ($acl->checkPermission('User Account', ACTION_LIST)) { $query = "SELECT u.id FROM useraccount as u \n\t\t\t\tWHERE " . $company_query . "\n\t\t\t (u.firstname like '%" . $q . "%' or \n\t\t\t\tu.lastname like '%" . $q . "%' or \n\t\t\t\tu.othername like '%" . $q . "%' or \n\t\t\t\tu.displayname like '%" . $q . "%' or \n\t\t\t\tu.email like '%" . $q . "%' or \n\t\t\t\tu.phone like '%" . $q . "%' or \n\t\t\t\tu.username like '%" . $q . "%') \n\t\t\t\tGROUP BY u.id\n\t\t\t\torder by u.displayname asc LIMIT 5 "; // debugMessage($query); $result = $conn->fetchAll($query); $count_results = count($result); // debugMessage($result); if ($count_results > 0) { $hasdata = true; $html .= '<div class="separator"><span>Employees</span> <div class="allresults"><a href="' . $this->view->baseUrl('profile/list/searchterm/' . $q) . '" class="blockanchor">...see more results</a></div> </div><ul>'; foreach ($result as $row) { $user = new UserAccount(); $user->populate($row['id']); $b_q = '<b>' . $q . '</b>'; $name = $user->getDisplayName(); $name = str_ireplace($q, $b_q, $name); $position = getDatavariables('EMPLOYEE_POSITIONS', $user->getPosition(), true); $phone = $user->getPhone(); $phone = str_ireplace($q, $b_q, $phone); $email = $user->getEmail(); $email = str_ireplace($q, $b_q, $email); $media = $user->getMediumPicturePath(); $viewurl = $this->view->baseUrl('profile/view/id/' . encode($row['id'])); $html .= ' <li style="height:auto; min-height:90px;" class="display_box" align="left" url="' . $viewurl . '" theid="' . $row['id'] . '"> <a href="' . $viewurl . '" style="color:#666; text-decoration:none;"> <img class="imagecontainer" src="' . $media . '" style="width:78px; height:auto; float:left; margin-right:6px;" /> <div style="margin-left: 70px;"> <span class="name blocked">' . $name . '</span> <span class="name blocked">' . $position . '</span> <span class="blocked" style="margin-top:5px;">Email: ' . $email . '</span> <span class="blocked">Phone: ' . $phone . '</span> </div> </a> </li>'; } } } # add navigation to searchable parameters $result = array('id' => 1, 'users' => ''); # check no data is available for all areas and return no results message if (!$hasdata) { $html .= ' <li class="display_box" align="center" style="height:30px;"> <span style="width:100%; display:block; text-align:center;">No results for <b>' . $q . '</b></span> </li>'; } $html .= '</ul>'; echo $html; }
<?php require_once __DIR__ . '/../classes/SessionWrapper.php'; require_once __DIR__ . '/../classes/Tools.php'; $return = new stdClass(); $return->status = 'error'; // validate the user if (!SessionWrapper::userIsLoggedIn()) { $return->message = 'Por favor inicie sesión.'; echo json_encode($return); return; } // retrieve the attachment ID $attId = !empty($_GET['id']) ? intval($_GET['id']) : null; if (!$attId) { $return->message = 'No se encontró el archivo.'; echo json_encode($return); return; } // delete attachment if (!Tools::deleteNewsAttachment($attId)) { $return->message = 'El archivo no pudo eliminarse. Por favor intente de nuevo.'; echo json_encode($return); return; } $return->status = 'success'; echo json_encode($return);
function approveAction() { $this->_helper->layout->disableLayout(); $this->_helper->viewRenderer->setNoRender(TRUE); $session = SessionWrapper::getInstance(); $config = Zend_Registry::get("config"); $this->_translate = Zend_Registry::get("translate"); $formvalues = $this->_getAllParams(); debugMessage($formvalues); $id = decode($formvalues['id']); $formvalues['id'] = $id; $successmessage = ""; if (!isArrayKeyAnEmptyString('id', $formvalues)) { if (isArrayKeyAnEmptyString('status', $formvalues)) { $formvalues['status'] = 1; } $ledger = new Ledger(); $ledger->populate($id); if (!isArrayKeyAnEmptyString('reason', $formvalues)) { $ledger->setRemarks($ledger->getRemarks() . "<br/> Rejected with remarks: " . $formvalues['reason']); } $ledger->setDateApproved(DEFAULT_DATETIME); $ledger->setApprovedByID($session->getVar('userid')); $ledger->setStatus($formvalues['status']); // debugMessage($ledger->toArray()); exit(); try { $ledger->save(); $msg = "Successfully Approved"; if ($formvalues['status'] == 4) { $msg = "Successfully Rejected"; } $session->setVar(SUCCESS_MESSAGE, $msg); $ledger->afterApprove(); } catch (Exception $e) { // debugMessage($e->getMessage()); $session->setVar(ERROR_MESSAGE, $e->getMessage()); } } $this->_helper->redirector->gotoUrl(decode($this->_getParam(URL_SUCCESS))); }
function smsstatsAction() { $this->_helper->layout->disableLayout(); $this->_helper->viewRenderer->setNoRender(TRUE); $conn = Doctrine_Manager::connection(); $session = SessionWrapper::getInstance(); $query = "SELECT\n\t\tSUM(IF(UNIX_TIMESTAMP(c.datecreated) >= " . $this->view->onehourago_timestamp . ", c.msgcount, 0)) as onehourago,\n\t\tSUM(IF(UNIX_TIMESTAMP(c.datecreated) >= " . $this->view->sixhourago_timestamp . ", c.msgcount, 0)) as sixhourago,\n\t\tSUM(IF(UNIX_TIMESTAMP(c.datecreated) >= " . $this->view->twelvehourago_timestamp . ", c.msgcount, 0)) as twelvehourago,\n\t\tSUM(IF(TO_DAYS(c.datecreated) = TO_DAYS('" . $this->view->today_iso . "'), c.msgcount, 0)) as today,\n\t\tSUM(IF(TO_DAYS(c.datecreated) = TO_DAYS('" . $this->view->yestday_iso . "'), c.msgcount, 0)) as yesterday,\n\t\tSUM(IF(TO_DAYS(c.datecreated) >= TO_DAYS('" . $this->view->mondaythisweek_iso . "') AND TO_DAYS(c.datecreated) <= TO_DAYS('" . $this->view->sundaythisweek_iso . "'), c.msgcount, 0)) as thisweek,\n\t\tSUM(IF(TO_DAYS(c.datecreated) >= TO_DAYS('" . $this->view->mondaylastweek_iso . "') AND TO_DAYS(c.datecreated) <= TO_DAYS('" . $this->view->sundaylastweek_iso . "'), c.msgcount, 0)) as lastweek ,\n\t\tSUM(IF(TO_DAYS(c.datecreated) >= TO_DAYS('" . $this->view->firstdayofthismonth_iso . "') AND TO_DAYS(c.datecreated) <= TO_DAYS('" . $this->view->lastdayofthismonth_iso . "'), c.msgcount, 0)) as thismonth,\n\t\tSUM(IF(TO_DAYS(c.datecreated) >= TO_DAYS('" . $this->view->firstdayoflastmonth_iso . "') AND TO_DAYS(c.datecreated) <= TO_DAYS('" . $this->view->lastdayoflastmonth_iso . "'), c.msgcount, 0)) as lastmonth,\n\t\tSUM(IF(TO_DAYS(c.datecreated) >= TO_DAYS('" . $this->view->firstdayofyear_iso . "') AND TO_DAYS(c.datecreated) <= TO_DAYS('" . $this->view->lastdayofyear_iso . "'), c.msgcount, 0)) as thisyear,\n\t\tSUM(IF(TO_DAYS(c.datecreated) >= TO_DAYS('" . $this->view->firstsystemday_iso . "') AND TO_DAYS(c.datecreated) <= TO_DAYS('" . $this->view->today_iso . "'), c.msgcount, 0)) as allentries\n\t\tFROM outbox AS c\n\t\twhere c.phone <> '' "; // debugMessage($query); $result = $conn->fetchRow($query); // debugMessage($result); echo json_encode($result); }
function getCompanies($status = '1') { $session = SessionWrapper::getInstance(); $custom_query = ""; if (!isEmptyString($status)) { $custom_query .= " AND c.status = '" . $status . "' "; } $myquery = ""; if ($session->getVar('userid') != 81) { $myquery = " AND c.createdby <> 81 "; } $query = "SELECT c.id as optionvalue, c.name as optiontext FROM company c where (c.id <> '' " . $myquery . ") " . $custom_query . " order by optiontext "; $array = getOptionValuesFromDatabaseQuery($query); return $array; }
function isPublicUser() { $session = SessionWrapper::getInstance(); return isEmptyString($session->getVar('userid')) ? true : false; }
function afterUpdate() { $session = SessionWrapper::getInstance(); # check if user is being invited during update if (!isEmptyString($this->getDefaultUserID()) && isEmptyString($this->getDefaultUser()->getCompanyID())) { $this->getDefaultUser()->setCompanyID($this->getID()); $startdate = DEFAULT_DATETIME; $expirydate = date("Y-m-d", strtotime(date("Y-m-d", strtotime($startdate)) . " +" . getTrialDays() . " days ")); if (isEmptyString($this->getStartDate()) && $this->getID() != DEFAULT_COMPANYID) { $this->setStartDate($startdate); } if (isEmptyString($this->getEndDate()) && $this->getID() != DEFAULT_COMPANYID) { $this->setEndDate($expirydate); } $this->save(); } // invite via email if ($this->getIsBeinginvited() == 1) { $this->getDefaultUser()->inviteViaEmail(); } if ($this->getID() == DEFAULT_ID) { $config_collection = new Doctrine_Collection(Doctrine_Core::getTable("AppConfig")); $appconfig = new AppConfig(); $appconfig->populate(61); $appconfig->setOptionValue($this->getAppName()); $config_collection->add($appconfig); $appconfig = new AppConfig(); $appconfig->populate(62); $appconfig->setOptionValue($this->getName()); $config_collection->add($appconfig); if ($config_collection->count() > 0) { $config_collection->save(); } } return true; }