<?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: add_account.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: Accounts - New Account" ); /* Main defines */ $ubF->tpl->define ( array ( "index" => "admin/wrapper/default.html" ) ); $ubF->tpl->define ( array ( "menu" => "admin/accounts/menu.html" ) ); $ubF->tpl->define ( array ( "body" => "admin/accounts/add_account.html" ) ); $ubF->session->Validate ( 'A_G_', 0 ); $query = "SELECT aid, account_number, customer_since, status, company, address, address2, city, state, zipcode, website, title, first_name, last_name, telephone, fax, cell, email FROM accounts WHERE aid = " . $data ['data'] ['aid']; $res = $ubF->DB['main']->query ( $query ); if ( $res ) $qData = $res->fetch_assoc (); $mapFields = array ( "account_number" => 13, "company" => 3, "address" => 3, "address2" => 0, "city" => 3, "state" => 2, "zipcode" => 5, "website" => 9, "title" => 3, "first_name" => 1, "last_name" => 1, "telephone" => 10, "fax" => 0, "cell" => 0, "email" => 7 ); if ( !isset ( $data ['data'] ['account_number'] ) ) $data ['data'] ['account_number'] = $data->libs['ubf']->genAccountNumber (); if ( !isset ( $data ['data'] ['customer_since'] ) ) $data ['data'] ['customer_since'] = time (); $message = ""; if ( isset ( $data ['data'] ['aiu'] ) ) { /* Verify Fields Data */ foreach ( $mapFields as $key => $val ) if ( strlen ( $data ['data'] [$key] ) < $val ) $message .= "<h5>$key Needs To Be Atleast $val Characters</h5>"; if ( strlen ( $message ) == 0 ) { $lup = time (); $query = "INSERT INTO accounts (last_update,account_number,customer_since,status,company,address,address2,city,state,zipcode,website,title,first_name,last_name,telephone,fax,cell,email,contract_start,contract_end) VALUES($lup,'" . $data ['data'] ['account_number'] . "',$lup,1,'" . $data ['data'] ['company'] . "','" . $data ['data'] ['address'] . "','" . $data ['data'] ['address2'] . "','" . $data ['data'] ['city'] . "','" . $data ['data'] ['state'] . "','" . $data ['data'] ['zipcode'] . "','" . $data ['data'] ['website'] . "','" . $data ['data'] ['title'] . "','" . $data ['data'] ['first_name'] . "','" . $data ['data'] ['last_name'] . "','" . $data ['data'] ['telephone'] . "','" . $data ['data'] ['fax'] . "','" . $data ['data'] ['cell'] . "','" . $data ['data'] ['email'] . "',$lup,$lup)"; if ( $ubF->DB['main']->query ( $query ) === true ) { $password = $data->libs['ubf']->generatePassword ( 8 ); /* Defaults For Master Account */ $acls = array ( 'U_A_' => 1, 'U_B_' => 1, 'U_C_' => 1, 'U_P_' => 1, 'U_V_' => 1, 'U_D_' => 1 ); $master_acl = json_decode ( '{"A_G_":[0,"General"],"A_A_":[0,"Accounts"],"A_B_":[0,"Billing"],"A_C_":[0,"uBix Cube"],"A_P_":[0,"Platform"],"A_V_":[0,"VoIP"],"A_D_":[0,"ubDialin"],"A_F_":[0,"ubFaxin"],"A_S_":[0,"Secure PDF"],"U_G_":[0,"General"],"U_A_":[0,"My Account"],"U_B_":[0,"Billing"],"U_C_":[0,"uBix Cube"],"U_P_":[0,"Platform"],"U_V_":[0,"VoIP"],"U_D_":[0,"Dialer"],"U_F_":[0,"ubFaxin"],"U_S_":[0,"Secure PDF"]}' ); foreach ( $master_acl as $acl_code => $acl_val ) if ( $acl_val [0] == 1 ) $session_acl .= $acl_code . ","; $query = "INSERT INTO users (email, password, first_name, last_name, account_number, session_acl, master_acl, status, account_type, created, last_updated) VALUES('" . $data ['data'] ['email'] . "', '" . hash ( "SHA256", $password ) . "', '" . $data ['data'] ['first_name'] . "', '" . $data ['data'] ['last_name'] . "', '" . $data ['data'] ['account_number'] . "', '" . $session_acl . "', '" . json_encode ( $master_acl ) . "', 1, 5, " . time () . ", " . time () . ")"; if ( $ubF->DB['main']->query ( $query ) === false ) { $message = "<h3>Account Created - Error Creating User</h3>"; $e_message = "Welcome aboard " . $data ['data'] ['first_name'] . ",<br>\n<br>\n"; $e_message .= "Thank you for choosing PSC Tech as your reliable IT partner for " . $data ['data'] ['company'] . ". As we continue to activate your services you will receive updates letting you know that they are available along with basic instructions on how to use them.<br>\n<br>\n"; $e_message .= "Please keep the following information for your records as it will help expedite all support requests.<br>\n<br>\n"; $e_message .= "Account Number: " . $data ['data'] ['account_number'] . "<br>\n"; $e_message .= "Account Manager: Douglas Goldstein<br>\n"; $e_message .= "Account Manager E-Mail: dgoldstein@ubixtechnologies.com<br>\n"; $e_message .= "Account Manager Direct Line: 516-423-0666<br>\n"; $e_message .= "Service Line: 844-842-UBIX (8249)<br>\n<br>\n"; $e_message .= "If you have any questions concerning your new services please contact your account manager. If you need to request support please call our service line or e-mail support@ubixtechnologies.com.<br>\n<br>\n"; $recipient = $data ['data'] ['first_name'] . " " . $data ['data'] ['last_name'] . " <" . $data ['data'] ['email'] . ">"; foreach ( $mapFields as $key => $val ) $data ['data'] [$key] = ""; $data->libs['ubf']->sendMail ( "Welcome to PSC Tech", $e_message, $recipient, "sales@ubixtechnologies.net", "newaccount@ubixtechnologies.net" ); } else { $message = "<h3>Account Created - User Created</h3>"; $e_message = "Welcome aboard " . $data ['data'] ['first_name'] . ",<br>\n<br>\n"; $e_message .= "Thank you for choosing PSC Tech as your reliable IT partner for " . $data ['data'] ['company'] . ". As we continue to activate your services you will receive updates letting you know that they are available along with basic instructions on how to use them.<br>\n<br>\n"; $e_message .= "Please keep the following information for your records as it will help expedite all support requests.<br>\n<br>\n"; $e_message .= "Account Number: " . $data ['data'] ['account_number'] . "<br>\n"; $e_message .= "Account Manager: Douglas Goldstein<br>\n"; $e_message .= "Account Manager E-Mail: dgoldstein@PSCTech.us<br>\n"; $e_message .= "Account Manager Direct Line: 516-423-0666<br>\n"; $e_message .= "Service Line: 844-842-UBIX (8249)<br>\n<br>\n"; $e_message .= "Portal Information:<br>\n<br>\n"; $e_message .= "Portal Address: <a href=\"https://manage.ubixtechnologies.net/\">https://manage.ubixtechnologies.net</a><br>\n"; $e_message .= "Portal Username: " . $data ['data'] ['email'] . "<br>\n"; $e_message .= "Portal Temporary Password: " . $password . "<br>\n<br>\n"; $e_message .= "If you have any questions concerning your new services please contact your account manager. If you need to request support please call our service line or e-mail support@ubixtechnologies.com.<br>\n<br>\n"; $recipient = $data ['data'] ['first_name'] . " " . $data ['data'] ['last_name'] . " <" . $data ['data'] ['email'] . ">"; foreach ( $mapFields as $key => $val ) $data ['data'] [$key] = ""; $data->libs['ubf']->sendMail ( "Welcome to PSC Tech", $e_message, $recipient, "sales@ubixtechnologies.net", "newaccount@ubixtechnologies.net" ); } } else $message = "<h3>Error Creating Account</h3>"; } } else { /* Populate Fields From Database */ foreach ( $mapFields as $key => $val ) if ( !isset ( $data ['data'] [$key] ) ) $data ['data'] [$key] = $qData [$key]; } $ubF->tpl->assign ( "AID", $qData ['aid'] ); $ubF->tpl->assign ( "MESSAGE", $message ); /* Account Information */ $ubF->tpl->assign ( "ACCOUNT_NUMBER", $data ['data'] ['account_number'] ); $ubF->tpl->assign ( "CUSTOMER_SINCE", date ( "m/d/Y", $data ['data'] ['customer_since'] ) ); $ubF->tpl->assign ( "STATUS", $data->libs['ubf']->aStatus [$qData [status]] ); /* Company Information */ $ubF->tpl->assign ( "COMPANY", $data ['data'] ['company'] ); $ubF->tpl->assign ( "ADDRESS", $data ['data'] ['address'] ); $ubF->tpl->assign ( "ADDRESS2", $data ['data'] ['address2'] ); $ubF->tpl->assign ( "CITY", $data ['data'] ['city'] ); $ubF->tpl->assign ( "STATE", $data ['data'] ['state'] ); $ubF->tpl->assign ( "ZIPCODE", $data ['data'] ['zipcode'] ); $ubF->tpl->assign ( "WEBSITE", $data ['data'] ['website'] ); /* Account Guarantor */ $ubF->tpl->assign ( "TITLE", $data ['data'] ['title'] ); $ubF->tpl->assign ( "FIRST_NAME", $data ['data'] ['first_name'] ); $ubF->tpl->assign ( "LAST_NAME", $data ['data'] ['last_name'] ); $ubF->tpl->assign ( "TELEPHONE", $data ['data'] ['telephone'] ); $ubF->tpl->assign ( "FAX", $data ['data'] ['fax'] ); $ubF->tpl->assign ( "CELL", $data ['data'] ['cell'] ); $ubF->tpl->assign ( "EMAIL", $data ['data'] ['email'] ); /* 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" ); ?>