From: <te...@us...> - 2013-11-29 01:29:02
|
Revision: 6452 http://sourceforge.net/p/web-erp/reponame/6452 Author: tehonu Date: 2013-11-29 01:28:57 +0000 (Fri, 29 Nov 2013) Log Message: ----------- New table bankaccountusers and its maintenance script BankAccountUsers.php. Still not afecting any other webERP script. Modified Paths: -------------- trunk/includes/MainMenuLinksArray.php trunk/sql/mysql/upgrade4.11-4.12.sql Added Paths: ----------- trunk/BankAccountUsers.php Added: trunk/BankAccountUsers.php =================================================================== --- trunk/BankAccountUsers.php (rev 0) +++ trunk/BankAccountUsers.php 2013-11-29 01:28:57 UTC (rev 6452) @@ -0,0 +1,226 @@ +<?php + +include('includes/session.inc'); +$Title = _('Maintenance Of Bank Account Authorized Users'); +include('includes/header.inc'); + +echo '<p class="page_title_text"><img src="'.$RootPath.'/css/'.$Theme.'/images/money_add.png" title="' . _('Bank Account Authorized Users') + . '" alt="" />' . ' ' . $Title . '</p>'; + +if (isset($_POST['SelectedUser'])){ + $SelectedUser = mb_strtoupper($_POST['SelectedUser']); +} elseif (isset($_GET['SelectedUser'])){ + $SelectedUser = mb_strtoupper($_GET['SelectedUser']); +} else { + $SelectedUser=''; +} + +if (isset($_POST['SelectedBankAccount'])){ + $SelectedBankAccount = mb_strtoupper($_POST['SelectedBankAccount']); +} elseif (isset($_GET['SelectedBankAccount'])){ + $SelectedBankAccount = mb_strtoupper($_GET['SelectedBankAccount']); +} + +if (isset($_POST['Cancel'])) { + unset($SelectedBankAccount); + unset($SelectedUser); +} + +if (isset($_POST['Process'])) { + if ($_POST['SelectedBankAccount'] == '') { + echo prnMsg(_('You have not selected any bank account'),'error'); + echo '<br />'; + unset($SelectedBankAccount); + unset($_POST['SelectedBankAccount']); + } +} + +if (isset($_POST['submit'])) { + + $InputError=0; + + if ($_POST['SelectedUser']=='') { + $InputError=1; + echo prnMsg(_('You have not selected an user to be authorized to use this bank account'),'error'); + echo '<br />'; + unset($SelectedBankAccount); + } + + if ( $InputError !=1 ) { + + // First check the user is not being duplicated + + $checkSql = "SELECT count(*) + FROM bankaccountusers + WHERE accountcode= '" . $_POST['SelectedBankAccount'] . "' + AND userid = '" . $_POST['SelectedUser'] . "'"; + + $checkresult = DB_query($checkSql,$db); + $checkrow = DB_fetch_row($checkresult); + + if ( $checkrow[0] >0) { + $InputError = 1; + prnMsg( _('The user') . ' ' . $_POST['SelectedUser'] . ' ' ._('already authorized to use this bank account'),'error'); + } else { + // Add new record on submit + $sql = "INSERT INTO bankaccountusers (accountcode, + userid) + VALUES ('" . $_POST['SelectedBankAccount'] . "', + '" . $_POST['SelectedUser'] . "')"; + + $msg = _('User:') . ' ' . $_POST['SelectedUser'].' '._('has been authorized to use') .' '. $_POST['SelectedBankAccount'] . ' ' . _('bank account'); + $result = DB_query($sql,$db); + prnMsg($msg,'success'); + unset($_POST['SelectedUser']); + } + } +} elseif ( isset($_GET['delete']) ) { + $sql="DELETE FROM bankaccountusers + WHERE accountcode='".$SelectedBankAccount."' + AND userid='".$SelectedUser."'"; + + $ErrMsg = _('The bank account user record could not be deleted because'); + $result = DB_query($sql,$db,$ErrMsg); + prnMsg(_('User').' '. $SelectedUser .' '. _('has been un-authorized to use').' '. $SelectedBankAccount .' '. _('bank account') ,'success'); + unset($_GET['delete']); +} + +if (!isset($SelectedBankAccount)){ + +/* It could still be the second time the page has been run and a record has been selected for modification - SelectedUser will exist because it was sent with the new call. If its the first time the page has been displayed with no parameters +then none of the above are true. These will call the same page again and allow update/input or deletion of the records*/ + echo '<form method="post" action="' . htmlspecialchars($_SERVER['PHP_SELF'],ENT_QUOTES,'UTF-8') . '">'; + echo '<div>'; + echo '<input type="hidden" name="FormID" value="' . $_SESSION['FormID'] . '" />'; + echo '<table class="selection">'; //Main table + + echo '<tr><td>' . _('Select Bank Account') . ':</td><td><select name="SelectedBankAccount">'; + + $SQL = "SELECT accountcode, + bankaccountname + FROM bankaccounts"; + + $result = DB_query($SQL,$db); + echo '<option value="">' . _('Not Yet Selected') . '</option>'; + while ($myrow = DB_fetch_array($result)) { + if (isset($SelectedBankAccount) and $myrow['accountcode']==$SelectedBankAccount) { + echo '<option selected="selected" value="'; + } else { + echo '<option value="'; + } + echo $myrow['accountcode'] . '">' . $myrow['accountcode'] . ' - ' . $myrow['bankaccountname'] . '</option>'; + + } //end while loop + + echo '</select></td></tr>'; + + echo '</table>'; // close main table + DB_free_result($result); + + echo '<br /><div class="centre"><input type="submit" name="Process" value="' . _('Accept') . '" /> + <input type="submit" name="Cancel" value="' . _('Cancel') . '" /></div>'; + + echo '</div> + </form>'; + +} + +//end of ifs and buts! +if (isset($_POST['process'])OR isset($SelectedBankAccount)) { + $SQLName = "SELECT bankaccountname + FROM bankaccounts + WHERE accountcode='" .$SelectedBankAccount."'"; + $result = DB_query($SQLName,$db); + $myrow = DB_fetch_array($result); + $SelectedBankName = $myrow['bankaccountname']; + + echo '<br /><div class="centre"><a href="' . htmlspecialchars($_SERVER['PHP_SELF'],ENT_QUOTES,'UTF-8') . '">' . _('Authorized users for') . ' ' .$SelectedBankName . ' ' . _('bank account') .'</a></div>'; + echo '<form method="post" action="' . htmlspecialchars($_SERVER['PHP_SELF'],ENT_QUOTES,'UTF-8') . '">'; + echo '<div>'; + echo '<input type="hidden" name="FormID" value="' . $_SESSION['FormID'] . '" />'; + + echo '<input type="hidden" name="SelectedBankAccount" value="' . $SelectedBankAccount . '" />'; + + $sql = "SELECT bankaccountusers.userid, + www_users.realname + FROM bankaccountusers INNER JOIN www_users + ON bankaccountusers.userid=www_users.userid + WHERE bankaccountusers.accountcode='".$SelectedBankAccount."' + ORDER BY bankaccountusers.userid ASC"; + + $result = DB_query($sql,$db); + + echo '<br /> + <table class="selection">'; + echo '<tr><th colspan="3"><h3>' . _('Authorized users for bank account') . ' ' .$SelectedBankName. '</h3></th></tr>'; + echo '<tr> + <th>' . _('User Code') . '</th> + <th>' . _('User Name') . '</th> + </tr>'; + +$k=0; //row colour counter + +while ($myrow = DB_fetch_array($result)) { + if ($k==1){ + echo '<tr class="EvenTableRows">'; + $k=0; + } else { + echo '<tr class="OddTableRows">'; + $k=1; + } + + printf('<td>%s</td> + <td>%s</td> + <td><a href="%s?SelectedUser=%s&delete=yes&SelectedBankAccount=' . $SelectedBankAccount . '" onclick="return confirm(\'' . _('Are you sure you wish to un-authorize this user?') . '\');">' . _('Un-authorize') . '</a></td> + </tr>', + $myrow['userid'], + $myrow['realname'], + htmlspecialchars($_SERVER['PHP_SELF'],ENT_QUOTES,'UTF-8'), + $myrow['userid'], + htmlspecialchars($_SERVER['PHP_SELF'],ENT_QUOTES,'UTF-8'), + $myrow['userid']); + } + //END WHILE LIST LOOP + echo '</table>'; + + if (! isset($_GET['delete'])) { + + + echo '<br /><table class="selection">'; //Main table + + echo '<tr><td>' . _('Select User') . ':</td><td><select name="SelectedUser">'; + + $SQL = "SELECT userid, + realname + FROM www_users"; + + $result = DB_query($SQL,$db); + if (!isset($_POST['SelectedUser'])){ + echo '<option selected="selected" value="">' . _('Not Yet Selected') . '</option>'; + } + while ($myrow = DB_fetch_array($result)) { + if (isset($_POST['SelectedUser']) AND $myrow['userid']==$_POST['SelectedUser']) { + echo '<option selected="selected" value="'; + } else { + echo '<option value="'; + } + echo $myrow['userid'] . '">' . $myrow['userid'] . ' - ' . $myrow['realname'] . '</option>'; + + } //end while loop + + echo '</select></td></tr>'; + + echo '</table>'; // close main table + DB_free_result($result); + + echo '<br /><div class="centre"><input type="submit" name="submit" value="' . _('Accept') . '" /> + <input type="submit" name="Cancel" value="' . _('Cancel') . '" /></div>'; + + echo '</div> + </form>'; + + } // end if user wish to delete +} + +include('includes/footer.inc'); +?> \ No newline at end of file Modified: trunk/includes/MainMenuLinksArray.php =================================================================== --- trunk/includes/MainMenuLinksArray.php 2013-11-28 15:19:57 UTC (rev 6451) +++ trunk/includes/MainMenuLinksArray.php 2013-11-29 01:28:57 UTC (rev 6452) @@ -368,13 +368,17 @@ _('Account Groups'), _('GL Accounts'), _('GL Budgets'), - _('GL Tags')); + _('GL Tags'), + _('Bank Accounts'), + _('Bank Account Authorized Users')); $MenuItems['GL']['Maintenance']['URL'] = array( '/AccountSections.php', '/AccountGroups.php', '/GLAccounts.php', '/GLBudgets.php', - '/GLTags.php'); + '/GLTags.php', + '/BankAccounts.php', + '/BankAccountUsers.php')); $MenuItems['FA']['Transactions']['Caption'] = array(_('Add a new Asset'), _('Select an Asset'), @@ -430,7 +434,6 @@ _('Maintain Security Tokens'), _('Access Permissions Maintenance'), _('Page Security Settings'), - _('Bank Accounts'), _('Currencies Maintenance'), _('Tax Authorities and Rates Maintenance'), _('Tax Group Maintenance'), @@ -451,7 +454,6 @@ '/SecurityTokens.php', '/WWW_Access.php', '/PageSecurity.php', - '/BankAccounts.php', '/Currencies.php', '/TaxAuthorities.php', '/TaxGroups.php', Modified: trunk/sql/mysql/upgrade4.11-4.12.sql =================================================================== --- trunk/sql/mysql/upgrade4.11-4.12.sql 2013-11-28 15:19:57 UTC (rev 6451) +++ trunk/sql/mysql/upgrade4.11-4.12.sql 2013-11-29 01:28:57 UTC (rev 6452) @@ -1,4 +1,10 @@ #--UPDATE config SET confvalue='4.12' WHERE confname='VersionNumber'; +INSERT INTO `scripts` (`script`, `pagesecurity`, `description`) + VALUES ('BankAccountUsers.php', '15', 'Maintains table bankaccountusers (Authorized users to work with a bank account in webERP)'); +CREATE TABLE IF NOT EXISTS `bankaccountusers` ( + `accountcode` varchar(20) NOT NULL COMMENT 'Bank account code', + `userid` varchar(20) NOT NULL COMMENT 'User code' +) ENGINE=InnoDB DEFAULT CHARSET=utf8; |