Вход Регистрация
Файл: RootPanel 1.7.0 FreeCode/RootPanel 1.7.0 FreeCode/_rootadmin/_currency.inc.php
Строк: 535
<?

if ($sub == "delete" and $id) {
    
checkAdminAccess('sCurrencyEdit',1);

    
$currency GetCurrencyByCode($id);
    if (
GetSetting("currency") == $currency->code) { $error "Нельзя удалить валюту, так как она является валютой сайта. Сначала измените валюту сайта."; }
    else {
        @
mysql_query("delete from currency where id='$id'") or die("File: ".__FILE__."<BR>Line: ".__LINE__."<BR>MySQL Error: ".mysql_error());
        
writeAdminLog("Удалена валюта ID # $id$currency->code");
    }
}

if (
$sub == "add") {
    
checkAdminAccess('sCurrencyEdit',1);

    if (!
$newcode) { $error "Не указан трехсимвольный код валюты."; }
    else if (!
$newname) { $error "Не указано название валюты."; }
    else if (!
$newsymbol) { $error "Не указано сокращение валюты."; }
    else if (!
$newkoeficient and $newkoeficient != "0") { $error "Не указан коэффициент валюты."; }
    else if (
$newkoeficient 0) { $error "Коэффициент валюты не может быть ниже нуля."; }
    else if (
GetCurrencyByCode($newcode)) { $error "Валюта с кодом <B>$newcode</B> уже существует."; }
    else {
        @
mysql_query("INSERT INTO currency (code,name,symbol,koeficient) VALUES('".strtoupper($newcode)."','$newname','$newsymbol','$newkoeficient')") or die("File: ".__FILE__."<BR>Line: ".__LINE__."<BR>MySQL Error: ".mysql_error());
        
$newcode ""$newname ""$newsymbol ""$newkoeficient "";
        
writeAdminLog("Добавлена валюта $newcode");
    }
}

if (
$sub == "setcurrency") {
    
checkAdminAccess('sCurrencyEdit',1);

    
SetSetting("currency",$newcurrency);
    
SetSetting("usersChangeCurrency",$usersChangeCurrency);

    
writeAdminLog("Изменены настройки: Справочник валют / Валюта сайта");
}

if (
$sub == "change") {
    
checkAdminAccess('sCurrencyEdit',1);

    if (!
is_array($code)) { $error "Утерян массив кодов."; }
    else if (!
is_array($name)) { $error "Утерян массив названий."; }
    else if (!
is_array($symbol)) { $error "Утерян массив сокращений."; }
    else if (!
is_array($koeficient)) { $error "Утерян массив коэффициентов."; }
    else {
        
$onecnt 0;
        while (list(
$index,$value) = each($code)) {
            if (
$index == "") { $error "Не указан ID валюты ($value)"; break;}
            else if (
$value == "") { $error "Не указан код валюты (ID $index)"; break;}
            else if (
$name[$index] == "") { $error "Не указано название валюты ($value)"; break;}
            else if (
$symbol[$index] == "") { $error "Не указано сокращение валюты ($value)"; break;}
            else if (
$koeficient[$index] == "") { $error "Не указан коэффициент валюты ($value)"; break;}
            else if (
$koeficient[$index] < and $koeficient[$index] != "0") { $error "Коэффициент валюты не может быть ниже нуля ($value)"; break;}
            else {
                if (
$koeficient[$index] == "1") { $onecnt++; }
                if (
$onecnt 1) { $error "Только одна валюта может иметь коэффициент 1"; break;}
            }
        }
        if (
$onecnt == "0") { $error "Как минимум одна валюта должна иметь коэфициент 1"; }
        if (!
$error) {
            
reset($code);
            while (list(
$index,$value) = each($code)) {
                if (
$koeficient[$index] == "1" and $oldone != $value) { $warning true; }
                @
mysql_query("update currency set name='".$name[$index]."', symbol='".$symbol[$index]."', koeficient='".$koeficient[$index]."' where id='".$index."'") or die("File: ".__FILE__."<BR>Line: ".__LINE__."<BR>MySQL Error: ".mysql_error());
            }
            
writeAdminLog("Изменены настройки: Справочник валют / Список валют");
        }
    }
}

if (
$sub == "convert") {
    
checkAdminAccess('sCurrencyEdit',1);

    if (!
$koeficient) { $error "Не указан коэффициент."; }
    else if (!
$convertbase and !$convertcost) { $error "Не указано, что именно нужно преобразовать в новую валюту."; }
    else {
        if (
$convertbase) {
            @
mysql_query("UPDATE bills set money=ROUND(money*$koeficient,2), money_host=ROUND(money_host*$koeficient,2), money_domain=ROUND(money_domain*$koeficient,2), money_addons=ROUND(money_addons*$koeficient,2), money_shop=ROUND(money_shop*$koeficient,2)") or die("File: ".__FILE__."<BR>Line: ".__LINE__."<BR>MySQL Error: ".mysql_error);
            @
mysql_query("UPDATE users set money=ROUND(money*$koeficient,2), partnerMoney=ROUND(partnerMoney*$koeficient,2)") or die("File: ".__FILE__."<BR>Line: ".__LINE__."<BR>MySQL Error: ".mysql_error);
            
writeAdminLog("Запущен конвертер базы в Справочнике валют");
            print 
"Преобразование базы успешно завершено.<BR>";
        }
        if (
$convertcost) {
            @
mysql_query("UPDATE addons set cost_start=ROUND(cost_start*$koeficient,2), cost_monthly=ROUND(cost_monthly*$koeficient,2)") or die("File: ".__FILE__."<BR>Line: ".__LINE__."<BR>MySQL Error: ".mysql_error);
            @
mysql_query("UPDATE specialcosts set cost1=ROUND(cost1*$koeficient,2), cost2=ROUND(cost2*$koeficient,2)") or die("File: ".__FILE__."<BR>Line: ".__LINE__."<BR>MySQL Error: ".mysql_error);
            @
mysql_query("UPDATE tarifs set cost=ROUND(cost*$koeficient,2), cost_setup=ROUND(cost_setup*$koeficient,2)") or die("File: ".__FILE__."<BR>Line: ".__LINE__."<BR>MySQL Error: ".mysql_error);
            @
mysql_query("UPDATE tarifs_freedomains set ordersum=ROUND(ordersum*$koeficient,2) WHERE NOT(ordersum=0)") or die("File: ".__FILE__."<BR>Line: ".__LINE__."<BR>MySQL Error: ".mysql_error);
            @
mysql_query("UPDATE zones set cost_if_host=ROUND(cost_if_host*$koeficient,2), cost_if_not_host=ROUND(cost_if_not_host*$koeficient,2), cost_if_reseller=ROUND(cost_if_reseller*$koeficient,2), cost_if_domainreseller=ROUND(cost_if_domainreseller*$koeficient,2), renew_if_host=ROUND(renew_if_host*$koeficient,2), renew_if_not_host=ROUND(renew_if_not_host*$koeficient,2), renew_if_reseller=ROUND(renew_if_reseller*$koeficient,2), renew_if_domainreseller=ROUND(renew_if_domainreseller*$koeficient,2)") or die("File: ".__FILE__."<BR>Line: ".__LINE__."<BR>MySQL Error: ".mysql_error);
            @
mysql_query("UPDATE coupons set value=ROUND(value*$koeficient,2) WHERE type='coupon'") or die("File: ".__FILE__."<BR>Line: ".__LINE__."<BR>MySQL Error: ".mysql_error);
            
writeAdminLog("Запущен конвертер цен в Справочнике валют");
            print 
"Преобразование цен успешно завершено.<BR>";
        }
        print 
"<BR>";
    }
}

if (
$sub == "updatecoursessettings") {
    
checkAdminAccess('sCurrencyEdit',1);

    
SetSetting("coursesAutoUpdate"$coursesAutoUpdate);
    
SetSetting("coursesPrivat24Type"$coursesPrivat24Type);
    
SetSetting("coursesAddProcent"$coursesAddProcent);

    
writeAdminLog("Изменены настройки: Справочник валют / Автоматическое получение курсов валют");
    print 
"<center>Настройки успешно сохранены</center><BR>";
}

if (
$sub == "updatecourses") {
    
checkAdminAccess('sCurrencyEdit',1);

    
$result updateCourses(0);

    if (
$result) {
        
writeAdminLog("Изменены настройки: Автоматически обновлены курсы валют");
        print 
"<center>Курсы валют успешно обновлены</center><BR>";
    } else {
        
$error $GLOBALerror;
    }

}

checkAdminAccess('sCurrencyRead',1);

if (
$error) { print "<center><font color=red>Ошибка: $error</font></center><BR>"; }
if (
$warning) { print "<font color=red>Внимание! Вы изменили валюту с коэффициентом 1. Вам необходимо выполнить следующие шаги:</font><BR><p align=left>
1. Если это не новая установка и у Вас в биллинге есть реальные счета или пользователи с внутренним балансом или партнерским счетом больше нуля, Вам необходимо воспользоваться Конвертером базы, чтобы преобразовать все старые суммы в новую валюту.<BR><BR>
2. Необходимо так же преобразовать все цены для Доменных зон, Тарифных планов и Дополнительных услуг, а так же специальные цены в новую валюту. Это можно сделать, как с помощью конвертера так и вручную.<BR><BR>"
; }

print 
"<table cellpadding=3 width=98%>";
print 
"<tr><td align=center colspan=3 bgcolor=$font_head><B>Справочник валют</b></td></tr>";
print 
"<tr bgcolor=$font_head><td align=center><B>Список валют</b></td><td align=center><B>Валюта сайта</b></td><td align=center><B>Конвертер базы</B></td></tr>";
print 
"<tr bgcolor=$font_row><td align=center valign=top width=52% rowspan=3>";

$r GetCurrencys(1);
if (
mysql_num_rows($r) > 0) {

    
$coursesAutoUpdate GetSetting("coursesAutoUpdate");
    
$coursesPrivat24Type GetSetting("coursesPrivat24Type");
    
$coursesAddProcent GetSetting("coursesAddProcent");

    print 
"<form method=POST>";
    print 
"<input type=hidden name=do value=$do>";
    print 
"<input type=hidden name=sub value=change>";
    print 
"<table width=100%><tr align=center bgcolor=#FFFFFF><td width=45>Код</td><td align=center width=150>Название</td><td width=80>Сокращение</td><td width=80>Коэффициент</td><td></td></tr>";
    while (
$rr mysql_fetch_object($r)) {
        if (
$rr->code == "USD" or $rr->code == "EUR" or $rr->code == "RUB" or $rr->code == "UAH" or $rr->code == "BYR") { $readonly "readonly"; } else { $readonly ""; }

        print 
"<tr align=center bgcolor=#FFFFFF><td><input type=text name=code[$rr->id] value='$rr->code' maxlength=3 size=2 readonly></td><Td><input type=text name=name[$rr->id] value='$rr->name' size=20></td><Td><input type=text name=symbol[$rr->id] value='$rr->symbol' size=5></td><Td><input type=text name=koeficient[$rr->id] value='$rr->koeficient' size=3></td><td>"
        if (!(
$rr->code == "USD" or $rr->code == "EUR" or $rr->code == "RUB" or $rr->code == "UAH" or $rr->code == "BYR")) { print "<A href=?do=$do&sub=delete&id=$rr->id onclick="javascript: return confirm('Вы уверены, что хотите удалить валюту?');"><img src=./_rootimages/del.gif alt=Удалить title=Удалить border=0></a>"; } 
        if (
$rr->koeficient == "1") { print "<input type=hidden name=oldone value='$rr->code'>"; }
        print 
"</td></tr>";
    }
    print 
"<tr bgcolor=#FFFFFF><Td align=right colspan=5><input type=submit value=Изменить></form></td></tr>";
    if (
$coursesAutoUpdate) {print "<tr bgcolor=#FFFFFF><Td align=center colspan=5><form method=POST><input type=hidden name=do value=$do><input type=hidden name=sub value=updatecourses><input type=submit value='Автоматически получить курсы валют'></form></td></tr>";}

    print 
"</table>";
    print 
"<BR>";

    print 
"<form method=POST>";
    print 
"<input type=hidden name=do value=$do>";
    print 
"<input type=hidden name=sub value=add>";
    print 
"<table width=100%>";
    print 
"<tr align=center bgcolor=#FFFFFF><td width=45><input type=text name=newcode value='$newcode' maxlength=3 size=2></td><Td width=150><input type=text name=newname value='$newname' size=20></td><Td width=80><input type=text name=newsymbol value='$newsymbol' size=5></td><Td width=80><input type=text name=newkoeficient value='$newkoeficient' size=2></td><td></td></tr>";
    print 
"<tr bgcolor=#FFFFFF><Td align=right colspan=5><input type=submit value=Добавить></td></tr>";
    print 
"</table>";
    print 
"</form><BR>";

    print 
"<table width=100%>";
    print 
"<tr align=justify bgcolor=#FFFFFF><td style='$styleHelp'>";
    print 
"<B>код</b> - международный код валюты (3 символа)<BR>";
    print 
"<B>название</b> - полное название валюты (используется только в админке)<BR>";
    print 
"<B>сокращение</b> - сокращенное название либо символ валюты (используется в клиентской части, в письмах и т.п.)<BR>";
    print 
"<B>коэффициент</b> - коэффициент валюты по отношению к условной единице биллинга<BR><BR>";
    print 
"<B>P.S.</b> Все цены и суммы в админке указываются в условной единице биллинга, которая может быть как долларом, так и любой другой валютой. Если вы указали цены в долларах, то ставим коэффициент 1 для доллара, если в гривне, то для гривны и т.п. Валюта с коэффициентом 1 может быть только одна. Для остальных валют ставим такой коэффициент, чтобы путем умножения цены на данный коэффициент получалась сумма в соответствующей валюте.<BR><BR>";
    print 
"<B>Для отключения валюты</b> устанавливаем ей коэфициент равный нулю.";
    print 
"</td></tr></table>";

}

print 
"</td><Td align=center valign=top width=24% height=100>";

$r GetCurrencys();
if (
mysql_num_rows($r) > 0) {
    print 
"<form method=POST>";
    print 
"<input type=hidden name=do value=$do>";
    print 
"<input type=hidden name=sub value=setcurrency>";
    print 
"<table width=100%><tr align=center bgcolor=#FFFFFF><td><select name=newcurrency>";
    
$currency GetSetting("currency");
    while (
$rr mysql_fetch_object($r)) {
        if (
$rr->code == $currency) { $selected "selected"; } else { $selected ""; }
        print 
"<option value='$rr->code$selected>$rr->name</option>";
    }
    print 
"</select><BR><BR>";
    print 
"<input type=checkbox name=usersChangeCurrency value=1 "; if (GetSetting("usersChangeCurrency")) {print "checked";} print "> разрешить клиентам менять валюту сайта<BR>";
    print 
"<BR><input type=submit value=Изменить></td></tr></table>";
    print 
"</form><BR>";

    print 
"<table width=100%>";
    print 
"<tr align=justify bgcolor=#FFFFFF><td style='$styleHelp'>";
    print 
"<B>Валюта сайта</b> - это валюта, в которой будут отображаться цены на страницах оформления заказов, в клиентской части биллинга, а так же в счетах приходящих на e-mail клиентов.";
    print 
"</td></tr></table>";

}

print 
"</td><Td align=center valign=top width=24%>";

    print 
"<form method=POST>";
    print 
"<input type=hidden name=do value=$do>";
    print 
"<input type=hidden name=sub value=convert>";
    print 
"<table width=100%><tr align=center bgcolor=#FFFFFF><td>Коэффициент: <input type=text name=koeficient size=2><p align=left><input type=checkbox name=convertbase value=1>конв. счета и балансы<BR><input type=checkbox name=convertcost value=1>конв. все цены<center><input type=submit value=Конвертировать></td></tr></table>";
    print 
"</form><BR>";

    print 
"<table width=100%>";
    print 
"<tr align=justify bgcolor=#FFFFFF><td style='$styleHelp'>";
    print 
"<B>Коэффициент</b> - все суммы в базе будут преобразованы в новую валюту путем умножения суммы на данный коэффициент.";
    print 
"</td></tr></table>";

print 
"</td></tr>";
print 
"<tr bgcolor=$font_row height=10><td colspan=2 align=center><B>Автоматическое получение курсов валют</b></td></tr>";
print 
"<tr bgcolor=$font_row><td colspan=2 valign=top>";

    print 
"<form method=POST>";
    print 
"<input type=hidden name=do value=$do>";
    print 
"<input type=hidden name=sub value=updatecoursessettings>";
    print 
"<table width=100%><tr bgcolor=#FFFFFF><td>";
        print 
"<input type=radio name=coursesAutoUpdate onclick="hidediv('privat24div');" value='' "; if (!$coursesAutoUpdate) {print "checked";} print "> отключено<BR>";
        print 
"<input type=radio name=coursesAutoUpdate onclick="showdiv('privat24div');" value='privat24' "; if ($coursesAutoUpdate == "privat24") {print "checked";} print "> получать через Приват24 API";
        
?>
        <div id="privat24div" style="display: <? if ($coursesAutoUpdate == "privat24") { print "block;"; } else { print "none;"; } ?>">
        &nbsp;&nbsp;&nbsp;&nbsp;<input type=radio name=coursesPrivat24Type value=buy <? if ($coursesPrivat24Type == "buy") { print "checked"; } ?>> использовать наличный курс покупки Приватбанка<BR>
        &nbsp;&nbsp;&nbsp;&nbsp;<input type=radio name=coursesPrivat24Type value=sale <? if ($coursesPrivat24Type == "sale") { print "checked"; } ?>> использовать наличный курс продажи Приватбанка<BR>
        &nbsp;&nbsp;&nbsp;&nbsp;<input type=radio name=coursesPrivat24Type value=nbu <? if ($coursesPrivat24Type == "nbu") { print "checked"; } ?>> использовать официальный курс НБУ<BR>
        &nbsp;&nbsp;&nbsp;&nbsp;<input type=radio name=coursesPrivat24Type value=cbrf <? if ($coursesPrivat24Type == "cbrf") { print "checked"; } ?>> использовать официальный курс ЦБ РФ<BR>
        <BR>
        &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Увеличить полученные курсы на <input type=text name=coursesAddProcent value="<?=$coursesAddProcent?>" size=1> % процентов
        </div>
        <?
    
print "<BR><center><input type=submit value=Сохранить></center>";
    print 
"</td></tr></table>";
    print 
"</form><BR>";

print 
"</td></tr>";
print 
"</table><BR>";

?>
Онлайн: 1
Реклама