Exemplo n.º 1
0
 public function addEdit($id)
 {
     //---------------------------------------------------------------------
     //
     //---------------------------------------------------------------------
     if (!bTestForURLHack('showClients')) {
         return;
     }
     $this->load->helper('dl_util/verify_id');
     verifyIDsViaType($this, CENUM_CONTEXT_STATUSCAT, $id, true);
     $id = (int) $id;
     $bNew = $id <= 0;
     $this->load->model('clients/mclient_status', 'clsClientStat');
     $this->clsClientStat->loadClientStatCats(true, true, $id);
     // validation rules
     $this->form_validation->set_error_delimiters('<div class="formError">', '</div>');
     $this->form_validation->set_rules('txtStatCatName', 'Status Category', 'trim|required|' . 'callback_verifyUniqueStatCat[' . $id . ']');
     $this->form_validation->set_rules('txtNotes');
     if ($this->form_validation->run() == FALSE) {
         $displayData = array();
         $displayData['formD'] = new stdClass();
         $this->load->library('generic_form');
         if ($bNew) {
             $this->clsClientStat->loadClientStatCats(true, true, -1);
             $this->clsClientStat->statCats[0]->lKeyID = -1;
             $this->clsClientStat->statCats[0]->strCatName = '';
         }
         if (validation_errors() == '') {
             $displayData['formD']->txtStatCatName = htmlspecialchars($this->clsClientStat->statCats[0]->strCatName);
             $displayData['formD']->txtNotes = htmlspecialchars($this->clsClientStat->statCats[0]->strDescription);
         } else {
             setOnFormError($displayData);
             $displayData['formD']->txtStatCatName = set_value('txtStatCatName');
             $displayData['formD']->txtNotes = set_value('txtNotes');
         }
         //--------------------------
         // breadcrumbs
         //--------------------------
         $displayData['pageTitle'] = anchor('main/menu/admin', 'Admin', 'class="breadcrumb"') . ' | ' . anchor('admin/alists/showLists', 'Lists', 'class="breadcrumb" ') . ' | ' . anchor('admin/admin_special_lists/clients/statCatView', 'Client Status Categories', 'class="breadcrumb" ') . ' | ' . ($bNew ? 'Add new status category' : 'Edit status category');
         $displayData['title'] = CS_PROGNAME . ' | Lists';
         $displayData['nav'] = $this->mnav_brain_jar->navData();
         $displayData['id'] = $id;
         $displayData['bNew'] = $bNew;
         $displayData['statCats'] = $this->clsClientStat->statCats;
         $displayData['mainTemplate'] = 'client/client_status_cat_add_edit';
         $this->load->vars($displayData);
         $this->load->view('template');
     } else {
         $this->clsClientStat->statCats[0]->strCatName = trim($_POST['txtStatCatName']);
         $this->clsClientStat->statCats[0]->strDescription = trim($_POST['txtNotes']);
         if ($id == 0) {
             $id = $this->clsClientStat->addNewClientStatusCat();
             $this->session->set_flashdata('msg', 'Your status category was added');
         } else {
             $this->clsClientStat->updateClientStatusCat($id);
             $this->session->set_flashdata('msg', 'Your status category was updated');
         }
         redirect('admin/admin_special_lists/clients/statCatView');
     }
 }
 function addEditProg($lSPID)
 {
     if (!bTestForURLHack('adminOnly')) {
         return;
     }
     $displayData = array();
     $displayData['lSPID'] = $lSPID = (int) $lSPID;
     $displayData['bNew'] = $bNew = $lSPID <= 0;
     //----------------------------
     // validation rules
     //----------------------------
     $this->form_validation->set_error_delimiters('<div class="formError">', '</div>');
     $this->form_validation->set_rules('txtProg', 'Program Name', 'trim|callback_sponProgBlankTest|callback_sponProgDupTest[' . $lSPID . ']');
     $this->form_validation->set_rules('txtCommit', 'Commitment Amount', 'trim|required|callback_stripCommas|numeric|greater_than[-0.01]');
     $this->form_validation->set_rules('rdoACO', 'Accounting Country', 'trim|callback_sponProgAcctCountry');
     $this->load->model('sponsorship/msponsorship_programs', 'clsSponProg');
     $this->load->model('admin/madmin_aco', 'clsACO');
     $this->clsSponProg->lSPID = $lSPID;
     $this->clsSponProg->loadSponProgsGeneric(true);
     if ($this->form_validation->run() == FALSE) {
         $this->load->library('generic_form');
         if (validation_errors() == '') {
             $displayData['strSponProg'] = htmlspecialchars($this->clsSponProg->sponProgs[0]->strProg);
             $displayData['strACORadio'] = $this->clsACO->strACO_Radios($this->clsSponProg->sponProgs[0]->lACO, 'rdoACO');
             $displayData['curDefMonthlyCommit'] = $this->clsSponProg->sponProgs[0]->curDefMonthlyCommit;
         } else {
             setOnFormError($displayData);
             $displayData['strSponProg'] = set_value('txtProg');
             $displayData['strACORadio'] = $this->clsACO->strACO_Radios(set_value('rdoACO'), 'rdoACO');
             $displayData['curDefMonthlyCommit'] = set_value('txtCommit');
         }
         //----------------------
         // set breadcrumbs
         //----------------------
         $displayData['nav'] = $this->mnav_brain_jar->navData();
         $displayData['title'] = CS_PROGNAME . ' | Groups';
         $displayData['pageTitle'] = anchor('main/menu/admin', 'Admin', 'class="breadcrumb"') . ' | ' . anchor('admin/alists/showLists', 'Lists', 'class="breadcrumb"') . ' | ' . anchor('admin/admin_special_lists/sponsorship_lists/sponProgView', 'Sponsorship Programs', 'class="breadcrumb"') . ' | ' . ($bNew ? 'Add New' : 'Edit');
         $displayData['mainTemplate'] = 'sponsorship/spon_prog_add_edit';
         $this->load->vars($displayData);
         $this->load->view('template');
     } else {
         $this->clsSponProg->sponProgs[0]->bDefault = false;
         $this->clsSponProg->sponProgs[0]->strProg = xss_clean($_POST['txtProg']);
         $this->clsSponProg->sponProgs[0]->strNotes = '';
         $this->clsSponProg->sponProgs[0]->curDefMonthlyCommit = (double) $_POST['txtCommit'];
         $this->clsSponProg->sponProgs[0]->lACO = (int) $_POST['rdoACO'];
         if ($bNew) {
             $id = $this->clsSponProg->addNewSponProgram();
             $this->session->set_flashdata('msg', 'Your sponsorship program was added');
         } else {
             $this->clsSponProg->sponProgs[0]->lKeyID = $lSPID;
             $this->clsSponProg->updateSponProgram();
             $this->session->set_flashdata('msg', 'Your sponsorship program was updated');
         }
         redirect('admin/admin_special_lists/sponsorship_lists/sponProgView');
     }
 }
 function searchOpts($strViaAvailRpt = 'false')
 {
     //------------------------------------------------------------------------------
     //
     //------------------------------------------------------------------------------
     if (!bTestForURLHack('showClients')) {
         return;
     }
     $displayData = array();
     $displayData['bViaAvailRpt'] = $bViaAvailRpt = $strViaAvailRpt == 'true';
     //--------------------------------------------
     // models/helpers
     //--------------------------------------------
     $this->load->library('Generic_form');
     $this->load->helper('dl_util/web_layout');
     $this->load->model('sponsorship/msponsorship_programs', 'clsSponProg');
     $displayData['strSponProgDDL'] = $this->clsSponProg->strSponProgramDDL(-1);
     //--------------------------
     // validation rules
     //--------------------------
     $this->form_validation->set_error_delimiters('<div class="formError">', '</div>');
     if (!$bViaAvailRpt) {
         $this->form_validation->set_rules('txtSearch1', 'Client ID', 'trim|required|greater_than[0]');
         $this->form_validation->set_rules('txtSearch2', 'Search', 'trim|required');
         for ($idx = 1; $idx <= 2; ++$idx) {
             $displayData['formErr'][$idx] = '';
         }
     }
     if ($this->form_validation->run() == FALSE) {
         if (validation_errors() == '') {
         } else {
             setOnFormError($displayData);
             $lSearchIDX = (int) $_POST['searchIdx'];
             if (form_error('txtSearch' . $lSearchIDX) == '') {
                 $this->runSearchSetup($lSearchIDX);
             } else {
                 $displayData['formErr'][$lSearchIDX] = form_error('txtSearch' . $lSearchIDX);
             }
         }
         //--------------------------
         // breadcrumbs
         //--------------------------
         if ($bViaAvailRpt) {
             $displayData['pageTitle'] = anchor('main/menu/reports', 'Reports', 'class="breadcrumb"') . ' | Client Available for Sponsorship';
         } else {
             $displayData['pageTitle'] = anchor('main/menu/client', 'Clients', 'class="breadcrumb"') . ' | Client Search';
         }
         $displayData['title'] = CS_PROGNAME . ' | Clients';
         $displayData['nav'] = $this->mnav_brain_jar->navData();
         $displayData['mainTemplate'] = 'client/search_opts';
         $this->load->vars($displayData);
         $this->load->view('template');
     } else {
         $this->runSearchSetup((int) $_POST['searchIdx']);
     }
 }
 function daOpts()
 {
     //---------------------------------------------------------------------
     //
     //---------------------------------------------------------------------
     global $gdteNow, $gbDateFormatUS, $glChapterID;
     $displayData = array();
     $displayData['js'] = '';
     //------------------------------------------------
     // models, libraries and utilities
     //------------------------------------------------
     $this->load->helper('dl_util/web_layout');
     $this->load->library('generic_form');
     $this->load->helper('dl_util/time_date');
     // time frame support
     $this->load->helper('reports/date_range_def');
     $this->load->helper('reports/date_range');
     $this->load->library('js_build/java_joe_radio');
     $this->load->model('util/mserial_objects', 'cSO');
     $displayData['js'] .= $this->java_joe_radio->insertJavaJoeRadio() . $this->java_joe_radio->insertSetDateRadio();
     tf_initDateRangeMenu($displayData['viewOpts']);
     $this->initViewOpts($displayData['viewOpts']);
     // validation rules
     $this->setValidationRules($displayData['viewOpts']);
     if ($this->form_validation->run() == FALSE) {
         $displayData['frmLink'] = 'reports/pre_data_entry/daOpts';
         $this->load->library('generic_form');
         $displayData['viewOpts']->blockLabel = 'Data Entry Log';
         if (validation_errors() == '') {
             $displayData['strRdoSrc'] = 'client';
             $displayData['strRdoGroup'] = 'individual';
             $this->setInitialRptVal($displayData['viewOpts'], $displayData['formData']);
         } else {
             setOnFormError($displayData);
             $this->setErrRptVal($displayData['viewOpts'], $displayData['formData']);
             $displayData['strRdoSrc'] = set_value('rdoSrc');
             $displayData['strRdoGroup'] = set_value('rdoGroup');
             // time frame support
             $this->de_setDEOptsOnFormError($displayData['viewOpts']);
         }
         // time frame support
         $displayData['dateRanges'] = $strRange = tf_strDateRangeMenu($displayData['viewOpts']);
         //--------------------------
         // breadcrumbs
         //--------------------------
         $displayData['pageTitle'] = anchor('main/menu/reports', 'Reports', 'class="breadcrumb"') . ' | Data Entry Log';
         $displayData['title'] = CS_PROGNAME . ' | Reports';
         $displayData['nav'] = $this->mnav_brain_jar->navData();
         $displayData['mainTemplate'] = 'reports/pre_data_entry_view';
         $this->load->vars($displayData);
         $this->load->view('template');
     } else {
         $reportID = $this->strDataEntryLogRpt($displayData['viewOpts'], CENUM_REPORTNAME_DATAENTRYLOG);
         redirect('reports/pre_data_entry/run/' . $reportID);
     }
 }
Exemplo n.º 5
0
 function searchOpts()
 {
     //------------------------------------------------------------------------------
     //
     //------------------------------------------------------------------------------
     $displayData = array();
     $displayData['formData'] = new stdClass();
     //--------------------------------------------
     // models/helpers
     //--------------------------------------------
     $this->load->library('Generic_form');
     $this->load->helper('dl_util/web_layout');
     $this->load->model('util/mlist_generic', 'clsList');
     $this->clsList->enumListType = 'bizCat';
     //--------------------------
     // validation rules
     //--------------------------
     $this->form_validation->set_error_delimiters('<div class="formError">', '</div>');
     $this->form_validation->set_rules('txtSearch1', 'Business ID', 'trim|required|greater_than[0]');
     $this->form_validation->set_rules('txtSearch2', 'Search', 'trim|required');
     $this->form_validation->set_rules('ddlBizCat', 'Business Category', 'trim|required');
     for ($idx = 1; $idx <= 3; ++$idx) {
         $displayData['formErr'][$idx] = '';
     }
     $displayData['formData']->strBizList = $this->clsList->strLoadListDDL('ddlBizCat', true, -1);
     if ($this->form_validation->run() == FALSE) {
         if (validation_errors() == '') {
         } else {
             setOnFormError($displayData);
             $lSearchIDX = (int) $_POST['searchIdx'];
             // test for special searches
             if ($lSearchIDX == 3) {
             } else {
                 if (form_error('txtSearch' . $lSearchIDX) == '') {
                     $this->runSearchSetup($lSearchIDX);
                 } else {
                     $displayData['formErr'][$lSearchIDX] = form_error('txtSearch' . $lSearchIDX);
                 }
             }
         }
         //--------------------------
         // breadcrumbs
         //--------------------------
         $displayData['pageTitle'] = anchor('main/menu/biz', 'Businesses/Organizations', 'class="breadcrumb"') . ' | Business Search';
         $displayData['title'] = CS_PROGNAME . ' | People';
         $displayData['nav'] = $this->mnav_brain_jar->navData();
         $displayData['mainTemplate'] = 'biz/search_opts_view';
         $this->load->vars($displayData);
         $this->load->view('template');
     } else {
         $this->runSearchSetup((int) $_POST['searchIdx']);
     }
 }
 function searchOpts()
 {
     //------------------------------------------------------------------------------
     //
     //------------------------------------------------------------------------------
     $displayData = array();
     //--------------------------------------------
     // models/helpers
     //--------------------------------------------
     $this->load->library('Generic_form');
     $this->load->helper('dl_util/web_layout');
     //--------------------------
     // validation rules
     //--------------------------
     $this->form_validation->set_error_delimiters('<div class="formError">', '</div>');
     $this->form_validation->set_rules('txtSearch1', 'People ID', 'trim|required|greater_than[0]');
     $this->form_validation->set_rules('txtSearch2', 'Search', 'trim|required');
     $this->form_validation->set_rules('txtSearch3', 'Search', 'trim|required');
     $this->form_validation->set_rules('txtSearch4', 'Search', 'trim|required');
     $this->form_validation->set_rules('txtSearch5', 'Search', 'trim|required');
     $this->form_validation->set_rules('txtSearch6', 'Search', 'trim|required');
     $this->form_validation->set_rules('txtSearch7', 'Search', 'trim|required');
     for ($idx = 1; $idx <= 7; ++$idx) {
         $displayData['formErr'][$idx] = '';
     }
     if ($this->form_validation->run() == FALSE) {
         if (validation_errors() == '') {
         } else {
             setOnFormError($displayData);
             $lSearchIDX = (int) $_POST['searchIdx'];
             if (form_error('txtSearch' . $lSearchIDX) == '') {
                 $this->runSearchSetup($lSearchIDX);
             } else {
                 $displayData['formErr'][$lSearchIDX] = form_error('txtSearch' . $lSearchIDX);
             }
         }
         //--------------------------
         // breadcrumbs
         //--------------------------
         $displayData['pageTitle'] = anchor('main/menu/people', 'People', 'class="breadcrumb"') . ' | People Search';
         $displayData['title'] = CS_PROGNAME . ' | People';
         $displayData['nav'] = $this->mnav_brain_jar->navData();
         $displayData['mainTemplate'] = 'people/search_opts_view';
         $this->load->vars($displayData);
         $this->load->view('template');
     } else {
         $this->runSearchSetup((int) $_POST['searchIdx']);
     }
 }
Exemplo n.º 7
0
 function pw()
 {
     //---------------------------------------------------------------------
     //
     //---------------------------------------------------------------------
     global $glUserID, $gbVolLogin;
     $displayData = array();
     $this->load->model('admin/muser_accts', 'clsUser');
     $this->load->helper('dl_util/web_layout');
     $this->load->library('generic_form');
     //--------------------------
     // validation rules
     //--------------------------
     $this->form_validation->set_error_delimiters('<div class="formError">', '</div>');
     $this->form_validation->set_rules('txtPWord', 'Current Password', 'trim|required|callback_verifyGoodPW');
     $this->form_validation->set_rules('txtPWord1', 'Password', 'trim|required|callback_verifyPWordMatch');
     $this->form_validation->set_rules('txtPWord2', 'Password (again)', 'trim');
     if ($this->form_validation->run() == FALSE) {
         if (validation_errors() == '') {
         } else {
             setOnFormError($displayData);
         }
         //--------------------------
         // breadcrumbs
         //--------------------------
         if ($gbVolLogin) {
             $displayData['pageTitle'] = 'Change Password';
         } else {
             $displayData['pageTitle'] = anchor('main/menu/more', 'More', 'class="breadcrumb"') . ' | Change Password';
         }
         $displayData['title'] = CS_PROGNAME . ' | More';
         $displayData['nav'] = $this->mnav_brain_jar->navData();
         $displayData['mainTemplate'] = 'more/change_password_view';
         $this->load->vars($displayData);
         $this->load->view('template');
     } else {
         $strPWord = trim($_POST['txtPWord1']);
         $this->clsUser->changePWord($glUserID, $strPWord);
         $this->session->set_flashdata('msg', 'Your password was changed.');
         if ($gbVolLogin) {
             redirect_VolLoginGeneric();
         } else {
             redirect_userAcct();
         }
     }
 }
Exemplo n.º 8
0
 function opts()
 {
     //---------------------------------------------------------------------
     //
     //---------------------------------------------------------------------
     global $gdteNow;
     if (!bTestForURLHack('volMgr')) {
         return;
     }
     $displayData = array();
     $displayData['js'] = '';
     //------------------------------------------------
     // libraries and utilities
     //------------------------------------------------
     $this->load->helper('dl_util/web_layout');
     $this->load->helper('dl_util/time_date');
     $this->load->helper('js/jq_month_picker');
     // validation rules
     $this->form_validation->set_error_delimiters('<div class="formError">', '</div>');
     $this->form_validation->set_rules('txtMonth', 'Report starting month', 'trim|required|callback_eventsStartMonth');
     $this->form_validation->set_rules('ddlDuration', '# of months', 'trim');
     if ($this->form_validation->run() == FALSE) {
         $this->load->library('generic_form');
         if (validation_errors() == '') {
             $displayData['txtMonth'] = date('m/Y', $gdteNow);
         } else {
             setOnFormError($displayData);
             $displayData['txtMonth'] = set_value('txtMonth');
         }
         //------------------------------------------------
         // breadcrumbs / page setup
         //------------------------------------------------
         $displayData['js'] .= strMonthPicker(true);
         $displayData['mainTemplate'] = 'hospice/reports/monthly_options_view';
         $displayData['pageTitle'] = 'Monthly Volunteer Report Options';
         $displayData['title'] = CS_PROGNAME . ' | Reports';
         $displayData['nav'] = $this->mnav_brain_jar->navData();
         $this->load->vars($displayData);
         $this->load->view('template');
     } else {
         $moYr = explode('/', $_POST['txtMonth']);
         $lMonth = (int) $moYr[0];
         $lYear = (int) $moYr[1];
         redirect('hospice/reports/monthly/runMonthlyReport/' . $lMonth . '/' . $lYear);
     }
 }
Exemplo n.º 9
0
 function viewEventsCalendar()
 {
     //---------------------------------------------------------------------
     //
     //---------------------------------------------------------------------
     global $gdteNow;
     $displayData = array();
     $displayData['js'] = '';
     //------------------------------------------------
     // libraries and utilities
     //------------------------------------------------
     $this->load->helper('dl_util/web_layout');
     $this->load->helper('dl_util/time_date');
     $this->load->helper('js/jq_month_picker');
     // validation rules
     $this->form_validation->set_error_delimiters('<div class="formError">', '</div>');
     $this->form_validation->set_rules('txtMonth', 'Report starting month', 'trim|required|callback_eventsStartMonth');
     $this->form_validation->set_rules('ddlDuration', '# of months', 'trim');
     if ($this->form_validation->run() == FALSE) {
         $this->load->library('generic_form');
         if (validation_errors() == '') {
             $displayData['txtMonth'] = date('m/Y', $gdteNow);
             $displayData['lDuration'] = 3;
         } else {
             setOnFormError($displayData);
             $displayData['txtMonth'] = set_value('txtMonth');
             $displayData['lDuration'] = (int) set_value('ddlDuration');
         }
         //------------------------------------------------
         // breadcrumbs / page setup
         //------------------------------------------------
         $displayData['js'] .= strMonthPicker(true);
         $displayData['mainTemplate'] = 'vols/event_cal_view';
         $displayData['pageTitle'] = anchor('main/menu/vols', 'Volunteers', 'class="breadcrumb"') . ' | Event Calendar';
         $displayData['title'] = CS_PROGNAME . ' | Volunteers | Events Calendar';
         $displayData['nav'] = $this->mnav_brain_jar->navData();
         $this->load->vars($displayData);
         $this->load->view('template');
     } else {
         $moYr = explode('/', $_POST['txtMonth']);
         $lMonth = (int) $moYr[0];
         $lYear = (int) $moYr[1];
         $this->eventCal((int) $_POST['ddlDuration'], $lMonth, $lYear);
     }
 }
Exemplo n.º 10
0
 public function opts()
 {
     //---------------------------------------------------------------------
     //
     //---------------------------------------------------------------------
     if (!bTestForURLHack('showClients')) {
         return;
     }
     // models and helpers
     $this->load->helper('dl_util/web_layout');
     $this->load->library('util/dl_date_time', '', 'clsDateTime');
     $this->load->model('clients/mclients', 'clsClients');
     // validation rules
     $this->form_validation->set_error_delimiters('<div class="formError">', '</div>');
     $this->form_validation->set_rules('txtGoodCID', '"Correct" Client ID', 'trim|required|callback_verifyGoodCID');
     $this->form_validation->set_rules('txtBadCIDs', 'Duplicate Client IDs', 'trim|required|callback_verifyDupCID');
     if ($this->form_validation->run() == FALSE) {
         $displayData['formData'] = new stdClass();
         $this->load->library('generic_form');
         if (validation_errors() == '') {
             $displayData['formData']->txtGoodCID = '';
             $displayData['formData']->txtBadCIDs = '';
         } else {
             setOnFormError($displayData);
             $displayData['formData']->txtGoodCID = set_value('txtGoodCID');
             $displayData['formData']->txtBadCIDs = set_value('txtBadCIDs');
         }
         //--------------------------
         // breadcrumbs
         //--------------------------
         $displayData['pageTitle'] = anchor('main/menu/client', 'Clients', 'class="breadcrumb"') . ' | Client Duplicates';
         $displayData['title'] = CS_PROGNAME . ' | Clients';
         $displayData['nav'] = $this->mnav_brain_jar->navData();
         $displayData['mainTemplate'] = 'client/client_dup_opts_view';
         $this->load->vars($displayData);
         $this->load->view('template');
     } else {
         $reportID = $this->strClientDupRpt();
         redirect('clients/client_dups/review/' . $reportID);
     }
 }
 function deactivate($lSponID)
 {
     //---------------------------------------------------------------------
     //
     //---------------------------------------------------------------------
     global $gstrFormatDatePicker, $gdteNow, $gbDateFormatUS;
     if (!bTestForURLHack('showSponsors')) {
         return;
     }
     $this->load->helper('dl_util/verify_id');
     verifyID($this, $lSponID, 'sponsor ID');
     $displayData = array();
     $displayData['formData'] = new stdClass();
     $displayData['lSponID'] = $lSponID = (int) $lSponID;
     //-------------------------
     // models & helpers
     //-------------------------
     $this->load->helper('dl_util/time_date');
     // for date verification
     $params = array('enumStyle' => 'terse');
     $this->load->library('generic_rpt', $params);
     $this->load->model('sponsorship/msponsorship', 'clsSpon');
     $this->load->model('admin/madmin_aco', 'clsACO');
     $this->load->helper('dl_util/web_layout');
     $this->load->library('util/dl_date_time', '', 'clsDateTime');
     $this->clsSpon->sponsorInfoViaID($lSponID);
     //-------------------------
     // validation rules
     //-------------------------
     $this->form_validation->set_error_delimiters('<div class="formError">', '</div>');
     $this->form_validation->set_rules('ddlTermReason', 'Termination reason', 'trim|callback_sponDeactivateTermType');
     $this->form_validation->set_rules('txtDate', 'My date', 'trim|required' . '|callback_sponDeactivateDateValid');
     if ($this->form_validation->run() == FALSE) {
         $this->load->library('generic_form');
         $displayData['clsForm'] =& $this->generic_form;
         $this->load->model('util/mlist_generic', 'clsList');
         $this->clsList->enumListType = CENUM_LISTTYPE_SPONTERMCAT;
         // first time displayed, no user data entry errors
         if (validation_errors() == '') {
             $displayData['txtDate'] = date($gstrFormatDatePicker, $gdteNow);
             $displayData['strTermList'] = $this->clsList->strLoadListDDL('ddlTermReason', true, -1);
         } else {
             setOnFormError($displayData);
             $displayData['formData']->txtField1 = set_value('txtField1');
             $displayData['txtDate'] = set_value('txtDate');
             $displayData['strTermList'] = $this->clsList->strLoadListDDL('ddlTermReason', true, set_value('ddlTermReason'));
         }
         //--------------------------
         // breadcrumbs
         //--------------------------
         $displayData['contextSummary'] = $this->clsSpon->sponsorshipHTMLSummary();
         $displayData['pageTitle'] = anchor('main/menu/sponsorship', 'Sponsorship', 'class="breadcrumb"') . ' | ' . anchor('sponsors/view_spon_rec/viewViaSponID/' . $lSponID, 'Sponsorship Record', 'class="breadcrumb"') . ' |  Terminate Sponsorship';
         $displayData['title'] = CS_PROGNAME . ' | Sponsorship';
         $displayData['nav'] = $this->mnav_brain_jar->navData();
         $displayData['mainTemplate'] = 'sponsorship/deactivate_view';
         $this->load->vars($displayData);
         $this->load->view('template');
     } else {
         $lDeactivateReason = (int) trim($_POST['ddlTermReason']);
         $strDate = trim($_POST['txtDate']);
         MDY_ViaUserForm($strDate, $lMon, $lDay, $lYear, $gbDateFormatUS);
         $dteDeactivate = strtotime($lMon . '/' . $lDay . '/' . $lYear);
         $this->clsSpon->inactivateSponsorship($lSponID, $dteDeactivate, $lDeactivateReason);
         $this->session->set_flashdata('msg', 'The sponsorship was deactivated.');
         redirect_SponsorshipRecord($lSponID);
     }
 }
 function addEditTST($lTSTID)
 {
     //---------------------------------------------------------------------
     //
     //---------------------------------------------------------------------
     if (!bAllowAccess('adminOnly')) {
         return;
     }
     $displayData = array();
     $displayData['js'] = '';
     $displayData['lTSTID'] = $lTSTID = (int) $lTSTID;
     $displayData['bNew'] = $bNew = $lTSTID <= 0;
     //-------------------------
     // models & helpers
     //-------------------------
     $this->load->helper('staff/link_staff');
     $this->load->helper('dl_util/web_layout');
     $this->load->model('staff/mtime_sheets', 'cts');
     $this->load->helper('staff/timesheet');
     if ($bNew) {
         $tst = new stdClass();
     } else {
         $this->cts->loadTimeSheetTemplateViaTSTID($lTSTID);
         $displayData['tst'] = $tst =& $this->cts->timeSheetTemplates[0];
     }
     //-------------------------
     // validation rules
     //-------------------------
     $this->form_validation->set_error_delimiters('<div class="formError">', '</div>');
     $this->form_validation->set_rules('txtTemplateName', 'Template Name', 'trim|required|callback_verifyUniqueTemplate[' . $lTSTID . ']');
     if ($bNew) {
         $this->form_validation->set_rules('ddlTP', 'Time Period', 'callback_verifyDDLSet');
         $this->form_validation->set_rules('ddlStart', 'Starting Day of Week', 'callback_verifyStartDOW');
     }
     $this->form_validation->set_rules('ddlTimeGrain', 'Time Granularity', 'callback_verifyDDLSet');
     $this->form_validation->set_rules('chk24Hour', '24-Hour Format', '');
     $this->form_validation->set_rules('chkHidden', 'Hidden', '');
     $this->form_validation->set_rules('txtNotes', 'Notes', 'trim');
     $this->form_validation->set_rules('txtAck', 'Acknowledgement Text', 'trim');
     if ($this->form_validation->run() == FALSE) {
         $displayData['formData'] = new stdClass();
         $this->load->library('generic_form');
         // first time displayed, no user data entry errors
         if (validation_errors() == '') {
             if ($bNew) {
                 $displayData['formData']->txtTemplateName = '';
                 $displayData['formData']->txtNotes = '';
                 $displayData['formData']->txtAck = '';
                 $displayData['formData']->b24HrTime = false;
                 $displayData['formData']->strTimePeriodDDL = ts_util\strTimePeriodDDL('ddlTP', true, -1);
                 $displayData['formData']->strStartSOWDDL = ts_util\strDaysOfWeekDDL('ddlStart', true, -1);
                 $displayData['formData']->strTimeGrainDDL = ts_util\strTimeGrainularityDDL('ddlTimeGrain', true, -1);
             } else {
                 $displayData['formData']->txtTemplateName = $tst->strTSName;
                 $displayData['formData']->txtNotes = $tst->strNotes;
                 $displayData['formData']->txtAck = $tst->strAckText;
                 $displayData['formData']->b24HrTime = $tst->b24HrTime;
                 $displayData['formData']->bHidden = $tst->bHidden;
                 $displayData['formData']->strTimePeriodDDL = ts_util\strTimePeriodDDL('ddlTP', true, $tst->enumRptPeriod);
                 $displayData['formData']->strStartSOWDDL = ts_util\strDaysOfWeekDDL('ddlStart', true, $tst->lFirstDayOfWeek);
                 $displayData['formData']->strTimeGrainDDL = ts_util\strTimeGrainularityDDL('ddlTimeGrain', true, (int) $tst->enumGranularity);
             }
         } else {
             setOnFormError($displayData);
             $displayData['formData']->txtTemplateName = set_value('txtTemplateName');
             $displayData['formData']->txtNotes = set_value('txtNotes');
             $displayData['formData']->txtAck = set_value('txtAck');
             $displayData['formData']->b24HrTime = set_value('chk24Hour') == 'true';
             $displayData['formData']->bHidden = set_value('chkHidden') == 'true';
             $displayData['formData']->strTimePeriodDDL = ts_util\strTimePeriodDDL('ddlTP', true, @$_POST['ddlTP']);
             $displayData['formData']->strStartSOWDDL = ts_util\strDaysOfWeekDDL('ddlStart', true, (int) @$_POST['ddlStart']);
             $displayData['formData']->strTimeGrainDDL = ts_util\strTimeGrainularityDDL('ddlTimeGrain', true, (int) @$_POST['ddlTimeGrain']);
         }
         //--------------------------
         // breadcrumbs
         //--------------------------
         $displayData['pageTitle'] = anchor('main/menu/admin', 'Admin', 'class="breadcrumb"') . ' | ' . anchor('admin/timesheets/view_tst_record/viewTSTList', 'Staff Time Sheet Templates', 'class="breadcrumb"') . ' | ' . ($bNew ? 'Add New' : 'Edit') . ' Time Sheet Template';
         $displayData['title'] = CS_PROGNAME . ' | Admin';
         $displayData['nav'] = $this->mnav_brain_jar->navData();
         $displayData['mainTemplate'] = 'admin/staff_tst_add_edit_view';
         $this->load->vars($displayData);
         $this->load->view('template');
     } else {
         $this->cts->timeSheetTemplates = array();
         $this->cts->timeSheetTemplates[0] = new stdClass();
         $outTst =& $this->cts->timeSheetTemplates[0];
         $outTst->strTSName = trim($_POST['txtTemplateName']);
         if ($bNew) {
             $outTst->enumRptPeriod = trim($_POST['ddlTP']);
             $outTst->lFirstDayOfWeek = (int) trim($_POST['ddlStart']);
         } else {
             $outTst->enumRptPeriod = $tst->enumRptPeriod;
             $outTst->lFirstDayOfWeek = $tst->lFirstDayOfWeek;
         }
         $outTst->enumGranularity = (int) trim($_POST['ddlTimeGrain']);
         $outTst->b24HrTime = trim(@$_POST['chk24Hour']) == 'true';
         $outTst->bHidden = trim(@$_POST['chkHidden']) == 'true';
         $outTst->strNotes = trim($_POST['txtNotes']);
         $outTst->strAckText = trim($_POST['txtAck']);
         //------------------------------------
         // update db tables and return
         //------------------------------------
         if ($bNew) {
             $lTSTID = $this->cts->addTimeSheetTemplate();
             $this->session->set_flashdata('msg', 'Time Sheet Template added');
         } else {
             $this->cts->updateTimeSheetTemplate($lTSTID);
             $this->session->set_flashdata('msg', 'Time Sheet Template updated');
         }
         redirect('admin/timesheets/view_tst_record/viewTSTRecord/' . $lTSTID);
     }
 }
 function addEditEvent($lEventID)
 {
     //---------------------------------------------------------------------
     //
     //---------------------------------------------------------------------
     global $gdteNow, $gbDateFormatUS;
     if (!bTestForURLHack('editPeopleBizVol')) {
         return;
     }
     $this->load->helper('dl_util/verify_id');
     if ($lEventID . '' != '0') {
         verifyID($this, $lEventID, 'event ID');
     }
     $displayData = array();
     $displayData['formData'] = new stdClass();
     $displayData['lEventID'] = $lEventID = (int) $lEventID;
     $displayData['bNew'] = $bNew = $lEventID <= 0;
     $displayData['js'] = '';
     /*
     			//-------------------------------
     			// javascript verification
     			//-------------------------------
     		$this->load->library('js_build/js_verify');
     		$this->load->helper('js/verify_vol_event');
     		$this->load->helper('js/verify_recurring');
     		$this->load->helper('dl_util/page_title');
     		$this->js_verify = new js_verify;
     		$this->js_verify->clearEmbedOpts();
     		$this->js_verify->bShow_isValidDate		  =
     		$this->js_verify->bShow_bVerifyString	  =
     		$this->js_verify->bShow_bVerifyRadio	  =
     		$this->js_verify->bShow_strRadioSelValue =
     		$this->js_verify->bShow_trim				  = true;
     		$displayData['js'] .= $this->js_verify->loadJavaVerify();
     		$displayData['js'] .= volEventVerify();
     		$displayData['js'] .= verifyRecurring();
     */
     //-------------------------
     // models & helpers
     //-------------------------
     $this->load->helper('dl_util/time_date');
     // for date verification
     $this->load->library('generic_form');
     $clsForm = new generic_form();
     // note - this form uses javascript verification due to the recurring options
     // (may be replaced by CI verification in the future)
     $this->load->model('vols/mvol_events', 'clsVolEvents');
     $this->load->model('vols/mvol_event_dates', 'clsVolEventDates');
     $this->load->model('util/mrecurring', 'clsRecurring');
     $this->load->helper('dl_util/recurring');
     $this->load->helper('dl_util/web_layout');
     $this->load->library('js_build/java_joe_radio');
     $clsJJR = new java_joe_radio();
     //-------------------------
     // validation rules
     //-------------------------
     $this->form_validation->set_error_delimiters('<div class="formError">', '</div>');
     $this->form_validation->set_rules('txtEvent', 'Event Name', 'trim|required');
     $this->form_validation->set_rules('txtNote', 'Decscription', 'trim');
     $this->form_validation->set_rules('txtLocation', 'Location', 'trim');
     $this->form_validation->set_rules('txtContact', 'Contact', 'trim');
     $this->form_validation->set_rules('txtPhone', 'Phone', 'trim');
     $this->form_validation->set_rules('txtEmail', 'EMail', 'trim|valid_email');
     $this->form_validation->set_rules('txtWebLink', 'Web Site', 'trim');
     if ($bNew) {
         $this->form_validation->set_rules('txtStart', 'Starting Date', 'trim|required|callback_verifyRecurring');
     }
     $this->clsVolEvents->loadEventsViaEID($lEventID);
     $event = $this->clsVolEvents->events[0];
     if ($this->form_validation->run() == FALSE) {
         $displayData['formData'] = new stdClass();
         $this->load->library('generic_form');
         $displayData['clsForm'] =& $clsForm;
         $displayData['strForm'] = $strForm = 'frmEditVolEvent';
         // first time displayed, no user data entry errors
         if (validation_errors() == '') {
             $displayData['formData']->strEventName = htmlspecialchars($event->strEventName);
             $displayData['formData']->strDescription = htmlspecialchars($event->strDescription);
             $displayData['formData']->strLocation = htmlspecialchars($event->strLocation);
             $displayData['formData']->strContact = htmlspecialchars($event->strContact);
             $displayData['formData']->strPhone = htmlspecialchars($event->strPhone);
             $displayData['formData']->strEmail = htmlspecialchars($event->strEmail);
             $displayData['formData']->strWebSite = htmlspecialchars($event->strWebSite);
             if ($bNew) {
                 $strDate = strNumericDateViaUTS($gdteNow, $gbDateFormatUS);
                 $selects = null;
                 $displayData['recurringOpts'] = strRecurringOpts($displayData, $clsForm, $selects, $strForm, $clsJJR, $strDate, $this->clsRecurring, 'txtStart', 'Event on', 'Event Schedule', 'Event on');
             }
         } else {
             setOnFormError($displayData);
             $strDate = set_value('txtStart');
             $displayData['formData']->strEventName = set_value('txtEvent');
             $displayData['formData']->strDescription = set_value('txtNote');
             $displayData['formData']->strLocation = set_value('txtLocation');
             $displayData['formData']->strContact = set_value('txtContact');
             $displayData['formData']->strPhone = set_value('txtPhone');
             $displayData['formData']->strEmail = set_value('txtEmail');
             $displayData['formData']->strWebSite = set_value('txtWebLink');
             if ($bNew) {
                 $selects = new stdClass();
                 $selects->lNumRecur = (int) $_POST['ddlRecur'];
                 $selects->rdoRecur = @$_POST['rdoRecur'];
                 $selects->rdoFixedLoose = @$_POST['rdoFixedLoose'];
                 $selects->chkWkSun = @$_POST['chkWkSun'] == 'TRUE';
                 $selects->chkWkMon = @$_POST['chkWkMon'] == 'TRUE';
                 $selects->chkWkTue = @$_POST['chkWkTue'] == 'TRUE';
                 $selects->chkWkWed = @$_POST['chkWkWed'] == 'TRUE';
                 $selects->chkWkThu = @$_POST['chkWkThu'] == 'TRUE';
                 $selects->chkWkFri = @$_POST['chkWkFri'] == 'TRUE';
                 $selects->chkWkSat = @$_POST['chkWkSat'] == 'TRUE';
                 $selects->chkWeekDaysOnly = @$_POST['chkWeekDaysOnly'] == 'TRUE';
                 $selects->chkFixed = array();
                 for ($idx = 1; $idx <= 31; ++$idx) {
                     $selects->chkFixed[$idx] = @$_POST['chkFixed' . $idx] == 'on';
                 }
                 $selects->chkRel_1st = @$_POST['chkRel_1st'] == 'TRUE';
                 $selects->chkRel_2nd = @$_POST['chkRel_2nd'] == 'TRUE';
                 $selects->chkRel_3rd = @$_POST['chkRel_3rd'] == 'TRUE';
                 $selects->chkRel_4th = @$_POST['chkRel_4th'] == 'TRUE';
                 $selects->chkRel_5th = @$_POST['chkRel_5th'] == 'TRUE';
                 $selects->chkRel_last = @$_POST['chkRel_last'] == 'TRUE';
                 $selects->chkRelSun = @$_POST['chkRelSun'] == 'on';
                 $selects->chkRelMon = @$_POST['chkRelMon'] == 'on';
                 $selects->chkRelTue = @$_POST['chkRelTue'] == 'on';
                 $selects->chkRelWed = @$_POST['chkRelWed'] == 'on';
                 $selects->chkRelThu = @$_POST['chkRelThu'] == 'on';
                 $selects->chkRelFri = @$_POST['chkRelFri'] == 'on';
                 $selects->chkRelSat = @$_POST['chkRelSat'] == 'on';
                 $displayData['recurringOpts'] = strRecurringOpts($displayData, $clsForm, $selects, $strForm, $clsJJR, $strDate, $this->clsRecurring, 'txtStart', 'Event on', 'Event Schedule', 'Event on');
             }
         }
         //--------------------------
         // breadcrumbs
         //--------------------------
         $displayData['pageTitle'] = anchor('main/menu/vols', 'Volunteers', 'class="breadcrumb"') . ' | ' . anchor('volunteers/events_schedule/viewEventsList', 'Event List', 'class="breadcrumb"');
         if (!$bNew) {
             $displayData['pageTitle'] .= ' | ' . anchor('volunteers/events_record/viewEvent/' . $lEventID, 'Event', 'class="breadcrumb"');
         }
         $displayData['pageTitle'] .= ' | ' . ($bNew ? 'Add New' : 'Edit') . '  Event';
         $displayData['title'] = CS_PROGNAME . ' | Vol. Events';
         $displayData['nav'] = $this->mnav_brain_jar->navData();
         $displayData['mainTemplate'] = 'vols/event_add_edit_view';
         $this->load->vars($displayData);
         $this->load->view('template');
     } else {
         $this->eventUpdate($lEventID);
     }
 }
Exemplo n.º 14
0
 function addEditRegForm($lRegFormID)
 {
     //---------------------------------------------------------------------
     //
     //---------------------------------------------------------------------
     global $gclsChapter, $glChapterID;
     if (!bTestForURLHack('editPeopleBizVol')) {
         return;
     }
     $this->load->helper('dl_util/verify_id');
     if ($lRegFormID . '' != '0') {
         verifyID($this, $lRegFormID, 'vol. registration ID');
     }
     $displayData = array();
     $displayData['js'] = '';
     $displayData['lRegFormID'] = $lRegFormID = (int) $lRegFormID;
     $displayData['bNew'] = $bNew = $lRegFormID <= 0;
     //-------------------------
     // models & helpers
     //-------------------------
     $this->load->model('vol_reg/mvol_reg', 'volReg');
     $this->load->model('img_docs/mimage_doc', 'cImgDoc');
     $this->load->model('admin/morganization', 'clsChapter');
     $this->load->model('admin/madmin_aco', 'clsACO');
     $this->load->model('groups/mgroups', 'groups');
     $this->load->helper('img_docs/image_doc');
     $this->load->helper('img_docs/link_img_docs');
     $this->load->helper('js/clear_set_check_on_check');
     $this->load->helper('dl_util/web_layout');
     $this->load->helper('dl_util/custom_forms');
     $this->load->helper('groups/groups');
     $displayData['js'] .= clearCheckOnUnCheck();
     $displayData['js'] .= setCheckOnCheck();
     $this->volReg->loadVolRegFormsViaRFID($lRegFormID);
     $rRec =& $this->volReg->regRecs[0];
     //-----------------------------
     // validation rules
     //-----------------------------
     $this->form_validation->set_error_delimiters('<div class="formError">', '</div>');
     $this->form_validation->set_rules('txtRegFormName', 'Name of the Registration Form', 'trim|required');
     $this->form_validation->set_rules('txtDescription', 'Description', 'trim');
     $this->form_validation->set_rules('txtBannerOrg', 'Banner Text: Organization Name', 'trim|required');
     $this->form_validation->set_rules('txtBannerTitle', 'Banner Text: Registration Form Title', 'trim|required');
     $this->form_validation->set_rules('txtIntro', 'Registration Form Introductory Text', 'trim|required');
     $this->form_validation->set_rules('txtSubmissionText', 'Text Shown After Submission', 'trim|required');
     $this->form_validation->set_rules('txtVolCoordinatorEmail', 'Volunteer Coordinator Email', 'trim|required|valid_email');
     $this->form_validation->set_rules('chkAddrShow', 'Show', 'trim');
     $this->form_validation->set_rules('chkPermContactInfo', 'Show', 'trim');
     $this->form_validation->set_rules('chkPermPassReset', 'Show', 'trim');
     $this->form_validation->set_rules('chkPermGiftHistory', 'Show', 'trim');
     $this->form_validation->set_rules('chkPermJobSkills', 'Show', 'trim');
     $this->form_validation->set_rules('chkPermViewVolLog', 'Show', 'trim');
     $this->form_validation->set_rules('chkPermAddVolHrs', 'Show', 'trim');
     $this->form_validation->set_rules('chkPermVolShiftSignup', 'Show', 'trim');
     $this->form_validation->set_rules('chkAddrShow', 'Show', 'trim');
     $this->form_validation->set_rules('chkAddrReq', 'Required', 'trim');
     $this->form_validation->set_rules('chkEmailShow', 'Show', 'callback_validateEmailPerms');
     $this->form_validation->set_rules('chkEmailReq', 'Required', 'trim');
     $this->form_validation->set_rules('chkPhoneShow', 'Show', 'trim');
     $this->form_validation->set_rules('chkPhoneReq', 'Required', 'trim');
     $this->form_validation->set_rules('chkCellShow', 'Show', 'trim');
     $this->form_validation->set_rules('chkCellReq', 'Required', 'trim');
     $this->form_validation->set_rules('chkBDayShow', 'Show', 'trim');
     $this->form_validation->set_rules('chkBDayReq', 'Required', 'trim');
     $this->form_validation->set_rules('rdoLogo', 'LogoID', 'trim');
     $this->form_validation->set_rules('ddlVolGroup', 'Volunteer Group ID', 'trim');
     $this->form_validation->set_rules('chkShowDisclaimer', 'Show Disclaimer', 'trim');
     $this->form_validation->set_rules('txtDisclaimerAck', 'Disclaimer Acknowledgement', 'callback_verifyDisclaimerAck');
     $this->form_validation->set_rules('txtDisclaimer', 'Disclaimer', 'callback_verifyDisclaimer');
     $this->form_validation->set_rules('ddlCSS', 'Stylesheet File', 'trim');
     /*
        load stylesheet files
     */
     $this->volReg->availableStyleSheets();
     $displayData['lNumStyleSheets'] = $this->volReg->lNumStyleSheets;
     $displayData['styleSheets'] = arrayCopy($this->volReg->styleSheets);
     /*
        job skills
     */
     $this->volReg->loadVolRegFormSkills($lRegFormID, true);
     $displayData['lNumSkills'] = $lNumSkills = $this->volReg->lNumSkillTot;
     if ($lNumSkills > 0) {
         $displayData['jobSkills'] = $jobSkills =& $this->volReg->skills;
         foreach ($jobSkills as $skill) {
             $lSkillID = $skill->lSkillID;
             $skill->chkShow = $chkShow = 'chkSkillShow_' . $lSkillID;
             $skill->bShow = false;
             $this->form_validation->set_rules($chkShow, 'Job Skill', '');
         }
     } else {
         $displayData['jobSkills'] = $jobSkills = null;
     }
     /*
        personalized volunteer tables
     */
     $this->load->model('personalization/muser_fields', 'clsUF');
     $this->load->model('admin/mpermissions', 'perms');
     $this->clsUF->enumTType = CENUM_CONTEXT_VOLUNTEER;
     $this->clsUF->loadTablesViaTType();
     $displayData['lNumTables'] = $lNumTables = $this->clsUF->lNumTables;
     if ($lNumTables > 0) {
         $displayData['userTables'] = $userTables =& $this->clsUF->userTables;
         foreach ($userTables as $utable) {
             $this->clsUF->lTableID = $lTableID = $utable->lKeyID;
             $this->clsUF->loadTableFields();
             // exclude log fields
             if ($this->clsUF->lNumFields > 0) {
                 foreach ($this->clsUF->fields as $field) {
                     if ($field->enumFieldType == CS_FT_LOG) {
                         --$this->clsUF->lNumFields;
                     } else {
                         $lFieldID = $field->pff_lKeyID;
                         $field->strFNShow = 'chkUFShow_' . $lTableID . '_' . $lFieldID;
                         $field->strFNRequired = 'chkUFReq_' . $lTableID . '_' . $lFieldID;
                         $this->volReg->bShowRequiredUFFields($lRegFormID, $lTableID, $lFieldID, $field->bShow, $field->bRequired);
                         $this->form_validation->set_rules($field->strFNShow, 'Personalized Field/Show', '');
                         $this->form_validation->set_rules($field->strFNRequired, 'Personalized Field/Required', '');
                     }
                 }
             }
             $utable->lNumFields = $lNumFields = $this->clsUF->lNumFields;
             if ($lNumFields > 0) {
                 $utable->fields = arrayCopy($this->clsUF->fields);
             }
             $utable->strTableLabel = $this->volReg->strPublicUFTable($lTableID, $lRegFormID, $utable->strUserTableName);
         }
     } else {
     }
     if ($this->form_validation->run() == FALSE) {
         $displayData['formData'] = new stdClass();
         $this->load->library('generic_form');
         $this->load->model('util/mlist_generic', 'clsList');
         $this->load->helper('dl_util/web_layout');
         $displayData['rRec'] = $rRec;
         // first time displayed, no user data entry errors
         if (validation_errors() == '') {
             if ($bNew) {
                 $displayData['formData']->txtRegFormName = '';
                 $displayData['formData']->txtDescription = '';
                 $displayData['formData']->txtBannerOrg = htmlspecialchars($gclsChapter->strChapterName);
                 $displayData['formData']->txtBannerTitle = 'Volunteer Registration';
                 $displayData['formData']->txtIntro = '';
                 $displayData['formData']->txtSubmissionText = '';
                 $displayData['formData']->txtVolCoordinatorEmail = '';
                 $displayData['formData']->bCaptchaRequired = true;
                 $displayData['formData']->bPermContactInfo = true;
                 $displayData['formData']->bPermPassReset = true;
                 $displayData['formData']->bPermGiftHistory = true;
                 $displayData['formData']->bPermJobSkills = true;
                 $displayData['formData']->bPermViewVolLog = true;
                 $displayData['formData']->bPermAddVolHrs = true;
                 $displayData['formData']->bVolShiftSignup = true;
                 $displayData['formData']->bShowAddr = true;
                 $displayData['formData']->bAddrRequired = true;
                 $displayData['formData']->bShowEmail = true;
                 $displayData['formData']->bEmailRequired = true;
                 $displayData['formData']->bShowPhone = true;
                 $displayData['formData']->bPhoneRequired = true;
                 $displayData['formData']->bShowCell = true;
                 $displayData['formData']->bCellRequired = true;
                 $displayData['formData']->bShowBDay = true;
                 $displayData['formData']->bBDayRequired = false;
                 $displayData['formData']->bShowDisclaimer = false;
                 $displayData['formData']->txtDisclaimer = '';
                 $displayData['formData']->txtDisclaimerAck = 'I agree to the terms stated below.';
                 $displayData['formData']->strDDLCSS = $this->volReg->strCSSDropDown('ddlCSS', 'default.css', false);
                 // organization logos
                 $this->cImgDoc->loadProfileImage(CENUM_CONTEXT_ORGANIZATION, $glChapterID);
                 if ($this->cImgDoc->lNumImageDocs == 0) {
                     $lLogoID = null;
                 } else {
                     $lLogoID = $this->cImgDoc->imageDocs[0]->lKeyID;
                 }
             } else {
                 $displayData['formData']->txtRegFormName = htmlspecialchars($rRec->strFormName);
                 $displayData['formData']->txtDescription = htmlspecialchars($rRec->strDescription);
                 $displayData['formData']->txtBannerOrg = htmlspecialchars($rRec->strBannerOrg);
                 $displayData['formData']->txtBannerTitle = htmlspecialchars($rRec->strBannerTitle);
                 $displayData['formData']->txtIntro = htmlspecialchars($rRec->strIntro);
                 $displayData['formData']->txtSubmissionText = htmlspecialchars($rRec->strSubmissionText);
                 $displayData['formData']->txtVolCoordinatorEmail = htmlspecialchars($rRec->strContactEmail);
                 $displayData['formData']->bCaptchaRequired = $rRec->bCaptchaRequired;
                 $displayData['formData']->bPermContactInfo = $rRec->bPermEditContact;
                 $displayData['formData']->bPermPassReset = $rRec->bPermPassReset;
                 $displayData['formData']->bPermGiftHistory = $rRec->bPermViewGiftHistory;
                 $displayData['formData']->bPermJobSkills = $rRec->bPermEditJobSkills;
                 $displayData['formData']->bPermViewVolLog = $rRec->bPermViewHrsHistory;
                 $displayData['formData']->bPermAddVolHrs = $rRec->bPermAddVolHours;
                 $displayData['formData']->bVolShiftSignup = $rRec->bVolShiftSignup;
                 $displayData['formData']->bShowAddr = $rRec->bShowAddr;
                 $displayData['formData']->bAddrRequired = $rRec->bAddrRequired;
                 $displayData['formData']->bShowEmail = $rRec->bShowEmail;
                 $displayData['formData']->bEmailRequired = $rRec->bEmailRequired;
                 $displayData['formData']->bShowPhone = $rRec->bShowPhone;
                 $displayData['formData']->bPhoneRequired = $rRec->bPhoneRequired;
                 $displayData['formData']->bShowCell = $rRec->bShowCell;
                 $displayData['formData']->bCellRequired = $rRec->bCellRequired;
                 $displayData['formData']->bShowBDay = $rRec->bShowBDay;
                 $displayData['formData']->bBDayRequired = $rRec->bBDateRequired;
                 $displayData['formData']->bShowDisclaimer = $rRec->bShowDisclaimer;
                 $displayData['formData']->txtDisclaimer = $rRec->strDisclaimer;
                 $displayData['formData']->txtDisclaimerAck = $rRec->strDisclaimerAck;
                 $displayData['formData']->strDDLCSS = $this->volReg->strCSSDropDown('ddlCSS', $rRec->strCSSFN, false);
                 $lLogoID = $rRec->lLogoImageID;
                 if ($lNumSkills > 0) {
                     foreach ($jobSkills as $skill) {
                         $skill->bShow = $skill->bOnForm;
                     }
                 }
             }
             // volunteer group ddl
             $displayData['formData']->ddlVolGroup = $this->groups->strDDLActiveGroupEntries('ddlVolGroup', CENUM_CONTEXT_VOLUNTEER, $rRec->lVolGroupID, true);
         } else {
             setOnFormError($displayData);
             $displayData['formData']->txtRegFormName = set_value('txtRegFormName');
             $displayData['formData']->txtDescription = set_value('txtDescription');
             $displayData['formData']->txtBannerOrg = set_value('txtBannerOrg');
             $displayData['formData']->txtBannerTitle = set_value('txtBannerTitle');
             $displayData['formData']->txtIntro = set_value('txtIntro');
             $displayData['formData']->txtSubmissionText = set_value('txtSubmissionText');
             $displayData['formData']->txtVolCoordinatorEmail = set_value('txtVolCoordinatorEmail');
             $displayData['formData']->bCaptchaRequired = set_value('chkCaptchaRequired') == 'true';
             $lLogoID = set_value('rdoLogo');
             $displayData['formData']->bPermContactInfo = set_value('chkPermContactInfo') == 'true';
             $displayData['formData']->bPermPassReset = set_value('chkPermPassReset') == 'true';
             $displayData['formData']->bPermGiftHistory = set_value('chkPermGiftHistory') == 'true';
             $displayData['formData']->bPermJobSkills = set_value('chkPermJobSkills') == 'true';
             $displayData['formData']->bPermViewVolLog = set_value('chkPermViewVolLog') == 'true';
             $displayData['formData']->bPermAddVolHrs = set_value('chkPermAddVolHrs') == 'true';
             $displayData['formData']->bVolShiftSignup = set_value('chkPermVolShiftSignup') == 'true';
             $displayData['formData']->bShowAddr = set_value('chkAddrShow') == 'true';
             $displayData['formData']->bAddrRequired = set_value('chkAddrReq') == 'true';
             $displayData['formData']->bShowEmail = set_value('chkEmailShow') == 'true';
             $displayData['formData']->bEmailRequired = set_value('chkEmailReq') == 'true';
             $displayData['formData']->bShowPhone = set_value('chkPhoneShow') == 'true';
             $displayData['formData']->bPhoneRequired = set_value('chkPhoneReq') == 'true';
             $displayData['formData']->bShowCell = set_value('chkCellShow') == 'true';
             $displayData['formData']->bCellRequired = set_value('chkCellReq') == 'true';
             $displayData['formData']->bShowBDay = set_value('chkBDayShow') == 'true';
             $displayData['formData']->bBDayRequired = set_value('chkBDayReq') == 'true';
             $displayData['formData']->bShowDisclaimer = set_value('chkShowDisclaimer') == 'true';
             $displayData['formData']->txtDisclaimer = set_value('txtDisclaimer');
             $displayData['formData']->txtDisclaimerAck = set_value('txtDisclaimerAck');
             // volunteer group ddl
             $displayData['formData']->ddlVolGroup = $this->groups->strDDLActiveGroupEntries('ddlVolGroup', CENUM_CONTEXT_VOLUNTEER, set_value('ddlVolGroup'), true);
             $displayData['formData']->strDDLCSS = $this->volReg->strCSSDropDown('ddlCSS', set_value('ddlCSS'), false);
             if ($lNumSkills > 0) {
                 foreach ($jobSkills as $skill) {
                     $skill->bShow = set_value($skill->chkShow) == 'true';
                 }
             }
             if ($lNumTables > 0) {
                 foreach ($userTables as $utable) {
                     if ($utable->lNumFields > 0) {
                         // exclude log fields
                         foreach ($utable->fields as $field) {
                             if ($field->enumFieldType != CS_FT_LOG) {
                                 $field->bShow = set_value($field->strFNShow) == 'true';
                                 $field->bRequired = set_value($field->strFNRequired) == 'true';
                             }
                         }
                     }
                 }
             }
         }
         // logo selection table
         $logoOpts = new stdClass();
         $logoOpts->enumEntryType = CENUM_IMGDOC_ENTRY_IMAGE;
         $logoOpts->enumContextType = CENUM_CONTEXT_ORGANIZATION;
         $logoOpts->lFID = $glChapterID;
         $logoOpts->lCellWidth = 90;
         $logoOpts->lCellHeight = 90;
         $logoOpts->lBorderWidth = 1;
         $logoOpts->lCellsPerRow = 4;
         $logoOpts->bShowCaption = false;
         $logoOpts->bShowDescription = false;
         $logoOpts->bShowDate = false;
         $logoOpts->bShowOriginalFN = false;
         $logoOpts->bAddRadioSelect = true;
         $logoOpts->strRadioFieldName = 'rdoLogo';
         $logoOpts->lMatchID = $lLogoID;
         $logoOpts->bShowNone = true;
         $logoOpts->strShowNoneLabel = 'No logo image';
         $displayData['formData']->rdoLogo = $this->cImgDoc->strImageDocTerseTable($logoOpts, $displayData['lNumLogoImages']);
         //--------------------------
         // breadcrumbs
         //--------------------------
         $displayData['pageTitle'] = anchor('main/menu/vols', 'Volunteers', 'class="breadcrumb"') . ' | ' . anchor('volunteers/registration/view', 'Registration', 'class="breadcrumb"') . ' | ' . ($bNew ? 'Add New' : 'Edit') . '  Form';
         $displayData['title'] = CS_PROGNAME . ' | Volunteers';
         $displayData['nav'] = $this->mnav_brain_jar->navData();
         $displayData['mainTemplate'] = 'vol_reg/reg_form_add_edit_view';
         $this->load->vars($displayData);
         $this->load->view('template');
     } else {
         // internal fields
         $rRec->strFormName = trim($_POST['txtRegFormName']);
         $rRec->strContactEmail = trim($_POST['txtVolCoordinatorEmail']);
         $rRec->strDescription = trim($_POST['txtDescription']);
         $rRec->bCaptchaRequired = trim(@$_POST['chkCaptchaRequired']) == 'true';
         $rRec->lLogoImageID = (int) @$_POST['rdoLogo'];
         if ($rRec->lLogoImageID <= 0) {
             $rRec->lLogoImgID = null;
         }
         $rRec->lVolGroupID = (int) @$_POST['ddlVolGroup'];
         if ($rRec->lVolGroupID <= 0) {
             $rRec->lVolGroupID = null;
         }
         $rRec->strCSSFN = trim(@$_POST['ddlCSS']);
         // form registration permissions
         $rRec->bPermEditContact = trim(@$_POST['chkPermContactInfo']) == 'true';
         $rRec->bPermPassReset = trim(@$_POST['chkPermPassReset']) == 'true';
         $rRec->bPermViewGiftHistory = trim(@$_POST['chkPermGiftHistory']) == 'true';
         $rRec->bPermEditJobSkills = trim(@$_POST['chkPermJobSkills']) == 'true';
         $rRec->bPermViewHrsHistory = trim(@$_POST['chkPermViewVolLog']) == 'true';
         $rRec->bPermAddVolHours = trim(@$_POST['chkPermAddVolHrs']) == 'true';
         $rRec->bVolShiftSignup = trim(@$_POST['chkPermVolShiftSignup']) == 'true';
         // top banner
         $rRec->strBannerOrg = trim($_POST['txtBannerOrg']);
         $rRec->strBannerTitle = trim($_POST['txtBannerTitle']);
         $rRec->strIntro = trim($_POST['txtIntro']);
         $rRec->strSubmissionText = trim($_POST['txtSubmissionText']);
         // Standard Fields - show
         $rRec->bShowFName = true;
         $rRec->bShowLName = true;
         $rRec->bShowAddr = trim(@$_POST['chkAddrShow']) == 'true';
         $rRec->bShowEmail = trim(@$_POST['chkEmailShow']) == 'true';
         $rRec->bShowPhone = trim(@$_POST['chkPhoneShow']) == 'true';
         $rRec->bShowCell = trim(@$_POST['chkCellShow']) == 'true';
         $rRec->bShowBDay = trim(@$_POST['chkBDayShow']) == 'true';
         // Standard Fields - required
         $rRec->bFNameRequired = true;
         $rRec->bLNameRequired = true;
         $rRec->bAddrRequired = trim(@$_POST['chkAddrReq']) == 'true';
         $rRec->bEmailRequired = trim(@$_POST['chkEmailReq']) == 'true';
         $rRec->bPhoneRequired = trim(@$_POST['chkPhoneReq']) == 'true';
         $rRec->bCellRequired = trim(@$_POST['chkCellReq']) == 'true';
         $rRec->bBDateRequired = trim(@$_POST['chkBDayReq']) == 'true';
         // Disclaimer
         $rRec->bShowDisclaimer = $rRec->bDisclaimerAckRqrd = trim(@$_POST['chkShowDisclaimer']) == 'true';
         $rRec->strDisclaimer = trim($_POST['txtDisclaimer']);
         $rRec->strDisclaimerAck = trim($_POST['txtDisclaimerAck']);
         // Job Skills
         if ($lNumSkills > 0) {
             foreach ($jobSkills as $skill) {
                 $skill->bShow = trim(@$_POST[$skill->chkShow]) == 'true';
             }
         }
         // personalized tables
         if ($lNumTables > 0) {
             foreach ($userTables as $utable) {
                 if ($utable->lNumFields > 0) {
                     foreach ($utable->fields as $field) {
                         if ($field->enumFieldType != CS_FT_LOG) {
                             $field->bShow = trim(@$_POST[$field->strFNShow]) == 'true';
                             $field->bRequired = trim(@$_POST[$field->strFNRequired]) == 'true';
                         }
                     }
                 }
             }
         }
         if ($bNew) {
             $lRegFormID = addNewCustomForm(CENUM_CONTEXT_VOLUNTEER, $rRec);
         } else {
             updateCustomForm(CENUM_CONTEXT_VOLUNTEER, $lRegFormID, $rRec);
         }
         $this->volReg->updateJobSkillFields($lRegFormID, $lNumSkills, $jobSkills);
         updateFormPTableFields(CENUM_CONTEXT_VOLUNTEER, $lRegFormID, $lNumTables, $userTables);
         $this->session->set_flashdata('msg', 'The registration form was ' . ($bNew ? 'added' : 'updated') . '.');
         redirect('volunteers/registration/view');
     }
 }
 function addEdit($lClientID)
 {
     //--------------------------------------------------------------------------
     // the user can change the vocabulary associated with a client
     //--------------------------------------------------------------------------
     if (!bTestForURLHack('showClients')) {
         return;
     }
     $displayData = array();
     $displayData['lClientID'] = $lClientID = (int) $lClientID;
     //-------------------------------------
     // load the client info
     //-------------------------------------
     $this->load->library('util/dl_date_time', '', 'clsDateTime');
     $this->load->model('clients/mclients', 'clsClients');
     $this->clsClients->loadClientsViaClientID($lClientID);
     $displayData['client'] = $client = $this->clsClients->clients[0];
     $this->load->model('clients/mclient_vocabulary', 'clsClientV');
     //-------------------------------------
     // validation rules
     //-------------------------------------
     $this->form_validation->set_error_delimiters('<div class="formError">', '</div>');
     $this->form_validation->set_rules('ddlVoc', 'Client Vocabularies', 'trim|callback_clientVocDDL');
     if ($this->form_validation->run() == FALSE) {
         $this->load->library('generic_form');
         $this->load->model('util/mbuild_on_ready', 'clsOnReady');
         $this->clsOnReady->addOnReadyTableStripes();
         $this->clsOnReady->closeOnReady();
         $displayData['js'] = $this->clsOnReady->strOnReady;
         if (validation_errors() == '') {
             $displayData['ddlVoc'] = $this->clsClientV->strClientVocDDL(false, $client->lVocID);
         } else {
             setOnFormError($displayData);
             $displayData['ddlVoc'] = $this->clsClientV->strClientVocDDL(false, set_value('ddlVoc'));
         }
         /*-------------------------------------
              load the client summary block
           -------------------------------------*/
         $this->load->model('img_docs/mimage_doc', 'clsImgDoc');
         $this->load->helper('img_docs/image_doc');
         $this->load->helper('img_docs/link_img_docs');
         $params = array('enumStyle' => 'terse');
         $this->load->library('generic_rpt', $params, 'generic_rpt');
         $displayData['clsRpt'] = $this->generic_rpt;
         $displayData['contextSummary'] = $this->clsClients->strClientHTMLSummary(0);
         //---------------------------------------------------
         // for user's reference - all defined vocabularies
         //---------------------------------------------------
         $this->load->helper('clients/client_voc');
         $this->clsClientV->loadClientVocabulary(false, true);
         $displayData['vocs'] = $this->clsClientV->vocs;
         //-------------------------------------
         // breadcrumbs and page layout
         //-------------------------------------
         $displayData['pageTitle'] = anchor('main/menu/client', 'Clients', 'class="breadcrumb"') . ' | ' . anchor('clients/client_record/view/' . $lClientID, 'Client Record', 'class="breadcrumb"') . ' | Vocabulary';
         $displayData['title'] = CS_PROGNAME . ' | Client Status';
         $displayData['nav'] = $this->mnav_brain_jar->navData();
         $displayData['mainTemplate'] = 'client/vocab_add_edit_view';
         $this->load->vars($displayData);
         $this->load->view('template');
     } else {
         $lVocID = (int) $_POST['ddlVoc'];
         $this->clsClientV->updateClientVocAssociation($lClientID, $lVocID);
         $this->session->set_flashdata('msg', 'The client\'s vocabulary was updated');
         redirect('clients/client_record/view/' . $lClientID);
     }
 }
Exemplo n.º 16
0
 function agCommon($enumAgType)
 {
     //---------------------------------------------------------------------
     //
     //---------------------------------------------------------------------
     global $gdteNow, $gbDateFormatUS, $glChapterID;
     //      if (!bTestForURLHack('showFinancials')) return;
     $displayData = array();
     $displayData['js'] = '';
     //------------------------------------------------
     // libraries and utilities
     //------------------------------------------------
     $this->load->helper('dl_util/web_layout');
     $this->load->library('generic_form');
     $this->load->helper('dl_util/time_date');
     $this->load->model('admin/morganization', 'clsChapter');
     $this->load->model('admin/madmin_aco', 'clsACO');
     // time frame support
     $this->load->helper('reports/date_range_def');
     $this->load->helper('reports/date_range');
     $this->load->library('js_build/java_joe_radio');
     $this->load->model('util/mserial_objects', 'cSO');
     $displayData['js'] .= $this->java_joe_radio->insertJavaJoeRadio() . $this->java_joe_radio->insertSetDateRadio();
     tf_initDateRangeMenu($displayData['viewOpts']);
     $this->initViewOpts($displayData['viewOpts']);
     $displayData['viewOpts']->bShowACOAll = $displayData['viewOpts']->bShowMinAmnt = $displayData['viewOpts']->bShowMaxAmnt = $displayData['viewOpts']->bShowSortBy = $displayData['viewOpts']->bShowAcct = $displayData['viewOpts']->bShowCamp = $displayData['viewOpts']->bShowIncludes = $displayData['viewOpts']->bShowYear = false;
     switch ($enumAgType) {
         case CENUM_REPORTNAME_GIFTAGG:
             $displayData['viewOpts']->blockLabel = 'Donations Aggregate Report';
             $displayData['frmLink'] = 'reports/pre_gifts/agOpts';
             $displayData['pageTitle'] = anchor('main/menu/reports', 'Reports', 'class="breadcrumb"') . ' | Donation Aggregate Report';
             break;
         case CENUM_REPORTNAME_GIFTSPONAGG:
             $displayData['viewOpts']->blockLabel = 'Sponsorship Payments Aggregate Report';
             $displayData['frmLink'] = 'reports/pre_gifts/agSponOpts';
             $displayData['pageTitle'] = anchor('main/menu/reports', 'Reports', 'class="breadcrumb"') . ' | Sponsorship Payment Aggregate Report';
             break;
         default:
             screamForHelp($enumAgType . ': unknow aggregate type<br>error on line <b> -- ' . __LINE__ . ' --</b>,<br>file ' . __FILE__ . ',<br>function ' . __FUNCTION__);
             break;
     }
     $this->setValidationRules($displayData['viewOpts']);
     if ($this->form_validation->run() == FALSE) {
         $this->load->library('generic_form');
         if (validation_errors() == '') {
             $this->clsChapter->lChapterID = $glChapterID;
             $this->clsChapter->loadChapterInfo();
             $this->setInitialRptVal($displayData['viewOpts'], $displayData['formData']);
         } else {
             setOnFormError($displayData);
             $this->setErrRptVal($displayData['viewOpts'], $displayData['formData']);
             // time frame support
             $this->tf_setTFOptsOnFormError($displayData['viewOpts']);
         }
         // time frame support
         $displayData['dateRanges'] = $strRange = tf_strDateRangeMenu($displayData['viewOpts']);
         //--------------------------
         // breadcrumbs
         //--------------------------
         $displayData['title'] = CS_PROGNAME . ' | Reports';
         $displayData['nav'] = $this->mnav_brain_jar->navData();
         $displayData['mainTemplate'] = 'reports/pre_gift_time_frame_view';
         $this->load->vars($displayData);
         $this->load->view('template');
     } else {
         $reportID = $this->strLoadPostGiftRpt($displayData['viewOpts'], $enumAgType);
         /* -------------------------------------
         echo('<font class="debug">'.substr(__FILE__, strrpos(__FILE__, '\\'))
            .': '.__LINE__.'<br>$displayData[viewOpts]   <pre>');
         echo(htmlspecialchars( print_r($displayData['viewOpts'], true))); echo('</pre></font><br>');
         $zzzlPos = strrpos(__FILE__, '\\'); $zzzlLen=strlen(__FILE__); echo('<font class="debug">'.substr(__FILE__, strrpos(__FILE__, '\\',-(($zzzlLen-$zzzlPos)+1))) .': '.__LINE__
         .":\$reportID = $reportID <br></font>\n");
         
         die;
         // ------------------------------------- */
         redirect('reports/reports/run/' . $reportID);
     }
 }
Exemplo n.º 17
0
 public function addEditPatientVisit($lVolID, $lPVRecID = 0, $lPatientID = 0)
 {
     //---------------------------------------------------------------------
     //
     //---------------------------------------------------------------------
     global $glChapterID, $gbVolMgr, $gbDateFormatUS, $gstrFormatDatePicker;
     $this->load->helper('dl_util/verify_id');
     verifyID($glChapterID, $lPatientID, 'patient ID');
     verifyID($glChapterID, $lVolID, 'volunteer ID');
     if ($lPVRecID != 0) {
         verifyID($glChapterID, $lPVRecID, 'patientVisit ID');
     }
     $displayData = array();
     $displayData['formData'] = new stdClass();
     $displayData['lVolID'] = $lVolID = (int) $lVolID;
     $displayData['lPVRecID'] = $lPVRecID = (int) $lPVRecID;
     $displayData['lPatientID'] = $lPatientID = (int) $lPatientID;
     $displayData['bNew'] = $bNew = $lPVRecID <= 0;
     //----------------------------------------------
     // models / helpers
     //----------------------------------------------
     $this->load->library('util/dl_date_time', '', 'clsDateTime');
     $this->load->model('patients/mpatients', 'cPatients');
     $this->load->model('vols/mvol', 'cVol');
     $this->load->model('util/mlist_generic', 'cList');
     $this->load->model('hospice/mhospice_pvisit', 'cPVisit');
     $this->load->helper('dl_util/web_layout');
     $this->load->helper('dl_util/time_date');
     $this->load->helper('hospice/patient_visit');
     $this->load->helper('hospice/hospice_util');
     $this->cVol->loadVolClientAssocViaVolID($lVolID, $volClients, false);
     if (!hospiceUtil\bVerifyVolClientAssoc($lVolID, $lPatientID, $volClients, $lVCIDX)) {
         $this->session->set_flashdata('error', 'Invalid volunteer/patient association. Please contact your volunteer manager.');
         redirect('hospice/hospice_error/error');
         return;
     }
     // load patient record
     $this->cPatients->loadPatientsViaPatientID($lPatientID);
     $displayData['patient'] =& $this->cPatients->patients[0];
     // load volunteer record
     $this->cVol->loadVolRecsViaVolID($lVolID, false);
     $displayData['volRec'] = $volRec =& $this->cVol->volRecs[0];
     // load patient visit record
     $this->cPVisit->loadPVisitsViaVisitID($lPVRecID, $lNumPVRecs, $pVisits);
     $displayData['pVisit'] = $pVisit =& $pVisits[0];
     // validation rules
     $this->form_validation->set_error_delimiters('<div class="formError">', '</div>');
     $this->form_validation->set_rules('txtMedRecNum', '<b>Medical Record Number</b>', 'trim|required');
     $this->form_validation->set_rules('ddlDuration', '', 'trim|callback_verifyDurationDDL');
     $this->form_validation->set_rules('ddlStart', '', 'trim|callback_verifyStartTimeDDL');
     $this->form_validation->set_rules('txtDateOfVisit', '<b>Visit Date</b>', 'trim|required|callback_verifyVisitDate');
     // person served
     $this->form_validation->set_rules('chkPS_Patient');
     $this->form_validation->set_rules('chkPS_Caregiver');
     $this->form_validation->set_rules('chkPS_Bereaved');
     $this->form_validation->set_rules('chkPS_Other');
     $this->form_validation->set_rules('txtPS_Notes', '', 'trim|callback_verifyPS');
     // location
     $this->form_validation->set_rules('ddlLocation', '', 'trim|callback_verifyLocation');
     $this->form_validation->set_rules('txtLocationNotes', '', 'trim|callback_verifyLocationNotes');
     // Activity
     $this->form_validation->set_rules('ddlActivity', '', 'trim|callback_verifyActivity');
     $this->form_validation->set_rules('txtActivityNotes', '', 'trim|callback_verifyActivityNotes');
     // Interventions
     $this->form_validation->set_rules('chkI_Companionship');
     $this->form_validation->set_rules('chkI_CaregiverRelief');
     $this->form_validation->set_rules('chkI_EmotionalSupport');
     $this->form_validation->set_rules('chkI_Socialization');
     $this->form_validation->set_rules('chkI_Bereavement');
     $this->form_validation->set_rules('chkI_TelephoneCall');
     $this->form_validation->set_rules('chkI_ExcursionErrands');
     $this->form_validation->set_rules('chkI_MusicPetArtSupport');
     $this->form_validation->set_rules('chkI_FoodPreparation');
     $this->form_validation->set_rules('chkI_HouseholdChores');
     $this->form_validation->set_rules('chkI_OtherIntervention');
     $this->form_validation->set_rules('txtI_Notes', '', 'trim|callback_verifyIntervention');
     // Visit Info
     $this->form_validation->set_rules('ddlM_PatientStatus', '', 'callback_verifyPatientStatus');
     $this->form_validation->set_rules('ddlM_VisitTasks', '', 'callback_verifyVisitTasks');
     $this->form_validation->set_rules('txtVisitNotes', '', 'trim|callback_verifyVisitNotes');
     $this->form_validation->set_rules('chkTSK_Visitors');
     $this->form_validation->set_rules('txtTSKPatientComfort', '<b>Patient Comfort</b>', 'trim|required');
     $this->form_validation->set_rules('txtTSKPatientPain');
     $this->form_validation->set_rules('txtTSKPatientConcerns');
     if ($this->form_validation->run() == FALSE) {
         $matchIDs_PStatus = array();
         $matchIDs_VTasks = array();
         $displayData['js'] = '';
         $this->load->library('generic_form');
         if (validation_errors() == '') {
             if ($bNew) {
                 $displayData['formData']->txtDateOfVisit = $displayData['formData']->txtMedRecNum = '';
                 $displayData['formData']->ddlDuration = pvisit\strDurationDDL(-1, true, 'ddlDuration', 'dur');
                 $displayData['formData']->ddlStart = pvisit\strTimeDDL(-1, true, 'ddlStart', 'start');
                 // person served
                 $displayData['formData']->ps_bPatient = $displayData['formData']->ps_bCaregiver = $displayData['formData']->ps_bBereaved = $displayData['formData']->ps_bOther = false;
                 $displayData['formData']->ps_txtNotes = '';
                 // location
                 $this->cList->enumListType = CENUM_LISTTYPE_PV_LOCATIONS;
                 $displayData['formData']->ddlLocation = $this->cList->strLoadListDDL($glChapterID, 'ddlLocation', true, -1);
                 $displayData['formData']->txtLocationNotes = '';
                 // Activity
                 $this->cList->enumListType = CENUM_LISTTYPE_PV_ACTIVITIES;
                 $displayData['formData']->ddlActivity = $this->cList->strLoadListDDL($glChapterID, 'ddlActivity', true, -1);
                 $displayData['formData']->txtActivityNotes = '';
                 // Interventions
                 $displayData['formData']->i_bCompanionship = $displayData['formData']->i_bCaregiverRelief = $displayData['formData']->i_bEmotionalSupport = $displayData['formData']->i_bSocialization = $displayData['formData']->i_bBereavement = $displayData['formData']->i_bTelephoneCall = $displayData['formData']->i_bExcursionErrands = $displayData['formData']->i_bMusicPetArtSupport = $displayData['formData']->i_bFoodPreparation = $displayData['formData']->i_bHouseholdChores = $displayData['formData']->i_bOtherIntervention = false;
                 $displayData['formData']->txtI_Notes = '';
                 // Visit Info
                 $this->cList->enumListType = CENUM_LISTTYPE_PV_PSTATUS;
                 $displayData['formData']->ddlM_PatientStatus = $this->cList->strLoadListMultiDDL($glChapterID, 'ddlM_PatientStatus', 5, true, $matchIDs_PStatus);
                 $this->cList->enumListType = CENUM_LISTTYPE_PV_VISITTASKS;
                 $displayData['formData']->ddlM_VisitTasks = $this->cList->strLoadListMultiDDL($glChapterID, 'ddlM_VisitTasks', 5, true, $matchIDs_VTasks);
                 $displayData['formData']->txtVisitNotes = '';
                 $displayData['formData']->TSK_bVisitors = false;
                 $displayData['formData']->txtTSKPatientComfort = '';
                 $displayData['formData']->txtTSKPatientPain = '';
                 $displayData['formData']->txtTSKPatientConcerns = '';
             } else {
                 $displayData['formData']->txtDateOfVisit = strNumericDateViaMysqlDate($pVisit->mdteVisit, $gbDateFormatUS);
                 $displayData['formData']->txtMedRecNum = htmlspecialchars($pVisit->strMedRec);
                 $displayData['formData']->ddlDuration = pvisit\strDurationDDL($pVisit->lDuration, true, 'ddlDuration', 'dur');
                 $displayData['formData']->ddlStart = pvisit\strTimeDDL($pVisit->lStartTime, true, 'ddlStart', 'start');
                 // person served
                 $displayData['formData']->ps_bPatient = $pVisit->ps_bPatient;
                 $displayData['formData']->ps_bCaregiver = $pVisit->ps_bCaregiver;
                 $displayData['formData']->ps_bBereaved = $pVisit->ps_bBereaved;
                 $displayData['formData']->ps_bOther = $pVisit->ps_bOther;
                 $displayData['formData']->ps_txtNotes = htmlspecialchars($pVisit->ps_strNotes);
                 // location
                 $this->cList->enumListType = CENUM_LISTTYPE_PV_LOCATIONS;
                 $displayData['formData']->ddlLocation = $this->cList->strLoadListDDL($glChapterID, 'ddlLocation', true, $pVisit->loc_lLocationID);
                 $displayData['formData']->txtLocationNotes = htmlspecialchars($pVisit->loc_strNotes);
                 // Activity
                 $this->cList->enumListType = CENUM_LISTTYPE_PV_ACTIVITIES;
                 $displayData['formData']->ddlActivity = $this->cList->strLoadListDDL($glChapterID, 'ddlActivity', true, $pVisit->act_lActivityID);
                 $displayData['formData']->txtActivityNotes = htmlspecialchars($pVisit->act_strNotes);
                 // Interventions
                 $displayData['formData']->i_bCompanionship = $pVisit->in_bCompanionship;
                 $displayData['formData']->i_bCaregiverRelief = $pVisit->in_bCaregiverRelief;
                 $displayData['formData']->i_bEmotionalSupport = $pVisit->in_bEmotionalSupport;
                 $displayData['formData']->i_bSocialization = $pVisit->in_bSocialization;
                 $displayData['formData']->i_bBereavement = $pVisit->in_bBereavement;
                 $displayData['formData']->i_bTelephoneCall = $pVisit->in_bTelephoneCall;
                 $displayData['formData']->i_bExcursionErrands = $pVisit->in_bExcursionErrands;
                 $displayData['formData']->i_bMusicPetArtSupport = $pVisit->in_bMusicPetArt;
                 $displayData['formData']->i_bFoodPreparation = $pVisit->in_bFoodPrep;
                 $displayData['formData']->i_bHouseholdChores = $pVisit->in_bHouseholdChores;
                 $displayData['formData']->i_bOtherIntervention = $pVisit->in_bOther;
                 $displayData['formData']->txtI_Notes = htmlspecialchars($pVisit->in_strNotes);
                 // Visit Info
                 $this->cList->enumListType = CENUM_LISTTYPE_PV_PSTATUS;
                 $displayData['formData']->ddlM_PatientStatus = $this->cList->strLoadListMultiDDL($glChapterID, 'ddlM_PatientStatus', 5, true, $pVisit->status->IDs);
                 $this->cList->enumListType = CENUM_LISTTYPE_PV_VISITTASKS;
                 $displayData['formData']->ddlM_VisitTasks = $this->cList->strLoadListMultiDDL($glChapterID, 'ddlM_VisitTasks', 5, true, $pVisit->tasks->IDs);
                 $displayData['formData']->txtVisitNotes = htmlspecialchars($pVisit->tsk_strOtherNotes);
                 $displayData['formData']->TSK_bVisitors = $pVisit->tsk_bVisitors;
                 $displayData['formData']->txtTSKPatientComfort = htmlspecialchars($pVisit->tsk_strPatientComfort);
                 $displayData['formData']->txtTSKPatientPain = htmlspecialchars($pVisit->tsk_strPatientPain);
                 $displayData['formData']->txtTSKPatientConcerns = htmlspecialchars($pVisit->tsk_strChangesConcerns);
             }
         } else {
             setOnFormError($displayData);
             $displayData['formData']->txtDateOfVisit = set_value('txtDateOfVisit');
             $displayData['formData']->txtMedRecNum = set_value('txtMedRecNum');
             $displayData['formData']->ddlDuration = pvisit\strDurationDDL(set_value('ddlDuration'), true, 'ddlDuration', 'dur');
             $displayData['formData']->ddlStart = pvisit\strTimeDDL(set_value('ddlStart'), true, 'ddlStart', 'start');
             // person served
             $displayData['formData']->ps_bPatient = set_value('chkPS_Patient') == 'TRUE';
             $displayData['formData']->ps_bCaregiver = set_value('chkPS_Caregiver') == 'TRUE';
             $displayData['formData']->ps_bBereaved = set_value('chkPS_Bereaved') == 'TRUE';
             $displayData['formData']->ps_bOther = set_value('chkPS_Other') == 'TRUE';
             $displayData['formData']->ps_txtNotes = set_value('txtPS_Notes');
             // location
             $this->cList->enumListType = CENUM_LISTTYPE_PV_LOCATIONS;
             $displayData['formData']->ddlLocation = $this->cList->strLoadListDDL($glChapterID, 'ddlLocation', true, (int) @$_POST['ddlLocation']);
             $displayData['formData']->txtLocationNotes = set_value('txtLocationNotes');
             // Activity
             $this->cList->enumListType = CENUM_LISTTYPE_PV_ACTIVITIES;
             $displayData['formData']->ddlActivity = $this->cList->strLoadListDDL($glChapterID, 'ddlActivity', true, (int) @$_POST['ddlActivity']);
             $displayData['formData']->txtActivityNotes = set_value('txtActivityNotes');
             // Interventions
             $displayData['formData']->i_bCompanionship = set_value('chkI_Companionship') == 'TRUE';
             $displayData['formData']->i_bCaregiverRelief = set_value('chkI_CaregiverRelief') == 'TRUE';
             $displayData['formData']->i_bEmotionalSupport = set_value('chkI_EmotionalSupport') == 'TRUE';
             $displayData['formData']->i_bSocialization = set_value('chkI_Socialization') == 'TRUE';
             $displayData['formData']->i_bBereavement = set_value('chkI_Bereavement') == 'TRUE';
             $displayData['formData']->i_bTelephoneCall = set_value('chkI_TelephoneCall') == 'TRUE';
             $displayData['formData']->i_bExcursionErrands = set_value('chkI_ExcursionErrands') == 'TRUE';
             $displayData['formData']->i_bMusicPetArtSupport = set_value('chkI_MusicPetArtSupport') == 'TRUE';
             $displayData['formData']->i_bFoodPreparation = set_value('chkI_FoodPreparation') == 'TRUE';
             $displayData['formData']->i_bHouseholdChores = set_value('chkI_HouseholdChores') == 'TRUE';
             $displayData['formData']->i_bOtherIntervention = set_value('chkI_OtherIntervention') == 'TRUE';
             $displayData['formData']->txtI_Notes = set_value('txtI_Notes');
             // Visit Info
             $this->cList->enumListType = CENUM_LISTTYPE_PV_PSTATUS;
             $this->loadMultiIDs('ddlM_PatientStatus', $matchIDs_PStatus);
             $displayData['formData']->ddlM_PatientStatus = $this->cList->strLoadListMultiDDL($glChapterID, 'ddlM_PatientStatus', 5, true, $matchIDs_PStatus);
             $this->cList->enumListType = CENUM_LISTTYPE_PV_VISITTASKS;
             $this->loadMultiIDs('ddlM_VisitTasks', $matchIDs_VTasks);
             $displayData['formData']->ddlM_VisitTasks = $this->cList->strLoadListMultiDDL($glChapterID, 'ddlM_VisitTasks', 5, true, $matchIDs_VTasks);
             $displayData['formData']->txtVisitNotes = set_value('txtVisitNotes');
             $displayData['formData']->TSK_bVisitors = set_value('chkTSK_Visitors') == 'TRUE';
             $displayData['formData']->txtTSKPatientComfort = set_value('txtTSKPatientComfort');
             $displayData['formData']->txtTSKPatientPain = set_value('txtTSKPatientPain');
             $displayData['formData']->txtTSKPatientConcerns = set_value('txtTSKPatientConcerns');
         }
         //--------------------------
         // breadcrumbs
         //--------------------------
         $displayData['pageTitle'] = ' Patient Visit';
         $displayData['title'] = CS_PROGNAME . ' | Patient Visit';
         $displayData['nav'] = $this->mnav_brain_jar->navData();
         $displayData['mainTemplate'] = 'hospice/patient_visit_add_edit_view';
         $this->load->vars($displayData);
         $this->load->view('template');
     } else {
         $pVisit->lChapterID = $glChapterID;
         $pVisit->lPatientID = $lPatientID;
         $pVisit->lVolID = $lVolID;
         $strDate = trim($_POST['txtDateOfVisit']);
         MDY_ViaUserForm($strDate, $lMon, $lDay, $lYear, $gbDateFormatUS);
         $pVisit->dteVisit = mktime(0, 0, 0, $lMon, $lDay, $lYear);
         $pVisit->lStartTime = (int) $_POST['ddlStart'];
         $pVisit->lDuration = (int) $_POST['ddlDuration'];
         $pVisit->strMedRec = $_POST['txtMedRecNum'];
         $pVisit->ps_bPatient = @$_POST['chkPS_Patient'] == 'TRUE';
         $pVisit->ps_bCaregiver = @$_POST['chkPS_Caregiver'] == 'TRUE';
         $pVisit->ps_bBereaved = @$_POST['chkPS_Bereaved'] == 'TRUE';
         $pVisit->ps_bOther = @$_POST['chkPS_Other'] == 'TRUE';
         $pVisit->ps_strNotes = $_POST['txtPS_Notes'];
         $pVisit->act_lActivityID = (int) $_POST['ddlActivity'];
         $pVisit->act_strNotes = $_POST['txtActivityNotes'];
         $pVisit->loc_lLocationID = (int) $_POST['ddlLocation'];
         $pVisit->loc_strNotes = $_POST['txtLocationNotes'];
         $pVisit->in_bCompanionship = @$_POST['chkI_Companionship'] == 'TRUE';
         $pVisit->in_bCaregiverRelief = @$_POST['chkI_CaregiverRelief'] == 'TRUE';
         $pVisit->in_bEmotionalSupport = @$_POST['chkI_EmotionalSupport'] == 'TRUE';
         $pVisit->in_bSocialization = @$_POST['chkI_Socialization'] == 'TRUE';
         $pVisit->in_bBereavement = @$_POST['chkI_Bereavement'] == 'TRUE';
         $pVisit->in_bTelephoneCall = @$_POST['chkI_TelephoneCall'] == 'TRUE';
         $pVisit->in_bExcursionErrands = @$_POST['chkI_ExcursionErrands'] == 'TRUE';
         $pVisit->in_bMusicPetArt = @$_POST['chkI_MusicPetArtSupport'] == 'TRUE';
         $pVisit->in_bFoodPrep = @$_POST['chkI_FoodPreparation'] == 'TRUE';
         $pVisit->in_bHouseholdChores = @$_POST['chkI_HouseholdChores'] == 'TRUE';
         $pVisit->in_bOther = @$_POST['chkI_OtherIntervention'] == 'TRUE';
         $pVisit->in_strNotes = $_POST['txtI_Notes'];
         $pVisit->tsk_strOtherNotes = $_POST['txtVisitNotes'];
         $pVisit->tsk_bVisitors = @$_POST['chkTSK_Visitors'] == 'TRUE';
         $pVisit->tsk_strPatientComfort = $_POST['txtTSKPatientComfort'];
         $pVisit->tsk_strPatientPain = $_POST['txtTSKPatientPain'];
         $pVisit->tsk_strChangesConcerns = $_POST['txtTSKPatientConcerns'];
         // multi-select DDLs
         $pVisit->status = new stdClass();
         $pVisit->status->IDs = arrayCopy($_POST['ddlM_PatientStatus']);
         $pVisit->status->lNumInList = count($pVisit->status->IDs);
         $pVisit->tasks = new stdClass();
         $pVisit->tasks->IDs = arrayCopy($_POST['ddlM_VisitTasks']);
         $pVisit->tasks->lNumInList = count($pVisit->tasks->IDs);
         if ($bNew) {
             $lPVRecID = $this->cPVisit->lAddNewPVisit($pVisit);
             $this->session->set_flashdata('msg', 'The patient visit record was added.');
         } else {
             $this->cPVisit->updatePVisit($lPVRecID, $pVisit);
             $this->session->set_flashdata('msg', 'The patient visit record was updated.');
         }
         redirect('hospice/patient_visit/visitRecView/' . $lPVRecID);
     }
 }
Exemplo n.º 18
0
 function addEdit($lAcctID, $lCampID)
 {
     if (!bTestForURLHack('adminOnly')) {
         return;
     }
     $this->load->helper('dl_util/verify_id');
     verifyID($this, $lAcctID, 'account ID');
     verifyIDsViaType($this, CENUM_CONTEXT_CAMPAIGN, $lCampID, true);
     $displayData = array();
     $displayData['lAcctID'] = $lAcctID = (int) $lAcctID;
     $displayData['lCampID'] = $lCampID = (int) $lCampID;
     $displayData['bNew'] = $bNew = $lCampID <= 0;
     // load account name
     $this->load->model('donations/maccts_camps', 'clsAC');
     $this->clsAC->loadAccounts(false, true, $lAcctID);
     $displayData['strAcctName'] = $strAcct = $this->clsAC->accounts[0]->strSafeName;
     // load campaign info
     $this->clsAC->loadCampaigns(false, false, null, true, $lCampID);
     $displayData['bProtected'] = $this->clsAC->campaigns[0]->bProtected;
     $displayData['bAnyGifts'] = $this->clsAC->bAnyGiftsViaCampID($lCampID);
     // validation rules
     $this->form_validation->set_error_delimiters('<div class="formError">', '</div>');
     $this->form_validation->set_rules('txtCamp', 'Campaign Name', 'callback_campNameDupTest[' . $lAcctID . ',' . $lCampID . ']');
     if ($this->form_validation->run() == FALSE) {
         $displayData['title'] = CS_PROGNAME . ' | Campaigns';
         $displayData['pageTitle'] = anchor('main/menu/admin', 'Admin', 'class="breadcrumb"') . ' | ' . anchor('admin/alists/showLists', 'Lists', 'class="breadcrumb"') . ' | ' . anchor('accts_camp/accounts/view', 'Accounts & Campaigns', 'class="breadcrumb"') . ' | ' . anchor('accts_camp/campaigns/viewCampsViaAcctID/' . $lAcctID, $strAcct . ': View Campaigns', 'class="breadcrumb"') . ' |  ' . ($bNew ? 'Add New Campaign' : 'Update Campaign');
         $displayData['nav'] = $this->mnav_brain_jar->navData();
         $this->load->library('generic_form');
         $displayData['clsForm'] = $this->generic_form;
         if (validation_errors() == '') {
             $displayData['strCampaign'] = $this->clsAC->campaigns[0]->strCampaign;
         } else {
             setOnFormError($displayData);
             $displayData['strCampaign'] = set_value('txtCamp');
         }
         $displayData['mainTemplate'] = 'accts_camp/camp_add_edit';
         $this->load->vars($displayData);
         $this->load->view('template');
     } else {
         $this->clsAC->campaigns[0]->strCampaign = $strCamp = xss_clean(trim($_POST['txtCamp']));
         $this->clsAC->campaigns[0]->lAcctID = $lAcctID;
         if ($bNew) {
             $this->clsAC->lAddNewCampaign();
             $this->session->set_flashdata('msg', 'Your new campaign was added');
         } else {
             $this->clsAC->campaigns[0]->bRetired = @$_POST['chkRetire'] == 'TRUE';
             $this->clsAC->campaigns[0]->lKeyID = $lCampID;
             $this->clsAC->updateCampaign();
             $this->session->set_flashdata('msg', 'Your campaign was updated');
         }
         redirect('accts_camp/campaigns/viewCampsViaAcctID/' . $lAcctID);
     }
 }
Exemplo n.º 19
0
 function addEdit($id)
 {
     //---------------------------------------------------------------------
     //
     //---------------------------------------------------------------------
     if (!bTestForURLHack('adminOnly')) {
         return;
     }
     $this->load->helper('dl_util/verify_id');
     verifyIDsViaType($this, CENUM_CONTEXT_ACCOUNT, $id, true);
     $displayData = array();
     $id = (int) $id;
     $displayData['bNew'] = $bNew = $id <= 0;
     $displayData['lAcctID'] = $id;
     $this->load->model('donations/maccts_camps', 'clsAC');
     // validation rules
     $this->form_validation->set_error_delimiters('<div class="formError">', '</div>');
     $this->form_validation->set_rules('txtAcct', 'Account Name', 'callback_acctNameDupTest[' . $id . ']');
     if ($this->form_validation->run() == FALSE) {
         $displayData['title'] = CS_PROGNAME . ' | Accounts';
         $displayData['pageTitle'] = anchor('main/menu/admin', 'Admin', 'class="breadcrumb"') . ' | ' . anchor('admin/alists/showLists', 'Lists', 'class="breadcrumb"') . ' | ' . anchor('accts_camp/accounts/view', 'Accounts & Campaigns', 'class="breadcrumb"') . ' |  ' . ($bNew ? 'Add New Account' : 'Update Account');
         $displayData['nav'] = $this->mnav_brain_jar->navData();
         $this->clsAC->loadAccounts(false, true, $id);
         $displayData['clsAcct'] = $this->clsAC->accounts[0];
         $displayData['bAnyGifts'] = $this->clsAC->bAnyGiftsViaAcctID($id);
         $this->load->library('generic_form');
         $displayData['clsForm'] = $this->generic_form;
         if (validation_errors() == '') {
             $displayData['strAccount'] = $this->clsAC->accounts[0]->strSafeName;
         } else {
             setOnFormError($displayData);
             $displayData['strAccount'] = set_value('txtAcct');
         }
         $displayData['mainTemplate'] = 'accts_camp/account_add_edit';
         $this->load->vars($displayData);
         $this->load->view('template');
     } else {
         $this->clsAC->accounts[0]->strAccount = $strAcct = xss_clean(trim($_POST['txtAcct']));
         if ($bNew) {
             $this->clsAC->lAddNewAccount();
             $this->session->set_flashdata('msg', 'Your new account was added');
         } else {
             $this->clsAC->accounts[0]->bRetired = @$_POST['chkRetire'] == 'TRUE';
             $this->clsAC->accounts[0]->lKeyID = $id;
             $this->clsAC->updateAccount();
             $this->session->set_flashdata('msg', 'Your account was updated');
         }
         redirect('accts_camp/accounts/view');
     }
 }
Exemplo n.º 20
0
 function addEditLoc($lLocID)
 {
     //---------------------------------------------------------------------
     //
     //---------------------------------------------------------------------
     global $gbDateFormatUS, $glChapterID;
     if (!bTestForURLHack('superUser')) {
         return;
     }
     $this->load->helper('dl_util/verify_id');
     if ((int) $lLocID > 0) {
         verifyID($glChapterID, $lLocID, 'organization ID');
     }
     $displayData = array();
     $displayData['lLocID'] = $lLocID = (int) $lLocID;
     $displayData['bNew'] = $bNew = $lLocID <= 0;
     $displayData['js'] = '';
     $displayData['formData'] = new stdClass();
     //------------------------------------------------
     // models, libraries and utilities
     //------------------------------------------------
     $this->load->model('admin/mlocations', 'cLoc');
     $this->load->helper('dl_util/web_layout');
     $this->load->helper('dl_util/time_date');
     $this->load->library('util/dl_date_time', '', 'clsDateTime');
     // load location record
     $this->cLoc->loadLocationViaChapterID($lLocID, $lNumLocs, $locations);
     $displayData['locRec'] = $locRec =& $locations[0];
     // validation rules
     $this->form_validation->set_error_delimiters('<div class="formError">', '</div>');
     $this->form_validation->set_rules('txtLocName', '<b>Location Name</b>', 'trim|required|callback_verifyUniqueLoc[' . $lLocID . ']');
     $this->form_validation->set_rules('txtLocBannerTag', '<b>Banner Tag Line</b>', 'trim|required');
     $this->form_validation->set_rules('txtNotes', '', 'trim');
     $this->form_validation->set_rules('txtPhone', 'Phone', 'trim');
     $this->form_validation->set_rules('txtFax', 'Fax', 'trim');
     $this->form_validation->set_rules('txtWeb', 'Web Address', 'trim');
     $this->form_validation->set_rules('txtEmail', '<b>EMail</b>', 'trim|valid_email');
     $this->form_validation->set_rules('txtAddr1', '', 'trim');
     $this->form_validation->set_rules('txtAddr2', '', 'trim');
     $this->form_validation->set_rules('txtCity', '', 'trim');
     $this->form_validation->set_rules('txtState', '', 'trim');
     $this->form_validation->set_rules('txtZip', '', 'trim');
     $this->form_validation->set_rules('txtCountry', '', 'trim');
     if ($this->form_validation->run() == FALSE) {
         $this->load->library('generic_form');
         if (validation_errors() == '') {
             if ($bNew) {
                 $displayData['formData']->txtLocName = $displayData['formData']->txtLocBannerTag = '';
                 $displayData['formData']->txtPhone = $displayData['formData']->txtFax = $displayData['formData']->txtWeb = $displayData['formData']->txtEmail = '';
                 $displayData['formData']->txtAddr1 = $displayData['formData']->txtAddr2 = $displayData['formData']->txtCity = $displayData['formData']->txtState = $displayData['formData']->txtZip = $displayData['formData']->txtCountry = '';
                 $displayData['formData']->txtNotes = '';
             } else {
                 $displayData['formData']->txtLocName = htmlspecialchars($locRec->strLocationName);
                 $displayData['formData']->txtLocBannerTag = htmlspecialchars($locRec->strBannerTagLine);
                 $displayData['formData']->txtPhone = htmlspecialchars($locRec->strPhone);
                 $displayData['formData']->txtFax = htmlspecialchars($locRec->strFax);
                 $displayData['formData']->txtWeb = htmlspecialchars($locRec->strWebSite);
                 $displayData['formData']->txtEmail = htmlspecialchars($locRec->strEmail);
                 $displayData['formData']->txtAddr1 = htmlspecialchars($locRec->strAddress1);
                 $displayData['formData']->txtAddr2 = htmlspecialchars($locRec->strAddress2);
                 $displayData['formData']->txtCity = htmlspecialchars($locRec->strCity);
                 $displayData['formData']->txtState = htmlspecialchars($locRec->strState);
                 $displayData['formData']->txtZip = htmlspecialchars($locRec->strZip);
                 $displayData['formData']->txtCountry = htmlspecialchars($locRec->strCountry);
                 $displayData['formData']->txtNotes = htmlspecialchars($locRec->strNotes);
             }
         } else {
             setOnFormError($displayData);
             $displayData['formData']->txtLocName = set_value('txtLocName');
             $displayData['formData']->txtLocBannerTag = set_value('txtLocBannerTag');
             $displayData['formData']->txtPhone = set_value('txtPhone');
             $displayData['formData']->txtFax = set_value('txtFax');
             $displayData['formData']->txtWeb = set_value('txtWeb');
             $displayData['formData']->txtEmail = set_value('txtEmail');
             $displayData['formData']->txtAddr1 = set_value('txtAddr1');
             $displayData['formData']->txtAddr2 = set_value('txtAddr2');
             $displayData['formData']->txtCity = set_value('txtCity');
             $displayData['formData']->txtState = set_value('txtState');
             $displayData['formData']->txtZip = set_value('txtZip');
             $displayData['formData']->txtCountry = set_value('txtCountry');
             $displayData['formData']->txtNotes = set_value('txtNotes');
         }
         //--------------------------
         // breadcrumbs
         //--------------------------
         $params = array('enumStyle' => 'terse');
         $this->load->library('generic_rpt', $params, 'generic_rpt');
         $displayData['pageTitle'] = 'Location';
         $displayData['title'] = CS_PROGNAME . ' | Locations';
         $displayData['nav'] = $this->mnav_brain_jar->navData();
         $displayData['mainTemplate'] = 'hospice/super/location_add_edit_view';
         $this->load->vars($displayData);
         $this->load->view('template');
     } else {
         $locRec->strLocationName = $_POST['txtLocName'];
         $locRec->strBannerTagLine = $_POST['txtLocBannerTag'];
         $locRec->strAddress1 = $_POST['txtAddr1'];
         $locRec->strAddress2 = $_POST['txtAddr2'];
         $locRec->strCity = $_POST['txtCity'];
         $locRec->strState = $_POST['txtState'];
         $locRec->strCountry = $_POST['txtCountry'];
         $locRec->strZip = $_POST['txtZip'];
         $locRec->strPhone = $_POST['txtPhone'];
         $locRec->strFax = $_POST['txtFax'];
         $locRec->strEmail = $_POST['txtEmail'];
         $locRec->strWebSite = $_POST['txtWeb'];
         $locRec->strNotes = $_POST['txtNotes'];
         if ($bNew) {
             $this->load->model('util/mlist_generic');
             $lLocID = $this->cLoc->lAddNewLocation($locRec);
             $this->session->set_flashdata('msg', 'The new location record was added.<br><br>
                     Please add a volunteer manager account for this new location.');
         } else {
             $this->cLoc->updateLocation($lLocID, $locRec);
             $this->session->set_flashdata('msg', 'The location record was updated.');
         }
         redirect('hospice/super/location_rec/locationRecView/' . $lLocID);
     }
 }
Exemplo n.º 21
0
 function add_edit_ts_entry($lEntryID, $lTSLogID = null, $lUserID = null, $dteEntry = null)
 {
     //---------------------------------------------------------------------
     //
     //---------------------------------------------------------------------
     global $glUserID;
     $displayData = array();
     $displayData['js'] = '';
     $displayData['lEntryID'] = $lEntryID = (int) $lEntryID;
     $displayData['bNew'] = $bNew = $lEntryID <= 0;
     if (is_null($lUserID)) {
         $lUserID = $glUserID;
     } else {
         $lUserID = (int) $lUserID;
     }
     //-------------------------
     // models & helpers
     //-------------------------
     $this->load->helper('staff/link_staff');
     $this->load->helper('dl_util/web_layout');
     $this->load->model('staff/mtime_sheets', 'cts');
     $this->load->helper('staff/timesheet');
     $this->load->helper('dl_util/time_date');
     $this->load->model('groups/mgroups', 'cgroups');
     $this->load->helper('groups/groups');
     $params = array('enumStyle' => 'enpRptC');
     $this->load->library('generic_rpt', $params);
     // if time sheet is being edited by a 3rd party, make sure they are authorized
     if ($glUserID != $lUserID) {
         if (!bAllowAccess('timeSheetAdmin')) {
             redirect('staff/timesheets/ts_log_edit/error_tst_access');
         }
     }
     $displayData['lUserID'] = $lUserID;
     // if editing an existing entry, load the entry
     if ($bNew) {
         $lNumEntries = 5;
     } else {
         $this->cts->loadTSLogEntriesViaEntryID($lEntryID, $lNumEntries, $logEntries);
         $le =& $logEntries[0];
         $lTSLogID = $le->lTSLogID;
         $dteEntry = $le->dteLogEntry;
         $lNumEntries = 1;
     }
     $displayData['lTSLogID'] = $lTSLogID = (int) $lTSLogID;
     $displayData['dteEntry'] = $dteEntry = (int) $dteEntry;
     $displayData['lNumEntries'] = $lNumEntries;
     // load the log record
     $this->cts->loadUserTSLogByLogID($lTSLogID, $lNumLogRecs, $logRecs, false);
     // if this time sheet has already been submitted, error off (possibly a URL hack)
     if (!is_null($logRecs[0]->dteSubmitted)) {
         redirect('staff/timesheets/ts_log_edit/error_edit_submitted');
     }
     $displayData['logRec'] = $logRec =& $logRecs[0];
     $dteTSEntry = $logRec->dteTSEntry;
     $lTimeSheetID = $logRec->lTimeSheetID;
     $lTSYear = (int) date('Y', $dteTSEntry);
     // load locations associated with this template
     $this->cgroups->groupMembershipViaFID(CENUM_CONTEXT_STAFF_TS_LOCATIONS, $lTimeSheetID);
     //-------------------------
     // validation rules
     //-------------------------
     $this->form_validation->set_error_delimiters('<div class="formError">', '</div>');
     $this->form_validation->set_rules('lNumEntries', 'Entries', 'callback_verifyTSEntries');
     if ($this->form_validation->run() == FALSE) {
         $displayData['formData'] = new stdClass();
         $displayData['formData']->timeIn = array();
         $displayData['formData']->timeOut = array();
         $displayData['formData']->location = array();
         $this->load->library('generic_form');
         // first time displayed, no user data entry errors
         if (validation_errors() == '') {
             if ($bNew) {
                 for ($idx = 0; $idx < $lNumEntries; ++$idx) {
                     $displayData['formData']->timeIn[$idx] = ts_util\strTimeInTimeOut('ddlTimeIn' . $idx, true, -1, $logRec->b24HrTime, $logRec->enumGranularity);
                     $displayData['formData']->timeOut[$idx] = ts_util\strTimeInTimeOut('ddlTimeOut' . $idx, true, -1, $logRec->b24HrTime, $logRec->enumGranularity);
                     $displayData['formData']->location[$idx] = $this->cgroups->strMembersInGroupDDL('ddlLocation' . $idx, true, -1);
                     $displayData['formData']->notes[$idx] = '';
                 }
             } else {
                 $displayData['formData']->timeIn[0] = ts_util\strTimeInTimeOut('ddlTimeIn0', true, $le->lTimeInMin, $logRec->b24HrTime, $logRec->enumGranularity);
                 $displayData['formData']->timeOut[0] = ts_util\strTimeInTimeOut('ddlTimeOut0', true, $le->lTimeOutMin, $logRec->b24HrTime, $logRec->enumGranularity);
                 $displayData['formData']->location[0] = $this->cgroups->strMembersInGroupDDL('ddlLocation0', true, $le->lLocationID);
                 $displayData['formData']->notes[0] = htmlspecialchars($le->strNotes);
             }
         } else {
             setOnFormError($displayData);
             for ($idx = 0; $idx < $lNumEntries; ++$idx) {
                 $displayData['formData']->timeIn[$idx] = ts_util\strTimeInTimeOut('ddlTimeIn' . $idx, true, (int) $_POST['ddlTimeIn' . $idx], $logRec->b24HrTime, $logRec->enumGranularity);
                 $displayData['formData']->timeOut[$idx] = ts_util\strTimeInTimeOut('ddlTimeOut' . $idx, true, (int) $_POST['ddlTimeOut' . $idx], $logRec->b24HrTime, $logRec->enumGranularity);
                 $displayData['formData']->location[$idx] = $this->cgroups->strMembersInGroupDDL('ddlLocation' . $idx, true, (int) $_POST['ddlLocation' . $idx]);
                 $displayData['formData']->notes[$idx] = $_POST['txtNotes' . $idx];
             }
         }
         //--------------------------
         // breadcrumbs
         //--------------------------
         $displayData['pageTitle'] = anchor('main/menu/more', 'More', 'class="breadcrumb"') . ' | ' . anchor('staff/timesheets/ts_log/viewLog/' . $lTSYear . '/' . $lUserID, 'Time Sheet Log', 'class="breadcrumb"') . ' | ' . anchor('staff/timesheets/ts_log_edit/add_edit_ts/' . $lTSLogID, 'Time Sheet', 'class="breadcrumb"') . ' | ' . ($bNew ? 'Add New' : 'Edit') . '  Time Sheet Entries';
         $displayData['title'] = CS_PROGNAME . ' | Staff';
         $displayData['nav'] = $this->mnav_brain_jar->navData();
         $displayData['mainTemplate'] = 'staff/timesheets/add_tsentries_view';
         $this->load->vars($displayData);
         $this->load->view('template');
     } else {
         $this->loadPostTSEntries($lNumEntries, $entries);
         if ($bNew) {
             foreach ($entries as $ei) {
                 if ($ei->timeIn >= 0 && $ei->timeOut > 0 && $ei->location > 0) {
                     $lEID = $this->cts->addTSEntry($lTSLogID, $dteEntry, $ei);
                 }
             }
             $this->session->set_flashdata('msg', 'Time sheet entries were added.');
         } else {
             $this->cts->updateTSEntry($lEntryID, $entries[0]);
             $this->session->set_flashdata('msg', 'Time sheet entry was updated.');
         }
         redirect('staff/timesheets/ts_log_edit/add_edit_ts/' . $lTSLogID);
     }
 }
 function addEditEntry($lSReportID, $lEntryID, $enumSRType)
 {
     //------------------------------------------------------------------------
     //
     //------------------------------------------------------------------------
     global $glUserID, $gdteNow;
     if (!bTestForURLHack('notVolunteer')) {
         return;
     }
     $displayData = array();
     $displayData['js'] = '';
     $displayData['lSReportID'] = $lSReportID = (int) $lSReportID;
     $displayData['lEntryID'] = $lEntryID = (int) $lEntryID;
     $displayData['bNew'] = $bNew = $lEntryID <= 0;
     $displayData['formData'] = new stdClass();
     $displayData['enumSRType'] = $enumSRType;
     //-------------------------------------
     // models, libraries, and helpers
     //-------------------------------------
     $this->load->model('staff/mstaff_status', 'cstat');
     $params = array('enumStyle' => 'terse');
     $this->load->library('generic_rpt', $params);
     $this->load->helper('dl_util/web_layout');
     $this->load->helper('staff/link_staff');
     // load the status report
     $this->cstat->loadStatusReportViaRptID($lSReportID, false);
     $displayData['sreport'] = $sreport =& $this->cstat->sreports[0];
     $displayData['formData']->bPublished = $bPublished = $sreport->bPublished;
     if ($bPublished) {
         return;
     }
     $strTypeLabel = $sreport->sections[$enumSRType]->strLabel1;
     // test for url hack into another's report
     if (!$bNew) {
         if ($glUserID != $sreport->lUserID) {
             return;
         }
     }
     if ($bNew) {
         $this->cstat->sreports[0]->sections[$enumSRType]->entries = array();
         $this->cstat->sreports[0]->sections[$enumSRType]->entries[0] = new stdClass();
         $entry =& $sreport->sections[$enumSRType]->entries[0];
         $entry->lKeyID = 0;
         $entry->lStatusID = $lSReportID;
         $entry->enumStatusType = $enumSRType;
         $entry->strText01 = '';
         $entry->strText02 = '';
         $entry->curEstAmnt = 0.0;
         $entry->strUrgency = '';
     } else {
         $this->cstat->loadSectionsViaSectionEntryID($lEntryID, $this->cstat->sreports[0]->sections);
         $entry =& $sreport->sections[$enumSRType]->entries[0];
     }
     //-------------------------
     // validation rules
     //-------------------------
     $this->form_validation->set_error_delimiters('<div class="formError">', '</div>');
     switch ($enumSRType) {
         case CENUM_STATCAT_CURRENTPROJECTS:
             $this->form_validation->set_rules('txtCurrentProject', 'Current Project', 'trim|required');
             $this->form_validation->set_rules('txtStatus', 'Status', 'trim|required');
             break;
         case CENUM_STATCAT_CURRENTACTIVITIES:
             $this->form_validation->set_rules('txtCurrentActivities', 'Current Activities', 'trim|required');
             break;
         case CENUM_STATCAT_UPCOMINGEVENTS:
             $this->form_validation->set_rules('txtUpcomingEvents', 'Upcoming Events', 'trim|required');
             break;
         case CENUM_STATCAT_UPCOMINGFUNDRQST:
             $this->form_validation->set_rules('txtUpcomingFundRequest', 'Upcoming Fund Requests', 'trim|required');
             $this->form_validation->set_rules('txtAmount', 'Estimated Amount', 'trim|required|callback_stripCommas|numeric');
             break;
         case CENUM_STATCAT_CONCERNSISSUES:
             $this->form_validation->set_rules('txtConcerns', 'Concerns / Issues', 'trim|required');
             $this->form_validation->set_rules('txtUrgency', 'Urgency', 'trim|required');
             break;
         default:
             screamForHelp($enumSRType . ': invalid status report entry type<br>error on line  <b> -- ' . __LINE__ . ' --</b>,<br>file ' . __FILE__ . ',<br>function ' . __FUNCTION__);
             break;
     }
     $this->form_validation->set_rules('chkPublished', 'Published?', 'trim|callback_verifyFormForPub');
     if ($this->form_validation->run() == FALSE) {
         $displayData['formData'] = new stdClass();
         $this->load->library('generic_form');
         // first time displayed, no user data entry errors
         if (validation_errors() == '') {
             if ($bNew) {
                 switch ($enumSRType) {
                     case CENUM_STATCAT_CURRENTPROJECTS:
                         $displayData['formData']->txtCurrentProject = '';
                         $displayData['formData']->txtStatus = '';
                         break;
                     case CENUM_STATCAT_CURRENTACTIVITIES:
                         $displayData['formData']->txtCurrentActivities = '';
                         break;
                     case CENUM_STATCAT_UPCOMINGEVENTS:
                         $displayData['formData']->txtUpcomingEvents = '';
                         break;
                     case CENUM_STATCAT_UPCOMINGFUNDRQST:
                         $displayData['formData']->txtUpcomingFundRequest = '';
                         $displayData['formData']->txtAmount = '0.00';
                         break;
                     case CENUM_STATCAT_CONCERNSISSUES:
                         $displayData['formData']->txtConcerns = '';
                         $displayData['formData']->txtUrgency = '';
                         break;
                     default:
                         screamForHelp($enumSRType . ': invalid status report entry type<br>error on line  <b> -- ' . __LINE__ . ' --</b>,<br>file ' . __FILE__ . ',<br>function ' . __FUNCTION__);
                         break;
                 }
             } else {
                 switch ($enumSRType) {
                     case CENUM_STATCAT_CURRENTPROJECTS:
                         $displayData['formData']->txtCurrentProject = htmlspecialchars($entry->strText01);
                         $displayData['formData']->txtStatus = htmlspecialchars($entry->strText02);
                         break;
                     case CENUM_STATCAT_CURRENTACTIVITIES:
                         $displayData['formData']->txtCurrentActivities = htmlspecialchars($entry->strText01);
                         break;
                     case CENUM_STATCAT_UPCOMINGEVENTS:
                         $displayData['formData']->txtUpcomingEvents = htmlspecialchars($entry->strText01);
                         break;
                     case CENUM_STATCAT_UPCOMINGFUNDRQST:
                         $displayData['formData']->txtUpcomingFundRequest = htmlspecialchars($entry->strText01);
                         $displayData['formData']->txtAmount = number_format($entry->curEstAmnt, 2, '.', '');
                         break;
                     case CENUM_STATCAT_CONCERNSISSUES:
                         $displayData['formData']->txtConcerns = htmlspecialchars($entry->strText01);
                         $displayData['formData']->txtUrgency = htmlspecialchars($entry->strUrgency);
                         break;
                     default:
                         screamForHelp($enumSRType . ': invalid status report entry type<br>error on line  <b> -- ' . __LINE__ . ' --</b>,<br>file ' . __FILE__ . ',<br>function ' . __FUNCTION__);
                         break;
                 }
             }
         } else {
             setOnFormError($displayData);
             switch ($enumSRType) {
                 case CENUM_STATCAT_CURRENTPROJECTS:
                     $displayData['formData']->txtCurrentProject = set_value('txtCurrentProject');
                     $displayData['formData']->txtStatus = set_value('txtStatus');
                     break;
                 case CENUM_STATCAT_CURRENTACTIVITIES:
                     $displayData['formData']->txtCurrentActivities = set_value('txtCurrentActivities');
                     break;
                 case CENUM_STATCAT_UPCOMINGEVENTS:
                     $displayData['formData']->txtUpcomingEvents = set_value('txtUpcomingEvents');
                     break;
                 case CENUM_STATCAT_UPCOMINGFUNDRQST:
                     $displayData['formData']->txtUpcomingFundRequest = set_value('txtUpcomingFundRequest');
                     $displayData['formData']->txtAmount = set_value('txtAmount');
                     break;
                 case CENUM_STATCAT_CONCERNSISSUES:
                     $displayData['formData']->txtConcerns = set_value('txtConcerns');
                     $displayData['formData']->txtUrgency = set_value('txtUrgency');
                     break;
                 default:
                     screamForHelp($enumSRType . ': invalid status report entry type<br>error on line  <b> -- ' . __LINE__ . ' --</b>,<br>file ' . __FILE__ . ',<br>function ' . __FUNCTION__);
                     break;
             }
         }
         //--------------------------
         // breadcrumbs
         //--------------------------
         $displayData['pageTitle'] = anchor('aayhf/main/aayhfMenu', 'AAYHF', 'class="breadcrumb"') . ' | ' . anchor('staff/performance/addEditPR/' . $lSReportID, 'Status Report', 'class="breadcrumb"') . ' | ' . ($bNew ? 'Add New' : 'Edit') . ' <b>' . $strTypeLabel . '</b>  Entry';
         $displayData['title'] = CS_PROGNAME . ' | Status Report';
         $displayData['nav'] = $this->mnav_brain_jar->navData();
         $displayData['mainTemplate'] = 'aayhf/aayhf_staff/status_entry_add_edit_view';
         $this->load->vars($displayData);
         $this->load->view('template');
     } else {
         switch ($enumSRType) {
             case CENUM_STATCAT_CURRENTPROJECTS:
                 $entry->strText01 = trim($_POST['txtCurrentProject']);
                 $entry->strText02 = trim($_POST['txtStatus']);
                 break;
             case CENUM_STATCAT_CURRENTACTIVITIES:
                 $entry->strText01 = trim($_POST['txtCurrentActivities']);
                 break;
             case CENUM_STATCAT_UPCOMINGEVENTS:
                 $entry->strText01 = trim($_POST['txtUpcomingEvents']);
                 break;
             case CENUM_STATCAT_UPCOMINGFUNDRQST:
                 $entry->strText01 = trim($_POST['txtUpcomingFundRequest']);
                 $entry->curEstAmnt = (double) trim($_POST['txtAmount']);
                 break;
             case CENUM_STATCAT_CONCERNSISSUES:
                 $entry->strText01 = trim($_POST['txtConcerns']);
                 $entry->strUrgency = trim($_POST['txtUrgency']);
                 break;
             default:
                 screamForHelp($enumSRType . ': invalid status report entry type<br>error on line  <b> -- ' . __LINE__ . ' --</b>,<br>file ' . __FILE__ . ',<br>function ' . __FUNCTION__);
                 break;
         }
         if ($bNew) {
             $lEntryID = $this->cstat->lInsertStatusEntry($lSReportID, $entry);
         } else {
             $this->cstat->updateStatusEntry($lEntryID, $entry);
         }
         $this->session->set_flashdata('msg', 'Your ' . $strTypeLabel . ' entry was ' . ($bNew ? 'added' : 'updated') . '.');
         redirect('staff/performance/addEditPR/' . $lSReportID);
     }
 }
 function edit($lImageDocID)
 {
     //------------------------------------------------------------------------------
     //
     //------------------------------------------------------------------------------
     global $gstrFormatDatePicker, $gbDateFormatUS;
     $this->load->helper('dl_util/verify_id');
     verifyID($this, $lImageDocID, 'image/document ID');
     $displayData = array();
     $displayData['formData'] = new stdClass();
     $displayData['lImageDocID'] = $lImageDocID = (int) $lImageDocID;
     $displayData['bUpdate'] = true;
     //-------------------------
     // models & helpers
     //-------------------------
     $params = array('enumStyle' => 'terse');
     $this->load->library('generic_rpt', $params);
     $this->load->library('util/dl_date_time', '', 'clsDateTime');
     $this->load->model('img_docs/mimage_doc', 'clsImgDoc');
     $this->load->model('admin/mpermissions', 'perms');
     $this->load->helper('auctions/auction');
     $this->load->helper('dl_util/time_date');
     $this->load->helper('dl_util/context');
     $this->load->helper('img_docs/image_doc');
     $this->load->helper('img_docs/link_img_docs');
     $displayData['enumContextType'] = $enumContextType = $this->clsImgDoc->enumContextViaID($lImageDocID);
     $displayData['lFID'] = $lFID = $this->clsImgDoc->lForeignIDViaID($lImageDocID);
     $displayData['enumEntryType'] = $enumEntryType = $this->clsImgDoc->enumEntryTypeViaID($lImageDocID);
     $displayData['bImage'] = $bImage = $enumEntryType == CENUM_IMGDOC_ENTRY_IMAGE;
     $strLabel = $bImage ? 'Image' : 'Document';
     loadSupportModels($enumContextType, $lFID);
     $this->clsImgDoc->loadDocImageInfoViaID($lImageDocID);
     $imgDoc =& $this->clsImgDoc->imageDocs[0];
     $enumIDContext = imgDocTags\xlateTagTypeViaContextType($enumContextType, $enumEntryType);
     $displayData['strTagLabel'] = imgDocTags\strXlateImgDocContext($enumIDContext);
     $this->cidTags->loadImgDocTagsForDDL($enumIDContext, $lImageDocID, $displayData['lNumTags'], $displayData['tags']);
     //-------------------------
     // validation rules
     //-------------------------
     $this->form_validation->set_error_delimiters('<div class="formError">', '</div>');
     $this->form_validation->set_rules('txtDescription', 'Description', 'trim');
     $this->form_validation->set_rules('txtCaption', 'Caption', 'trim');
     $this->form_validation->set_rules('txtDate', 'Date of ' . $strLabel, 'trim|required|' . 'callback_clientImageUploadVerifyBDateValid');
     if ($bImage) {
         $this->form_validation->set_rules('chkProfile', 'Profile', 'trim');
     }
     if ($this->form_validation->run() == FALSE) {
         $this->load->helper('dl_util/web_layout');
         $this->load->library('generic_form');
         if ($bImage) {
             $displayData['strImageTag'] = strLinkHTMLTag($enumContextType, $enumEntryType, $lFID, $imgDoc->strSystemFN, 'View in new window', true, '') . strImageHTMLTag($enumContextType, $enumEntryType, $lFID, $imgDoc->strSystemThumbFN, '', false, ' style="border: 1px solid black;" ') . '</a>';
         } else {
             $displayData['strImageTag'] = '';
         }
         // first time displayed, no user data entry errors
         if (validation_errors() == '') {
             $displayData['formData']->txtDate = date($gstrFormatDatePicker, $imgDoc->dteDocImage);
             $displayData['formData']->txtDescription = htmlspecialchars($imgDoc->strDescription);
             $displayData['formData']->txtCaption = htmlspecialchars($imgDoc->strCaptionTitle);
             if ($bImage) {
                 $displayData['formData']->bProfile = $imgDoc->bProfile;
             }
         } else {
             setOnFormError($displayData);
             $displayData['formData']->txtDate = set_value('txtDate');
             $displayData['formData']->txtDescription = set_value('txtDescription');
             $displayData['formData']->txtCaption = set_value('txtCaption');
             $this->updateTagSelect($displayData['lNumTags'], $displayData['tags']);
             if ($bImage) {
                 $displayData['formData']->bProfile = set_value('chkProfile') == 'TRUE';
             }
         }
         $displayData['contextSummary'] = strContextHTML($enumContextType, $lFID, $displayData['strContextName']);
         //--------------------------
         // breadcrumbs
         //--------------------------
         $displayData['pageTitle'] = breadCrumbsToRecViewViaContextType($enumContextType, $lFID, 'Update ' . $strLabel);
         $displayData['title'] = CS_PROGNAME . ' | Clients';
         $displayData['nav'] = $this->mnav_brain_jar->navData();
         $displayData['mainTemplate'] = 'img_docs/upload_image_doc_view';
         $this->load->vars($displayData);
         $this->load->view('template');
     } else {
         $this->load->model('img_docs/mimage_doc', 'clsImgDoc');
         if ($bImage) {
             $this->load->library('image_lib');
         }
         $this->clsImgDoc->loadDocImageInfoViaID(-1);
         $imageDoc =& $this->clsImgDoc->imageDocs[0];
         $bProfile = @$_POST['chkProfile'] == 'TRUE';
         $strDate = trim($_POST['txtDate']);
         MDY_ViaUserForm($strDate, $lMon, $lDay, $lYear, $gbDateFormatUS);
         $dteMySQLDate = strMoDaYr2MySQLDate($lMon, $lDay, $lYear);
         //         $uploadResults = $_SESSION[CS_NAMESPACE.'uploadResults'];
         $enumEntryType = $bImage ? CENUM_IMGDOC_ENTRY_IMAGE : CENUM_IMGDOC_ENTRY_PDF;
         $imageDoc->enumEntryType = $enumEntryType;
         $imageDoc->enumContextType = $enumContextType;
         $imageDoc->lForeignID = $lFID;
         $imageDoc->strCaptionTitle = trim($_POST['txtCaption']);
         $imageDoc->strDescription = trim($_POST['txtDescription']);
         $imageDoc->dteMysqlDocImage = $dteMySQLDate;
         $imageDoc->bProfile = $bProfile;
         // tags
         $this->setUserSelectedTagsFromPost($lImageDocID);
         $this->clsImgDoc->updateDocImageRec($lImageDocID);
         if ($bImage && $bProfile) {
             $this->clsImgDoc->setProfileFlag($lImageDocID, $enumContextType, $lFID);
         }
         $this->session->set_flashdata('msg', 'The ' . $strLabel . ' information was updated');
         redirectViaContextType($enumContextType, $lFID);
     }
 }
Exemplo n.º 24
0
 function addEditContact($lPConID, $lPatientID)
 {
     //---------------------------------------------------------------------
     //
     //---------------------------------------------------------------------
     global $gbVolMgr, $glChapterID, $gbDateFormatUS;
     if (!bTestForURLHack('volMgr')) {
         return;
     }
     $this->load->helper('dl_util/verify_id');
     verifyID($glChapterID, $lPatientID, 'patient ID');
     if ((int) $lPConID > 0) {
         verifyID($glChapterID, $lPConID, 'patientContact ID');
     }
     $displayData = array();
     $displayData['lPConID'] = $lPConID = (int) $lPConID;
     $displayData['lPatientID'] = $lPatientID = (int) $lPatientID;
     $displayData['bNew'] = $bNew = $lPConID <= 0;
     $displayData['js'] = '';
     $displayData['formData'] = new stdClass();
     //------------------------------------------------
     // models, libraries and utilities
     //------------------------------------------------
     $this->load->model('patients/mpatient_contacts', 'cPCons');
     $this->load->model('patients/mpatients', 'cPatients');
     $this->load->model('util/mlist_generic', 'cList');
     $this->load->helper('dl_util/web_layout');
     $this->load->helper('hospice/link_hospice');
     $this->load->library('util/dl_date_time', '', 'clsDateTime');
     // load patient record
     $this->cPatients->loadPatientsViaPatientID($lPatientID);
     $displayData['patient'] = $patient =& $this->cPatients->patients[0];
     // load the patient contact record
     $this->cPCons->loadPContactsViaPConID($lPConID, $lNumPCons, $pContacts);
     $pCon =& $pContacts[0];
     // validation rules
     $this->form_validation->set_error_delimiters('<div class="formError">', '</div>');
     $this->form_validation->set_rules('txtTitle', '<b>Title</b>', 'trim');
     $this->form_validation->set_rules('txtFName', '<b>First Name</b>', 'trim|required');
     $this->form_validation->set_rules('txtMName', '<b>Middle Name</b>', 'trim');
     $this->form_validation->set_rules('txtLName', '<b>Last Name</b>', 'trim|required');
     $this->form_validation->set_rules('ddlRelationship', '<b>Relationship</b>', 'trim|callback_verifyRelationship');
     $this->form_validation->set_rules('txtPhone', 'Phone', 'trim');
     $this->form_validation->set_rules('txtCell', 'Cell', 'trim');
     $this->form_validation->set_rules('txtEmail', '<b>EMail</b>', 'trim|valid_email');
     $this->form_validation->set_rules('txtAddr1', '', 'trim');
     $this->form_validation->set_rules('txtAddr2', '', 'trim');
     $this->form_validation->set_rules('txtCity', '', 'trim');
     $this->form_validation->set_rules('txtState', '', 'trim');
     $this->form_validation->set_rules('txtZip', '', 'trim');
     $this->form_validation->set_rules('txtCountry', '', 'trim');
     $this->form_validation->set_rules('txtNotes', '', 'trim');
     if ($this->form_validation->run() == FALSE) {
         $this->load->library('generic_form');
         if (validation_errors() == '') {
             if ($bNew) {
                 $displayData['formData']->txtTitle = $displayData['formData']->txtFName = $displayData['formData']->txtMName = $displayData['formData']->txtLName = '';
                 $this->cList->enumListType = CENUM_LISTTYPE_PCON_RELATION;
                 $displayData['formData']->ddlRelationship = $this->cList->strLoadListDDL($glChapterID, 'ddlRelationship', true, -1);
                 $displayData['formData']->txtPhone = $displayData['formData']->txtCell = $displayData['formData']->txtEmail = '';
                 $displayData['formData']->txtAddr1 = $displayData['formData']->txtAddr2 = $displayData['formData']->txtCity = $displayData['formData']->txtState = $displayData['formData']->txtZip = $displayData['formData']->txtCountry = '';
                 $displayData['formData']->txtNotes = '';
             } else {
                 $displayData['formData']->txtTitle = htmlspecialchars($pCon->strPConTitle);
                 $displayData['formData']->txtFName = htmlspecialchars($pCon->strPConFName);
                 $displayData['formData']->txtMName = htmlspecialchars($pCon->strPConMName);
                 $displayData['formData']->txtLName = htmlspecialchars($pCon->strPConLName);
                 $this->cList->enumListType = CENUM_LISTTYPE_PCON_RELATION;
                 $displayData['formData']->ddlRelationship = $this->cList->strLoadListDDL($glChapterID, 'ddlRelationship', true, $pCon->lRelationshipID);
                 $displayData['formData']->txtPhone = htmlspecialchars($pCon->strPhone);
                 $displayData['formData']->txtCell = htmlspecialchars($pCon->strCell);
                 $displayData['formData']->txtEmail = htmlspecialchars($pCon->strEmail);
                 $displayData['formData']->txtAddr1 = htmlspecialchars($pCon->strAddr1);
                 $displayData['formData']->txtAddr2 = htmlspecialchars($pCon->strAddr2);
                 $displayData['formData']->txtCity = htmlspecialchars($pCon->strCity);
                 $displayData['formData']->txtState = htmlspecialchars($pCon->strState);
                 $displayData['formData']->txtZip = htmlspecialchars($pCon->strZip);
                 $displayData['formData']->txtCountry = htmlspecialchars($pCon->strCountry);
                 $displayData['formData']->txtNotes = htmlspecialchars($pCon->strNotes);
             }
         } else {
             setOnFormError($displayData);
             $displayData['formData']->txtTitle = set_value('txtTitle');
             $displayData['formData']->txtFName = set_value('txtFName');
             $displayData['formData']->txtMName = set_value('txtMName');
             $displayData['formData']->txtLName = set_value('txtLName');
             $this->cList->enumListType = CENUM_LISTTYPE_PCON_RELATION;
             $displayData['formData']->ddlRelationship = $this->cList->strLoadListDDL($glChapterID, 'ddlRelationship', true, set_value('ddlRelationship'));
             $displayData['formData']->txtPhone = set_value('txtPhone');
             $displayData['formData']->txtCell = set_value('txtCell');
             $displayData['formData']->txtEmail = set_value('txtEmail');
             $displayData['formData']->txtAddr1 = set_value('txtAddr1');
             $displayData['formData']->txtAddr2 = set_value('txtAddr2');
             $displayData['formData']->txtCity = set_value('txtCity');
             $displayData['formData']->txtState = set_value('txtState');
             $displayData['formData']->txtZip = set_value('txtZip');
             $displayData['formData']->txtCountry = set_value('txtCountry');
             $displayData['formData']->txtNotes = set_value('txtNotes');
         }
         //--------------------------
         // breadcrumbs
         //--------------------------
         $params = array('enumStyle' => 'terse');
         $this->load->library('generic_rpt', $params, 'generic_rpt');
         $displayData['clsRpt'] = $this->generic_rpt;
         $displayData['contextSummary'] = $this->cPatients->strPatientHTMLSummary(0);
         $displayData['pageTitle'] = ' Patient Contact';
         $displayData['title'] = CS_PROGNAME . ' | Patient Contact';
         $displayData['nav'] = $this->mnav_brain_jar->navData();
         $displayData['mainTemplate'] = 'hospice/patients/patient_contact_add_edit_view';
         $this->load->vars($displayData);
         $this->load->view('template');
     } else {
         $pCon->strPConTitle = $_POST['txtTitle'];
         $pCon->strPConFName = $_POST['txtFName'];
         $pCon->strPConMName = $_POST['txtMName'];
         $pCon->strPConLName = $_POST['txtLName'];
         $pCon->lRelationshipID = (int) $_POST['ddlRelationship'];
         $pCon->strAddr1 = $_POST['txtAddr1'];
         $pCon->strAddr2 = $_POST['txtAddr2'];
         $pCon->strCity = $_POST['txtCity'];
         $pCon->strState = $_POST['txtState'];
         $pCon->strCountry = $_POST['txtCountry'];
         $pCon->strZip = $_POST['txtZip'];
         $pCon->strPhone = $_POST['txtPhone'];
         $pCon->strCell = $_POST['txtCell'];
         $pCon->strEmail = $_POST['txtEmail'];
         $pCon->strNotes = $_POST['txtNotes'];
         if ($bNew) {
             $lPConID = $this->cPCons->lAddNewPatientContact($lPatientID, $pCon);
             $this->session->set_flashdata('msg', 'The patient contact record was added.');
         } else {
             $this->cPCons->updatePContact($lPConID, $pCon);
             $this->session->set_flashdata('msg', 'The patient contact record was updated.');
         }
         redirect('hospice/patients/patient_contact/viewRec/' . $lPConID);
     }
 }
 public function addEditQuest($lQuestID, $lPPTestID)
 {
     //-------------------------------------------------------------------------
     //
     //-------------------------------------------------------------------------
     if (!bTestForURLHack('showClients')) {
         return;
     }
     $this->load->helper('dl_util/verify_id');
     verifyID($this, $lPPTestID, 'pre/post test ID');
     $displayData = array();
     $displayData['js'] = '';
     $displayData['lPPTestID'] = $lPPTestID = (int) $lPPTestID;
     $displayData['lQuestID'] = $lQuestID = (int) $lQuestID;
     $displayData['bNew'] = $bNew = $lQuestID <= 0;
     //-------------------------
     // models & helpers
     //-------------------------
     $this->load->model('client_features/mcpre_post_tests', 'cpptests');
     $this->load->model('admin/mpermissions', 'perms');
     $this->load->helper('clients/link_client_features');
     $params = array('enumStyle' => 'terse');
     $this->load->library('generic_rpt', $params);
     $this->load->helper('dl_util/web_layout');
     //-------------------------
     // load the pre/post test
     //-------------------------
     $this->cpptests->loadPPTestsViaPPTID($lPPTestID);
     $pptest =& $this->cpptests->pptests[0];
     //-------------------------
     // load the question
     //-------------------------
     $this->cpptests->loadQuestionsViaQuestID($lQuestID);
     $quest =& $this->cpptests->questions[0];
     //-------------------------
     // validation rules
     //-------------------------
     $this->form_validation->set_error_delimiters('<div class="formError">', '</div>');
     $this->form_validation->set_rules('txtQuestion', 'Question', 'trim|required');
     $this->form_validation->set_rules('txtAnswer', 'Answer', 'trim|required');
     if ($this->form_validation->run() == FALSE) {
         $displayData['formData'] = new stdClass();
         $this->load->library('generic_form');
         // first time displayed, no user data entry errors
         if (validation_errors() == '') {
             $displayData['formData']->txtQuestion = htmlspecialchars($quest->strQuestion . '');
             $displayData['formData']->txtAnswer = htmlspecialchars($quest->strAnswer . '');
         } else {
             setOnFormError($displayData);
             $displayData['formData']->txtQuestion = set_value('txtQuestion');
             $displayData['formData']->txtAnswer = set_value('txtAnswer');
         }
         $displayData['strTestSummary'] = $this->cpptests->strHTMLPPTestSummaryDisplay();
         //--------------------------
         // breadcrumbs
         //--------------------------
         $displayData['pageTitle'] = anchor('main/menu/client', 'Clients', 'class="breadcrumb"') . ' | ' . anchor('cpre_post_tests/pptests/overview', ' Client Pre/Post Tests', 'class="breadcrumb"') . ' | ' . anchor('cpre_post_tests/pptest_record/view/' . $lPPTestID, htmlspecialchars($pptest->strTestName), 'class="breadcrumb"') . ' | ' . ($bNew ? 'Add New' : 'Edit') . '  Question';
         $displayData['title'] = CS_PROGNAME . ' | Client Pre/Post Tests';
         $displayData['nav'] = $this->mnav_brain_jar->navData();
         $displayData['mainTemplate'] = 'cpre_post_tests/quest_add_edit_view';
         $this->load->vars($displayData);
         $this->load->view('template');
     } else {
         $quest->strQuestion = trim($_POST['txtQuestion']);
         $quest->strAnswer = trim($_POST['txtAnswer']);
         //------------------------------------
         // update db tables and return
         //------------------------------------
         if ($bNew) {
             $this->load->library('util/up_down_top_bottom');
             $lQuestID = $this->cpptests->addNewQuestion($lPPTestID);
             $this->session->set_flashdata('msg', 'Pre/Post Question added');
         } else {
             $this->cpptests->updateQuestion();
             $this->session->set_flashdata('msg', 'Pre/Post Question updated');
         }
         redirect('cpre_post_tests/ppquest_view/viewQuestions/' . $lPPTestID);
     }
 }
Exemplo n.º 26
0
 function addFromCForm($lParentID, $lCFID)
 {
     //---------------------------------------------------------------------
     //
     //---------------------------------------------------------------------
     global $gErrMessages, $gbShowHiddenVerifyError;
     $this->load->helper('dl_util/verify_id');
     verifyID($this, $lCFID, 'custom form ID');
     $displayData = array();
     $displayData['js'] = '';
     $displayData['lCFID'] = $lCFID = (int) $lCFID;
     $displayData['lParentID'] = $lParentID = (int) $lParentID;
     $gbShowHiddenVerifyError = false;
     $gErrMessages = array();
     /*------------------------------------------------
           models/libraries/helpers
       ------------------------------------------------*/
     $params = array('enumStyle' => 'terse');
     $this->load->library('generic_rpt', $params);
     $this->load->model('custom_forms/mcustom_forms', 'cForm');
     $this->load->model('personalization/muser_fields', 'clsUF');
     $this->load->model('personalization/muser_fields_display', 'clsUFD');
     $this->load->model('admin/madmin_aco', 'clsACO');
     $this->load->model('admin/mpermissions', 'perms');
     $this->load->helper('dl_util/context');
     $this->load->helper('dl_util/custom_forms');
     $this->load->helper('dl_util/time_date');
     $this->load->library('util/dl_date_time', '', 'clsDateTime');
     // load the custom form
     $this->cForm->loadCustomFormsViaCFID($lCFID);
     $displayData['cForm'] = $cForm =& $this->cForm->customForms[0];
     $enumType = $cForm->enumContextType;
     // now that the context is known, verify the parent ID
     verifyIDsViaType($this, $enumType, $lParentID, true);
     // custom verification ?
     $displayData['bCusVerification'] = $bCusVerification = $cForm->strVerificationModule . '' != '';
     //-----------------------------
     // validation rules
     //-----------------------------
     $this->form_validation->set_error_delimiters('<div class="formError">', '</div>');
     if ($bCusVerification) {
         $this->load->helper('path');
         $this->form_validation->set_rules('hVerify', 'Hidden verification', 'callback_hiddenVerify[' . $cForm->strVerificationModule . ',' . $cForm->strVModEntryPoint . ']');
     }
     // personalized tables and associated fields
     $this->cForm->loadPTablesForDisplay($lCFID, $this->clsUF);
     $displayData['utables'] = $utables =& $this->cForm->utables;
     $displayData['lNumTables'] = $lNumTables = $this->cForm->lNumTables;
     setValidationUTables($displayData['js'], $lNumTables, $utables);
     if ($this->form_validation->run() == FALSE) {
         $this->load->library('generic_form');
         $this->load->model('util/mlist_generic', 'clsList');
         $this->load->helper('dl_util/web_layout');
         loadSupportModels($enumType, $lParentID);
         initUTableDates($displayData['js'], $lNumTables, $utables);
         initUTableDDLs($lNumTables, $utables);
         if (validation_errors() == '') {
             populateCustomTables($lNumTables, $utables, $lParentID);
             setCustomUTableDDLs($lNumTables, $utables);
         } else {
             setOnFormError($displayData);
             repopulateCustomTables($lNumTables, $utables);
         }
         //--------------------------
         // breadcrumbs
         //--------------------------
         $displayData['pageTitle'] = $this->cForm->strCustomFormsPageTitleAddEdit($enumType, $cForm->strFormName);
         $displayData['strHTMLSummary'] = strContextHTML($enumType, $lParentID, $enumType);
         $displayData['errMessages'] = arrayCopy($gErrMessages);
         $displayData['title'] = CS_PROGNAME . ' | Custom Forms';
         $displayData['nav'] = $this->mnav_brain_jar->navData();
         $displayData['mainTemplate'] = array('custom_forms/custom_form_data_entry_view');
         $this->load->vars($displayData);
         $this->load->view('template');
     } else {
         saveCustomPTables($lParentID, $lNumTables, $utables);
         $this->cForm->lLogFormSave($lParentID, $lCFID);
         $this->fromWhenceYeCame($lParentID, $enumType, $cForm);
     }
 }
Exemplo n.º 27
0
 function add_edit($lCRptID = 0)
 {
     //---------------------------------------------------------------------
     //
     //---------------------------------------------------------------------
     $this->load->helper('dl_util/verify_id');
     verifyIDsViaType($this, CENUM_CONTEXT_CUSTOMREPORT, $lCRptID, false);
     $displayData = array();
     $displayData['bNew'] = $bNew = $lCRptID <= 0;
     $displayData['lReportID'] = (int) $lCRptID;
     $displayData['js'] = '';
     //-------------------------
     // models & helpers
     //-------------------------
     $params = array('enumStyle' => 'terse');
     $this->load->library('generic_rpt', $params);
     $this->load->model('admin/madmin_aco');
     $this->load->model('creports/mcreports', 'clsCReports');
     $this->load->helper('dl_util/web_layout');
     $this->load->helper('reports/creport_util');
     $cRptTypes = loadCReportTypeArray();
     $this->clsCReports->loadReportViaID($lCRptID, false);
     $report =& $this->clsCReports->reports[0];
     $this->load->helper('js/div_hide_show');
     $displayData['js'] .= showHideDiv();
     //-------------------------
     // validation rules
     //-------------------------
     $this->form_validation->set_error_delimiters('<div class="formError">', '</div>');
     $this->form_validation->set_rules('txtName', 'Report Name', 'trim|required|callback_cRptNameDupTest[' . $lCRptID . ']');
     $this->form_validation->set_rules('txtNotes', 'Notes', 'trim');
     if ($this->form_validation->run() == FALSE) {
         $displayData['formData'] = new stdClass();
         $this->load->library('generic_form');
         if (!$bNew) {
             $displayData['formData']->strRptType = $report->strXlatedRptType;
         }
         // first time displayed, no user data entry errors
         if (validation_errors() == '') {
             $displayData['formData']->strName = $report->strName;
             $displayData['formData']->strNotes = $report->strNotes;
             $displayData['formData']->bPrivate = $report->bPrivate;
             if ($bNew) {
                 $displayData['formData']->strCRptTypeDDL = strCRptTypesDDL($cRptTypes, false, $report->enumRptType);
             }
         } else {
             setOnFormError($displayData);
             $displayData['formData']->strName = set_value('txtName');
             $displayData['formData']->strNotes = set_value('txtNotes');
             $displayData['formData']->bPrivate = @$_POST['chkPrivate'] == 'TRUE';
             if ($bNew) {
                 $displayData['formData']->strCRptTypeDDL = strCRptTypesDDL($cRptTypes, false, @$_POST['ddlCRpt']);
             }
         }
         //--------------------------
         // breadcrumbs
         //--------------------------
         $displayData['pageTitle'] = anchor('main/menu/reports', 'Reports', 'class="breadcrumb"') . ' | ' . ($bNew ? 'Add' : 'Edit') . ' Custom Report';
         $displayData['title'] = CS_PROGNAME . ' | Custom Reports';
         $displayData['nav'] = $this->mnav_brain_jar->navData();
         $displayData['mainTemplate'] = 'creports/add_edit_view';
         $this->load->vars($displayData);
         $this->load->view('template');
     } else {
         $report->strName = trim($_POST['txtName']);
         $report->strNotes = trim($_POST['txtNotes']);
         $report->bPrivate = @$_POST['chkPrivate'] == 'TRUE';
         if ($bNew) {
             $report->enumRptType = trim($_POST['ddlCRpt']);
         }
         //------------------------------------
         // update db tables and return
         //------------------------------------
         if ($bNew) {
             $lCRptID = $this->clsCReports->addNewCReport();
             $this->session->set_flashdata('msg', 'Custom report added');
             redirect('creports/view_fields/view/' . $lCRptID . '/true');
         } else {
             $this->clsCReports->updateCReport($lCRptID);
             $this->session->set_flashdata('msg', 'Custom report updated');
             redirect('creports/custom_directory/viewRec/' . $lCRptID);
         }
     }
 }
Exemplo n.º 28
0
 function addEditTemplate($lBSID, $lTemplateID = null, $lAuctionID = null)
 {
     //---------------------------------------------------------------------
     //
     //---------------------------------------------------------------------
     global $glChapterID, $genumMeasurePref;
     if (!bTestForURLHack('showAuctions')) {
         return;
     }
     $bMetric = $genumMeasurePref == 'metric';
     $displayData = array();
     $displayData['formData'] = new stdClass();
     $displayData['js'] = '';
     $displayData['lBSID'] = $lBSID = (int) $lBSID;
     $displayData['bNew'] = $bNew = $lBSID <= 0;
     //-------------------------
     // models & helpers
     //-------------------------
     $this->load->helper('auctions/auction');
     $this->load->model('auctions/mbid_sheets', 'cBidSheets');
     $this->load->model('auctions/mauctions', 'cAuction');
     $this->load->model('img_docs/mimage_doc', 'cImgDoc');
     $this->load->model('admin/morganization', 'clsChapter');
     $this->load->model('admin/madmin_aco', 'clsACO');
     $this->load->helper('dl_util/link_auction');
     $this->load->helper('dl_util/pdf');
     $this->load->helper('img_docs/image_doc');
     $this->load->helper('img_docs/link_img_docs');
     $this->load->helper('dl_util/web_layout');
     $this->cBidSheets->loadSheetByBSID($lBSID);
     $displayData['bs'] = $bs =& $this->cBidSheets->bidSheets[0];
     if ($bNew) {
         $displayData['lTemplateID'] = $lTemplateID = (int) $lTemplateID;
         $bs->lAuctionID = $lAuctionID = (int) $lAuctionID;
         $this->cAuction->loadAuctionByAucID($lAuctionID);
         $auction =& $this->cAuction->auctions[0];
         $bs->strAuctionName = $auction->strAuctionName;
         $bs->dteAuction = $auction->dteAuction;
     } else {
         $displayData['lTemplateID'] = $lTemplateID = $bs->lTemplateID;
     }
     strXlateTemplate($lTemplateID, $displayData['tInfo']);
     $displayData['lAuctionID'] = $lAuctionID = $bs->lAuctionID;
     //-------------------------
     // validation rules
     //-------------------------
     $this->form_validation->set_error_delimiters('<div class="formError">', '</div>');
     $this->form_validation->set_rules('txtBSName', 'Bid Sheet Name', 'trim|required');
     $this->form_validation->set_rules('txtBSName', 'Bid Sheet Name', 'trim|required|' . 'callback_verifyUniqueBidSheet[' . $lAuctionID . ',' . $lBSID . ']');
     $this->form_validation->set_rules('txtDesc', 'Bid Sheet Description', 'trim');
     $this->form_validation->set_rules('txtSUSCol1', 'Signup Column', 'callback_verifySUColumns');
     $this->form_validation->set_rules('txtSUSCol2', 'Signup Column', 'trim');
     $this->form_validation->set_rules('txtSUSCol3', 'Signup Column', 'trim');
     $this->form_validation->set_rules('txtSUSCol4', 'Signup Column', 'trim');
     $this->form_validation->set_rules('txtSUSColWidth1', 'Signup Column Width', 'trim|required');
     $this->form_validation->set_rules('txtSUSColWidth2', 'Signup Column Width', 'trim');
     $this->form_validation->set_rules('txtSUSColWidth3', 'Signup Column Width', 'trim');
     $this->form_validation->set_rules('txtSUSColWidth4', 'Signup Column Width', 'trim');
     $this->form_validation->set_rules('rdoLogo', 'Logo', 'trim');
     $this->form_validation->set_rules('ddlPaperSize', 'Paper Size', 'trim|required|callback_verifyDDLPaperSize');
     $this->form_validation->set_rules('ddlExtraSheets', 'Extra Sheets', 'trim|required|callback_verifyDDLExtraSheets');
     $this->form_validation->set_rules('chkIncludeMinBid', 'Show field on bid sheet', 'trim');
     $this->form_validation->set_rules('chkIncludeOrgName', 'Show field on bid sheet', 'trim');
     $this->form_validation->set_rules('chkIncludeMinBidInc', 'Show field on bid sheet', 'trim');
     $this->form_validation->set_rules('chkIncludeBuyItNow', 'Show field on bid sheet', 'trim');
     $this->form_validation->set_rules('chkIncludeReserve', 'Show field on bid sheet', 'trim');
     $this->form_validation->set_rules('chkIncludeDate', 'Show field on bid sheet', 'trim');
     $this->form_validation->set_rules('chkIncludeFooter', 'Show field on bid sheet', 'trim');
     $this->form_validation->set_rules('chkIncludePkgName', 'Show field on bid sheet', 'trim');
     $this->form_validation->set_rules('chkIncludePkgID', 'Show field on bid sheet', 'trim');
     $this->form_validation->set_rules('chkIncludePkgDesc', 'Show field on bid sheet', 'trim');
     $this->form_validation->set_rules('chkIncludePkgImage', 'Show field on bid sheet', 'trim');
     $this->form_validation->set_rules('chkIncludePkgEstValue', 'Show field on bid sheet', 'trim');
     $this->form_validation->set_rules('chkIncludeItemName', 'Show field on bid sheet', 'trim');
     $this->form_validation->set_rules('chkIncludeItemID', 'Show field on bid sheet', 'trim');
     $this->form_validation->set_rules('chkIncludeItemDesc', 'Show field on bid sheet', 'trim');
     $this->form_validation->set_rules('chkIncludeItemImage', 'Show field on bid sheet', 'trim');
     $this->form_validation->set_rules('chkIncludeItemDonor', 'Show field on bid sheet', 'trim');
     $this->form_validation->set_rules('chkIncludeItemEstValue', 'Show field on bid sheet', 'trim');
     $this->form_validation->set_rules('chkIncludeSignup', 'Show field on bid sheet', 'trim');
     if ($this->form_validation->run() == FALSE) {
         $displayData['formData'] = new stdClass();
         $displayData['signUpCols'] = array();
         $this->load->library('generic_form');
         loadDefaultTemplateVals($lTemplateID, $bNew, $displayData['formData'], $bs);
         $bShowOrgLogo = $displayData['formData']->bShowIncludeOrgLogo;
         // first time displayed, no user data entry errors
         if (validation_errors() == '') {
             $displayData['formData']->txtBSName = $bs->strSheetName;
             $displayData['formData']->txtDesc = $bs->strDescription;
             if ($bNew) {
                 $displayData['strPaperSizeDDL'] = strPaperSizeDDL('ddlPaperSize', true, -1, $bMetric);
                 $displayData['strExtraSheetsDDL'] = $this->cBidSheets->strExtraSheetsDDL('ddlExtraSheets', 0, true);
                 //               $this->cImgDoc->loadProfileImage(CENUM_CONTEXT_ORGANIZATION, $glChapterID);
                 $this->cImgDoc->loadProfileImage(CENUM_CONTEXT_AUCTION, $lAuctionID);
                 if ($this->cImgDoc->lNumImageDocs == 0) {
                     $lLogoID = null;
                 } else {
                     $lLogoID = $this->cImgDoc->imageDocs[0]->lKeyID;
                 }
             } else {
                 $displayData['strPaperSizeDDL'] = strPaperSizeDDL('ddlPaperSize', true, $bs->enumPaperType, $bMetric);
                 $displayData['strExtraSheetsDDL'] = $this->cBidSheets->strExtraSheetsDDL('ddlExtraSheets', $bs->lNumSignupPages, true);
                 $lLogoID = $bs->lLogoImgID;
             }
             for ($idx = 1; $idx <= 4; ++$idx) {
                 $displayData['signUpCols'][$idx] = new stdClass();
                 $dsuC =& $displayData['signUpCols'][$idx];
                 $bsuC =& $bs->signUpCols[$idx];
                 if ($bsuC->bShow) {
                     $dsuC->heading = $bsuC->heading;
                     $dsuC->width = $bsuC->width;
                 } else {
                     $dsuC->heading = '';
                     $dsuC->width = '';
                 }
             }
             if ($bNew) {
                 $displayData['signUpCols'][1]->heading = 'Bid Amount';
                 $displayData['signUpCols'][1]->width = '20';
                 $displayData['signUpCols'][2]->heading = 'Name/Address';
                 $displayData['signUpCols'][2]->width = '50';
                 $displayData['signUpCols'][3]->heading = 'Phone';
                 $displayData['signUpCols'][3]->width = '30';
             }
         } else {
             setOnFormError($displayData);
             $displayData['formData']->txtBSName = set_value('txtBSName');
             $displayData['formData']->txtDesc = set_value('txtDesc');
             $lLogoID = set_value('rdoLogo');
             $displayData['strPaperSizeDDL'] = strPaperSizeDDL('ddlPaperSize', true, set_value('ddlPaperSize'), $bMetric);
             $displayData['strExtraSheetsDDL'] = $this->cBidSheets->strExtraSheetsDDL('ddlExtraSheets', set_value('ddlExtraSheets'), true);
             $displayData['formData']->bIncludeOrgName = set_value('chkIncludeOrgName');
             $displayData['formData']->bIncludeMinBid = set_value('chkIncludeMinBid');
             $displayData['formData']->bIncludeMinBidInc = set_value('chkIncludeMinBidInc');
             $displayData['formData']->bIncludeBuyItNow = set_value('chkIncludeBuyItNow');
             $displayData['formData']->bIncludeReserve = set_value('chkIncludeReserve');
             $displayData['formData']->bIncludeDate = set_value('chkIncludeDate');
             $displayData['formData']->bIncludeFooter = set_value('chkIncludeFooter');
             $displayData['formData']->bIncludePackageName = set_value('chkIncludePkgName');
             $displayData['formData']->bIncludePackageID = set_value('chkIncludePkgID');
             $displayData['formData']->bIncludePackageDesc = set_value('chkIncludePkgDesc');
             $displayData['formData']->bIncludePackageImage = set_value('chkIncludePkgImage');
             $displayData['formData']->bIncludePackageEstValue = set_value('chkIncludePkgEstValue');
             $displayData['formData']->bIncludeItemName = set_value('chkIncludeItemName');
             $displayData['formData']->bIncludeItemID = set_value('chkIncludeItemID');
             $displayData['formData']->bIncludeItemDesc = set_value('chkIncludeItemDesc');
             $displayData['formData']->bIncludeItemImage = set_value('chkIncludeItemImage');
             $displayData['formData']->bIncludeItemDonor = set_value('chkIncludeItemDonor');
             $displayData['formData']->bIncludeItemEstValue = set_value('chkIncludeItemEstValue');
             $displayData['formData']->bIncludeSignup = set_value('chkIncludeSignup');
             for ($idx = 1; $idx <= 4; ++$idx) {
                 $displayData['signUpCols'][$idx] = new stdClass();
                 $dsuC =& $displayData['signUpCols'][$idx];
                 $dsuC->heading = set_value('txtSUSCol' . $idx);
                 $dsuC->width = set_value('txtSUSColWidth' . $idx);
             }
         }
         if ($bShowOrgLogo) {
             // logo selection table
             $logoOpts = new stdClass();
             $logoOpts->enumEntryType = CENUM_IMGDOC_ENTRY_IMAGE;
             $logoOpts->enumContextType = CENUM_CONTEXT_AUCTION;
             // CENUM_CONTEXT_ORGANIZATION;
             $logoOpts->lFID = $lAuctionID;
             // $glChapterID;
             $logoOpts->lCellWidth = 70;
             $logoOpts->lCellHeight = 80;
             $logoOpts->lBorderWidth = 1;
             $logoOpts->lCellsPerRow = 4;
             $logoOpts->bShowCaption = true;
             $logoOpts->bShowDescription = false;
             $logoOpts->bShowDate = false;
             $logoOpts->bShowOriginalFN = false;
             $logoOpts->bAddRadioSelect = true;
             $logoOpts->strRadioFieldName = 'rdoLogo';
             $logoOpts->lMatchID = $lLogoID;
             $logoOpts->bShowNone = true;
             $logoOpts->strShowNoneLabel = 'No logo image';
             $displayData['formData']->rdoLogo = $this->cImgDoc->strImageDocTerseTable($logoOpts, $displayData['lNumLogoImages']);
         }
         //--------------------------
         // breadcrumbs
         //--------------------------
         $displayData['pageTitle'] = GSTR_AUCTIONTOPLEVEL . ' | ' . anchor('auctions/auctions/auctionEvents', 'Silent Auctions', 'class="breadcrumb"') . ' | ' . anchor('auctions/bid_templates/main', 'Auction Bid Templates', 'class="breadcrumb"') . ' | ' . ($bNew ? 'Add New' : 'Edit') . '  Bid Template';
         $displayData['title'] = CS_PROGNAME . ' | Bid Sheets';
         $displayData['nav'] = $this->mnav_brain_jar->navData();
         $displayData['mainTemplate'] = 'auctions/add_edit_bidsheet_view';
         $this->load->vars($displayData);
         $this->load->view('template');
     } else {
         $bs->bIncludeOrgName = @$_POST['chkIncludeOrgName'] == 'true';
         $bs->bIncludeItemEstValue = @$_POST['chkIncludeItemEstValue'] == 'true';
         $bs->bIncludeSignup = @$_POST['chkIncludeSignup'] == 'true';
         $bs->bIncludeItemDonor = @$_POST['chkIncludeItemDonor'] == 'true';
         $bs->bIncludeItemImage = @$_POST['chkIncludeItemImage'] == 'true';
         $bs->bIncludeItemDesc = @$_POST['chkIncludeItemDesc'] == 'true';
         $bs->bIncludeItemID = @$_POST['chkIncludeItemID'] == 'true';
         $bs->bIncludeItemName = @$_POST['chkIncludeItemName'] == 'true';
         $bs->bIncludePackageEstValue = @$_POST['chkIncludePkgEstValue'] == 'true';
         $bs->bIncludePackageImage = @$_POST['chkIncludePkgImage'] == 'true';
         $bs->bIncludePackageDesc = @$_POST['chkIncludePkgDesc'] == 'true';
         $bs->bIncludePackageID = @$_POST['chkIncludePkgID'] == 'true';
         $bs->bIncludePackageName = @$_POST['chkIncludePkgName'] == 'true';
         $bs->bIncludeFooter = @$_POST['chkIncludeFooter'] == 'true';
         $bs->bIncludeDate = @$_POST['chkIncludeDate'] == 'true';
         $bs->bIncludeReserve = @$_POST['chkIncludeReserve'] == 'true';
         $bs->bIncludeMinBidInc = @$_POST['chkIncludeMinBidInc'] == 'true';
         $bs->bIncludeBuyItNow = @$_POST['chkIncludeBuyItNow'] == 'true';
         $bs->bIncludeMinBid = @$_POST['chkIncludeMinBid'] == 'true';
         $bs->strDescription = trim($_POST['txtDesc']);
         $bs->strSheetName = trim($_POST['txtBSName']);
         $bs->enumPaperType = trim($_POST['ddlPaperSize']);
         $bs->lNumSignupPages = (int) trim($_POST['ddlExtraSheets']);
         $bs->lTemplateID = $lTemplateID;
         $bs->bIncludeOrgLogo = isset($_POST['rdoLogo']);
         if ($bs->bIncludeOrgLogo) {
             $bs->lLogoImgID = (int) $_POST['rdoLogo'];
             if ($bs->lLogoImgID <= 0) {
                 $bs->lLogoImgID = null;
             }
         } else {
             $bs->lLogoImgID = null;
         }
         // column headings
         for ($idx = 1; $idx <= 4; ++$idx) {
             $suCol =& $bs->signUpCols[$idx];
             $suCol->heading = null;
             $suCol->width = null;
             $suCol->bShow = false;
         }
         $idx = 1;
         for ($jidx = 1; $jidx <= 4; ++$jidx) {
             $strHeading = trim(@$_POST['txtSUSCol' . $jidx]);
             $lWidth = (int) trim(@$_POST['txtSUSColWidth' . $jidx]);
             if ($strHeading != '') {
                 $bs->signUpCols[$idx]->heading = $strHeading;
                 $bs->signUpCols[$idx]->width = $lWidth;
                 $bs->signUpCols[$idx]->bShow = true;
                 ++$idx;
             }
         }
         //------------------------------------
         // update db tables and return
         //------------------------------------
         if ($bNew) {
             $lBSID = $this->cBidSheets->addNewBidSheet();
             $this->session->set_flashdata('msg', 'Bid sheet added!');
         } else {
             $this->cBidSheets->updateBidSheet($lBSID);
             $this->session->set_flashdata('msg', 'Bid sheet updated!');
         }
         redirect('auctions/bid_templates/viewBidSheet/' . $lBSID);
     }
 }
 function addEdit($enumGroupType, $lGID)
 {
     //---------------------------------------------------------------------
     //
     //---------------------------------------------------------------------
     if (!bAllowAccess('adminOnly')) {
         return;
     }
     $this->load->helper('dl_util/verify_id');
     if ($lGID != '0') {
         verifyID($this, $lGID, 'group ID');
     }
     $displayData = array();
     $lGID = (int) $lGID;
     //-------------------------
     // models & helpers
     //-------------------------
     $this->load->model('groups/mgroups', 'clsGroups');
     $this->load->helper('groups/groups');
     $this->load->helper('dl_util/web_layout');
     $displayData['strGroupType'] = $strGroupType = strXlateContext($enumGroupType);
     groupExtensionProperties($enumGroupType, $gProps);
     $displayData['gProps'] =& $gProps;
     //----------------------------
     // validation rules
     //----------------------------
     $this->form_validation->set_error_delimiters('<div class="formError">', '</div>');
     $this->form_validation->set_rules('txtGroupName', $strGroupType . ' Group Name', 'trim|callback_groupNameBlankTest|callback_groupNameDupTest[' . $enumGroupType . ',' . $lGID . ']');
     if ($gProps->extended) {
         if ($gProps->lNumBool > 0) {
             foreach ($gProps->bools as $bField) {
                 $this->form_validation->set_rules($bField->strFormFN, 'Check Box', 'trim');
             }
         }
         if ($gProps->lNumInt > 0) {
             echo __FILE__ . ' ' . __LINE__ . '<br>' . "\n";
             die;
         }
     }
     if ($this->form_validation->run() == FALSE) {
         $this->load->library('generic_form');
         $displayData['lGID'] = $lGID = (int) $lGID;
         $displayData['bNew'] = $bNew = $lGID <= 0;
         $displayData['enumGroupType'] = $this->clsGroups->gp_enumGroupType = $enumGroupType = htmlspecialchars($enumGroupType);
         if (validation_errors() == '') {
             $this->clsGroups->loadActiveGroupsViaType($enumGroupType, '', '', true, $lGID);
             $gl =& $this->clsGroups->arrGroupList[0];
             $displayData['strGroupName'] = htmlspecialchars($gl->strGroupName);
             // set the database values for extended fields
             if ($gProps->extended) {
                 if ($gProps->lNumBool > 0) {
                     foreach ($gProps->bools as $bField) {
                         $strFN = $bField->strDBFN;
                         $bField->bValue = $gl->{$strFN};
                     }
                 }
                 if ($gProps->lNumInt > 0) {
                     echo __FILE__ . ' ' . __LINE__ . '<br>' . "\n";
                     die;
                 }
             }
         } else {
             setOnFormError($displayData);
             $displayData['strGroupName'] = set_value('txtGroupName');
             if ($gProps->extended) {
                 if ($gProps->lNumBool > 0) {
                     foreach ($gProps->bools as $bField) {
                         $bField->bValue = set_value($bField->strFormFN) == 'true';
                     }
                 }
                 if ($gProps->lNumInt > 0) {
                     echo __FILE__ . ' ' . __LINE__ . '<br>' . "\n";
                     die;
                 }
             }
         }
         $displayData['nav'] = $this->mnav_brain_jar->navData();
         //----------------------
         // set breadcrumbs
         //----------------------
         $displayData['title'] = CS_PROGNAME . ' | Groups';
         $displayData['pageTitle'] = anchor('main/menu/admin', 'Admin', 'class="breadcrumb"') . ' | ' . anchor('admin/alists/showLists', 'Lists', 'class="breadcrumb"') . ' | ' . anchor('groups/groups_view/view/' . $enumGroupType, 'Groups: ' . $strGroupType, 'class="breadcrumb"') . ' | ' . ($bNew ? 'Add New' : 'Edit');
         $displayData['mainTemplate'] = 'groups/group_add_edit_view';
         $this->load->vars($displayData);
         $this->load->view('template');
     } else {
         $bNew = $lGID <= 0;
         $strGroupCat = strXlateContext($enumGroupType);
         $this->clsGroups->loadActiveGroupsViaType($this->clsGroups->gp_enumGroupType, '', '', true, -1);
         $clsList = $this->clsGroups->arrGroupList[0];
         $clsList->lKeyID = $lGID;
         $clsList->strGroupName = xss_clean(trim($_POST['txtGroupName']));
         $clsList->dteExpire = strtotime('1/1/2030');
         $clsList->bTempGroup = false;
         $clsList->strNotes = '';
         if ($gProps->extended) {
             if ($gProps->lNumBool > 0) {
                 foreach ($gProps->bools as $bField) {
                     $strFN = $bField->strDBFN;
                     $clsList->{$strFN} = @$_POST[$bField->strFormFN] == 'true';
                 }
             }
             if ($gProps->lNumInt > 0) {
                 echo __FILE__ . ' ' . __LINE__ . '<br>' . "\n";
                 die;
             }
         }
         if ($bNew) {
             $this->clsGroups->gp_enumGroupType = $enumGroupType;
             $this->session->set_flashdata('msg', $strGroupCat . ' Group added');
             $this->clsGroups->lAddNewGroupParent();
         } else {
             $this->session->set_flashdata('msg', $strGroupCat . ' Group updated');
             $this->clsGroups->updateGroupParentRec();
         }
         redirect('groups/groups_view/view/' . $enumGroupType);
     }
 }
Exemplo n.º 30
0
 private function addEditActivityCommon($bAsVol, $lVolID, $lActivityID)
 {
     //---------------------------------------------------------------------
     //
     //---------------------------------------------------------------------
     global $gbDateFormatUS;
     $this->load->helper('dl_util/verify_id');
     verifyID($this, $lVolID, 'volunteer ID');
     $displayData = array();
     $displayData['lVolID'] = $lVolID = (int) $lVolID;
     $displayData['lActivityID'] = $lActivityID = (int) $lActivityID;
     $displayData['bNew'] = $bNew = $lActivityID <= 0;
     $displayData['bAsVol'] = $bAsVol;
     //-------------------------
     // models & helpers
     //-------------------------
     $this->load->model('vols/mvol_event_hours', 'clsVolHours');
     $this->load->model('vols/mvol', 'clsVol');
     $this->load->model('people/mpeople', 'clsPeople');
     $this->load->model('util/mlist_generic', 'clsList');
     $this->load->helper('dl_util/time_date');
     // for date verification
     $params = array('enumStyle' => 'terse');
     $this->load->library('generic_rpt', $params);
     $this->load->helper('dl_util/web_layout');
     $this->clsVolHours->loadVolActivitiesViaID($lActivityID);
     $act =& $this->clsVolHours->unActivity[0];
     //-------------------------
     // validation rules
     //-------------------------
     $this->form_validation->set_error_delimiters('<div class="formError">', '</div>');
     $this->form_validation->set_rules('ddlStart', 'Start Time', 'trim|callback_vactVerifyStart');
     $this->form_validation->set_rules('ddlDuration', 'Duration', 'trim|callback_vactVerifyDuration');
     $this->form_validation->set_rules('ddlActivity', 'Activity', 'trim|callback_vactVerifyAct');
     $this->form_validation->set_rules('ddlJobCode', 'Job Code', 'trim');
     $this->form_validation->set_rules('txtDate', 'Date of Volunteer Activity', 'trim|required' . '|callback_verifyUnDateValid');
     $this->form_validation->set_rules('txtNotes', 'Notes', 'trim');
     if ($this->form_validation->run() == FALSE) {
         $displayData['formData'] = new stdClass();
         $this->load->library('generic_form');
         // first time displayed, no user data entry errors
         if (validation_errors() == '') {
             if (is_null($act->dteActivityDate)) {
                 $displayData['formData']->txtDate = '';
                 $displayData['formData']->lStartTime = strDisplayTimeDDL(null, true, true);
             } else {
                 $displayData['formData']->txtDate = strNumericDateViaMysqlDate($act->mysqlActivityDate, $gbDateFormatUS);
                 $displayData['formData']->lStartTime = strDisplayTimeDDL($act->dteActivityDate, true, true);
             }
             $displayData['formData']->strNotes = $act->strNotes;
             $displayData['formData']->enumDuration = strDurationDDL(true, false, lDurationHrsToQuarters($act->dHoursWorked), true);
             // activity generic list
             $this->clsList->strBlankDDLName = '&nbsp;';
             $this->clsList->enumListType = CENUM_LISTTYPE_VOLACT;
             $displayData['formData']->strVolActivity = $this->clsList->strLoadListDDL('ddlActivity', true, $act->lActivityID);
             // job code generic list
             $this->clsList->enumListType = CENUM_LISTTYPE_VOLJOBCODES;
             $this->clsList->strBlankDDLName = '(no job code)';
             $displayData['strDDLJobCode'] = $this->clsList->strLoadListDDL('ddlJobCode', true, $act->lJobCode);
         } else {
             setOnFormError($displayData);
             $displayData['formData']->txtDate = set_value('txtDate');
             $displayData['formData']->lStartTime = $lStartTime = strDisplayTimeDDL(set_value('ddlStart'), true, true);
             $displayData['formData']->strNotes = set_value('txtNotes');
             $displayData['formData']->enumDuration = strDurationDDL(true, false, set_value('ddlDuration'), true);
             // activity generic list
             $this->clsList->strBlankDDLName = '&nbsp;';
             $this->clsList->enumListType = CENUM_LISTTYPE_VOLACT;
             $displayData['formData']->strVolActivity = $this->clsList->strLoadListDDL('ddlActivity', true, set_value('ddlActivity'));
             // job code generic list
             $this->clsList->enumListType = CENUM_LISTTYPE_VOLJOBCODES;
             $this->clsList->strBlankDDLName = '(no job code)';
             $displayData['strDDLJobCode'] = $this->clsList->strLoadListDDL('ddlJobCode', true, set_value('ddlJobCode'));
         }
         $this->clsVol->loadVolRecsViaVolID($lVolID, true);
         $displayData['contextSummary'] = $this->clsVol->volHTMLSummary(0);
         //--------------------------
         // breadcrumbs
         //--------------------------
         if ($bAsVol) {
             $displayData['pageTitle'] = 'Log volunteer hours';
         } else {
             $displayData['pageTitle'] = anchor('main/menu/vols', 'Volunteers', 'class="breadcrumb"') . ' | ' . anchor('/volunteers/vol_record/volRecordView/' . $lVolID, 'Record', 'class="breadcrumb"') . ' | Log volunteer hours';
         }
         $displayData['title'] = CS_PROGNAME . ' | Volunteers';
         $displayData['nav'] = $this->mnav_brain_jar->navData();
         $displayData['mainTemplate'] = 'vols/hrs_unscheduled_add_edit_view';
         $this->load->vars($displayData);
         $this->load->view('template');
     } else {
         $act->lVolID = $lVolID;
         $act->strNotes = trim($_POST['txtNotes']);
         $act->lActivityID = (int) trim($_POST['ddlActivity']);
         $act->dHoursWorked = (int) trim($_POST['ddlDuration']) / 4;
         $strDate = trim($_POST['txtDate']);
         MDY_ViaUserForm($strDate, $lMon, $lDay, $lYear, $gbDateFormatUS);
         $lDDLStart = (int) $_POST['ddlStart'];
         quartersToHrsMin($lDDLStart, $lHours, $lMinutes);
         $act->dteActivityDate = mktime($lHours, $lMinutes, 0, $lMon, $lDay, $lYear);
         $act->lJobCode = (int) $_POST['ddlJobCode'];
         if ($act->lJobCode <= 0) {
             $act->lJobCode = null;
         }
         //------------------------------------
         // update db tables and return
         //------------------------------------
         if ($bNew) {
             $lActivityID = $this->clsVolHours->addUnscheduledHrs();
             $this->session->set_flashdata('msg', 'Volunteer hours were recorded.');
         } else {
             $this->clsVolHours->updateUnscheduledHrs($lActivityID);
             $this->session->set_flashdata('msg', 'Record updated');
         }
         if ($bAsVol) {
             redirect('vol_reg/vol_hours/view');
         } else {
             redirect('reports/pre_vol_hours/viaVolID/' . $lVolID . '/false');
         }
     }
 }