Newer
Older
ubFramework / Portal / docroot / admin / voip / device_swap.php
@Christopher W. Olsen Christopher W. Olsen on 10 Dec 2017 4 KB Cleaning Up Making It A Sub Module
<?php

/*
 * ****************************************************************************************
 * Copyright (c) 2013, 2014 Christopher W. Olsen <cwolsen@ubixtechnologies.com>
 * All rights reserved.
 *
 * Redistribution and use in source and binary forms, with or without modification, are
 * permitted provided that the following conditions are met:
 *
 * Redistributions of source code must retain the above copyright notice, this list of
 * conditions, the following disclaimer and the list of authors. Redistributions in binary
 * form must reproduce the above copyright notice, this list of conditions, the following
 * disclaimer and the list of authors in the documentation and/or other materials provided
 * with the distribution. Neither the name of the uBix Cube Project nor the names of its
 * contributors may be used to endorse or promote products derived from this software
 * without specific prior written permission.
 *
 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY
 * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
 * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL
 * THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
 * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT
 * OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR
 * TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
 * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
 *
 * $Id: device_swap.php 940 2017-09-07 20:12:42Z reddawg $
 *
 * ***************************************************************************************
 */

/* Main include info */
ini_set ( 'include_path', $_SERVER ['DOCUMENT_ROOT'] . "/include/" );
include ("config.php");

/* Assign the page title */
$ubF->tpl->assign ( "PAGE_TITLE", "Admin: VoIP - Swap Device" );

/* Main defines */
$ubF->tpl->define ( array (
    "index" => "admin/wrapper/default.html" 
) );
$ubF->tpl->define ( array (
    "menu" => "admin/voip/menu.html" 
) );
$ubF->tpl->define ( array (
    "body" => "admin/voip/device_swap.html" 
) );

$ubF->session->Validate ( 'A_V_', 0 );

$messages = "";

if ( isset ( $form_data ['up'] ) ) {
  if ( strlen ( $form_data ['phone1'] ) != 12 )
    $messages .= "Phone1: Invalid Mac<br />\n";
  
  if ( strlen ( $form_data ['phone2'] ) != 12 )
    $messages .= "Phone2: Invalid Mac<br />\n";
  
  if ( $messages == "" ) {
    $tmp_mac = time ();
    
    $query = "SELECT vdtid, account_number, device_owner FROM voip_devices WHERE mac = '" . $form_data ['phone1'] . "'";
    $res = $ubF->DB['main']->query ( $query );
    $p1 = $res->fetch_assoc ();
    $res->free ();
    
    $query = "SELECT vdtid, account_number, device_owner FROM voip_devices WHERE mac = '" . $form_data ['phone2'] . "'";
    $res = $ubF->DB['main']->query ( $query );
    $p2 = $res->fetch_assoc ();
    $res->free ();
    
    $query = "UPDATE voip_devices SET mac = '" . $tmp_mac . "' WHERE mac = '" . $form_data ['phone1'] . "'";
    $ubF->DB['main']->query ( $query );
    
    $query = "UPDATE voip_devices SET mac = '" . $form_data ['phone1'] . "', vdtid = '" . $p1 ['vdtid'] . "', account_number = '" . $p2 ['account_number'] . "', device_owner = " . $p1 ['device_owner'] . " WHERE mac = '" . $form_data ['phone2'] . "'";
    $ubF->DB['main']->query ( $query );
    
    $query = "UPDATE voip_devices SET mac = '" . $form_data ['phone2'] . "', vdtid = '" . $p2 ['vdtid'] . "', account_number = '" . $p1 ['account_number'] . "', device_owner = " . $p2 ['device_owner'] . " WHERE mac = '" . $tmp_mac . "'";
    $ubF->DB['main']->query ( $query );
    
    $messages = "Successfully Swapped<br >\n";
  }
}

$ubF->tpl->assign ( "MESSAGES", $messages );

$query = "SELECT mac FROM voip_devices ORDER BY mac";
$res = $ubF->DB['main']->query ( $query );

$phone1 = "<option value=\"\">Select one...</option>";
$phone2 = "<option value=\"\">Select one...</option>";

while ( $qData = $res->fetch_row () ) {
  $phone1 .= "<option value=\"" . $qData [0] . "\">" . $qData [0] . "</option>\n";
  $phone2 .= "<option value=\"" . $qData [0] . "\">" . $qData [0] . "</option>\n";
}

$res->free ();

$ubF->tpl->assign ( "PHONE1", $phone1 );
$ubF->tpl->assign ( "PHONE2", $phone2 );

/* Parse and print */
$ubF->tpl->parse ( "MENU", array (
    "menu" 
) );
$ubF->tpl->parse ( "BODY", array (
    "body" 
) );
$ubF->tpl->parse ( "INDEX", array (
    "index" 
) );
$ubF->tpl->FastPrint ( "INDEX" );

?>