Update destination_edit.php
Rewrote a large amount of the page to the new class which allows for much less code. Also remove the proprietary billing system and its contributor as their code was removed. Proper integration should not have to touch project code but be a standalone plugin. If current plugin capability is not sufficient will need to expand its capabilities.
This commit is contained in:
parent
c372ece23e
commit
e1556c9dc3
|
|
@ -17,12 +17,11 @@
|
||||||
|
|
||||||
The Initial Developer of the Original Code is
|
The Initial Developer of the Original Code is
|
||||||
Mark J Crane <markjcrane@fusionpbx.com>
|
Mark J Crane <markjcrane@fusionpbx.com>
|
||||||
Portions created by the Initial Developer are Copyright (C) 2013-2016
|
Portions created by the Initial Developer are Copyright (C) 2008-2016
|
||||||
the Initial Developer. All Rights Reserved.
|
the Initial Developer. All Rights Reserved.
|
||||||
|
|
||||||
Contributor(s):
|
Contributor(s):
|
||||||
Mark J Crane <markjcrane@fusionpbx.com>
|
Mark J Crane <markjcrane@fusionpbx.com>
|
||||||
Luis Daniel Lucio Quiroz <dlucio@okay.com.mx>
|
|
||||||
*/
|
*/
|
||||||
|
|
||||||
//includes
|
//includes
|
||||||
|
|
@ -39,12 +38,6 @@
|
||||||
exit;
|
exit;
|
||||||
}
|
}
|
||||||
|
|
||||||
//billing
|
|
||||||
if (file_exists($_SERVER["PROJECT_ROOT"]."/app/billing/app_config.php")) {
|
|
||||||
require_once "app/billing/resources/functions/currency.php";
|
|
||||||
require_once "app/billing/resources/functions/rating.php";
|
|
||||||
}
|
|
||||||
|
|
||||||
//add multi-lingual support
|
//add multi-lingual support
|
||||||
$language = new text;
|
$language = new text;
|
||||||
$text = $language->get();
|
$text = $language->get();
|
||||||
|
|
@ -113,9 +106,13 @@
|
||||||
if (count($_POST) > 0 && strlen($_POST["persistformvar"]) == 0) {
|
if (count($_POST) > 0 && strlen($_POST["persistformvar"]) == 0) {
|
||||||
|
|
||||||
//get the uuid
|
//get the uuid
|
||||||
if ($action == "update") {
|
if ($action == "update" && isset($_POST["destination_uuid"])) {
|
||||||
$destination_uuid = check_str($_POST["destination_uuid"]);
|
$destination_uuid = check_str($_POST["destination_uuid"]);
|
||||||
}
|
}
|
||||||
|
else {
|
||||||
|
$destination_uuid = uuid();
|
||||||
|
$_POST["destination_uuid"] = $destination_uuid;
|
||||||
|
}
|
||||||
|
|
||||||
//check for all required data
|
//check for all required data
|
||||||
$msg = '';
|
$msg = '';
|
||||||
|
|
@ -153,9 +150,6 @@
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
//add or update the database
|
|
||||||
if ($_POST["persistformvar"] != "true") {
|
|
||||||
|
|
||||||
//determine whether save the dialplan
|
//determine whether save the dialplan
|
||||||
foreach ($_POST["dialplan_details"] as $row) {
|
foreach ($_POST["dialplan_details"] as $row) {
|
||||||
if (strlen($row["dialplan_detail_data"]) > 0) {
|
if (strlen($row["dialplan_detail_data"]) > 0) {
|
||||||
|
|
@ -164,9 +158,6 @@
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
//add or update the dialplan if the destination number is set
|
|
||||||
if ($add_dialplan) {
|
|
||||||
|
|
||||||
//get the array
|
//get the array
|
||||||
$dialplan_details = $_POST["dialplan_details"];
|
$dialplan_details = $_POST["dialplan_details"];
|
||||||
|
|
||||||
|
|
@ -356,7 +347,7 @@
|
||||||
}
|
}
|
||||||
|
|
||||||
//delete the previous details
|
//delete the previous details
|
||||||
if(strlen($dialplan_uuid) > 0) {
|
if ($action == "update") {
|
||||||
$sql = "delete from v_dialplan_details ";
|
$sql = "delete from v_dialplan_details ";
|
||||||
$sql .= "where dialplan_uuid = '".$dialplan_uuid."' ";
|
$sql .= "where dialplan_uuid = '".$dialplan_uuid."' ";
|
||||||
if (!permission_exists('destination_domain')) {
|
if (!permission_exists('destination_domain')) {
|
||||||
|
|
@ -367,7 +358,16 @@
|
||||||
unset($sql);
|
unset($sql);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
//remove empty dialplan details from the POST array
|
||||||
|
unset($_POST["dialplan_details"]);
|
||||||
|
|
||||||
|
//make sure the dialplan_uuid is set
|
||||||
|
if(strlen($_POST["dialplan_uuid"]) == 0) {
|
||||||
|
$_POST["dialplan_uuid"] = $dialplan_uuid;
|
||||||
|
}
|
||||||
|
|
||||||
//prepare the array
|
//prepare the array
|
||||||
|
$array['destinations'][] = $_POST;
|
||||||
$array['dialplans'][] = $dialplan;
|
$array['dialplans'][] = $dialplan;
|
||||||
unset($dialplan);
|
unset($dialplan);
|
||||||
|
|
||||||
|
|
@ -409,69 +409,9 @@
|
||||||
$cache = new cache;
|
$cache = new cache;
|
||||||
$cache->delete("dialplan:".$destination_context);
|
$cache->delete("dialplan:".$destination_context);
|
||||||
|
|
||||||
} //add or update the dialplan if the destination number is set
|
|
||||||
else {
|
|
||||||
//remove empty dialplan details from POST array so doesn't attempt to insert below
|
|
||||||
unset($_POST["dialplan_details"]);
|
|
||||||
}
|
|
||||||
|
|
||||||
//get the destination_uuid
|
|
||||||
if (strlen($dialplan_response['uuid']) > 0) {
|
|
||||||
$_POST["dialplan_uuid"] = $dialplan_response['uuid'];
|
|
||||||
}
|
|
||||||
|
|
||||||
//add the dialplan permission
|
|
||||||
$permission = "dialplan_edit";
|
|
||||||
$p = new permissions;
|
|
||||||
$p->add($permission, 'temp');
|
|
||||||
|
|
||||||
//save the destination
|
|
||||||
$orm = new orm;
|
|
||||||
$orm->name('destinations');
|
|
||||||
if (strlen($destination_uuid) > 0) {
|
|
||||||
$orm->uuid($destination_uuid);
|
|
||||||
}
|
|
||||||
$orm->save($_POST);
|
|
||||||
$message = $orm->message;
|
|
||||||
$destination_response = $orm->message;
|
|
||||||
|
|
||||||
//remove the temporary permission
|
|
||||||
$p->delete($permission, 'temp');
|
|
||||||
|
|
||||||
//get the destination_uuid
|
|
||||||
if (strlen($destination_response['uuid']) > 0) {
|
|
||||||
$destination_uuid = $destination_response['uuid'];
|
|
||||||
}
|
|
||||||
|
|
||||||
//redirect the user
|
//redirect the user
|
||||||
if ($action == "add") {
|
if ($action == "add") {
|
||||||
$_SESSION["message"] = $text['message-add'];
|
$_SESSION["message"] = $text['message-add'];
|
||||||
// billing
|
|
||||||
if (file_exists($_SERVER["PROJECT_ROOT"]."/app/billing/app_config.php")){
|
|
||||||
$db2 = new database;
|
|
||||||
$db2->sql = "select currency, billing_uuid, balance from v_billings where type_value='$destination_accountcode'";
|
|
||||||
$db2->result = $db2->execute();
|
|
||||||
$default_currency = (strlen($_SESSION['billing']['currency']['text'])?$_SESSION['billing']['currency']['text']:'USD');
|
|
||||||
$billing_currency = (strlen($db2->result[0]['currency'])?$db2->result[0]['currency']:$default_currency);
|
|
||||||
$destination_sell_current_currency = currency_convert($destination_sell,$billing_currency,$currency);
|
|
||||||
$billing_uuid = $db2->result[0]['billing_uuid'];
|
|
||||||
$balance = $db2->result[0]['balance'];
|
|
||||||
unset($db2->sql, $db2->result);
|
|
||||||
|
|
||||||
$balance -= $destination_sell_current_currency;
|
|
||||||
$db2->sql = "update v_billings set balance = $balance, old_balance = $balance where type_value='$destination_accountcode'";
|
|
||||||
$db2->result = $db2->execute();
|
|
||||||
unset($db2->sql, $db2->result);
|
|
||||||
|
|
||||||
$billing_invoice_uuid = uuid();
|
|
||||||
$user_uuid = check_str($_SESSION['user_uuid']);
|
|
||||||
$settled=1;
|
|
||||||
$mc_gross = -1 * $destination_sell_current_currency;
|
|
||||||
$post_payload = serialize($_POST);
|
|
||||||
$db2->sql = "insert into v_billing_invoices (billing_invoice_uuid, billing_uuid, payer_uuid, billing_payment_date, settled, amount, debt, post_payload,plugin_used, domain_uuid) values ('$billing_invoice_uuid', '$billing_uuid', '$user_uuid', NOW(), $settled, $mc_gross, $balance, '$post_payload', 'DID $destination_number Assigment', '".$domain_uuid."' )";
|
|
||||||
$db2->result = $db2->execute();
|
|
||||||
unset($db2->sql, $db2->result);
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
if ($action == "update") {
|
if ($action == "update") {
|
||||||
$_SESSION["message"] = $text['message-update'];
|
$_SESSION["message"] = $text['message-update'];
|
||||||
|
|
@ -479,7 +419,6 @@
|
||||||
header("Location: destination_edit.php?id=".$destination_uuid);
|
header("Location: destination_edit.php?id=".$destination_uuid);
|
||||||
return;
|
return;
|
||||||
|
|
||||||
} //if ($_POST["persistformvar"] != "true")
|
|
||||||
} //(count($_POST) > 0 && strlen($_POST["persistformvar"]) == 0)
|
} //(count($_POST) > 0 && strlen($_POST["persistformvar"]) == 0)
|
||||||
|
|
||||||
//initialize the destinations object
|
//initialize the destinations object
|
||||||
|
|
@ -787,46 +726,6 @@
|
||||||
echo "</td>\n";
|
echo "</td>\n";
|
||||||
echo "</tr>\n";
|
echo "</tr>\n";
|
||||||
|
|
||||||
// billing
|
|
||||||
if (file_exists($_SERVER["PROJECT_ROOT"]."/app/billing/app_config.php")){
|
|
||||||
echo "<tr id='tr_sell'>\n";
|
|
||||||
echo "<td class='vncell' valign='top' align='left' nowrap='nowrap'>\n";
|
|
||||||
echo " ".$text['label-monthly_price']."\n";
|
|
||||||
echo "</td>\n";
|
|
||||||
echo "<td class='vtable' align='left'>\n";
|
|
||||||
echo " <input class='formfld' type='number' min='0' step='0.01' name='destination_sell' maxlength='255' value=\"$destination_sell\">\n";
|
|
||||||
currency_select($currency);
|
|
||||||
echo "<br />\n";
|
|
||||||
echo $text['description-monthly_price']."\n";
|
|
||||||
echo "</td>\n";
|
|
||||||
echo "</tr>\n";
|
|
||||||
|
|
||||||
echo "<tr id='tr_buy'>\n";
|
|
||||||
echo "<td class='vncell' valign='top' align='left' nowrap='nowrap'>\n";
|
|
||||||
echo " ".$text['label-monthly_price_buy']."\n";
|
|
||||||
echo "</td>\n";
|
|
||||||
echo "<td class='vtable' align='left'>\n";
|
|
||||||
echo " <input class='formfld' type='number' min='0' step='0.01' name='destination_buy' maxlength='255' value=\"$destination_buy\">\n";
|
|
||||||
currency_select($currency_buy,0,'currency_buy');
|
|
||||||
echo "<br />\n";
|
|
||||||
echo $text['description-monthly_price_buy']."\n";
|
|
||||||
echo "</td>\n";
|
|
||||||
echo "</tr>\n";
|
|
||||||
|
|
||||||
echo "<tr id='tr_carrier'>\n";
|
|
||||||
echo "<td class='vncell' valign='top' align='left' nowrap='nowrap'>\n";
|
|
||||||
echo " ".$text['label-carrier']."\n";
|
|
||||||
echo "</td>\n";
|
|
||||||
echo "<td class='vtable' align='left'>\n";
|
|
||||||
echo " <input class='formfld' type='text' name='destination_carrier' maxlength='255' value=\"$destination_carrier\">\n";
|
|
||||||
echo "<br />\n";
|
|
||||||
echo $text['description-carrier']."\n";
|
|
||||||
echo "</td>\n";
|
|
||||||
|
|
||||||
//set the default account code
|
|
||||||
if ($action == "add") { $destination_accountcode = $_SESSION['domain_name']; }
|
|
||||||
}
|
|
||||||
|
|
||||||
echo "<tr id='tr_account_code'>\n";
|
echo "<tr id='tr_account_code'>\n";
|
||||||
echo "<td class='vncell' valign='top' align='left' nowrap='nowrap'>\n";
|
echo "<td class='vncell' valign='top' align='left' nowrap='nowrap'>\n";
|
||||||
echo " ".$text['label-account_code']."\n";
|
echo " ".$text['label-account_code']."\n";
|
||||||
|
|
@ -835,9 +734,6 @@
|
||||||
echo " <input class='formfld' type='text' name='destination_accountcode' maxlength='255' value=\"$destination_accountcode\">\n";
|
echo " <input class='formfld' type='text' name='destination_accountcode' maxlength='255' value=\"$destination_accountcode\">\n";
|
||||||
echo "<br />\n";
|
echo "<br />\n";
|
||||||
echo $text['description-account_code']."\n";
|
echo $text['description-account_code']."\n";
|
||||||
if (file_exists($_SERVER["PROJECT_ROOT"]."/app/billing/app_config.php")){
|
|
||||||
echo " ".$text['billing-warning'];
|
|
||||||
}
|
|
||||||
echo "</td>\n";
|
echo "</td>\n";
|
||||||
|
|
||||||
if (permission_exists('destination_domain')) {
|
if (permission_exists('destination_domain')) {
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue