public function get_id_handler() { global $FANNIE_OP_DB; $dbc = FannieDB::get($FANNIE_OP_DB); $cardno = $this->id; $notice = new CustomerNotificationsModel($dbc); if (isset($_REQUEST['savebtn'])) { $pk = isset($_REQUEST['pref_k']) ? $_REQUEST['pref_k'] : array(); $pv = isset($_REQUEST['pref_v']) ? $_REQUEST['pref_v'] : array(); if (is_array($pk) && is_array($pv) && count($pk) == count($pv)) { $availModel = new CustAvailablePrefsModel($dbc); $prefModel = new CustPreferencesModel($dbc); for ($i = 0; $i < count($pk); $i++) { $availModel->pref_key($pk[$i]); $availModel->load(); $prefModel->pref_key($pk[$i]); $prefModel->card_no($cardno); $prefModel->custAvailablePrefID($availModel->custAvailablePrefID()); $prefModel->pref_value($pv[$i]); $prefModel->save(); if ($pk[$i] == 'email_receipt' && filter_var($pv[$i], FILTER_VALIDATE_EMAIL)) { $notice->reset(); $notice->cardNo($cardno); $notice->source('email_receipt'); $notice->type('memlist'); $exists = $notice->find(); if (count($exists) > 0) { $notice = array_pop($exists); } $notice->message('✉'); $notice->save(); } elseif ($pk[$i] == 'email_receipt') { $notice->reset(); $notice->cardNo($cardno); $notice->source('email_receipt'); $notice->type('memlist'); foreach ($notice->find() as $obj) { $obj->delete(); } } } $this->add_onload_command("showBootstrapAlert('#alert-area', 'success', 'Saved Settings');\n"); } } return true; }