public function notify_users($note) { $gopt = new RM_Options(); if ($gopt->get_value_of('user_notification_for_notes') == "yes") { if ($note->get_status() != 'publish') { return; } $submission = new RM_Submissions(); $submission->load_from_db($note->get_submission_id()); $email = new stdClass(); //echo '<pre>'; //print_r($submission); die; $email->to = $submission->get_user_email(); $from_email = $gopt->get_value_of('senders_email_formatted'); $header = "From: {$from_email}\r\n"; $header .= "MIME-Version: 1.0\r\n"; $header .= "Content-Type: text/html; charset=ISO-8859-1\r\n"; $email->subject = get_bloginfo('name', 'display') . " Notification from Admin "; $email->message = RM_UI_Strings::get('MSG_NOTE_FROM_ADMIN') . $note->get_notes(); $email->header = $header; $email->attachments = array(); RM_Utilities::send_mail($email); } }
public function submissions($model, RM_Front_Service $service, $request, $params) { $i = 0; $user_email = $service->get_user_email(); //var_dump($user_email);die; if (null != $user_email) { if (isset($request->req['submission_id'])) { $submission = new RM_Submissions(); $submission->load_from_db($request->req['submission_id']); if ($submission->get_user_email() == $user_email) { $view = $this->mv_handler->setView('front_submission_data', true); $data = new stdClass(); $settings = new RM_Options(); $data->is_authorized = true; $data->submission = $submission; $data->payment = $service->get('PAYPAL_LOGS', array('submission_id' => $submission->get_submission_id()), array('%d'), 'row', 0, 99999); if ($data->payment != null) { $data->payment->total_amount = $settings->get_formatted_amount($data->payment->total_amount, $data->payment->currency); if ($data->payment->log) { $data->payment->log = maybe_unserialize($data->payment->log); } } $data->notes = $service->get('NOTES', array('submission_id' => $submission->get_submission_id(), 'status' => 'publish'), array('%d', '%s'), 'results', 0, 99999, '*', null, true); $i = 0; if (is_array($data->notes)) { foreach ($data->notes as $note) { $data->notes[$i]->author = get_userdata($note->published_by)->display_name; if ($note->last_edited_by) { $data->notes[$i++]->editor = get_userdata($note->last_edited_by)->display_name; } else { $data->notes[$i++]->editor = null; } } } /* * Check submission type */ $form = new RM_Forms(); $form->load_from_db($submission->get_form_id()); $form_type = $form->get_form_type() == "1" ? "Registration" : "Contact"; $data->form_type = $form_type; $data->form_type_status = $form->get_form_type(); $data->form_name = $form->get_form_name(); $data->form_is_unique_token = $form->get_form_is_unique_token(); /* * User details if form is registration type */ if ($form->get_form_type() == "1") { $email = $submission->get_user_email(); if ($email != "") { $user = get_user_by('email', $email); $data->user = $user; } } return $view->read($data); } else { $view = $this->mv_handler->setView('not_authorized', true); } $msg = RM_UI_Strings::get('MSG_INVALID_SUBMISSION_ID_FOR_EMAIL'); return $view->read($msg); } else { $data = new stdClass(); $data->is_authorized = true; $data->submissions = array(); $data->form_names = array(); $data->submission_exists = false; //data for user page $user = get_user_by('email', $user_email); if ($user instanceof WP_User) { $data->is_user = true; $data->user = $user; $data->custom_fields = $service->get_custom_fields($user_email); } else { $data->is_user = false; } //For pagination of submissions $entries_per_page_sub = 20; $req_page_sub = isset($request->req['rm_reqpage_sub']) && $request->req['rm_reqpage_sub'] > 0 ? $request->req['rm_reqpage_sub'] : 1; $offset_sub = ($req_page_sub - 1) * $entries_per_page_sub; $total_entries_sub = $service->get_submission_count($user_email); $submissions = $service->get_submissions_by_email($user_email, $entries_per_page_sub, $offset_sub); $submission_ids = array(); if ($submissions) { $data->submission_exists = true; foreach ($submissions as $submission) { $form_name = $service->get('FORMS', array('form_id' => $submission->form_id), array('%d'), 'var', 0, 1, 'form_name'); $data->submissions[$i] = new stdClass(); $data->submissions[$i]->submission_ids = array(); $data->submissions[$i]->submission_id = $submission->submission_id; $submission_ids[$i] = $submission->submission_id; $data->submissions[$i]->submitted_on = $submission->submitted_on; $data->submissions[$i]->form_name = $form_name; $data->form_names[$submission->submission_id] = $form_name; $i++; } $settings = new RM_Options(); $data->date_format = get_option('date_format'); $data->payments = $service->get_payments_by_submission_id($submission_ids, 999999, 0, null, true); $i = 0; if ($data->payments) { foreach ($data->payments as $p) { $data->payments[$i]->total_amount = $settings->get_formatted_amount($data->payments[$i]->total_amount, $data->payments[$i]->currency); $i++; } } //For pagination of payments $entries_per_page_pay = 20; $req_page_pay = isset($request->req['rm_reqpage_pay']) && $request->req['rm_reqpage_pay'] > 0 ? $request->req['rm_reqpage_pay'] : 1; $data->offset_pay = $offset_pay = ($req_page_pay - 1) * $entries_per_page_pay; $total_entries_pay = $i; $data->total_pages_pay = (int) ($total_entries_pay / $entries_per_page_pay) + ($total_entries_pay % $entries_per_page_pay == 0 ? 0 : 1); $data->curr_page_pay = $req_page_pay; $data->starting_serial_number_pay = $offset_pay + 1; $data->end_offset_this_page = $data->curr_page_pay < $data->total_pages_pay ? $data->offset_pay + $entries_per_page_pay : $total_entries_pay; //Pagination Ends payments //$data->rm_slug = $request->req['page']; //$data->stat_data = $service->get_form_stats($data->current_form_id, $offset, $entries_per_page); $data->total_pages_sub = (int) ($total_entries_sub / $entries_per_page_sub) + ($total_entries_sub % $entries_per_page_sub == 0 ? 0 : 1); $data->curr_page_sub = $req_page_sub; $data->starting_serial_number_sub = $offset_sub + 1; //Pagination Ends submissions $data->active_tab_index = isset($request->req['rm_tab']) ? (int) $request->req['rm_tab'] : 0; $view = $this->mv_handler->setView('front_submissions', true); return $view->read($data); } elseif ($data->is_user === true) { $data->payments = false; $data->submissions = false; $view = $this->mv_handler->setView('front_submissions', true); return $view->read($data); } else { $view = $this->mv_handler->setView('not_authorized', true); $msg = RM_UI_Strings::get('MSG_NO_SUBMISSION_FRONT'); return $view->read($msg); } } } else { $view = $this->mv_handler->setView('not_authorized', true); $msg = RM_UI_Strings::get('MSG_NOT_AUTHORIZED'); return $view->read($msg); } }