function performAction($environment, $action_array, $post_array) { global $formal_data; global $mail_success; global $mail_error_array; // Get the translator object $translator = $environment->getTranslationObject(); // perform action $user_manager = $environment->getUserManager(); $admin = $user_manager->getItem($action_array['user_item_id']); if (!isset($admin)) { $admin = $environment->getCurrentUserItem(); } if (isset($post_array['copy']) and !empty($post_array['copy']) and !in_array($action_array['user_item_id'], $action_array['selected_ids']) and count($action_array['selected_ids']) > 1) { $action_array['selected_ids'][] = $action_array['user_item_id']; } foreach ($action_array['selected_ids'] as $user_item_id) { $user = $user_manager->getItem($user_item_id); if (isset($user)) { $last_status = $user->getStatus(); } if ($action_array['action'] == 'USER_ACCOUNT_DELETE') { if ($environment->inPortal() or $environment->inServer()) { $authentication = $environment->getAuthenticationObject(); $authentication->delete($user_item_id); unset($authentication); } else { ################################ # FLAG: group room ################################ if ($environment->inGroupRoom()) { $current_context = $environment->getCurrentContextItem(); $group_item = $current_context->getLinkedGroupItem(); if (isset($group_item) and !empty($group_item)) { $project_room_item = $current_context->getLinkedProjectItem(); if (isset($project_room_item) and !empty($project_room_item)) { $project_room_user_item = $project_room_item->getUserByUserID($user->getUserID(), $user->getAuthSource()); $group_item->removeMember($project_room_user_item); unset($project_room_user_item); } unset($project_room_item); } unset($group_item); unset($current_context); } ################################ # FLAG: group room ################################ $hash_manager = $environment->getHashManager(); $hash_manager->deleteHashesForUser($user->getItemID()); $user->delete(); } $send_to = $user->getEmail(); } elseif ($action_array['action'] == 'USER_ACCOUNT_LOCK') { $hash_manager = $environment->getHashManager(); $hash_manager->deleteHashesForUser($user->getItemID()); $user->reject(); $user->save(); ################################ # FLAG: group room ################################ if ($environment->inGroupRoom()) { $current_context = $environment->getCurrentContextItem(); $group_item = $current_context->getLinkedGroupItem(); if (isset($group_item) and !empty($group_item)) { $project_room_item = $current_context->getLinkedProjectItem(); if (isset($project_room_item) and !empty($project_room_item)) { $project_room_user_item = $project_room_item->getUserByUserID($user->getUserID(), $user->getAuthSource()); $group_item->removeMember($project_room_user_item); unset($group_item); unset($project_room_user_item); } unset($project_room_item); } unset($current_context); } ################################ # FLAG: group room ################################ $send_to = $user->getEmail(); } elseif ($action_array['action'] == 'USER_ACCOUNT_FREE') { // link to group 'ALL' in project rooms if ($environment->inProjectRoom()) { $group_list = $user->getGroupList(); if ($group_list->isEmpty()) { $group_manager = $environment->getLabelManager(); $group_manager->setExactNameLimit('ALL'); $group_manager->setContextLimit($environment->getCurrentContextID()); $group_manager->select(); $group_list = $group_manager->get(); if ($group_list->getCount() == 1) { $group = $group_list->getFirst(); $group->setTitle('ALL'); // needed, but not good (TBD) } // save link to the group ALL if (isset($group)) { $user->setGroupByID($group->getItemID()); $group->setModificatorItem($user); $group->save(); unset($group); } unset($group_list); unset($group_manager); } } // don't change users with status user or Moderator if (!$user->isUser() and !$user->isModerator()) { $user->makeUser(); $user->save(); ################################ # FLAG: group room ################################ if ($environment->inGroupRoom()) { $current_context = $environment->getCurrentContextItem(); $group_item = $current_context->getLinkedGroupItem(); if (isset($group_item) and !empty($group_item)) { $project_room_item = $current_context->getLinkedProjectItem(); if (isset($project_room_item) and !empty($project_room_item)) { $project_room_user_item = $project_room_item->getUserByUserID($user->getUserID(), $user->getAuthSource()); $group_item->addMember($project_room_user_item); unset($group_item); unset($project_room_user_item); } unset($project_room_item); } unset($group_item); unset($current_context); } ################################ # FLAG: group room ################################ } $send_to = $user->getEmail(); } elseif ($action_array['action'] == 'USER_STATUS_USER') { // link to group 'ALL' in project rooms if ($environment->inProjectRoom()) { $group_list = $user->getGroupList(); if ($group_list->isEmpty()) { $group_manager = $environment->getLabelManager(); $group_manager->setExactNameLimit('ALL'); $group_manager->setContextLimit($environment->getCurrentContextID()); $group_manager->select(); $group_list = $group_manager->get(); if ($group_list->getCount() == 1) { $group = $group_list->getFirst(); $group->setTitle('ALL'); // needed, but not good (TBD) } // save link to the group ALL if (isset($group)) { $user->setGroupByID($group->getItemID()); $group->setModificatorItem($user); $group->save(); unset($group); } unset($group_list); unset($group_manager); } } $user->makeUser(); $user->save(); $send_to = $user->getEmail(); ################################ # FLAG: group room ################################ if ($environment->inGroupRoom()) { $current_context = $environment->getCurrentContextItem(); $group_item = $current_context->getLinkedGroupItem(); if (isset($group_item) and !empty($group_item)) { $project_room_item = $current_context->getLinkedProjectItem(); if (isset($project_room_item) and !empty($project_room_item)) { $project_room_user_item = $project_room_item->getUserByUserID($user->getUserID(), $user->getAuthSource()); $group_item->addMember($project_room_user_item); unset($project_room_user_item); unset($group_item); } unset($project_room_item); } unset($current_context); unset($group_item); } ################################ # FLAG: group room ################################ } elseif ($action_array['action'] == 'USER_STATUS_MODERATOR') { // link to group 'ALL' in project rooms if ($environment->inProjectRoom()) { $group_list = $user->getGroupList(); if ($group_list->isEmpty()) { $group_manager = $environment->getLabelManager(); $group_manager->setExactNameLimit('ALL'); $group_manager->setContextLimit($environment->getCurrentContextID()); $group_manager->select(); $group_list = $group_manager->get(); if ($group_list->getCount() == 1) { $group = $group_list->getFirst(); $group->setTitle('ALL'); // needed, but not good (TBD) } unset($group_list); // save link to the group ALL if (isset($group)) { $user->setGroupByID($group->getItemID()); $group->setModificatorItem($user); $group->save(); unset($group); } unset($group_manager); } } $user->makeModerator(); $user->save(); $send_to = $user->getEmail(); ################################ # FLAG: group room ################################ if ($environment->inGroupRoom()) { $current_context = $environment->getCurrentContextItem(); $group_item = $current_context->getLinkedGroupItem(); if (isset($group_item) and !empty($group_item)) { $project_room_item = $current_context->getLinkedProjectItem(); if (isset($project_room_item) and !empty($project_room_item)) { $project_room_user_item = $project_room_item->getUserByUserID($user->getUserID(), $user->getAuthSource()); $group_item->addMember($project_room_user_item); unset($project_room_user_item); unset($group_item); } unset($project_room_item); } unset($current_context); unset($group_item); } ################################ # FLAG: group room ################################ } elseif ($action_array['action'] == 'USER_MAKE_CONTACT_PERSON') { $user->makeContactPerson(); $user->save(); $send_to = $user->getEmail(); } elseif ($action_array['action'] == 'USER_UNMAKE_CONTACT_PERSON') { $user->makeNoContactPerson(); $user->save(); $send_to = $user->getEmail(); } elseif ($action_array['action'] == 'USER_EMAIL_SEND') { $send_to = $user->getEmail(); } elseif ($action_array['action'] == 'USER_EMAIL_ACCOUNT_PASSWORD') { $send_to = $user->getEmail(); } elseif ($action_array['action'] == 'USER_EMAIL_ACCOUNT_MERGE') { $send_to = $user->getEmail(); } if ($user->isEmailVisible()) { $formal_data_send_to[] = $user->getFullName() . " <" . $send_to . ">"; } else { $translator = $environment->getTranslationObject(); $formal_data_send_to[] = $user->getFullName() . " <" . $translator->getMessage('USER_EMAIL_HIDDEN') . ">"; } // change task status if ($action_array['action'] == 'USER_ACCOUNT_DELETE' or $action_array['action'] == 'USER_ACCOUNT_LOCK' or $action_array['action'] == 'USER_ACCOUNT_FREE' or $action_array['action'] == 'USER_STATUS_USER' or $action_array['action'] == 'USER_STATUS_MODERATOR') { $task_manager = $environment->getTaskManager(); $task_list = $task_manager->getTaskListForItem($user); if ($task_list->getCount() > 0) { $task_item = $task_list->getFirst(); while ($task_item) { if ($task_item->getStatus() == 'REQUEST' and ($task_item->getTitle() == 'TASK_USER_REQUEST' or $task_item->getTitle() == 'TASK_PROJECT_ROOM_REQUEST')) { $task_item->setStatus('CLOSED'); $task_item->save(); } $task_item = $task_list->getNext(); } } unset($task_list); unset($task_item); unset($task_manager); } // if commsy user is rejected, reject all accounts in projectrooms and community rooms if ($user->isRejected() and $environment->inPortal()) { $user_list = $user->getRelatedUserList(); $user_item = $user_list->getFirst(); while ($user_item) { $user_item->reject(); $user_item->save(); $user_item = $user_list->getNext(); } unset($user_list); unset($user_item); } // if commsy user is re-opend, re-open own room user if ($environment->inPortal() and isset($last_status) and (empty($last_status) or $last_status == 0)) { $user_own_room = $user->getRelatedPrivateRoomUserItem(); if (isset($user_own_room)) { $user_own_room->makeModerator(); $user_own_room->makeContactPerson(); $user_own_room->save(); } } // send email if (isset($post_array['with_mail']) and $post_array['with_mail'] == '1') { include_once 'classes/cs_mail.php'; $mail = new cs_mail(); $mail->set_from_email($admin->getEmail()); $mail->set_from_name($admin->getFullname()); $mail->set_reply_to_email($admin->getEmail()); $mail->set_reply_to_name($admin->getFullname()); if (!isset($formal_data_from)) { $formal_data_from = array($translator->getMessage('MAIL_FROM'), $admin->getFullname() . " <" . $admin->getEmail() . ">"); $formal_data[] = $formal_data_from; } if (!isset($formal_data_reply)) { $formal_data_reply = array($translator->getMessage('REPLY_TO'), $admin->getFullname() . " <" . $admin->getEmail() . ">"); $formal_data[] = $formal_data_reply; } // subject and body // language $translator = $environment->getTranslationObject(); $room = $environment->getCurrentContextItem(); $url_to_room = LF . LF; $url_to_room .= 'http://' . $_SERVER['HTTP_HOST'] . $_SERVER['PHP_SELF'] . '?cid=' . $environment->getCurrentContextID(); $subject = $_POST['subject']; $content = $_POST['content']; $content = str_replace('%1', $user->getFullname(), $content); // now prepare for each action separately if ($action_array['action'] == 'USER_ACCOUNT_DELETE' or $action_array['action'] == 'USER_ACCOUNT_LOCK' or $action_array['action'] == 'USER_ACCOUNT_FREE' or $action_array['action'] == 'USER_STATUS_USER' or $action_array['action'] == 'USER_STATUS_MODERATOR' or $action_array['action'] == 'USER_UNMAKE_CONTACT_PERSON' or $action_array['action'] == 'USER_MAKE_CONTACT_PERSON') { if ($this->_environment->getCurrentPortalItem()->getHideAccountname()) { $userid = $user->getFullName(); } else { $userid = $user->getUserID(); } $content = str_replace('%2', $userid, $content); $content = str_replace('%3', $room->getTitle(), $content); } elseif ($action_array['action'] == 'USER_EMAIL_ACCOUNT_PASSWORD') { $content = str_replace('%2', $room->getTitle(), $content); $content = str_replace('%3', $userid, $content); } elseif ($action_array['action'] == 'USER_EMAIL_ACCOUNT_MERGE') { $account_text = ''; $user_manager->resetLimits(); $user_manager->setContextLimit($environment->getCurrentContextID()); $user_manager->setUserLimit(); $user_manager->setSearchLimit($user->getEmail()); $user_manager->select(); $user_list = $user_manager->get(); if (!$user_list->isEmpty()) { if ($user_list->getCount() > 1) { $first = true; $user_item = $user_list->getFirst(); while ($user_item) { if ($first) { $first = false; } else { $account_text .= LF; } $account_text .= $user_item->getUserID(); $user_item = $user_list->getNext(); } } else { include_once 'functions/error_functions.php'; trigger_error('that is impossible, list must be greater than one', E_USER_WARNING); } } else { include_once 'functions/error_functions.php'; trigger_error('that is impossible, list must be greater than one', E_USER_WARNING); } $content = str_replace('%2', $user->getEmail(), $content); $content = str_replace('%3', $room->getTitle(), $content); $content = str_replace('%4', $account_text, $content); } unset($translator); unset($room); $translator = $environment->getTranslationObject(); if (isset($subject) and !empty($subject)) { $mail->set_subject($subject); if (!isset($formal_data_subject)) { $formal_data_subject = array($translator->getMessage('MAIL_SUBJECT'), $subject); } } if (isset($content) and !empty($content)) { $mail->set_message($content); if (!isset($formal_data_message)) { $formal_data_message = array($translator->getMessage('COMMON_MAIL_CONTENT') . ":", $content); } } $mail->set_to($send_to); #// cc / bcc $cc_string = ''; $bcc_string = ''; $cc_array = array(); $bcc_array = array(); if (isset($post_array['cc']) and $post_array['cc'] == 'cc') { $cc_array[] = $admin->getEmail(); } if (isset($post_array['bcc']) and $post_array['bcc'] == 'bcc') { $bcc_array[] = $admin->getEmail(); } if (isset($post_array['cc_moderator']) and $post_array['cc_moderator'] == 'cc_moderator') { $current_context = $environment->getCurrentContextItem(); $mod_list = $current_context->getModeratorList(); if (!$mod_list->isEmpty()) { $moderator_item = $mod_list->getFirst(); while ($moderator_item) { $email = $moderator_item->getEmail(); if (!empty($email)) { $cc_array[] = $email; } unset($email); $moderator_item = $mod_list->getNext(); } } unset($current_context); } if (isset($post_array['bcc_moderator']) and $post_array['bcc_moderator'] == 'bcc_moderator') { $current_context = $environment->getCurrentContextItem(); $mod_list = $current_context->getModeratorList(); if (!$mod_list->isEmpty()) { $moderator_item = $mod_list->getFirst(); while ($moderator_item) { $email = $moderator_item->getEmail(); if (!empty($email)) { $bcc_array[] = $email; } unset($email); $moderator_item = $mod_list->getNext(); } } unset($current_context); } if (isset($post_array['copy']) and !empty($post_array['copy']) and !in_array($action_array['user_item_id'], $action_array['selected_ids']) and count($action_array['selected_ids']) == 1) { $cc_array[] = $admin->getEmail(); } if (!empty($cc_array)) { $cc_array = array_unique($cc_array); } if (!empty($bcc_array)) { $bcc_array = array_unique($bcc_array); } $cc_string = implode(",", $cc_array); $bcc_string = implode(",", $bcc_array); unset($cc_array); unset($bcc_array); if (!empty($cc_string)) { $mail->set_cc_to($cc_string); } if (!empty($bcc_string)) { $mail->set_bcc_to($bcc_string); } unset($cc_string); unset($bcc_string); $mail_success = $mail->send(); $mail_error_array = $mail->getErrorArray(); unset($mail); } unset($user); } if (isset($formal_data_send_to)) { $formal_data[] = array($translator->getMessage('MAIL_TO'), implode(",", $formal_data_send_to)); } if (isset($formal_data_subject)) { $formal_data[] = $formal_data_subject; } if (isset($formal_data_message)) { $formal_data[] = $formal_data_message; } unset($user_manager); unset($admin); redirect($environment->getCurrentContextID(), $environment->getCurrentModule(), 'index'); }
$params['environment'] = $environment; $params['with_modifying_actions'] = false; $detail_view = $class_factory->getClass(MAIL_VIEW,$params); unset($params); $detail_view->setFormalData($formal_data); $page->add($detail_view); } // ~email->send() else { // Mail could not be send: display error message. $params = array(); $params['environment'] = $environment; $params['with_modifying_actions'] = true; $errorbox = $class_factory->getClass(ERRORBOX_VIEW,$params); unset($params); $error_array = $email->getErrorArray(); if ( !empty($error_array) ) { $error_string = $translator->getMessage('ERROR_SEND_EMAIL_TO'); foreach ($error_array as $error) { $error = htmlentities($error, ENT_NOQUOTES, 'UTF-8'); $error = str_replace(',',BRLF,$error); $error_string .= BRLF.$error; } } else { $error_string = $translator->getMessage('ERROR_SEND_MAIL'); } $params = array(); $params['environment'] = $environment; $params['with_modifying_actions'] = false; $detail_view = $class_factory->getClass(MAIL_VIEW,$params);
public function save($form_data, $additional = array()) { if ($this->_popup_controller->checkFormData()) { $groupManager = $this->_environment->getGroupManager(); $currentContext = $this->_environment->getCurrentContextItem(); $translator = $this->_environment->getTranslationObject(); $recipients = array(); $recipientsBCC = array(); $mail = array(); $nameArray = array(); foreach ($form_data["groups"] as $groupId) { $groupItem = $groupManager->getItem($groupId); $userList = $groupItem->getMemberItemList(); $nameArray[] = $groupItem->getTitle(); $userItem = $userList->getFirst(); while ($userItem) { if ($userItem->isUser()) { if ($userItem->isEmailVisible()) { $recipients[] = $userItem->getFullName() . " <" . $userItem->getEmail() . ">"; } else { $recipientsBCC[] = $userItem->getFullName() . " <" . $userItem->getEmail() . ">"; } } $userItem = $userList->getNext(); } } $recipients = array_unique($recipients); $recipientsBCC = array_unique($recipientsBCC); $serverItem = $this->_environment->getServerItem(); $defaultSenderAddress = $serverItem->getDefaultSenderAddress(); $currentUser = $this->_environment->getCurrentUser(); $mail["from_name"] = $currentUser->getFullName(); $mail["from_email"] = $currentUser->getEmail(); $mail["reply_to_name"] = $currentUser->getFullName(); $mail["reply_to_email"] = $currentUser->getEmail(); $mail["to"] = implode(",", $recipients); $mail["subject"] = $form_data["subject"]; $mail["message"] = $form_data["mailcontent"]; $email = new cs_mail(); $email->set_from_name($mail["from_name"]); $email->set_from_email($mail["from_email"]); $email->set_reply_to_name($mail["reply_to_name"]); $email->set_reply_to_email($mail["reply_to_email"]); $email->set_to($mail["to"]); $email->set_subject($mail["subject"]); if ($form_data["copytosender"] === "true") { $email->set_cc_to($currentUser->getEmail()); } if (!empty($recipientsBCC)) { $email->set_bcc_to(implode(",", $recipientsBCC)); } $addMessage = ""; $context_title = str_ireplace('&', '&', $currentContext->getTitle()); if (sizeof($form_data["groups"]) == 1) { $addMessage = $translator->getMessage("RUBRIC_EMAIL_ADDED_BODY_PROJECT_GROUP_S", $context_title, $nameArray[0]); } else { $addMessage = $translator->getMessage("RUBRIC_EMAIL_ADDED_BODY_PROJECT_GROUP_PL", $context_title, implode("," . LF, $nameArray)); } if (!empty($addMessage)) { $addMessage = LF . LF . "---" . LF . $addMessage; } $email->set_message($mail["message"] . $addMessage); if ($email->send()) { $this->_popup_controller->setSuccessfullDataReturn(array()); } else { $this->_popup_controller->setErrorReturn("113", "error processing mails", $email->getErrorArray()); } } }
public function actionSendMail() { $user_manager = $this->_environment->getUserManager(); $translator = $this->_environment->getTranslationObject(); $ids = $this->_data["ids"]; $sendMail = $this->_data["sendMail"]; $modCC = $this->_data["modCC"]; $modBCC = $this->_data["modBCC"]; $authCC = $this->_data["authCC"]; $authBCC = $this->_data["authBCC"]; $subject = $this->_data["subject"]; $action = $this->_data["action"]; $admin = $this->_environment->getCurrentUser(); $response_array = array(); include_once "classes/cs_mail.php"; foreach ($ids as $id) { $user = $user_manager->getItem($id); $sendTo = $user->getEmail(); $description = $this->_data["description"]; $formal_data_send_to = array(); if ($user->isEmailVisible()) { $formal_data_send_to[] = $user->getFullName() . " <" . $sendTo . ">"; } else { $formal_data_send_to[] = $user->getFullName() . " <" . $translator->getMessage("USER_EMAIL_HIDDEN") . ">"; } // prepare mail $mail = new cs_mail(); $mail->set_from_email($admin->getEmail()); $mail->set_from_name($admin->getFullname()); $mail->set_reply_to_email($admin->getEmail()); $mail->set_reply_to_name($admin->getFullname()); if (!isset($formal_data_from)) { $formal_data_from = array($translator->getMessage("MAIL_FROM"), $admin->getFullname() . " <" . $admin->getEmail() . ">"); $formal_data[] = $form_data_from; } if (!isset($formal_data_reply)) { $form_data_reply = array($translator->getMessage("REPLY_TO"), $admin->getFullname() . " <" . $admin->getEmail() . ">"); $formal_data[] = $form_data_reply; } // subject and body $room = $this->_environment->getCurrentContextItem(); $url_to_room = LF . LF; $url_to_room .= "http://" . $_SERVER["HTTP_HOST"] . $_SERVER["PHP_SELF"] . "?cid=" . $this->_environment->getCurrentContextID(); if ($action !== "email") { $description = str_replace("%1", $user->getFullname(), $description); $description = str_replace("%2", $user->getUserID(), $description); $description = str_replace("%3", $room->getTitle(), $description); } if (isset($subject) && !empty($subject)) { $mail->set_subject($subject); if (!isset($formal_data_subject)) { $formal_data_subject = array($translator->getMessage("MAIL_SUBJECT"), $subject); } } if (isset($description) && !empty($description)) { $mail->set_message($description); if (!isset($formal_data_message)) { $formal_data_message = array($translator->getMessage("COMMON_MAIL_CONTENT") . ":", $description); } } // reciever if (isset($sendMail) && $sendMail == "true" || $action == "mail") { $mail->set_to($sendTo); } // Datenschutz if ($this->_environment->getCurrentPortalItem()->getHideAccountname()) { $mail_user = $mail; $user_description = str_replace('XXX ' . $translator->getMessage('COMMON_DATASECURITY_NAME', $user->getFullname()), $user->getUserID(), $description); $mail_user->set_message($user_description); $mail_success = $mail_user->send(); // $mail->set_to($admin->getEmail()); $mail->set_message($description); } // cc / bcc $cc_array = array(); $bcc_array = array(); if (isset($authCC) && $authCC == "true") { $cc_array[] = $admin->getEmail(); } if (isset($authBCC) && authBCC == "true") { $bcc_array[] = $admin->getEmail(); } if (isset($modCC) && $modCC == "true") { $current_context = $this->_environment->getCurrentContextItem(); $mod_list = $current_context->getModeratorList(); if (!$mod_list->isEmpty()) { $moderator_item = $mod_list->getFirst(); while ($moderator_item) { $email = $moderator_item->getEmail(); if (!empty($email)) { $cc_array[] = $email; } unset($email); $moderator_item = $mod_list->getNext(); } } } if (isset($modBCC) && $modBCC == "true") { $current_context = $this->_environment->getCurrentContextItem(); $mod_list = $current_context->getModeratorList(); if (!$mod_list->isEmpty()) { $moderator_item = $mod_list->getFirst(); while ($moderator_item) { $email = $moderator_item->getEmail(); if (!empty($email)) { $bcc_array[] = $email; } unset($email); $moderator_item = $mod_list->getNext(); } } } // make unique if (!empty($cc_array)) { $cc_array = array_unique($cc_array); } if (!empty($bcc_array)) { $bcc_array = array_unique($bcc_array); } // build strings $cc_string = implode(",", $cc_array); $bcc_string = implode(",", $bcc_array); if (!empty($cc_string)) { $mail->set_cc_to($cc_string); } if (!empty($bcc_string)) { $mail->set_bcc_to($bcc_string); } if ($this->_environment->getCurrentPortalItem()->getHideAccountname()) { if (!empty($cc_string) or !empty($bcc_string)) { $mail->set_to(''); $mail_success = $mail->send(); } } else { $mail_success = $mail->send(); } unset($cc_string); unset($bcc_string); // send mail $response_array[] = array($mail_success, $mail_error_array = $mail->getErrorArray()); } // setup successfull reponse array - but it can also contains errors $this->setSuccessfullDataReturn($response_array); echo $this->_return; }