Pour corriger l'incompatibilité entre module DigressivePrice et le multi-déclinaisons, sur la page produit
@@ -1,110 +1,110 @@
|
||||
<!--
|
||||
______ __ __ ______ __ __ ______
|
||||
/\__ _\ /\ \_\ \ /\ ___\ /\ \ /\ \ /\ __ \
|
||||
\/_/\ \/ \ \ __ \ \ \ __\ \ \ \____ \ \ \ \ \ __ \
|
||||
\ \_\ \ \_\ \_\ \ \_____\ \ \_____\ \ \_\ \ \_\ \_\
|
||||
\/_/ \/_/\/_/ \/_____/ \/_____/ \/_/ \/_/\/_/
|
||||
|
||||
|
||||
Copyright (c) OpenStudio
|
||||
email : info@thelia.net
|
||||
web : http://www.thelia.net
|
||||
|
||||
This program is free software; you can redistribute it and/or modify
|
||||
it under the terms of the GNU General Public License as published by
|
||||
the Free Software Foundation; either version 3 of the
|
||||
GNU General Public License : http://www.gnu.org/licenses/
|
||||
-->
|
||||
|
||||
<!--
|
||||
TEMPLATE-TEST-HOOK
|
||||
-->
|
||||
|
||||
{* Declare assets directory, relative to template base directory *}
|
||||
{declare_assets directory='assets'}
|
||||
|
||||
{* Set the default translation domain, that will be used by {intl} when the 'd' parameter is not set *}
|
||||
{default_translation_domain domain='fo.default'}
|
||||
|
||||
{hook name="main.head-top"}
|
||||
|
||||
{hook name="main.stylesheet"}
|
||||
|
||||
{hook name="main.body-top"}
|
||||
|
||||
{hook name="main.header-top"}
|
||||
|
||||
{hook name="main.navbar-secondary"}
|
||||
{ifhook rel="main.navbar-secondary"}
|
||||
::main.navbar-secondary ifhook::
|
||||
{/ifhook}
|
||||
{elsehook rel="main.navbar-secondary"}
|
||||
::main.navbar-secondary elsehook::
|
||||
{/elsehook}
|
||||
|
||||
{hook name="main.navbar-primary"}
|
||||
{ifhook rel="main.navbar-primary"}
|
||||
::main.navbar-primary ifhook::
|
||||
{/ifhook}
|
||||
{elsehook rel="main.navbar-primary"}
|
||||
::main.navbar-primary elsehook::
|
||||
{/elsehook}
|
||||
|
||||
{hook name="main.header-bottom"}
|
||||
|
||||
{hook name="main.content-top"}
|
||||
|
||||
|
||||
{block name="main-content"}{/block}
|
||||
|
||||
|
||||
{hook name="main.content-bottom"}
|
||||
|
||||
{ifhook rel="main.footer-top"}
|
||||
{hook name="main.footer-top"}
|
||||
{/ifhook}
|
||||
{elsehook rel="main.footer-top"}
|
||||
::NO main.footer-top::
|
||||
{/elsehook}
|
||||
|
||||
{ifhook rel="product.additional"}
|
||||
{hookblock name="product.additional"}
|
||||
{forhook rel="product.additional"}
|
||||
::product.additional ifhook::
|
||||
{/forhook}
|
||||
{/hookblock}
|
||||
{/ifhook}
|
||||
{elsehook rel="product.additional"}
|
||||
::product.additional elsehook::
|
||||
{/elsehook}
|
||||
|
||||
|
||||
|
||||
{ifhook rel="main.footer-body"}
|
||||
::main.footer-body ifhook::
|
||||
{hookblock name="main.footer-body"}
|
||||
{forhook rel="main.footer-body"}
|
||||
::main.footer-body {$id} {$class} {$content}::
|
||||
{/forhook}
|
||||
{/hookblock}
|
||||
{/ifhook}
|
||||
{elsehook rel="main.footer-body"}
|
||||
::main.footer-body elsehook::
|
||||
{/elsehook}
|
||||
|
||||
{ifhook rel="main.footer-bottom"}
|
||||
{hook name="main.footer-bottom"}
|
||||
{/ifhook}
|
||||
{elsehook rel="main.footer-bottom"}
|
||||
::NO main.footer-bottom::
|
||||
{/elsehook}
|
||||
|
||||
{hook name="main.after-javascript-include"}
|
||||
|
||||
{block name="after-javascript-include"}{/block}
|
||||
|
||||
{hook name="main.javascript-initialization"}
|
||||
|
||||
{block name="javascript-initialization"}{/block}
|
||||
|
||||
{hook name="main.body-bottom"}
|
||||
<!--
|
||||
______ __ __ ______ __ __ ______
|
||||
/\__ _\ /\ \_\ \ /\ ___\ /\ \ /\ \ /\ __ \
|
||||
\/_/\ \/ \ \ __ \ \ \ __\ \ \ \____ \ \ \ \ \ __ \
|
||||
\ \_\ \ \_\ \_\ \ \_____\ \ \_____\ \ \_\ \ \_\ \_\
|
||||
\/_/ \/_/\/_/ \/_____/ \/_____/ \/_/ \/_/\/_/
|
||||
|
||||
|
||||
Copyright (c) OpenStudio
|
||||
email : info@thelia.net
|
||||
web : http://www.thelia.net
|
||||
|
||||
This program is free software; you can redistribute it and/or modify
|
||||
it under the terms of the GNU General Public License as published by
|
||||
the Free Software Foundation; either version 3 of the
|
||||
GNU General Public License : http://www.gnu.org/licenses/
|
||||
-->
|
||||
|
||||
<!--
|
||||
TEMPLATE-TEST-HOOK
|
||||
-->
|
||||
|
||||
{* Declare assets directory, relative to template base directory *}
|
||||
{declare_assets directory='assets'}
|
||||
|
||||
{* Set the default translation domain, that will be used by {intl} when the 'd' parameter is not set *}
|
||||
{default_translation_domain domain='fo.default'}
|
||||
|
||||
{hook name="main.head-top"}
|
||||
|
||||
{hook name="main.stylesheet"}
|
||||
|
||||
{hook name="main.body-top"}
|
||||
|
||||
{hook name="main.header-top"}
|
||||
|
||||
{hook name="main.navbar-secondary"}
|
||||
{ifhook rel="main.navbar-secondary"}
|
||||
::main.navbar-secondary ifhook::
|
||||
{/ifhook}
|
||||
{elsehook rel="main.navbar-secondary"}
|
||||
::main.navbar-secondary elsehook::
|
||||
{/elsehook}
|
||||
|
||||
{hook name="main.navbar-primary"}
|
||||
{ifhook rel="main.navbar-primary"}
|
||||
::main.navbar-primary ifhook::
|
||||
{/ifhook}
|
||||
{elsehook rel="main.navbar-primary"}
|
||||
::main.navbar-primary elsehook::
|
||||
{/elsehook}
|
||||
|
||||
{hook name="main.header-bottom"}
|
||||
|
||||
{hook name="main.content-top"}
|
||||
|
||||
|
||||
{block name="main-content"}{/block}
|
||||
|
||||
|
||||
{hook name="main.content-bottom"}
|
||||
|
||||
{ifhook rel="main.footer-top"}
|
||||
{hook name="main.footer-top"}
|
||||
{/ifhook}
|
||||
{elsehook rel="main.footer-top"}
|
||||
::NO main.footer-top::
|
||||
{/elsehook}
|
||||
|
||||
{ifhook rel="product.additional"}
|
||||
{hookblock name="product.additional"}
|
||||
{forhook rel="product.additional"}
|
||||
::product.additional ifhook::
|
||||
{/forhook}
|
||||
{/hookblock}
|
||||
{/ifhook}
|
||||
{elsehook rel="product.additional"}
|
||||
::product.additional elsehook::
|
||||
{/elsehook}
|
||||
|
||||
|
||||
|
||||
{ifhook rel="main.footer-body"}
|
||||
::main.footer-body ifhook::
|
||||
{hookblock name="main.footer-body"}
|
||||
{forhook rel="main.footer-body"}
|
||||
::main.footer-body {$id} {$class} {$content}::
|
||||
{/forhook}
|
||||
{/hookblock}
|
||||
{/ifhook}
|
||||
{elsehook rel="main.footer-body"}
|
||||
::main.footer-body elsehook::
|
||||
{/elsehook}
|
||||
|
||||
{ifhook rel="main.footer-bottom"}
|
||||
{hook name="main.footer-bottom"}
|
||||
{/ifhook}
|
||||
{elsehook rel="main.footer-bottom"}
|
||||
::NO main.footer-bottom::
|
||||
{/elsehook}
|
||||
|
||||
{hook name="main.after-javascript-include"}
|
||||
|
||||
{block name="after-javascript-include"}{/block}
|
||||
|
||||
{hook name="main.javascript-initialization"}
|
||||
|
||||
{block name="javascript-initialization"}{/block}
|
||||
|
||||
{hook name="main.body-bottom"}
|
||||
|
||||
BIN
local/media/images/carousel/flyer-bieauxlegumes-6.jpg
Normal file
|
After Width: | Height: | Size: 78 KiB |
BIN
local/media/images/carousel/welcom2-11.jpg
Normal file
|
After Width: | Height: | Size: 176 KiB |
BIN
local/media/images/product/abricot-111.jpg
Normal file
|
After Width: | Height: | Size: 102 KiB |
BIN
local/media/images/product/ail-112.jpg
Normal file
|
After Width: | Height: | Size: 237 KiB |
BIN
local/media/images/product/artichaut-129.jpg
Normal file
|
After Width: | Height: | Size: 287 KiB |
BIN
local/media/images/product/aspergeverte-136.jpg
Normal file
|
After Width: | Height: | Size: 89 KiB |
BIN
local/media/images/product/avocat-122.jpg
Normal file
|
After Width: | Height: | Size: 475 KiB |
BIN
local/media/images/product/carotteenbotte-138.png
Normal file
|
After Width: | Height: | Size: 312 KiB |
BIN
local/media/images/product/carottepleineterre-139.jpg
Normal file
|
After Width: | Height: | Size: 111 KiB |
BIN
local/media/images/product/celerirave-140.jpg
Normal file
|
After Width: | Height: | Size: 579 KiB |
BIN
local/media/images/product/chou-fleur-133.jpg
Normal file
|
After Width: | Height: | Size: 134 KiB |
BIN
local/media/images/product/citronjaune-108.jpg
Normal file
|
After Width: | Height: | Size: 192 KiB |
BIN
local/media/images/product/clmentine-110.jpg
Normal file
|
After Width: | Height: | Size: 497 KiB |
BIN
local/media/images/product/echalote-121.jpg
Normal file
|
After Width: | Height: | Size: 152 KiB |
BIN
local/media/images/product/fraise-124.jpg
Normal file
|
After Width: | Height: | Size: 534 KiB |
BIN
local/media/images/product/kiwijaune-132.jpg
Normal file
|
After Width: | Height: | Size: 165 KiB |
BIN
local/media/images/product/kiwivert-107.jpg
Normal file
|
After Width: | Height: | Size: 118 KiB |
BIN
local/media/images/product/nectarinejaune-115.jpg
Normal file
|
After Width: | Height: | Size: 176 KiB |
BIN
local/media/images/product/nectarines-114.jpg
Normal file
|
After Width: | Height: | Size: 176 KiB |
BIN
local/media/images/product/oeufs-144.jpg
Normal file
|
After Width: | Height: | Size: 24 KiB |
BIN
local/media/images/product/orange-109.jpg
Normal file
|
After Width: | Height: | Size: 127 KiB |
BIN
local/media/images/product/orange-128.jpg
Normal file
|
After Width: | Height: | Size: 127 KiB |
BIN
local/media/images/product/pche-118.png
Normal file
|
After Width: | Height: | Size: 291 KiB |
BIN
local/media/images/product/pcheplate-142.jpg
Normal file
|
After Width: | Height: | Size: 76 KiB |
BIN
local/media/images/product/pechejaune-119.png
Normal file
|
After Width: | Height: | Size: 291 KiB |
BIN
local/media/images/product/petitpois-143.jpg
Normal file
|
After Width: | Height: | Size: 78 KiB |
BIN
local/media/images/product/poireau-134.jpg
Normal file
|
After Width: | Height: | Size: 114 KiB |
BIN
local/media/images/product/raisinrouge-126.jpg
Normal file
|
After Width: | Height: | Size: 24 KiB |
BIN
local/media/images/product/saladebatavia-137.jpg
Normal file
|
After Width: | Height: | Size: 120 KiB |
@@ -1,2 +1,2 @@
|
||||
csdcvdcsccsdc
|
||||
csdcvdcsccsdc
|
||||
ccsdcds
|
||||
@@ -1,490 +1,490 @@
|
||||
{extends file="admin-layout.tpl"}
|
||||
|
||||
{block name="after-bootstrap-css"}
|
||||
|
||||
{/block}
|
||||
|
||||
{block name="no-return-functions"}
|
||||
{$admin_current_location = 'module'}
|
||||
{/block}
|
||||
|
||||
{block name="page-title"}Configuration CustomerFamily{/block}
|
||||
|
||||
{block name="check-resource"}admin.module{/block}
|
||||
{block name="check-access"}view{/block}
|
||||
{block name="check-module"}CustomerFamily{/block}
|
||||
|
||||
{block name="main-content"}
|
||||
|
||||
<div class="general-block-decorator" id="CustomerFamily">
|
||||
<div class="title">
|
||||
{intl l="Customer Family" d='customerfamily.bo.default'}
|
||||
</div>
|
||||
|
||||
<div class="row">
|
||||
<div class="col-md-12">
|
||||
<!-- Tab menu -->
|
||||
<ul id="tabbed-menu" class="nav nav-tabs">
|
||||
<li class="active"><a data-toggle="tab" href="#families">{intl l="Families" d='customerfamily.bo.default'}</a> </li>
|
||||
<li><a data-toggle="tab" href="#prices_definition">{intl l="Prices definition" d='customerfamily.bo.default'}</a></li>
|
||||
<li><a data-toggle="tab" href="#category_restrictions">{intl l="Category restrictions" d='customerfamily.bo.default'}</a></li>
|
||||
<li><a data-toggle="tab" href="#brand_restrictions">{intl l="Brand restrictions" d='customerfamily.bo.default'}</a></li>
|
||||
</ul>
|
||||
|
||||
<div class="tab-content">
|
||||
|
||||
<!-- Families managing tab -->
|
||||
<div id="families" class="tab-pane active form-container">
|
||||
<div class="row">
|
||||
<div class="col-md-6">
|
||||
{if $hide_flags != true}
|
||||
<ul class="nav nav-pills">
|
||||
{loop name="lang_list" type="lang"}
|
||||
<li {if $ID == $edit_language_id}class="active"{/if}>
|
||||
{if $current_tab}
|
||||
{$lang_url = {url path="/admin/module/CustomerFamily" edit_language_id=$ID current_tab=$current_tab}}
|
||||
{else}
|
||||
{$lang_url = {url path="/admin/module/CustomerFamily" edit_language_id=$ID}}
|
||||
{/if}
|
||||
<a class="language-change-button" data-language-id="{$ID}" href="{$lang_url nofilter}" title="{intl l='Edit information in %lng' lng={$TITLE}}">
|
||||
<img src="{image file="assets/img/flags/$CODE.png"}" alt="{$TITLE}" />
|
||||
</a>
|
||||
</li>
|
||||
{/loop}
|
||||
</ul>
|
||||
{/if}
|
||||
</div>
|
||||
|
||||
{form name="customer.family.delete.form"}
|
||||
{if $form_error}
|
||||
<div class="alert alert-danger">{$form_error_message}</div
|
||||
{/if}
|
||||
{/form}
|
||||
|
||||
<div class="col-md-12">
|
||||
<table class="table">
|
||||
<thead>
|
||||
<tr>
|
||||
<th>
|
||||
{intl l="ID"}
|
||||
</th>
|
||||
<th>
|
||||
{intl l="Code"}
|
||||
</th>
|
||||
<th>
|
||||
{intl l="Title"}
|
||||
</th>
|
||||
<th>
|
||||
{intl l="Default"}
|
||||
</th>
|
||||
<th>
|
||||
{intl l="Action"}
|
||||
</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
{ifloop rel="customer_family"}
|
||||
|
||||
<!-- Default family -->
|
||||
{form name='customer_family_update_default_form'}
|
||||
<form action="{url path='/admin/module/CustomerFamily/update-default'}" method="post" id="update-default-family-form">
|
||||
|
||||
{form_hidden_fields form=$form}
|
||||
|
||||
{form_field form=$form field="customer_family_id"}
|
||||
<input type="hidden" name="{$name}" id="default_family_id">
|
||||
{/form_field}
|
||||
</form>
|
||||
{/form}
|
||||
|
||||
<!-- Families list -->
|
||||
{loop type="customer_family" name="customer_family" lang=$edit_language_id force_return="on"}
|
||||
<tr>
|
||||
<td>
|
||||
{$CUSTOMER_FAMILY_ID}
|
||||
</td>
|
||||
<td>
|
||||
{$CODE}
|
||||
</td>
|
||||
<td>
|
||||
{$TITLE_CUSTOMER_FAMILY}
|
||||
</td>
|
||||
<td>
|
||||
<div class="switch-small update-default-family" data-id="{$CUSTOMER_FAMILY_ID}" data-on="success" data-off="danger" data-on-label="<i class='glyphicon glyphicon-ok-circle'></i>" data-off-label="<i class='glyphicon glyphicon-remove-circle'></i>">
|
||||
<input type="radio" name="is_default" {if $IS_DEFAULT}checked{/if} />
|
||||
</div>
|
||||
</td>
|
||||
<td>
|
||||
<a class="btn btn-info pull-left js-action-update" data-id="{$CUSTOMER_FAMILY_ID}" data-code="{$CODE}" data-title="{$TITLE_CUSTOMER_FAMILY}" style="margin-right: 5px;">{intl l="Edit" d='customerfamily.bo.default'}</a>
|
||||
<a class="btn btn-danger pull-left js-action-delete" data-id="{$CUSTOMER_FAMILY_ID}" style="margin-right: 5px;">{intl l="Delete"}</a>
|
||||
</td>
|
||||
</tr>
|
||||
{/loop}
|
||||
{/ifloop}
|
||||
{elseloop rel="customer_family"}
|
||||
<tr>
|
||||
<td colspan="4" class="text-center">
|
||||
{intl l="No family" d='customerfamily.bo.default'}
|
||||
</td>
|
||||
</tr>
|
||||
{/elseloop}
|
||||
</tbody>
|
||||
<tfoot class="text-center">
|
||||
<tr>
|
||||
<td colspan="4">
|
||||
{form name="customer.family.create.form"}
|
||||
<form action="{url path="/admin/module/CustomerFamily/create"}" method="POST" class="form-inline">
|
||||
{if $form_error}
|
||||
<div class="alert alert-danger">{$form_error_message}</div
|
||||
{/if}
|
||||
{form_hidden_fields form=$form}
|
||||
{form_field form=$form field="locale"}
|
||||
<input type="hidden" name="{$name}" value="{$edit_language_locale}" />
|
||||
{/form_field}
|
||||
{form_field form=$form field="code"}
|
||||
<div class="form-group{if $error} has-error{/if}">
|
||||
<input class="form-control" type="text" required placeholder="{$label}" name="{$name}" value="{$value}" />
|
||||
</div>
|
||||
{/form_field}
|
||||
{form_field form=$form field="title"}
|
||||
<div class="form-group{if $error} has-error{/if}">
|
||||
<input class="form-control" type="text" required placeholder="{$label}" name="{$name}" value="{$value}" />
|
||||
</div>
|
||||
{/form_field}
|
||||
<div class="form-group">
|
||||
<button type="submit" class="btn btn-primary js-action-create">{intl l="Add"}</button>
|
||||
</div>
|
||||
</form>
|
||||
{/form}
|
||||
</td>
|
||||
</tr>
|
||||
</tfoot>
|
||||
</table>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
{form name="customer.family.delete.form"}
|
||||
<div class="modal js-modal-delete" tabindex="-1" role="dialog" aria-labelledby="Delete family" aria-hidden="true">
|
||||
<div class="modal-dialog">
|
||||
<form action="" method="POST">
|
||||
{form_hidden_fields form=$form}
|
||||
<div class="modal-content">
|
||||
<div class="modal-body">
|
||||
{intl l="Do you really want to delete this customer family ?" d='customerfamily.bo.default'}
|
||||
</div>
|
||||
<div class="modal-footer">
|
||||
<button type="button" class="btn btn-default" data-dismiss="modal">{intl l="No"}</button>
|
||||
<button type="submit" type="button" class="btn btn-danger js-action-delete-confirm">{intl l="Yes"}</button>
|
||||
</div>
|
||||
</div>
|
||||
</form>
|
||||
</div>
|
||||
</div>
|
||||
{/form}
|
||||
|
||||
{form name="customer.family.update.form"}
|
||||
<div class="modal js-modal-update" tabindex="-1" role="dialog" aria-labelledby="Update family" aria-hidden="true">
|
||||
<div class="modal-dialog">
|
||||
<form action="" method="POST">
|
||||
{form_hidden_fields form=$form}
|
||||
<div class="modal-content">
|
||||
<div class="modal-body">
|
||||
{form_field form=$form field="locale"}
|
||||
<input type="hidden" name="{$name}" value="{$edit_language_locale}" />
|
||||
{/form_field}
|
||||
{form_field form=$form field="code"}
|
||||
<div class="form-group{if $error} has-error{/if}">
|
||||
<label>{$label}</label>
|
||||
<input class="form-control js-field-code" type="text" required placeholder="{$label}" name="{$name}" value="{$value}" />
|
||||
</div>
|
||||
{/form_field}
|
||||
{form_field form=$form field="title"}
|
||||
<div class="form-group{if $error} has-error{/if}">
|
||||
<label>{$label}</label>
|
||||
<input class="form-control js-field-title" type="text" required placeholder="{$label}" name="{$name}" value="{$value}" />
|
||||
</div>
|
||||
{/form_field}
|
||||
</div>
|
||||
<div class="modal-footer">
|
||||
<button type="button" class="btn btn-default" data-dismiss="modal">{intl l="Cancel"}</button>
|
||||
<button type="submit" type="button" class="btn btn-primary js-action-delete-confirm">{intl l="Update"}</button>
|
||||
</div>
|
||||
</div>
|
||||
</form>
|
||||
</div>
|
||||
</div>
|
||||
{/form}
|
||||
<div>
|
||||
{form name="customer_family_price_mode"}
|
||||
<form action="{url path="/admin/CustomerFamily/selectPriceMode"}" method="post">
|
||||
{form_hidden_fields form=$form}
|
||||
{form_field form=$form field="price_mode"}
|
||||
<input type="checkbox" name="{$name}" id="{$name}" value="{$value}" {if $checked}checked{/if} onchange="this.form.submit()">
|
||||
<label for="{$name}">{$label}</label>
|
||||
{/form_field}
|
||||
<div class="help-block">
|
||||
<span>{$label_attr.help}</span>
|
||||
</div>
|
||||
</form>
|
||||
{/form}
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<!-- Prices definition tab -->
|
||||
<div id="prices_definition" class="tab-pane form-container">
|
||||
<br>
|
||||
|
||||
<!-- Configure prices equation -->
|
||||
<div class="row">
|
||||
<div class="col-md-12">
|
||||
|
||||
<h4 class="text-center">
|
||||
{intl l="Define if your prices are the products' ones or if they are calculated by the equation with your parameters." d='customerfamily.bo.default'}
|
||||
</h4>
|
||||
<h4 class="text-center">
|
||||
{intl l="Not using the equation will display the fix product price to customers." d='customerfamily.bo.default'}
|
||||
</h4>
|
||||
<h3 class="text-center">
|
||||
{intl l='Equation: ( ( product_purchase_price + fix_amount_1 ) x factor ) + fix_amount_2' d='customerfamily.bo.default'}
|
||||
</h3>
|
||||
<br>
|
||||
<table class="table table-striped">
|
||||
<thead>
|
||||
<tr>
|
||||
<th>{intl l='Customer family' d='customerfamily.bo.default'}</th>
|
||||
<th>{intl l='Use equation' d='customerfamily.bo.default'}</th>
|
||||
<th>{intl l='Fix amount 1' d='customerfamily.bo.default'}</th>
|
||||
<th>{intl l='Factor' d='customerfamily.bo.default'}</th>
|
||||
<th>{intl l='Fix amount 2' d='customerfamily.bo.default'}</th>
|
||||
<th>{intl l='Show taxes' d='customerfamily.bo.default'}<br>{intl l='(need specific integration)' d='customerfamily.bo.default'}</th>
|
||||
<th>{intl l='Save' d='customerfamily.bo.default'}</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
{loop type='customer_family' name='customerfamily_loop'}
|
||||
|
||||
{assign var='amount_added_before' value=0}
|
||||
{assign var='coefficient' value=1}
|
||||
{assign var='amount_added_after' value=0}
|
||||
{assign var='is_taxed' value=1}
|
||||
{assign var='use_equation' value=0}
|
||||
|
||||
<!-- Standard price equation -->
|
||||
<tr>
|
||||
{form name='customer_family_price_update'}
|
||||
<form action="{url path='/admin/module/CustomerFamily/update-price-calculation'}" method="post">
|
||||
|
||||
{form_hidden_fields form=$form}
|
||||
|
||||
{form_field form=$form field='promo'}
|
||||
<input type="hidden" name="{$name}" value="0">
|
||||
{/form_field}
|
||||
|
||||
{loop type='customer_family_price' name='customer_family_price_loop' promo=0 customer_family_id=$CUSTOMER_FAMILY_ID}
|
||||
{assign var='amount_added_before' value=$AMOUNT_ADDED_BEFORE}
|
||||
{assign var='coefficient' value=$COEFFICIENT}
|
||||
{assign var='amount_added_after' value=$AMOUNT_ADDED_AFTER}
|
||||
{assign var='is_taxed' value=$IS_TAXED}
|
||||
{assign var='use_equation' value=$USE_EQUATION}
|
||||
{/loop}
|
||||
|
||||
<td>
|
||||
{$TITLE_CUSTOMER_FAMILY}
|
||||
{form_field form=$form field="customer_family_id"}
|
||||
<input type="hidden" name="{$name}" value="{$CUSTOMER_FAMILY_ID}">
|
||||
{/form_field}
|
||||
</td>
|
||||
<td>
|
||||
{form_field form=$form field="use_equation"}
|
||||
<input type="checkbox" name="{$name}" {if $use_equation}checked{/if}>
|
||||
{/form_field}
|
||||
</td>
|
||||
<td>
|
||||
{form_field form=$form field="amount_added_before"}
|
||||
<input type="number" name="{$name}" maxlength="16" step="any" value="{$amount_added_before}" class="form-control">
|
||||
{/form_field}
|
||||
</td>
|
||||
<td>
|
||||
{form_field form=$form field="coefficient"}
|
||||
<input type="number" name="{$name}" maxlength="16" step="any" value="{$coefficient}" class="form-control">
|
||||
{/form_field}
|
||||
</td>
|
||||
<td>
|
||||
{form_field form=$form field="amount_added_after"}
|
||||
<input type="number" name="{$name}" maxlength="16" step="any" value="{$amount_added_after}" class="form-control">
|
||||
{/form_field}
|
||||
</td>
|
||||
<td>
|
||||
{form_field form=$form field="is_taxed"}
|
||||
<input type="checkbox" name="{$name}" {if $is_taxed}checked{/if}>
|
||||
{/form_field}
|
||||
</td>
|
||||
<td>
|
||||
<button type="submit" class="btn btn-primary"><span class="glyphicon glyphicon-ok" aria-hidden="true"></span></button>
|
||||
</td>
|
||||
</form>
|
||||
{/form}
|
||||
</tr>
|
||||
|
||||
{assign var='amount_added_before' value=0}
|
||||
{assign var='coefficient' value=1}
|
||||
{assign var='amount_added_after' value=0}
|
||||
{assign var='is_taxed' value=1}
|
||||
{assign var='use_equation' value=0}
|
||||
|
||||
<!-- Promo price equation -->
|
||||
<tr>
|
||||
{form name='customer_family_price_update'}
|
||||
<form action="{url path='/admin/module/CustomerFamily/update-price-calculation'}" method="post">
|
||||
|
||||
{form_hidden_fields form=$form}
|
||||
|
||||
{form_field form=$form field='promo'}
|
||||
<input type="hidden" name="{$name}" value="1">
|
||||
{/form_field}
|
||||
|
||||
{loop type='customer_family_price' name='customer_family_price_promo_loop' promo=1 customer_family_id=$CUSTOMER_FAMILY_ID}
|
||||
{assign var='amount_added_before' value=$AMOUNT_ADDED_BEFORE}
|
||||
{assign var='coefficient' value=$COEFFICIENT}
|
||||
{assign var='amount_added_after' value=$AMOUNT_ADDED_AFTER}
|
||||
{assign var='is_taxed' value=$IS_TAXED}
|
||||
{assign var='use_equation' value=$USE_EQUATION}
|
||||
{/loop}
|
||||
|
||||
<td>
|
||||
{$TITLE_CUSTOMER_FAMILY} - {intl l='Promo' d='customerfamily.bo.default'}
|
||||
{form_field form=$form field="customer_family_id"}
|
||||
<input type="hidden" name="{$name}" value="{$CUSTOMER_FAMILY_ID}">
|
||||
{/form_field}
|
||||
</td>
|
||||
<td>
|
||||
{form_field form=$form field="use_equation"}
|
||||
<input type="checkbox" name="{$name}" {if $use_equation}checked{/if}>
|
||||
{/form_field}
|
||||
</td>
|
||||
<td>
|
||||
{form_field form=$form field="amount_added_before"}
|
||||
<input type="number" name="{$name}" maxlength="16" step="any" value="{$amount_added_before}" class="form-control">
|
||||
{/form_field}
|
||||
</td>
|
||||
<td>
|
||||
{form_field form=$form field="coefficient"}
|
||||
<input type="number" name="{$name}" maxlength="16" step="any" value="{$coefficient}" class="form-control">
|
||||
{/form_field}
|
||||
</td>
|
||||
<td>
|
||||
{form_field form=$form field="amount_added_after"}
|
||||
<input type="number" name="{$name}" maxlength="16" step="any" value="{$amount_added_after}" class="form-control">
|
||||
{/form_field}
|
||||
</td>
|
||||
<td>
|
||||
{form_field form=$form field="is_taxed"}
|
||||
<input type="checkbox" name="{$name}" {if $is_taxed}checked{/if}>
|
||||
{/form_field}
|
||||
</td>
|
||||
<td>
|
||||
<button type="submit" class="btn btn-primary"><span class="glyphicon glyphicon-ok" aria-hidden="true"></span></button>
|
||||
</td>
|
||||
</form>
|
||||
{/form}
|
||||
</tr>
|
||||
{/loop}
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="category_restrictions" class="tab-pane form-container">
|
||||
<div class="row">
|
||||
{loop type='customer_family' name='customerfamily_loop'}
|
||||
<div class="col-md-12 general-block-decorator">
|
||||
<form method="post" action="{url path="/admin/module/CustomerFamily/category_restriction/%customerFamilyId" customerFamilyId=$CUSTOMER_FAMILY_ID}">
|
||||
<div class="title title-without-tabs">
|
||||
{$TITLE_CUSTOMER_FAMILY}
|
||||
</div>
|
||||
<label for="category_restriction_{$CUSTOMER_FAMILY_ID}">
|
||||
<input name="restriction_enabled" class="restriction_toggler" id="category_restriction_{$CUSTOMER_FAMILY_ID}" type="checkbox" {if $CATEGORY_RESTRICTION_ENABLED}checked{/if}>
|
||||
<span>{intl l="Enable category restriction for this customer family" d='customerfamily.bo.default'}</span>
|
||||
</label>
|
||||
<div class="restriction_toggled toggled_by_category_restriction_{$CUSTOMER_FAMILY_ID}">
|
||||
<p>{intl l="Choose what categories will be available for this customer family" d='customerfamily.bo.default'}</p>
|
||||
<select class="form-control" name="available_categories[]" id="" multiple>
|
||||
{foreach from=$categoryRestrictions[$CUSTOMER_FAMILY_ID] item=categoryRestriction}
|
||||
<option value="{$categoryRestriction.id}" {if $categoryRestriction.available}selected{/if}>{$categoryRestriction.title}</option>
|
||||
{/foreach}
|
||||
</select>
|
||||
</div>
|
||||
<input type="submit" class="btn-block btn btn-success"/>
|
||||
</form>
|
||||
</div>
|
||||
{/loop}
|
||||
</div>
|
||||
</div>
|
||||
<div id="brand_restrictions" class="tab-pane form-container">
|
||||
<div class="row">
|
||||
{loop type='customer_family' name='customerfamily_loop'}
|
||||
<div class="col-md-12 general-block-decorator">
|
||||
<form method="post" action="{url path="/admin/module/CustomerFamily/brand_restriction/%customerFamilyId" customerFamilyId=$CUSTOMER_FAMILY_ID}">
|
||||
<div class="title title-without-tabs">
|
||||
{$TITLE_CUSTOMER_FAMILY}
|
||||
</div>
|
||||
<label for="brand_restriction_{$CUSTOMER_FAMILY_ID}">
|
||||
<input name="restriction_enabled" class="restriction_toggler" id="brand_restriction_{$CUSTOMER_FAMILY_ID}" type="checkbox" {if $BRAND_RESTRICTION_ENABLED}checked{/if}>
|
||||
<span>{intl l="Enable brand restriction for this customer family" d='customerfamily.bo.default'}</span>
|
||||
</label>
|
||||
<div class="restriction_toggled toggled_by_brand_restriction_{$CUSTOMER_FAMILY_ID}">
|
||||
<p>{intl l="Choose what brands will be available for this customer family" d='customerfamily.bo.default'}</p>
|
||||
<select class="form-control" name="available_categories[]" id="" multiple>
|
||||
{foreach from=$brandRestrictions[$CUSTOMER_FAMILY_ID] item=brandRestriction}
|
||||
<option value="{$brandRestriction.id}" {if $brandRestriction.available}selected{/if}>{$brandRestriction.title}</option>
|
||||
{/foreach}
|
||||
</select>
|
||||
</div>
|
||||
<input type="submit" class="btn-block btn btn-success"/>
|
||||
</form>
|
||||
</div>
|
||||
{/loop}
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="modal fade" id="update-default-family-failed" tabindex="-1" role="dialog" aria-hidden="true">
|
||||
<div class="modal-dialog">
|
||||
<div class="modal-content">
|
||||
|
||||
<div class="modal-header">
|
||||
<button type="button" class="close" data-dismiss="modal" aria-hidden="true">×</button>
|
||||
<h3>{intl l="An error occured" d='customerfamily.bo.default'}</h3>
|
||||
</div>
|
||||
<div class="modal-body" id="update-default-family-failed-body">
|
||||
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
{/block}
|
||||
|
||||
{block name="javascript-initialization"}
|
||||
<script>
|
||||
$('.restriction_toggler').each(function () {
|
||||
triggerRestrictionToggler($(this));
|
||||
});
|
||||
|
||||
$('.restriction_toggler').on('change', function () {
|
||||
triggerRestrictionToggler($(this));
|
||||
});
|
||||
|
||||
function triggerRestrictionToggler(restrictionToggler) {
|
||||
var toggled = $('.toggled_by_'+restrictionToggler.attr('id'));
|
||||
if (restrictionToggler.is(":checked")) {
|
||||
toggled.show();
|
||||
} else {
|
||||
toggled.hide();
|
||||
}
|
||||
}
|
||||
</script>
|
||||
{extends file="admin-layout.tpl"}
|
||||
|
||||
{block name="after-bootstrap-css"}
|
||||
|
||||
{/block}
|
||||
|
||||
{block name="no-return-functions"}
|
||||
{$admin_current_location = 'module'}
|
||||
{/block}
|
||||
|
||||
{block name="page-title"}Configuration CustomerFamily{/block}
|
||||
|
||||
{block name="check-resource"}admin.module{/block}
|
||||
{block name="check-access"}view{/block}
|
||||
{block name="check-module"}CustomerFamily{/block}
|
||||
|
||||
{block name="main-content"}
|
||||
|
||||
<div class="general-block-decorator" id="CustomerFamily">
|
||||
<div class="title">
|
||||
{intl l="Customer Family" d='customerfamily.bo.default'}
|
||||
</div>
|
||||
|
||||
<div class="row">
|
||||
<div class="col-md-12">
|
||||
<!-- Tab menu -->
|
||||
<ul id="tabbed-menu" class="nav nav-tabs">
|
||||
<li class="active"><a data-toggle="tab" href="#families">{intl l="Families" d='customerfamily.bo.default'}</a> </li>
|
||||
<li><a data-toggle="tab" href="#prices_definition">{intl l="Prices definition" d='customerfamily.bo.default'}</a></li>
|
||||
<li><a data-toggle="tab" href="#category_restrictions">{intl l="Category restrictions" d='customerfamily.bo.default'}</a></li>
|
||||
<li><a data-toggle="tab" href="#brand_restrictions">{intl l="Brand restrictions" d='customerfamily.bo.default'}</a></li>
|
||||
</ul>
|
||||
|
||||
<div class="tab-content">
|
||||
|
||||
<!-- Families managing tab -->
|
||||
<div id="families" class="tab-pane active form-container">
|
||||
<div class="row">
|
||||
<div class="col-md-6">
|
||||
{if $hide_flags != true}
|
||||
<ul class="nav nav-pills">
|
||||
{loop name="lang_list" type="lang"}
|
||||
<li {if $ID == $edit_language_id}class="active"{/if}>
|
||||
{if $current_tab}
|
||||
{$lang_url = {url path="/admin/module/CustomerFamily" edit_language_id=$ID current_tab=$current_tab}}
|
||||
{else}
|
||||
{$lang_url = {url path="/admin/module/CustomerFamily" edit_language_id=$ID}}
|
||||
{/if}
|
||||
<a class="language-change-button" data-language-id="{$ID}" href="{$lang_url nofilter}" title="{intl l='Edit information in %lng' lng={$TITLE}}">
|
||||
<img src="{image file="assets/img/flags/$CODE.png"}" alt="{$TITLE}" />
|
||||
</a>
|
||||
</li>
|
||||
{/loop}
|
||||
</ul>
|
||||
{/if}
|
||||
</div>
|
||||
|
||||
{form name="customer.family.delete.form"}
|
||||
{if $form_error}
|
||||
<div class="alert alert-danger">{$form_error_message}</div
|
||||
{/if}
|
||||
{/form}
|
||||
|
||||
<div class="col-md-12">
|
||||
<table class="table">
|
||||
<thead>
|
||||
<tr>
|
||||
<th>
|
||||
{intl l="ID"}
|
||||
</th>
|
||||
<th>
|
||||
{intl l="Code"}
|
||||
</th>
|
||||
<th>
|
||||
{intl l="Title"}
|
||||
</th>
|
||||
<th>
|
||||
{intl l="Default"}
|
||||
</th>
|
||||
<th>
|
||||
{intl l="Action"}
|
||||
</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
{ifloop rel="customer_family"}
|
||||
|
||||
<!-- Default family -->
|
||||
{form name='customer_family_update_default_form'}
|
||||
<form action="{url path='/admin/module/CustomerFamily/update-default'}" method="post" id="update-default-family-form">
|
||||
|
||||
{form_hidden_fields form=$form}
|
||||
|
||||
{form_field form=$form field="customer_family_id"}
|
||||
<input type="hidden" name="{$name}" id="default_family_id">
|
||||
{/form_field}
|
||||
</form>
|
||||
{/form}
|
||||
|
||||
<!-- Families list -->
|
||||
{loop type="customer_family" name="customer_family" lang=$edit_language_id force_return="on"}
|
||||
<tr>
|
||||
<td>
|
||||
{$CUSTOMER_FAMILY_ID}
|
||||
</td>
|
||||
<td>
|
||||
{$CODE}
|
||||
</td>
|
||||
<td>
|
||||
{$TITLE_CUSTOMER_FAMILY}
|
||||
</td>
|
||||
<td>
|
||||
<div class="switch-small update-default-family" data-id="{$CUSTOMER_FAMILY_ID}" data-on="success" data-off="danger" data-on-label="<i class='glyphicon glyphicon-ok-circle'></i>" data-off-label="<i class='glyphicon glyphicon-remove-circle'></i>">
|
||||
<input type="radio" name="is_default" {if $IS_DEFAULT}checked{/if} />
|
||||
</div>
|
||||
</td>
|
||||
<td>
|
||||
<a class="btn btn-info pull-left js-action-update" data-id="{$CUSTOMER_FAMILY_ID}" data-code="{$CODE}" data-title="{$TITLE_CUSTOMER_FAMILY}" style="margin-right: 5px;">{intl l="Edit" d='customerfamily.bo.default'}</a>
|
||||
<a class="btn btn-danger pull-left js-action-delete" data-id="{$CUSTOMER_FAMILY_ID}" style="margin-right: 5px;">{intl l="Delete"}</a>
|
||||
</td>
|
||||
</tr>
|
||||
{/loop}
|
||||
{/ifloop}
|
||||
{elseloop rel="customer_family"}
|
||||
<tr>
|
||||
<td colspan="4" class="text-center">
|
||||
{intl l="No family" d='customerfamily.bo.default'}
|
||||
</td>
|
||||
</tr>
|
||||
{/elseloop}
|
||||
</tbody>
|
||||
<tfoot class="text-center">
|
||||
<tr>
|
||||
<td colspan="4">
|
||||
{form name="customer.family.create.form"}
|
||||
<form action="{url path="/admin/module/CustomerFamily/create"}" method="POST" class="form-inline">
|
||||
{if $form_error}
|
||||
<div class="alert alert-danger">{$form_error_message}</div
|
||||
{/if}
|
||||
{form_hidden_fields form=$form}
|
||||
{form_field form=$form field="locale"}
|
||||
<input type="hidden" name="{$name}" value="{$edit_language_locale}" />
|
||||
{/form_field}
|
||||
{form_field form=$form field="code"}
|
||||
<div class="form-group{if $error} has-error{/if}">
|
||||
<input class="form-control" type="text" required placeholder="{$label}" name="{$name}" value="{$value}" />
|
||||
</div>
|
||||
{/form_field}
|
||||
{form_field form=$form field="title"}
|
||||
<div class="form-group{if $error} has-error{/if}">
|
||||
<input class="form-control" type="text" required placeholder="{$label}" name="{$name}" value="{$value}" />
|
||||
</div>
|
||||
{/form_field}
|
||||
<div class="form-group">
|
||||
<button type="submit" class="btn btn-primary js-action-create">{intl l="Add"}</button>
|
||||
</div>
|
||||
</form>
|
||||
{/form}
|
||||
</td>
|
||||
</tr>
|
||||
</tfoot>
|
||||
</table>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
{form name="customer.family.delete.form"}
|
||||
<div class="modal js-modal-delete" tabindex="-1" role="dialog" aria-labelledby="Delete family" aria-hidden="true">
|
||||
<div class="modal-dialog">
|
||||
<form action="" method="POST">
|
||||
{form_hidden_fields form=$form}
|
||||
<div class="modal-content">
|
||||
<div class="modal-body">
|
||||
{intl l="Do you really want to delete this customer family ?" d='customerfamily.bo.default'}
|
||||
</div>
|
||||
<div class="modal-footer">
|
||||
<button type="button" class="btn btn-default" data-dismiss="modal">{intl l="No"}</button>
|
||||
<button type="submit" type="button" class="btn btn-danger js-action-delete-confirm">{intl l="Yes"}</button>
|
||||
</div>
|
||||
</div>
|
||||
</form>
|
||||
</div>
|
||||
</div>
|
||||
{/form}
|
||||
|
||||
{form name="customer.family.update.form"}
|
||||
<div class="modal js-modal-update" tabindex="-1" role="dialog" aria-labelledby="Update family" aria-hidden="true">
|
||||
<div class="modal-dialog">
|
||||
<form action="" method="POST">
|
||||
{form_hidden_fields form=$form}
|
||||
<div class="modal-content">
|
||||
<div class="modal-body">
|
||||
{form_field form=$form field="locale"}
|
||||
<input type="hidden" name="{$name}" value="{$edit_language_locale}" />
|
||||
{/form_field}
|
||||
{form_field form=$form field="code"}
|
||||
<div class="form-group{if $error} has-error{/if}">
|
||||
<label>{$label}</label>
|
||||
<input class="form-control js-field-code" type="text" required placeholder="{$label}" name="{$name}" value="{$value}" />
|
||||
</div>
|
||||
{/form_field}
|
||||
{form_field form=$form field="title"}
|
||||
<div class="form-group{if $error} has-error{/if}">
|
||||
<label>{$label}</label>
|
||||
<input class="form-control js-field-title" type="text" required placeholder="{$label}" name="{$name}" value="{$value}" />
|
||||
</div>
|
||||
{/form_field}
|
||||
</div>
|
||||
<div class="modal-footer">
|
||||
<button type="button" class="btn btn-default" data-dismiss="modal">{intl l="Cancel"}</button>
|
||||
<button type="submit" type="button" class="btn btn-primary js-action-delete-confirm">{intl l="Update"}</button>
|
||||
</div>
|
||||
</div>
|
||||
</form>
|
||||
</div>
|
||||
</div>
|
||||
{/form}
|
||||
<div>
|
||||
{form name="customer_family_price_mode"}
|
||||
<form action="{url path="/admin/CustomerFamily/selectPriceMode"}" method="post">
|
||||
{form_hidden_fields form=$form}
|
||||
{form_field form=$form field="price_mode"}
|
||||
<input type="checkbox" name="{$name}" id="{$name}" value="{$value}" {if $checked}checked{/if} onchange="this.form.submit()">
|
||||
<label for="{$name}">{$label}</label>
|
||||
{/form_field}
|
||||
<div class="help-block">
|
||||
<span>{$label_attr.help}</span>
|
||||
</div>
|
||||
</form>
|
||||
{/form}
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<!-- Prices definition tab -->
|
||||
<div id="prices_definition" class="tab-pane form-container">
|
||||
<br>
|
||||
|
||||
<!-- Configure prices equation -->
|
||||
<div class="row">
|
||||
<div class="col-md-12">
|
||||
|
||||
<h4 class="text-center">
|
||||
{intl l="Define if your prices are the products' ones or if they are calculated by the equation with your parameters." d='customerfamily.bo.default'}
|
||||
</h4>
|
||||
<h4 class="text-center">
|
||||
{intl l="Not using the equation will display the fix product price to customers." d='customerfamily.bo.default'}
|
||||
</h4>
|
||||
<h3 class="text-center">
|
||||
{intl l='Equation: ( ( product_purchase_price + fix_amount_1 ) x factor ) + fix_amount_2' d='customerfamily.bo.default'}
|
||||
</h3>
|
||||
<br>
|
||||
<table class="table table-striped">
|
||||
<thead>
|
||||
<tr>
|
||||
<th>{intl l='Customer family' d='customerfamily.bo.default'}</th>
|
||||
<th>{intl l='Use equation' d='customerfamily.bo.default'}</th>
|
||||
<th>{intl l='Fix amount 1' d='customerfamily.bo.default'}</th>
|
||||
<th>{intl l='Factor' d='customerfamily.bo.default'}</th>
|
||||
<th>{intl l='Fix amount 2' d='customerfamily.bo.default'}</th>
|
||||
<th>{intl l='Show taxes' d='customerfamily.bo.default'}<br>{intl l='(need specific integration)' d='customerfamily.bo.default'}</th>
|
||||
<th>{intl l='Save' d='customerfamily.bo.default'}</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
{loop type='customer_family' name='customerfamily_loop'}
|
||||
|
||||
{assign var='amount_added_before' value=0}
|
||||
{assign var='coefficient' value=1}
|
||||
{assign var='amount_added_after' value=0}
|
||||
{assign var='is_taxed' value=1}
|
||||
{assign var='use_equation' value=0}
|
||||
|
||||
<!-- Standard price equation -->
|
||||
<tr>
|
||||
{form name='customer_family_price_update'}
|
||||
<form action="{url path='/admin/module/CustomerFamily/update-price-calculation'}" method="post">
|
||||
|
||||
{form_hidden_fields form=$form}
|
||||
|
||||
{form_field form=$form field='promo'}
|
||||
<input type="hidden" name="{$name}" value="0">
|
||||
{/form_field}
|
||||
|
||||
{loop type='customer_family_price' name='customer_family_price_loop' promo=0 customer_family_id=$CUSTOMER_FAMILY_ID}
|
||||
{assign var='amount_added_before' value=$AMOUNT_ADDED_BEFORE}
|
||||
{assign var='coefficient' value=$COEFFICIENT}
|
||||
{assign var='amount_added_after' value=$AMOUNT_ADDED_AFTER}
|
||||
{assign var='is_taxed' value=$IS_TAXED}
|
||||
{assign var='use_equation' value=$USE_EQUATION}
|
||||
{/loop}
|
||||
|
||||
<td>
|
||||
{$TITLE_CUSTOMER_FAMILY}
|
||||
{form_field form=$form field="customer_family_id"}
|
||||
<input type="hidden" name="{$name}" value="{$CUSTOMER_FAMILY_ID}">
|
||||
{/form_field}
|
||||
</td>
|
||||
<td>
|
||||
{form_field form=$form field="use_equation"}
|
||||
<input type="checkbox" name="{$name}" {if $use_equation}checked{/if}>
|
||||
{/form_field}
|
||||
</td>
|
||||
<td>
|
||||
{form_field form=$form field="amount_added_before"}
|
||||
<input type="number" name="{$name}" maxlength="16" step="any" value="{$amount_added_before}" class="form-control">
|
||||
{/form_field}
|
||||
</td>
|
||||
<td>
|
||||
{form_field form=$form field="coefficient"}
|
||||
<input type="number" name="{$name}" maxlength="16" step="any" value="{$coefficient}" class="form-control">
|
||||
{/form_field}
|
||||
</td>
|
||||
<td>
|
||||
{form_field form=$form field="amount_added_after"}
|
||||
<input type="number" name="{$name}" maxlength="16" step="any" value="{$amount_added_after}" class="form-control">
|
||||
{/form_field}
|
||||
</td>
|
||||
<td>
|
||||
{form_field form=$form field="is_taxed"}
|
||||
<input type="checkbox" name="{$name}" {if $is_taxed}checked{/if}>
|
||||
{/form_field}
|
||||
</td>
|
||||
<td>
|
||||
<button type="submit" class="btn btn-primary"><span class="glyphicon glyphicon-ok" aria-hidden="true"></span></button>
|
||||
</td>
|
||||
</form>
|
||||
{/form}
|
||||
</tr>
|
||||
|
||||
{assign var='amount_added_before' value=0}
|
||||
{assign var='coefficient' value=1}
|
||||
{assign var='amount_added_after' value=0}
|
||||
{assign var='is_taxed' value=1}
|
||||
{assign var='use_equation' value=0}
|
||||
|
||||
<!-- Promo price equation -->
|
||||
<tr>
|
||||
{form name='customer_family_price_update'}
|
||||
<form action="{url path='/admin/module/CustomerFamily/update-price-calculation'}" method="post">
|
||||
|
||||
{form_hidden_fields form=$form}
|
||||
|
||||
{form_field form=$form field='promo'}
|
||||
<input type="hidden" name="{$name}" value="1">
|
||||
{/form_field}
|
||||
|
||||
{loop type='customer_family_price' name='customer_family_price_promo_loop' promo=1 customer_family_id=$CUSTOMER_FAMILY_ID}
|
||||
{assign var='amount_added_before' value=$AMOUNT_ADDED_BEFORE}
|
||||
{assign var='coefficient' value=$COEFFICIENT}
|
||||
{assign var='amount_added_after' value=$AMOUNT_ADDED_AFTER}
|
||||
{assign var='is_taxed' value=$IS_TAXED}
|
||||
{assign var='use_equation' value=$USE_EQUATION}
|
||||
{/loop}
|
||||
|
||||
<td>
|
||||
{$TITLE_CUSTOMER_FAMILY} - {intl l='Promo' d='customerfamily.bo.default'}
|
||||
{form_field form=$form field="customer_family_id"}
|
||||
<input type="hidden" name="{$name}" value="{$CUSTOMER_FAMILY_ID}">
|
||||
{/form_field}
|
||||
</td>
|
||||
<td>
|
||||
{form_field form=$form field="use_equation"}
|
||||
<input type="checkbox" name="{$name}" {if $use_equation}checked{/if}>
|
||||
{/form_field}
|
||||
</td>
|
||||
<td>
|
||||
{form_field form=$form field="amount_added_before"}
|
||||
<input type="number" name="{$name}" maxlength="16" step="any" value="{$amount_added_before}" class="form-control">
|
||||
{/form_field}
|
||||
</td>
|
||||
<td>
|
||||
{form_field form=$form field="coefficient"}
|
||||
<input type="number" name="{$name}" maxlength="16" step="any" value="{$coefficient}" class="form-control">
|
||||
{/form_field}
|
||||
</td>
|
||||
<td>
|
||||
{form_field form=$form field="amount_added_after"}
|
||||
<input type="number" name="{$name}" maxlength="16" step="any" value="{$amount_added_after}" class="form-control">
|
||||
{/form_field}
|
||||
</td>
|
||||
<td>
|
||||
{form_field form=$form field="is_taxed"}
|
||||
<input type="checkbox" name="{$name}" {if $is_taxed}checked{/if}>
|
||||
{/form_field}
|
||||
</td>
|
||||
<td>
|
||||
<button type="submit" class="btn btn-primary"><span class="glyphicon glyphicon-ok" aria-hidden="true"></span></button>
|
||||
</td>
|
||||
</form>
|
||||
{/form}
|
||||
</tr>
|
||||
{/loop}
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="category_restrictions" class="tab-pane form-container">
|
||||
<div class="row">
|
||||
{loop type='customer_family' name='customerfamily_loop'}
|
||||
<div class="col-md-12 general-block-decorator">
|
||||
<form method="post" action="{url path="/admin/module/CustomerFamily/category_restriction/%customerFamilyId" customerFamilyId=$CUSTOMER_FAMILY_ID}">
|
||||
<div class="title title-without-tabs">
|
||||
{$TITLE_CUSTOMER_FAMILY}
|
||||
</div>
|
||||
<label for="category_restriction_{$CUSTOMER_FAMILY_ID}">
|
||||
<input name="restriction_enabled" class="restriction_toggler" id="category_restriction_{$CUSTOMER_FAMILY_ID}" type="checkbox" {if $CATEGORY_RESTRICTION_ENABLED}checked{/if}>
|
||||
<span>{intl l="Enable category restriction for this customer family" d='customerfamily.bo.default'}</span>
|
||||
</label>
|
||||
<div class="restriction_toggled toggled_by_category_restriction_{$CUSTOMER_FAMILY_ID}">
|
||||
<p>{intl l="Choose what categories will be available for this customer family" d='customerfamily.bo.default'}</p>
|
||||
<select class="form-control" name="available_categories[]" id="" multiple>
|
||||
{foreach from=$categoryRestrictions[$CUSTOMER_FAMILY_ID] item=categoryRestriction}
|
||||
<option value="{$categoryRestriction.id}" {if $categoryRestriction.available}selected{/if}>{$categoryRestriction.title}</option>
|
||||
{/foreach}
|
||||
</select>
|
||||
</div>
|
||||
<input type="submit" class="btn-block btn btn-success"/>
|
||||
</form>
|
||||
</div>
|
||||
{/loop}
|
||||
</div>
|
||||
</div>
|
||||
<div id="brand_restrictions" class="tab-pane form-container">
|
||||
<div class="row">
|
||||
{loop type='customer_family' name='customerfamily_loop'}
|
||||
<div class="col-md-12 general-block-decorator">
|
||||
<form method="post" action="{url path="/admin/module/CustomerFamily/brand_restriction/%customerFamilyId" customerFamilyId=$CUSTOMER_FAMILY_ID}">
|
||||
<div class="title title-without-tabs">
|
||||
{$TITLE_CUSTOMER_FAMILY}
|
||||
</div>
|
||||
<label for="brand_restriction_{$CUSTOMER_FAMILY_ID}">
|
||||
<input name="restriction_enabled" class="restriction_toggler" id="brand_restriction_{$CUSTOMER_FAMILY_ID}" type="checkbox" {if $BRAND_RESTRICTION_ENABLED}checked{/if}>
|
||||
<span>{intl l="Enable brand restriction for this customer family" d='customerfamily.bo.default'}</span>
|
||||
</label>
|
||||
<div class="restriction_toggled toggled_by_brand_restriction_{$CUSTOMER_FAMILY_ID}">
|
||||
<p>{intl l="Choose what brands will be available for this customer family" d='customerfamily.bo.default'}</p>
|
||||
<select class="form-control" name="available_categories[]" id="" multiple>
|
||||
{foreach from=$brandRestrictions[$CUSTOMER_FAMILY_ID] item=brandRestriction}
|
||||
<option value="{$brandRestriction.id}" {if $brandRestriction.available}selected{/if}>{$brandRestriction.title}</option>
|
||||
{/foreach}
|
||||
</select>
|
||||
</div>
|
||||
<input type="submit" class="btn-block btn btn-success"/>
|
||||
</form>
|
||||
</div>
|
||||
{/loop}
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="modal fade" id="update-default-family-failed" tabindex="-1" role="dialog" aria-hidden="true">
|
||||
<div class="modal-dialog">
|
||||
<div class="modal-content">
|
||||
|
||||
<div class="modal-header">
|
||||
<button type="button" class="close" data-dismiss="modal" aria-hidden="true">×</button>
|
||||
<h3>{intl l="An error occured" d='customerfamily.bo.default'}</h3>
|
||||
</div>
|
||||
<div class="modal-body" id="update-default-family-failed-body">
|
||||
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
{/block}
|
||||
|
||||
{block name="javascript-initialization"}
|
||||
<script>
|
||||
$('.restriction_toggler').each(function () {
|
||||
triggerRestrictionToggler($(this));
|
||||
});
|
||||
|
||||
$('.restriction_toggler').on('change', function () {
|
||||
triggerRestrictionToggler($(this));
|
||||
});
|
||||
|
||||
function triggerRestrictionToggler(restrictionToggler) {
|
||||
var toggled = $('.toggled_by_'+restrictionToggler.attr('id'));
|
||||
if (restrictionToggler.is(":checked")) {
|
||||
toggled.show();
|
||||
} else {
|
||||
toggled.hide();
|
||||
}
|
||||
}
|
||||
</script>
|
||||
{/block}
|
||||
@@ -12,6 +12,10 @@
|
||||
}
|
||||
|
||||
$(document).on('change', '#quantity', function() {
|
||||
|
||||
var $hasDigressivePrice = ($('#has-digressive-price').val() === 'true');
|
||||
if (!$hasDigressivePrice) return;
|
||||
|
||||
var $form = $(this).closest('form');
|
||||
$.ajax({
|
||||
url: "{url path="/digressive-price-update"}",
|
||||
@@ -36,6 +40,6 @@
|
||||
});
|
||||
});
|
||||
|
||||
$('#quantity').change();
|
||||
// $('#quantity').change();
|
||||
});
|
||||
</script>
|
||||
|
||||
@@ -1,340 +1,340 @@
|
||||
<?php
|
||||
|
||||
/********************************
|
||||
* The following commented code can be uncommented if you wish
|
||||
* to quickly find information about your system's MIME setup.
|
||||
*
|
||||
* Simply remove the "REMOVE ME TO TEST" lines below to have
|
||||
* the code run when this file runs.
|
||||
*
|
||||
* In addition to these tests, you'll find some commented code
|
||||
* at the bottom of the file that can be used to test the
|
||||
* function.
|
||||
*
|
||||
* Run the code with this command:
|
||||
* php mime_type_lib.php
|
||||
********************************/
|
||||
|
||||
|
||||
/* REMOVE ME TO TEST
|
||||
echo "magicfile: " . ini_get( 'mime_magic.magicfile' ) . "\n";
|
||||
|
||||
if ( function_exists( 'finfo_open' ) )
|
||||
echo "Found finfo_open function\n";
|
||||
else
|
||||
echo "Did not find finfo_open function\n";
|
||||
|
||||
if ( function_exists( 'mime_content_type' ) )
|
||||
echo "Found mime_content_type function\n";
|
||||
else
|
||||
echo "Did not find mime_content_type function\n";
|
||||
REMOVE ME TO TEST */
|
||||
|
||||
$mime_types = array(
|
||||
'ai' => 'application/postscript',
|
||||
'aif' => 'audio/x-aiff',
|
||||
'aifc' => 'audio/x-aiff',
|
||||
'aiff' => 'audio/x-aiff',
|
||||
'asc' => 'text/plain',
|
||||
'asf' => 'video/x-ms-asf',
|
||||
'asx' => 'video/x-ms-asf',
|
||||
'au' => 'audio/basic',
|
||||
'avi' => 'video/x-msvideo',
|
||||
'bcpio' => 'application/x-bcpio',
|
||||
'bin' => 'application/octet-stream',
|
||||
'bmp' => 'image/bmp',
|
||||
'bz2' => 'application/x-bzip2',
|
||||
'cdf' => 'application/x-netcdf',
|
||||
'chrt' => 'application/x-kchart',
|
||||
'class' => 'application/octet-stream',
|
||||
'cpio' => 'application/x-cpio',
|
||||
'cpt' => 'application/mac-compactpro',
|
||||
'csh' => 'application/x-csh',
|
||||
'css' => 'text/css',
|
||||
'dcr' => 'application/x-director',
|
||||
'dir' => 'application/x-director',
|
||||
'djv' => 'image/vnd.djvu',
|
||||
'djvu' => 'image/vnd.djvu',
|
||||
'dll' => 'application/octet-stream',
|
||||
'dms' => 'application/octet-stream',
|
||||
'dvi' => 'application/x-dvi',
|
||||
'dwg' => 'image/vnd.dwg',
|
||||
'dxr' => 'application/x-director',
|
||||
'eps' => 'application/postscript',
|
||||
'etx' => 'text/x-setext',
|
||||
'exe' => 'application/octet-stream',
|
||||
'ez' => 'application/andrew-inset',
|
||||
'flv' => 'video/x-flv',
|
||||
'gif' => 'image/gif',
|
||||
'gtar' => 'application/x-gtar',
|
||||
'gz' => 'application/x-gzip',
|
||||
'hdf' => 'application/x-hdf',
|
||||
'hqx' => 'application/mac-binhex40',
|
||||
'htm' => 'text/html',
|
||||
'html' => 'text/html',
|
||||
'ice' => 'x-conference/x-cooltalk',
|
||||
'ief' => 'image/ief',
|
||||
'iges' => 'model/iges',
|
||||
'igs' => 'model/iges',
|
||||
'img' => 'application/octet-stream',
|
||||
'iso' => 'application/octet-stream',
|
||||
'jad' => 'text/vnd.sun.j2me.app-descriptor',
|
||||
'jar' => 'application/x-java-archive',
|
||||
'jnlp' => 'application/x-java-jnlp-file',
|
||||
'jpe' => 'image/jpeg',
|
||||
'jpeg' => 'image/jpeg',
|
||||
'jpg' => 'image/jpeg',
|
||||
'js' => 'application/x-javascript',
|
||||
'kar' => 'audio/midi',
|
||||
'kil' => 'application/x-killustrator',
|
||||
'kpr' => 'application/x-kpresenter',
|
||||
'kpt' => 'application/x-kpresenter',
|
||||
'ksp' => 'application/x-kspread',
|
||||
'kwd' => 'application/x-kword',
|
||||
'kwt' => 'application/x-kword',
|
||||
'kml' => 'application/vnd.google-earth.kml+xml',
|
||||
'kmz' => 'application/vnd.google-earth.kmz',
|
||||
'latex' => 'application/x-latex',
|
||||
'lha' => 'application/octet-stream',
|
||||
'lzh' => 'application/octet-stream',
|
||||
'm3u' => 'audio/x-mpegurl',
|
||||
'man' => 'application/x-troff-man',
|
||||
'me' => 'application/x-troff-me',
|
||||
'mesh' => 'model/mesh',
|
||||
'mid' => 'audio/midi',
|
||||
'midi' => 'audio/midi',
|
||||
'mif' => 'application/vnd.mif',
|
||||
'mov' => 'video/quicktime',
|
||||
'movie' => 'video/x-sgi-movie',
|
||||
'mp2' => 'audio/mpeg',
|
||||
'mp3' => 'audio/mpeg',
|
||||
'mp4' => 'video/mp4',
|
||||
'mpe' => 'video/mpeg',
|
||||
'mpg' => 'video/mpeg',
|
||||
'mpeg' => 'video/mpeg',
|
||||
'ms' => 'application/x-troff-ms',
|
||||
'msh' => 'model/mesh',
|
||||
'mxu' => 'video/vnd.mpegurl',
|
||||
'nc' => 'application/x-netcdf',
|
||||
'odb' => 'application/vnd.oasis.opendocument.database',
|
||||
'odc' => 'application/vnd.oasis.opendocument.chart',
|
||||
'odf' => 'application/vnd.oasis.opendocument.formula',
|
||||
'odg' => 'application/vnd.oasis.opendocument.graphics',
|
||||
'odi' => 'application/vnd.oasis.opendocument.image',
|
||||
'odm' => 'application/vnd.oasis.opendocument.text-master',
|
||||
'odp' => 'application/vnd.oasis.opendocument.presentation',
|
||||
'ods' => 'application/vnd.oasis.opendocument.spreadsheet',
|
||||
'odt' => 'application/vnd.oasis.opendocument.text',
|
||||
'ogg' => 'application/ogg',
|
||||
'otg' => 'application/vnd.oasis.opendocument.graphics-template',
|
||||
'oth' => 'application/vnd.oasis.opendocument.text-web',
|
||||
'otp' => 'application/vnd.oasis.opendocument.presentation-template',
|
||||
'ots' => 'application/vnd.oasis.opendocument.spreadsheet-template',
|
||||
'ott' => 'application/vnd.oasis.opendocument.text-template',
|
||||
'pbm' => 'image/x-portable-bitmap',
|
||||
'pdb' => 'chemical/x-pdb',
|
||||
'pdf' => 'application/pdf',
|
||||
'pgm' => 'image/x-portable-graymap',
|
||||
'pgn' => 'application/x-chess-pgn',
|
||||
'php' => 'text/x-php',
|
||||
'png' => 'image/png',
|
||||
'pnm' => 'image/x-portable-anymap',
|
||||
'ppm' => 'image/x-portable-pixmap',
|
||||
'ppt' => 'application/vnd.ms-powerpoint',
|
||||
'ps' => 'application/postscript',
|
||||
'qt' => 'video/quicktime',
|
||||
'ra' => 'audio/x-realaudio',
|
||||
'ram' => 'audio/x-pn-realaudio',
|
||||
'ras' => 'image/x-cmu-raster',
|
||||
'rgb' => 'image/x-rgb',
|
||||
'rm' => 'audio/x-pn-realaudio',
|
||||
'roff' => 'application/x-troff',
|
||||
'rpm' => 'application/x-rpm',
|
||||
'rtf' => 'text/rtf',
|
||||
'rtx' => 'text/richtext',
|
||||
'sgm' => 'text/sgml',
|
||||
'sgml' => 'text/sgml',
|
||||
'sh' => 'application/x-sh',
|
||||
'shar' => 'application/x-shar',
|
||||
'silo' => 'model/mesh',
|
||||
'sis' => 'application/vnd.symbian.install',
|
||||
'sit' => 'application/x-stuffit',
|
||||
'skd' => 'application/x-koan',
|
||||
'skm' => 'application/x-koan',
|
||||
'skp' => 'application/x-koan',
|
||||
'skt' => 'application/x-koan',
|
||||
'smi' => 'application/smil',
|
||||
'smil' => 'application/smil',
|
||||
'snd' => 'audio/basic',
|
||||
'svg' => 'image/svg+xml',
|
||||
'so' => 'application/octet-stream',
|
||||
'spl' => 'application/x-futuresplash',
|
||||
'src' => 'application/x-wais-source',
|
||||
'stc' => 'application/vnd.sun.xml.calc.template',
|
||||
'std' => 'application/vnd.sun.xml.draw.template',
|
||||
'sti' => 'application/vnd.sun.xml.impress.template',
|
||||
'stw' => 'application/vnd.sun.xml.writer.template',
|
||||
'sv4cpio' => 'application/x-sv4cpio',
|
||||
'sv4crc' => 'application/x-sv4crc',
|
||||
'swf' => 'application/x-shockwave-flash',
|
||||
'sxc' => 'application/vnd.sun.xml.calc',
|
||||
'sxd' => 'application/vnd.sun.xml.draw',
|
||||
'sxg' => 'application/vnd.sun.xml.writer.global',
|
||||
'sxi' => 'application/vnd.sun.xml.impress',
|
||||
'sxm' => 'application/vnd.sun.xml.math',
|
||||
'sxw' => 'application/vnd.sun.xml.writer',
|
||||
't' => 'application/x-troff',
|
||||
'tar' => 'application/x-tar',
|
||||
'tcl' => 'application/x-tcl',
|
||||
'tex' => 'application/x-tex',
|
||||
'texi' => 'application/x-texinfo',
|
||||
'texinfo' => 'application/x-texinfo',
|
||||
'tgz' => 'application/x-gzip',
|
||||
'tif' => 'image/tiff',
|
||||
'tiff' => 'image/tiff',
|
||||
'torrent' => 'application/x-bittorrent',
|
||||
'tr' => 'application/x-troff',
|
||||
'tsv' => 'text/tab-separated-values',
|
||||
'txt' => 'text/plain',
|
||||
'ustar' => 'application/x-ustar',
|
||||
'vcd' => 'application/x-cdlink',
|
||||
'vrml' => 'model/vrml',
|
||||
'wav' => 'audio/x-wav',
|
||||
'wax' => 'audio/x-ms-wax',
|
||||
'wbmp' => 'image/vnd.wap.wbmp',
|
||||
'wbxml' => 'application/vnd.wap.wbxml',
|
||||
'wm' => 'video/x-ms-wm',
|
||||
'wma' => 'audio/x-ms-wma',
|
||||
'wml' => 'text/vnd.wap.wml',
|
||||
'wmlc' => 'application/vnd.wap.wmlc',
|
||||
'wmls' => 'text/vnd.wap.wmlscript',
|
||||
'wmlsc' => 'application/vnd.wap.wmlscriptc',
|
||||
'wmv' => 'video/x-ms-wmv',
|
||||
'wmx' => 'video/x-ms-wmx',
|
||||
'wrl' => 'model/vrml',
|
||||
'wvx' => 'video/x-ms-wvx',
|
||||
'xbm' => 'image/x-xbitmap',
|
||||
'xht' => 'application/xhtml+xml',
|
||||
'xhtml' => 'application/xhtml+xml',
|
||||
'xml' => 'text/xml',
|
||||
'xml' => 'application/xml',
|
||||
'xpm' => 'image/x-xpixmap',
|
||||
'xsl' => 'text/xsl',
|
||||
'xwd' => 'image/x-xwindowdump',
|
||||
'xyz' => 'chemical/x-xyz',
|
||||
'zip' => 'application/zip',
|
||||
'doc' => 'application/msword',
|
||||
'docx' => 'application/vnd.openxmlformats-officedocument.wordprocessingml.document',
|
||||
'dotx' => 'application/vnd.openxmlformats-officedocument.wordprocessingml.template',
|
||||
'docm' => 'application/vnd.ms-word.document.macroEnabled.12',
|
||||
'xls' => 'application/vnd.ms-excel',
|
||||
'xlsx' => 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet',
|
||||
'xltx' => 'application/vnd.openxmlformats-officedocument.spreadsheetml.template',
|
||||
'xlsm' => 'application/vnd.ms-excel.sheet.macroEnabled.12',
|
||||
'xltm' => 'application/vnd.ms-excel.template.macroEnabled.12',
|
||||
'xlam' => 'application/vnd.ms-excel.addin.macroEnabled.12',
|
||||
'xlsb' => 'application/vnd.ms-excel.sheet.binary.macroEnabled.12',
|
||||
'ppt' => 'application/vnd.ms-powerpoint',
|
||||
'pptx' => 'application/vnd.openxmlformats-officedocument.presentationml.presentation',
|
||||
'potx' => 'application/vnd.openxmlformats-officedocument.presentationml.template',
|
||||
'ppsx' => 'application/vnd.openxmlformats-officedocument.presentationml.slideshow',
|
||||
'ppam' => 'application/vnd.ms-powerpoint.addin.macroEnabled.12',
|
||||
'pptm' => 'application/vnd.ms-powerpoint.presentation.macroEnabled.12',
|
||||
'potm' => 'application/vnd.ms-powerpoint.template.macroEnabled.12',
|
||||
'ppsm' => 'application/vnd.ms-powerpoint.slideshow.macroEnabled.12',
|
||||
);
|
||||
|
||||
if ( ! function_exists('get_extension_from_mime'))
|
||||
{
|
||||
function get_extension_from_mime($mime){
|
||||
global $mime_types;
|
||||
if(strpos($mime, ';')!==FALSE){
|
||||
$mime = substr($mime, 0,strpos($mime, ';'));
|
||||
}
|
||||
$mime_types_conv = array_flip($mime_types);
|
||||
if(isset($mime_types_conv[$mime])){
|
||||
return $mime_types_conv[$mime];
|
||||
}
|
||||
return '';
|
||||
}
|
||||
}
|
||||
|
||||
if ( ! function_exists('get_file_mime_type'))
|
||||
{
|
||||
function get_file_mime_type($filename, $debug = false)
|
||||
{
|
||||
if (function_exists('finfo_open') && function_exists('finfo_file') && function_exists('finfo_close'))
|
||||
{
|
||||
$fileinfo = finfo_open(FILEINFO_MIME_TYPE);
|
||||
$mime_type = finfo_file($fileinfo, $filename);
|
||||
finfo_close($fileinfo);
|
||||
|
||||
if ( ! empty($mime_type))
|
||||
{
|
||||
if (true === $debug)
|
||||
{
|
||||
return array( 'mime_type' => $mime_type, 'method' => 'fileinfo' );
|
||||
}
|
||||
|
||||
return $mime_type;
|
||||
}
|
||||
}
|
||||
|
||||
if (function_exists('mime_content_type'))
|
||||
{
|
||||
$mime_type = mime_content_type($filename);
|
||||
|
||||
if ( ! empty($mime_type))
|
||||
{
|
||||
if (true === $debug)
|
||||
{
|
||||
return array( 'mime_type' => $mime_type, 'method' => 'mime_content_type' );
|
||||
}
|
||||
|
||||
return $mime_type;
|
||||
}
|
||||
}
|
||||
|
||||
global $mime_types;
|
||||
|
||||
$tmp_array = explode('.', $filename);
|
||||
$ext = strtolower(array_pop($tmp_array));
|
||||
|
||||
if ( ! empty($mime_types[ $ext ]))
|
||||
{
|
||||
if (true === $debug)
|
||||
{
|
||||
return array( 'mime_type' => $mime_types[ $ext ], 'method' => 'from_array' );
|
||||
}
|
||||
|
||||
return $mime_types[ $ext ];
|
||||
}
|
||||
|
||||
if (true === $debug)
|
||||
{
|
||||
return array( 'mime_type' => 'application/octet-stream', 'method' => 'last_resort' );
|
||||
}
|
||||
|
||||
return 'application/octet-stream';
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
/********************
|
||||
* The following code can be used to test the function.
|
||||
* First put a plain text file named "test.txt" and a
|
||||
* JPEG image file named "image.jpg" in the same folder
|
||||
* as this file.
|
||||
*
|
||||
* Simply remove the "REMOVE ME TO TEST" lines below to have
|
||||
* the code run when this file runs.
|
||||
*
|
||||
* Run the code with this command:
|
||||
* php mime_type_lib.php
|
||||
********************/
|
||||
|
||||
|
||||
/* REMOVE ME TO TEST
|
||||
echo get_file_mime_type( 'test.txt' ) . "\n";
|
||||
echo print_r( get_file_mime_type( 'image.jpg', true ), true ) . "\n";
|
||||
REMOVE ME TO TEST */
|
||||
<?php
|
||||
|
||||
/********************************
|
||||
* The following commented code can be uncommented if you wish
|
||||
* to quickly find information about your system's MIME setup.
|
||||
*
|
||||
* Simply remove the "REMOVE ME TO TEST" lines below to have
|
||||
* the code run when this file runs.
|
||||
*
|
||||
* In addition to these tests, you'll find some commented code
|
||||
* at the bottom of the file that can be used to test the
|
||||
* function.
|
||||
*
|
||||
* Run the code with this command:
|
||||
* php mime_type_lib.php
|
||||
********************************/
|
||||
|
||||
|
||||
/* REMOVE ME TO TEST
|
||||
echo "magicfile: " . ini_get( 'mime_magic.magicfile' ) . "\n";
|
||||
|
||||
if ( function_exists( 'finfo_open' ) )
|
||||
echo "Found finfo_open function\n";
|
||||
else
|
||||
echo "Did not find finfo_open function\n";
|
||||
|
||||
if ( function_exists( 'mime_content_type' ) )
|
||||
echo "Found mime_content_type function\n";
|
||||
else
|
||||
echo "Did not find mime_content_type function\n";
|
||||
REMOVE ME TO TEST */
|
||||
|
||||
$mime_types = array(
|
||||
'ai' => 'application/postscript',
|
||||
'aif' => 'audio/x-aiff',
|
||||
'aifc' => 'audio/x-aiff',
|
||||
'aiff' => 'audio/x-aiff',
|
||||
'asc' => 'text/plain',
|
||||
'asf' => 'video/x-ms-asf',
|
||||
'asx' => 'video/x-ms-asf',
|
||||
'au' => 'audio/basic',
|
||||
'avi' => 'video/x-msvideo',
|
||||
'bcpio' => 'application/x-bcpio',
|
||||
'bin' => 'application/octet-stream',
|
||||
'bmp' => 'image/bmp',
|
||||
'bz2' => 'application/x-bzip2',
|
||||
'cdf' => 'application/x-netcdf',
|
||||
'chrt' => 'application/x-kchart',
|
||||
'class' => 'application/octet-stream',
|
||||
'cpio' => 'application/x-cpio',
|
||||
'cpt' => 'application/mac-compactpro',
|
||||
'csh' => 'application/x-csh',
|
||||
'css' => 'text/css',
|
||||
'dcr' => 'application/x-director',
|
||||
'dir' => 'application/x-director',
|
||||
'djv' => 'image/vnd.djvu',
|
||||
'djvu' => 'image/vnd.djvu',
|
||||
'dll' => 'application/octet-stream',
|
||||
'dms' => 'application/octet-stream',
|
||||
'dvi' => 'application/x-dvi',
|
||||
'dwg' => 'image/vnd.dwg',
|
||||
'dxr' => 'application/x-director',
|
||||
'eps' => 'application/postscript',
|
||||
'etx' => 'text/x-setext',
|
||||
'exe' => 'application/octet-stream',
|
||||
'ez' => 'application/andrew-inset',
|
||||
'flv' => 'video/x-flv',
|
||||
'gif' => 'image/gif',
|
||||
'gtar' => 'application/x-gtar',
|
||||
'gz' => 'application/x-gzip',
|
||||
'hdf' => 'application/x-hdf',
|
||||
'hqx' => 'application/mac-binhex40',
|
||||
'htm' => 'text/html',
|
||||
'html' => 'text/html',
|
||||
'ice' => 'x-conference/x-cooltalk',
|
||||
'ief' => 'image/ief',
|
||||
'iges' => 'model/iges',
|
||||
'igs' => 'model/iges',
|
||||
'img' => 'application/octet-stream',
|
||||
'iso' => 'application/octet-stream',
|
||||
'jad' => 'text/vnd.sun.j2me.app-descriptor',
|
||||
'jar' => 'application/x-java-archive',
|
||||
'jnlp' => 'application/x-java-jnlp-file',
|
||||
'jpe' => 'image/jpeg',
|
||||
'jpeg' => 'image/jpeg',
|
||||
'jpg' => 'image/jpeg',
|
||||
'js' => 'application/x-javascript',
|
||||
'kar' => 'audio/midi',
|
||||
'kil' => 'application/x-killustrator',
|
||||
'kpr' => 'application/x-kpresenter',
|
||||
'kpt' => 'application/x-kpresenter',
|
||||
'ksp' => 'application/x-kspread',
|
||||
'kwd' => 'application/x-kword',
|
||||
'kwt' => 'application/x-kword',
|
||||
'kml' => 'application/vnd.google-earth.kml+xml',
|
||||
'kmz' => 'application/vnd.google-earth.kmz',
|
||||
'latex' => 'application/x-latex',
|
||||
'lha' => 'application/octet-stream',
|
||||
'lzh' => 'application/octet-stream',
|
||||
'm3u' => 'audio/x-mpegurl',
|
||||
'man' => 'application/x-troff-man',
|
||||
'me' => 'application/x-troff-me',
|
||||
'mesh' => 'model/mesh',
|
||||
'mid' => 'audio/midi',
|
||||
'midi' => 'audio/midi',
|
||||
'mif' => 'application/vnd.mif',
|
||||
'mov' => 'video/quicktime',
|
||||
'movie' => 'video/x-sgi-movie',
|
||||
'mp2' => 'audio/mpeg',
|
||||
'mp3' => 'audio/mpeg',
|
||||
'mp4' => 'video/mp4',
|
||||
'mpe' => 'video/mpeg',
|
||||
'mpg' => 'video/mpeg',
|
||||
'mpeg' => 'video/mpeg',
|
||||
'ms' => 'application/x-troff-ms',
|
||||
'msh' => 'model/mesh',
|
||||
'mxu' => 'video/vnd.mpegurl',
|
||||
'nc' => 'application/x-netcdf',
|
||||
'odb' => 'application/vnd.oasis.opendocument.database',
|
||||
'odc' => 'application/vnd.oasis.opendocument.chart',
|
||||
'odf' => 'application/vnd.oasis.opendocument.formula',
|
||||
'odg' => 'application/vnd.oasis.opendocument.graphics',
|
||||
'odi' => 'application/vnd.oasis.opendocument.image',
|
||||
'odm' => 'application/vnd.oasis.opendocument.text-master',
|
||||
'odp' => 'application/vnd.oasis.opendocument.presentation',
|
||||
'ods' => 'application/vnd.oasis.opendocument.spreadsheet',
|
||||
'odt' => 'application/vnd.oasis.opendocument.text',
|
||||
'ogg' => 'application/ogg',
|
||||
'otg' => 'application/vnd.oasis.opendocument.graphics-template',
|
||||
'oth' => 'application/vnd.oasis.opendocument.text-web',
|
||||
'otp' => 'application/vnd.oasis.opendocument.presentation-template',
|
||||
'ots' => 'application/vnd.oasis.opendocument.spreadsheet-template',
|
||||
'ott' => 'application/vnd.oasis.opendocument.text-template',
|
||||
'pbm' => 'image/x-portable-bitmap',
|
||||
'pdb' => 'chemical/x-pdb',
|
||||
'pdf' => 'application/pdf',
|
||||
'pgm' => 'image/x-portable-graymap',
|
||||
'pgn' => 'application/x-chess-pgn',
|
||||
'php' => 'text/x-php',
|
||||
'png' => 'image/png',
|
||||
'pnm' => 'image/x-portable-anymap',
|
||||
'ppm' => 'image/x-portable-pixmap',
|
||||
'ppt' => 'application/vnd.ms-powerpoint',
|
||||
'ps' => 'application/postscript',
|
||||
'qt' => 'video/quicktime',
|
||||
'ra' => 'audio/x-realaudio',
|
||||
'ram' => 'audio/x-pn-realaudio',
|
||||
'ras' => 'image/x-cmu-raster',
|
||||
'rgb' => 'image/x-rgb',
|
||||
'rm' => 'audio/x-pn-realaudio',
|
||||
'roff' => 'application/x-troff',
|
||||
'rpm' => 'application/x-rpm',
|
||||
'rtf' => 'text/rtf',
|
||||
'rtx' => 'text/richtext',
|
||||
'sgm' => 'text/sgml',
|
||||
'sgml' => 'text/sgml',
|
||||
'sh' => 'application/x-sh',
|
||||
'shar' => 'application/x-shar',
|
||||
'silo' => 'model/mesh',
|
||||
'sis' => 'application/vnd.symbian.install',
|
||||
'sit' => 'application/x-stuffit',
|
||||
'skd' => 'application/x-koan',
|
||||
'skm' => 'application/x-koan',
|
||||
'skp' => 'application/x-koan',
|
||||
'skt' => 'application/x-koan',
|
||||
'smi' => 'application/smil',
|
||||
'smil' => 'application/smil',
|
||||
'snd' => 'audio/basic',
|
||||
'svg' => 'image/svg+xml',
|
||||
'so' => 'application/octet-stream',
|
||||
'spl' => 'application/x-futuresplash',
|
||||
'src' => 'application/x-wais-source',
|
||||
'stc' => 'application/vnd.sun.xml.calc.template',
|
||||
'std' => 'application/vnd.sun.xml.draw.template',
|
||||
'sti' => 'application/vnd.sun.xml.impress.template',
|
||||
'stw' => 'application/vnd.sun.xml.writer.template',
|
||||
'sv4cpio' => 'application/x-sv4cpio',
|
||||
'sv4crc' => 'application/x-sv4crc',
|
||||
'swf' => 'application/x-shockwave-flash',
|
||||
'sxc' => 'application/vnd.sun.xml.calc',
|
||||
'sxd' => 'application/vnd.sun.xml.draw',
|
||||
'sxg' => 'application/vnd.sun.xml.writer.global',
|
||||
'sxi' => 'application/vnd.sun.xml.impress',
|
||||
'sxm' => 'application/vnd.sun.xml.math',
|
||||
'sxw' => 'application/vnd.sun.xml.writer',
|
||||
't' => 'application/x-troff',
|
||||
'tar' => 'application/x-tar',
|
||||
'tcl' => 'application/x-tcl',
|
||||
'tex' => 'application/x-tex',
|
||||
'texi' => 'application/x-texinfo',
|
||||
'texinfo' => 'application/x-texinfo',
|
||||
'tgz' => 'application/x-gzip',
|
||||
'tif' => 'image/tiff',
|
||||
'tiff' => 'image/tiff',
|
||||
'torrent' => 'application/x-bittorrent',
|
||||
'tr' => 'application/x-troff',
|
||||
'tsv' => 'text/tab-separated-values',
|
||||
'txt' => 'text/plain',
|
||||
'ustar' => 'application/x-ustar',
|
||||
'vcd' => 'application/x-cdlink',
|
||||
'vrml' => 'model/vrml',
|
||||
'wav' => 'audio/x-wav',
|
||||
'wax' => 'audio/x-ms-wax',
|
||||
'wbmp' => 'image/vnd.wap.wbmp',
|
||||
'wbxml' => 'application/vnd.wap.wbxml',
|
||||
'wm' => 'video/x-ms-wm',
|
||||
'wma' => 'audio/x-ms-wma',
|
||||
'wml' => 'text/vnd.wap.wml',
|
||||
'wmlc' => 'application/vnd.wap.wmlc',
|
||||
'wmls' => 'text/vnd.wap.wmlscript',
|
||||
'wmlsc' => 'application/vnd.wap.wmlscriptc',
|
||||
'wmv' => 'video/x-ms-wmv',
|
||||
'wmx' => 'video/x-ms-wmx',
|
||||
'wrl' => 'model/vrml',
|
||||
'wvx' => 'video/x-ms-wvx',
|
||||
'xbm' => 'image/x-xbitmap',
|
||||
'xht' => 'application/xhtml+xml',
|
||||
'xhtml' => 'application/xhtml+xml',
|
||||
'xml' => 'text/xml',
|
||||
'xml' => 'application/xml',
|
||||
'xpm' => 'image/x-xpixmap',
|
||||
'xsl' => 'text/xsl',
|
||||
'xwd' => 'image/x-xwindowdump',
|
||||
'xyz' => 'chemical/x-xyz',
|
||||
'zip' => 'application/zip',
|
||||
'doc' => 'application/msword',
|
||||
'docx' => 'application/vnd.openxmlformats-officedocument.wordprocessingml.document',
|
||||
'dotx' => 'application/vnd.openxmlformats-officedocument.wordprocessingml.template',
|
||||
'docm' => 'application/vnd.ms-word.document.macroEnabled.12',
|
||||
'xls' => 'application/vnd.ms-excel',
|
||||
'xlsx' => 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet',
|
||||
'xltx' => 'application/vnd.openxmlformats-officedocument.spreadsheetml.template',
|
||||
'xlsm' => 'application/vnd.ms-excel.sheet.macroEnabled.12',
|
||||
'xltm' => 'application/vnd.ms-excel.template.macroEnabled.12',
|
||||
'xlam' => 'application/vnd.ms-excel.addin.macroEnabled.12',
|
||||
'xlsb' => 'application/vnd.ms-excel.sheet.binary.macroEnabled.12',
|
||||
'ppt' => 'application/vnd.ms-powerpoint',
|
||||
'pptx' => 'application/vnd.openxmlformats-officedocument.presentationml.presentation',
|
||||
'potx' => 'application/vnd.openxmlformats-officedocument.presentationml.template',
|
||||
'ppsx' => 'application/vnd.openxmlformats-officedocument.presentationml.slideshow',
|
||||
'ppam' => 'application/vnd.ms-powerpoint.addin.macroEnabled.12',
|
||||
'pptm' => 'application/vnd.ms-powerpoint.presentation.macroEnabled.12',
|
||||
'potm' => 'application/vnd.ms-powerpoint.template.macroEnabled.12',
|
||||
'ppsm' => 'application/vnd.ms-powerpoint.slideshow.macroEnabled.12',
|
||||
);
|
||||
|
||||
if ( ! function_exists('get_extension_from_mime'))
|
||||
{
|
||||
function get_extension_from_mime($mime){
|
||||
global $mime_types;
|
||||
if(strpos($mime, ';')!==FALSE){
|
||||
$mime = substr($mime, 0,strpos($mime, ';'));
|
||||
}
|
||||
$mime_types_conv = array_flip($mime_types);
|
||||
if(isset($mime_types_conv[$mime])){
|
||||
return $mime_types_conv[$mime];
|
||||
}
|
||||
return '';
|
||||
}
|
||||
}
|
||||
|
||||
if ( ! function_exists('get_file_mime_type'))
|
||||
{
|
||||
function get_file_mime_type($filename, $debug = false)
|
||||
{
|
||||
if (function_exists('finfo_open') && function_exists('finfo_file') && function_exists('finfo_close'))
|
||||
{
|
||||
$fileinfo = finfo_open(FILEINFO_MIME_TYPE);
|
||||
$mime_type = finfo_file($fileinfo, $filename);
|
||||
finfo_close($fileinfo);
|
||||
|
||||
if ( ! empty($mime_type))
|
||||
{
|
||||
if (true === $debug)
|
||||
{
|
||||
return array( 'mime_type' => $mime_type, 'method' => 'fileinfo' );
|
||||
}
|
||||
|
||||
return $mime_type;
|
||||
}
|
||||
}
|
||||
|
||||
if (function_exists('mime_content_type'))
|
||||
{
|
||||
$mime_type = mime_content_type($filename);
|
||||
|
||||
if ( ! empty($mime_type))
|
||||
{
|
||||
if (true === $debug)
|
||||
{
|
||||
return array( 'mime_type' => $mime_type, 'method' => 'mime_content_type' );
|
||||
}
|
||||
|
||||
return $mime_type;
|
||||
}
|
||||
}
|
||||
|
||||
global $mime_types;
|
||||
|
||||
$tmp_array = explode('.', $filename);
|
||||
$ext = strtolower(array_pop($tmp_array));
|
||||
|
||||
if ( ! empty($mime_types[ $ext ]))
|
||||
{
|
||||
if (true === $debug)
|
||||
{
|
||||
return array( 'mime_type' => $mime_types[ $ext ], 'method' => 'from_array' );
|
||||
}
|
||||
|
||||
return $mime_types[ $ext ];
|
||||
}
|
||||
|
||||
if (true === $debug)
|
||||
{
|
||||
return array( 'mime_type' => 'application/octet-stream', 'method' => 'last_resort' );
|
||||
}
|
||||
|
||||
return 'application/octet-stream';
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
/********************
|
||||
* The following code can be used to test the function.
|
||||
* First put a plain text file named "test.txt" and a
|
||||
* JPEG image file named "image.jpg" in the same folder
|
||||
* as this file.
|
||||
*
|
||||
* Simply remove the "REMOVE ME TO TEST" lines below to have
|
||||
* the code run when this file runs.
|
||||
*
|
||||
* Run the code with this command:
|
||||
* php mime_type_lib.php
|
||||
********************/
|
||||
|
||||
|
||||
/* REMOVE ME TO TEST
|
||||
echo get_file_mime_type( 'test.txt' ) . "\n";
|
||||
echo print_r( get_file_mime_type( 'image.jpg', true ), true ) . "\n";
|
||||
REMOVE ME TO TEST */
|
||||
|
||||
@@ -1,295 +1,295 @@
|
||||
/*
|
||||
* jPlayer Plugin for jQuery JavaScript Library
|
||||
* http://www.jplayer.org
|
||||
*
|
||||
* Copyright (c) 2009 - 2013 Happyworm Ltd
|
||||
* Licensed under the MIT license.
|
||||
* http://opensource.org/licenses/MIT
|
||||
*
|
||||
* Author: Robert M. Hall
|
||||
* Date: 7th August 2012
|
||||
* Custom NetConnection Manager for more robust RTMP support
|
||||
* Based in part on work by Will Law for the old Akamai NCManager.as
|
||||
* and some of Will's new work in the OVP base classes (Open Video Player)
|
||||
* as well as similar approaches by many other NetConnection managers
|
||||
*
|
||||
*/
|
||||
|
||||
/*
|
||||
TODO LIST 08/18/2011:
|
||||
1. Wired up errors to dispatch events to Jplayer events to allow them to bubble up to JS
|
||||
2. Rework event dispatch to handoff netconnection instead of a passed in reference
|
||||
3. Allow a customizeable list of protocols and ports to be used instead of entire list
|
||||
4. Allow a specific port/protocol (1 connect type) to be used first, and then optionally fallback on a custom list or the default list
|
||||
5. Remove some traces and check a few other items below where I've made notes
|
||||
*/
|
||||
|
||||
package happyworm.jPlayer {
|
||||
|
||||
import flash.events.*;
|
||||
import flash.net.*;
|
||||
|
||||
import flash.utils.Timer;
|
||||
import flash.utils.getTimer;
|
||||
import flash.utils.clearInterval;
|
||||
import flash.utils.setInterval;
|
||||
|
||||
public class ConnectManager extends Object {
|
||||
|
||||
private var protocols_arr:Array = new Array("rtmp","rtmpt","rtmpe","rtmpte","rtmps");
|
||||
private var ports_arr:Array = new Array("",":1935",":80",":443");
|
||||
private const protCount:Number = 5;
|
||||
private const portCount:Number = 4;
|
||||
|
||||
private var _ncRef:Object;
|
||||
|
||||
private var _aNC:Array;
|
||||
|
||||
private var k_TIMEOUT:Number = 30000;
|
||||
private var k_startConns:Number;
|
||||
private var m_connList:Array = [];
|
||||
private var m_serverName:String;
|
||||
private var m_appName:String;
|
||||
private var m_streamName:String;
|
||||
private var m_connListCounter:Number;
|
||||
private var m_flashComConnectTimeOut:Number;
|
||||
private var m_validNetConnection:NetConnection;
|
||||
|
||||
private var connectSuccess:Boolean=false;
|
||||
|
||||
private var negotiating:Boolean=false;
|
||||
private var idleTimeOut:Boolean=false;
|
||||
|
||||
public function ConnectManager() {
|
||||
trace ("ConnectManager Initialized Version: 1.00 DT");
|
||||
createPortsProtocolsArray();
|
||||
}
|
||||
|
||||
private function createPortsProtocolsArray():void {
|
||||
var outerLoop:Number=0;
|
||||
var innerLoop:Number=0;
|
||||
for (outerLoop=0; outerLoop<protocols_arr.length; outerLoop++) {
|
||||
|
||||
for (innerLoop=0; innerLoop<ports_arr.length; innerLoop++) {
|
||||
m_connList.push( { protocol: protocols_arr[outerLoop], port: ports_arr[innerLoop] } );
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
public function negotiateConnect(ncRef:Object,p_serverName:String,p_appName:String):void
|
||||
{
|
||||
negotiating=true;
|
||||
_ncRef=ncRef;
|
||||
trace("*** SERVER NAME: "+p_serverName);
|
||||
trace("*** APP NAME: "+p_serverName);
|
||||
k_startConns = getTimer();
|
||||
m_serverName = p_serverName;
|
||||
m_appName = p_appName;
|
||||
|
||||
// Set a timeout function, just in case we never connect successfully
|
||||
clearInterval(m_flashComConnectTimeOut);
|
||||
m_flashComConnectTimeOut = setInterval(onFlashComConnectTimeOut,k_TIMEOUT,k_TIMEOUT);
|
||||
|
||||
// Createe a NetConnection for each of the protocols/ports listed in the m_connList list.
|
||||
// Connection attempts occur at intervals of 1.5 seconds.
|
||||
// The first connection to succeed will be used, all the others will be closed.
|
||||
_aNC = new Array();
|
||||
for (var i:uint = 0; i < m_connList.length; i++)
|
||||
{
|
||||
_aNC[i] = new NetConnection();
|
||||
_aNC[i].addEventListener(NetStatusEvent.NET_STATUS,netStatus);
|
||||
_aNC[i].addEventListener(SecurityErrorEvent.SECURITY_ERROR,netSecurityError);
|
||||
_aNC[i].addEventListener(AsyncErrorEvent.ASYNC_ERROR,asyncError);
|
||||
_aNC[i].client = new Object;
|
||||
_aNC[i].client.owner = this;
|
||||
_aNC[i].client.connIndex = i;
|
||||
_aNC[i].client.id = i;
|
||||
_aNC[i].client.pending = true;
|
||||
|
||||
/* Revisit this chunk - not needed at the moment as NC is handed off and this
|
||||
// is handled elsewhere
|
||||
// Need to put in some event dispatching as a more elegant solution and leave it here
|
||||
|
||||
_aNC[i].client.onBWDone = function (p_bw, deltaDown, deltaTime, latency) {
|
||||
//this.owner.dispatchEvent ({type:"ncBandWidth", kbps:p_bw, latency:latency});
|
||||
};
|
||||
|
||||
_aNC[i].client.onBWCheck = function (counter) {
|
||||
return ++counter;
|
||||
};
|
||||
|
||||
_aNC[i].client.onStatus = function (info) {
|
||||
//
|
||||
};
|
||||
*/
|
||||
|
||||
}
|
||||
m_connListCounter = 0;
|
||||
nextConnect ();
|
||||
}
|
||||
|
||||
private function nextConnect():void
|
||||
{
|
||||
trace("*** Connection: "+ m_connListCounter + ": "+m_connList[m_connListCounter].protocol + "://" + m_serverName + m_connList[m_connListCounter].port + "/" + m_appName);
|
||||
|
||||
try {
|
||||
_aNC[m_connListCounter].connect(m_connList[m_connListCounter].protocol + "://" + m_serverName + m_connList[m_connListCounter].port + "/" + m_appName);
|
||||
|
||||
} catch (error:Error) {
|
||||
// statements
|
||||
trace("*** Caught an error condition: "+error);
|
||||
m_connListCounter = m_connList.length+1;
|
||||
}
|
||||
// statements
|
||||
clearInterval(_aNC["ncInt" + m_connListCounter]);
|
||||
|
||||
if ((m_connListCounter < m_connList.length - 1))
|
||||
{
|
||||
m_connListCounter++;
|
||||
_aNC["ncInt" + m_connListCounter] = setInterval(nextConnect,1500);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
// Cleans up all connections if none have succeeded by the timeout interval
|
||||
private function onFlashComConnectTimeOut(timeout:Number):void
|
||||
{
|
||||
stopAll();
|
||||
}
|
||||
|
||||
private function handleGoodConnect(_nc:NetConnection):void {
|
||||
negotiating=false;
|
||||
trace("Handing OFF NetConnection");
|
||||
clearInterval(m_flashComConnectTimeOut);
|
||||
_ncRef.connectStream();
|
||||
_ncRef.onBWDone(null,_nc);
|
||||
//dispatchEvent(event);
|
||||
// Need to enable and pass to Jplayer event system- revisit
|
||||
// right now handing back a hardcoded reference that is passed in
|
||||
// Should come up with a more loosely coupled way via event dispatch
|
||||
|
||||
}
|
||||
|
||||
public function getNegotiating():Boolean {
|
||||
return negotiating;
|
||||
}
|
||||
|
||||
public function setNegotiating(bool:Boolean):void {
|
||||
negotiating=bool;
|
||||
}
|
||||
|
||||
|
||||
public function stopAll(bool:Boolean=false):void {
|
||||
|
||||
//this.dispatchEvent ({type:"ncFailedToConnect", timeout:timeout});
|
||||
// Need to enable and pass to Jplayer event system- revisit
|
||||
// trace(_aNC+":"+m_flashComConnectTimeOut+":"+m_connList.length)
|
||||
if(_aNC!=null && !isNaN(m_flashComConnectTimeOut) ) {
|
||||
clearInterval(m_flashComConnectTimeOut);
|
||||
for (var i:uint = 0; i < m_connList.length; i++)
|
||||
{
|
||||
if (_aNC[i]!=null)
|
||||
{
|
||||
clearInterval(_aNC["ncInt" + i]);
|
||||
_aNC[i].close();
|
||||
if(bool==false) {
|
||||
_aNC[i].client = null;
|
||||
}
|
||||
_aNC[i] = null;
|
||||
delete _aNC[i];
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
|
||||
private function netStatus(event:NetStatusEvent):void {
|
||||
|
||||
trace(event.info.code);
|
||||
if(event.info.description != undefined) {
|
||||
trace(event.info.description);
|
||||
}
|
||||
_aNC[event.target.client.id].client.pending = true;
|
||||
|
||||
// this.owner.m_validNetConnection = this.client.owner[this.client.connIndex];
|
||||
// if (info.description == "[ License.Limit.Exceeded ]") {
|
||||
|
||||
switch (event.info.code) {
|
||||
case "NetConnection.Connect.IdleTimeOut":
|
||||
trace("IDLE TIMEOUT OCCURRED!")
|
||||
negotiating=true;
|
||||
idleTimeOut=true;
|
||||
_ncRef.shutDownNcNs();
|
||||
break;
|
||||
case "NetConnection.Connect.Closed":
|
||||
if(!negotiating && !idleTimeOut) {
|
||||
idleTimeOut = false;
|
||||
_ncRef.doneYet();
|
||||
}
|
||||
break;
|
||||
case "NetConnection.Connect.InvalidApp":
|
||||
case "NetConnection.Connect.Rejected":
|
||||
//handleRejectedOrInvalid(event)
|
||||
break;
|
||||
case "NetConnection.Call.Failed":
|
||||
/*
|
||||
if (event.info.description.indexOf("_checkbw") != -1) {
|
||||
event.target.expectBWDone = true;
|
||||
event.target.call("checkBandwidth",null);
|
||||
}
|
||||
*/
|
||||
break;
|
||||
case "NetConnection.Connect.Success":
|
||||
var i:uint=0;
|
||||
for ( i = 0; i<_aNC.length; i++) {
|
||||
if (_aNC[i] && (i != event.target.client.id)) {
|
||||
_aNC[i].close();
|
||||
_aNC[i] = null;
|
||||
}
|
||||
}
|
||||
var _nc:NetConnection = NetConnection(event.target);
|
||||
var connID:Number = event.target.client.id;
|
||||
var _actualPort:String = m_connList[m_connListCounter].port;
|
||||
var _actualProtocol:String = m_connList[m_connListCounter].protocol;
|
||||
|
||||
// See if we have version info
|
||||
var _serverVersion:String = "UNKNOWN";
|
||||
if (event.info.data && event.info.data.version) {
|
||||
_serverVersion = event.info.data.version;
|
||||
}
|
||||
trace("Connect ID: "+connID+" - PORT: "+_actualPort+" - PROTOCOL: "+_actualProtocol+" - FMS Version: "+_serverVersion);
|
||||
|
||||
clearInterval(_aNC["ncInt" + connID]);
|
||||
clearInterval(_aNC["ncInt" + m_connListCounter]);
|
||||
|
||||
handleGoodConnect(_nc);
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
/** Catches any netconnection net security errors
|
||||
* @private
|
||||
*/
|
||||
private function netSecurityError(event:SecurityErrorEvent):void {
|
||||
trace("SECURITY ERROR:"+event);
|
||||
//dispatchEvent(event);
|
||||
// Need to enable and pass to Jplayer event system- revisit
|
||||
}
|
||||
|
||||
/** Catches any async errors
|
||||
* @private
|
||||
*/
|
||||
private function asyncError(event:AsyncErrorEvent):void {
|
||||
trace("ASYNC ERROR:"+event.error);
|
||||
//dispatchEvent(event);
|
||||
// Need to enable and pass to Jplayer event system- revisit
|
||||
}
|
||||
|
||||
|
||||
|
||||
}// class
|
||||
|
||||
} //package
|
||||
/*
|
||||
* jPlayer Plugin for jQuery JavaScript Library
|
||||
* http://www.jplayer.org
|
||||
*
|
||||
* Copyright (c) 2009 - 2013 Happyworm Ltd
|
||||
* Licensed under the MIT license.
|
||||
* http://opensource.org/licenses/MIT
|
||||
*
|
||||
* Author: Robert M. Hall
|
||||
* Date: 7th August 2012
|
||||
* Custom NetConnection Manager for more robust RTMP support
|
||||
* Based in part on work by Will Law for the old Akamai NCManager.as
|
||||
* and some of Will's new work in the OVP base classes (Open Video Player)
|
||||
* as well as similar approaches by many other NetConnection managers
|
||||
*
|
||||
*/
|
||||
|
||||
/*
|
||||
TODO LIST 08/18/2011:
|
||||
1. Wired up errors to dispatch events to Jplayer events to allow them to bubble up to JS
|
||||
2. Rework event dispatch to handoff netconnection instead of a passed in reference
|
||||
3. Allow a customizeable list of protocols and ports to be used instead of entire list
|
||||
4. Allow a specific port/protocol (1 connect type) to be used first, and then optionally fallback on a custom list or the default list
|
||||
5. Remove some traces and check a few other items below where I've made notes
|
||||
*/
|
||||
|
||||
package happyworm.jPlayer {
|
||||
|
||||
import flash.events.*;
|
||||
import flash.net.*;
|
||||
|
||||
import flash.utils.Timer;
|
||||
import flash.utils.getTimer;
|
||||
import flash.utils.clearInterval;
|
||||
import flash.utils.setInterval;
|
||||
|
||||
public class ConnectManager extends Object {
|
||||
|
||||
private var protocols_arr:Array = new Array("rtmp","rtmpt","rtmpe","rtmpte","rtmps");
|
||||
private var ports_arr:Array = new Array("",":1935",":80",":443");
|
||||
private const protCount:Number = 5;
|
||||
private const portCount:Number = 4;
|
||||
|
||||
private var _ncRef:Object;
|
||||
|
||||
private var _aNC:Array;
|
||||
|
||||
private var k_TIMEOUT:Number = 30000;
|
||||
private var k_startConns:Number;
|
||||
private var m_connList:Array = [];
|
||||
private var m_serverName:String;
|
||||
private var m_appName:String;
|
||||
private var m_streamName:String;
|
||||
private var m_connListCounter:Number;
|
||||
private var m_flashComConnectTimeOut:Number;
|
||||
private var m_validNetConnection:NetConnection;
|
||||
|
||||
private var connectSuccess:Boolean=false;
|
||||
|
||||
private var negotiating:Boolean=false;
|
||||
private var idleTimeOut:Boolean=false;
|
||||
|
||||
public function ConnectManager() {
|
||||
trace ("ConnectManager Initialized Version: 1.00 DT");
|
||||
createPortsProtocolsArray();
|
||||
}
|
||||
|
||||
private function createPortsProtocolsArray():void {
|
||||
var outerLoop:Number=0;
|
||||
var innerLoop:Number=0;
|
||||
for (outerLoop=0; outerLoop<protocols_arr.length; outerLoop++) {
|
||||
|
||||
for (innerLoop=0; innerLoop<ports_arr.length; innerLoop++) {
|
||||
m_connList.push( { protocol: protocols_arr[outerLoop], port: ports_arr[innerLoop] } );
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
public function negotiateConnect(ncRef:Object,p_serverName:String,p_appName:String):void
|
||||
{
|
||||
negotiating=true;
|
||||
_ncRef=ncRef;
|
||||
trace("*** SERVER NAME: "+p_serverName);
|
||||
trace("*** APP NAME: "+p_serverName);
|
||||
k_startConns = getTimer();
|
||||
m_serverName = p_serverName;
|
||||
m_appName = p_appName;
|
||||
|
||||
// Set a timeout function, just in case we never connect successfully
|
||||
clearInterval(m_flashComConnectTimeOut);
|
||||
m_flashComConnectTimeOut = setInterval(onFlashComConnectTimeOut,k_TIMEOUT,k_TIMEOUT);
|
||||
|
||||
// Createe a NetConnection for each of the protocols/ports listed in the m_connList list.
|
||||
// Connection attempts occur at intervals of 1.5 seconds.
|
||||
// The first connection to succeed will be used, all the others will be closed.
|
||||
_aNC = new Array();
|
||||
for (var i:uint = 0; i < m_connList.length; i++)
|
||||
{
|
||||
_aNC[i] = new NetConnection();
|
||||
_aNC[i].addEventListener(NetStatusEvent.NET_STATUS,netStatus);
|
||||
_aNC[i].addEventListener(SecurityErrorEvent.SECURITY_ERROR,netSecurityError);
|
||||
_aNC[i].addEventListener(AsyncErrorEvent.ASYNC_ERROR,asyncError);
|
||||
_aNC[i].client = new Object;
|
||||
_aNC[i].client.owner = this;
|
||||
_aNC[i].client.connIndex = i;
|
||||
_aNC[i].client.id = i;
|
||||
_aNC[i].client.pending = true;
|
||||
|
||||
/* Revisit this chunk - not needed at the moment as NC is handed off and this
|
||||
// is handled elsewhere
|
||||
// Need to put in some event dispatching as a more elegant solution and leave it here
|
||||
|
||||
_aNC[i].client.onBWDone = function (p_bw, deltaDown, deltaTime, latency) {
|
||||
//this.owner.dispatchEvent ({type:"ncBandWidth", kbps:p_bw, latency:latency});
|
||||
};
|
||||
|
||||
_aNC[i].client.onBWCheck = function (counter) {
|
||||
return ++counter;
|
||||
};
|
||||
|
||||
_aNC[i].client.onStatus = function (info) {
|
||||
//
|
||||
};
|
||||
*/
|
||||
|
||||
}
|
||||
m_connListCounter = 0;
|
||||
nextConnect ();
|
||||
}
|
||||
|
||||
private function nextConnect():void
|
||||
{
|
||||
trace("*** Connection: "+ m_connListCounter + ": "+m_connList[m_connListCounter].protocol + "://" + m_serverName + m_connList[m_connListCounter].port + "/" + m_appName);
|
||||
|
||||
try {
|
||||
_aNC[m_connListCounter].connect(m_connList[m_connListCounter].protocol + "://" + m_serverName + m_connList[m_connListCounter].port + "/" + m_appName);
|
||||
|
||||
} catch (error:Error) {
|
||||
// statements
|
||||
trace("*** Caught an error condition: "+error);
|
||||
m_connListCounter = m_connList.length+1;
|
||||
}
|
||||
// statements
|
||||
clearInterval(_aNC["ncInt" + m_connListCounter]);
|
||||
|
||||
if ((m_connListCounter < m_connList.length - 1))
|
||||
{
|
||||
m_connListCounter++;
|
||||
_aNC["ncInt" + m_connListCounter] = setInterval(nextConnect,1500);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
// Cleans up all connections if none have succeeded by the timeout interval
|
||||
private function onFlashComConnectTimeOut(timeout:Number):void
|
||||
{
|
||||
stopAll();
|
||||
}
|
||||
|
||||
private function handleGoodConnect(_nc:NetConnection):void {
|
||||
negotiating=false;
|
||||
trace("Handing OFF NetConnection");
|
||||
clearInterval(m_flashComConnectTimeOut);
|
||||
_ncRef.connectStream();
|
||||
_ncRef.onBWDone(null,_nc);
|
||||
//dispatchEvent(event);
|
||||
// Need to enable and pass to Jplayer event system- revisit
|
||||
// right now handing back a hardcoded reference that is passed in
|
||||
// Should come up with a more loosely coupled way via event dispatch
|
||||
|
||||
}
|
||||
|
||||
public function getNegotiating():Boolean {
|
||||
return negotiating;
|
||||
}
|
||||
|
||||
public function setNegotiating(bool:Boolean):void {
|
||||
negotiating=bool;
|
||||
}
|
||||
|
||||
|
||||
public function stopAll(bool:Boolean=false):void {
|
||||
|
||||
//this.dispatchEvent ({type:"ncFailedToConnect", timeout:timeout});
|
||||
// Need to enable and pass to Jplayer event system- revisit
|
||||
// trace(_aNC+":"+m_flashComConnectTimeOut+":"+m_connList.length)
|
||||
if(_aNC!=null && !isNaN(m_flashComConnectTimeOut) ) {
|
||||
clearInterval(m_flashComConnectTimeOut);
|
||||
for (var i:uint = 0; i < m_connList.length; i++)
|
||||
{
|
||||
if (_aNC[i]!=null)
|
||||
{
|
||||
clearInterval(_aNC["ncInt" + i]);
|
||||
_aNC[i].close();
|
||||
if(bool==false) {
|
||||
_aNC[i].client = null;
|
||||
}
|
||||
_aNC[i] = null;
|
||||
delete _aNC[i];
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
|
||||
private function netStatus(event:NetStatusEvent):void {
|
||||
|
||||
trace(event.info.code);
|
||||
if(event.info.description != undefined) {
|
||||
trace(event.info.description);
|
||||
}
|
||||
_aNC[event.target.client.id].client.pending = true;
|
||||
|
||||
// this.owner.m_validNetConnection = this.client.owner[this.client.connIndex];
|
||||
// if (info.description == "[ License.Limit.Exceeded ]") {
|
||||
|
||||
switch (event.info.code) {
|
||||
case "NetConnection.Connect.IdleTimeOut":
|
||||
trace("IDLE TIMEOUT OCCURRED!")
|
||||
negotiating=true;
|
||||
idleTimeOut=true;
|
||||
_ncRef.shutDownNcNs();
|
||||
break;
|
||||
case "NetConnection.Connect.Closed":
|
||||
if(!negotiating && !idleTimeOut) {
|
||||
idleTimeOut = false;
|
||||
_ncRef.doneYet();
|
||||
}
|
||||
break;
|
||||
case "NetConnection.Connect.InvalidApp":
|
||||
case "NetConnection.Connect.Rejected":
|
||||
//handleRejectedOrInvalid(event)
|
||||
break;
|
||||
case "NetConnection.Call.Failed":
|
||||
/*
|
||||
if (event.info.description.indexOf("_checkbw") != -1) {
|
||||
event.target.expectBWDone = true;
|
||||
event.target.call("checkBandwidth",null);
|
||||
}
|
||||
*/
|
||||
break;
|
||||
case "NetConnection.Connect.Success":
|
||||
var i:uint=0;
|
||||
for ( i = 0; i<_aNC.length; i++) {
|
||||
if (_aNC[i] && (i != event.target.client.id)) {
|
||||
_aNC[i].close();
|
||||
_aNC[i] = null;
|
||||
}
|
||||
}
|
||||
var _nc:NetConnection = NetConnection(event.target);
|
||||
var connID:Number = event.target.client.id;
|
||||
var _actualPort:String = m_connList[m_connListCounter].port;
|
||||
var _actualProtocol:String = m_connList[m_connListCounter].protocol;
|
||||
|
||||
// See if we have version info
|
||||
var _serverVersion:String = "UNKNOWN";
|
||||
if (event.info.data && event.info.data.version) {
|
||||
_serverVersion = event.info.data.version;
|
||||
}
|
||||
trace("Connect ID: "+connID+" - PORT: "+_actualPort+" - PROTOCOL: "+_actualProtocol+" - FMS Version: "+_serverVersion);
|
||||
|
||||
clearInterval(_aNC["ncInt" + connID]);
|
||||
clearInterval(_aNC["ncInt" + m_connListCounter]);
|
||||
|
||||
handleGoodConnect(_nc);
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
/** Catches any netconnection net security errors
|
||||
* @private
|
||||
*/
|
||||
private function netSecurityError(event:SecurityErrorEvent):void {
|
||||
trace("SECURITY ERROR:"+event);
|
||||
//dispatchEvent(event);
|
||||
// Need to enable and pass to Jplayer event system- revisit
|
||||
}
|
||||
|
||||
/** Catches any async errors
|
||||
* @private
|
||||
*/
|
||||
private function asyncError(event:AsyncErrorEvent):void {
|
||||
trace("ASYNC ERROR:"+event.error);
|
||||
//dispatchEvent(event);
|
||||
// Need to enable and pass to Jplayer event system- revisit
|
||||
}
|
||||
|
||||
|
||||
|
||||
}// class
|
||||
|
||||
} //package
|
||||
|
||||
@@ -1,62 +1,62 @@
|
||||
/*
|
||||
* jPlayer Plugin for jQuery JavaScript Library
|
||||
* http://www.jplayer.org
|
||||
*
|
||||
* Copyright (c) 2009 - 2013 Happyworm Ltd
|
||||
* Licensed under the MIT license.
|
||||
* http://opensource.org/licenses/MIT
|
||||
*
|
||||
* Author: Robert M. Hall
|
||||
* Date: 7th August 2012
|
||||
*/
|
||||
|
||||
package happyworm.jPlayer
|
||||
{
|
||||
import flash.net.LocalConnection;
|
||||
import flash.events.StatusEvent;
|
||||
import flash.system.Capabilities;
|
||||
import flash.utils.getTimer;
|
||||
|
||||
public class TraceOut
|
||||
{
|
||||
|
||||
private var outgoing_lc:LocalConnection = new LocalConnection ();
|
||||
private var firstEvent:Boolean = true;
|
||||
private var _localAIRDebug:Boolean = false;
|
||||
|
||||
public function TraceOut()
|
||||
{
|
||||
outgoing_lc.addEventListener(StatusEvent.STATUS, lcListener);
|
||||
outgoing_lc.send("_log_output","startLogging","");
|
||||
}
|
||||
|
||||
private function lcListener(event:StatusEvent):void
|
||||
{
|
||||
// Must have this listener to avoid errors
|
||||
if (event.level == "error")
|
||||
{
|
||||
_localAIRDebug = false;
|
||||
}
|
||||
else if(event.level =="status" && firstEvent==true)
|
||||
{
|
||||
firstEvent = false;
|
||||
tracer("<< Successful Connection To Event Logger >>");
|
||||
tracer("DEBUG INFO: \n<"+Capabilities.serverString + ">\nFlash Player Version: " + Capabilities.version + "\n");
|
||||
_localAIRDebug = true;
|
||||
}
|
||||
}
|
||||
|
||||
public function localAIRDebug():Boolean
|
||||
{
|
||||
return _localAIRDebug;
|
||||
}
|
||||
|
||||
public function tracer(msg:String):void
|
||||
{
|
||||
trace(msg);
|
||||
var outMsg:String = "[" + getTimer() + "ms] " + msg;
|
||||
outgoing_lc.send("_log_output","displayMsg",outMsg);
|
||||
|
||||
}
|
||||
}
|
||||
}
|
||||
/*
|
||||
* jPlayer Plugin for jQuery JavaScript Library
|
||||
* http://www.jplayer.org
|
||||
*
|
||||
* Copyright (c) 2009 - 2013 Happyworm Ltd
|
||||
* Licensed under the MIT license.
|
||||
* http://opensource.org/licenses/MIT
|
||||
*
|
||||
* Author: Robert M. Hall
|
||||
* Date: 7th August 2012
|
||||
*/
|
||||
|
||||
package happyworm.jPlayer
|
||||
{
|
||||
import flash.net.LocalConnection;
|
||||
import flash.events.StatusEvent;
|
||||
import flash.system.Capabilities;
|
||||
import flash.utils.getTimer;
|
||||
|
||||
public class TraceOut
|
||||
{
|
||||
|
||||
private var outgoing_lc:LocalConnection = new LocalConnection ();
|
||||
private var firstEvent:Boolean = true;
|
||||
private var _localAIRDebug:Boolean = false;
|
||||
|
||||
public function TraceOut()
|
||||
{
|
||||
outgoing_lc.addEventListener(StatusEvent.STATUS, lcListener);
|
||||
outgoing_lc.send("_log_output","startLogging","");
|
||||
}
|
||||
|
||||
private function lcListener(event:StatusEvent):void
|
||||
{
|
||||
// Must have this listener to avoid errors
|
||||
if (event.level == "error")
|
||||
{
|
||||
_localAIRDebug = false;
|
||||
}
|
||||
else if(event.level =="status" && firstEvent==true)
|
||||
{
|
||||
firstEvent = false;
|
||||
tracer("<< Successful Connection To Event Logger >>");
|
||||
tracer("DEBUG INFO: \n<"+Capabilities.serverString + ">\nFlash Player Version: " + Capabilities.version + "\n");
|
||||
_localAIRDebug = true;
|
||||
}
|
||||
}
|
||||
|
||||
public function localAIRDebug():Boolean
|
||||
{
|
||||
return _localAIRDebug;
|
||||
}
|
||||
|
||||
public function tracer(msg:String):void
|
||||
{
|
||||
trace(msg);
|
||||
var outMsg:String = "[" + getTimer() + "ms] " + msg;
|
||||
outgoing_lc.send("_log_output","displayMsg",outMsg);
|
||||
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,122 +1,122 @@
|
||||
<?php
|
||||
|
||||
return array(
|
||||
'Select' => 'Seleccionar',
|
||||
'Erase' => 'Eliminar',
|
||||
'Open' => 'Obrir',
|
||||
'Confirm_del' => 'Segur que desitges eliminar aquest arxiu?',
|
||||
'All' => 'Tots',
|
||||
'Files' => 'Arxius',
|
||||
'Images' => 'Imatges',
|
||||
'Archives' => 'Fitxers',
|
||||
'Error_Upload' => 'L\'arxiu que intenta pujar excedeix el màxim permès.',
|
||||
'Error_extension' => 'L\'extensió de l\'arxiu no està permesa.',
|
||||
'Upload_file' => 'Pujar',
|
||||
'Filters' => 'Filtres',
|
||||
'Videos' => 'Vídeos',
|
||||
'Music' => 'Musica',
|
||||
'New_Folder' => 'Nova carpeta',
|
||||
'Folder_Created' => 'La carpeta ha estat creada exitosament.',
|
||||
'Existing_Folder' => 'Carpeta existent',
|
||||
'Confirm_Folder_del' => 'Segur que desitges eliminar la carpeta i tots els elements que conté?',
|
||||
'Return_Files_List' => 'Tornar a la llista d\'arxius',
|
||||
'Preview' => 'Vista prèvia',
|
||||
'Download' => 'Descarregar',
|
||||
'Insert_Folder_Name' => 'Nom de la carpeta:',
|
||||
'Root' => 'arrel',
|
||||
'Rename' => 'Renombrar',
|
||||
'Back' => 'enrere',
|
||||
'View' => 'Vista',
|
||||
'View_list' => 'Vista de llista',
|
||||
'View_columns_list' => 'Vista de columnes',
|
||||
'View_boxes' => 'Vista de miniatures',
|
||||
'Toolbar' => 'Barra d\'eines',
|
||||
'Actions' => 'Accions',
|
||||
'Rename_existing_file' => 'L\'arxiu ja existeix',
|
||||
'Rename_existing_folder' => 'La carpeta ja existeix',
|
||||
'Empty_name' => 'El nom es troba buit',
|
||||
'Text_filter' => 'filtre de text',
|
||||
'Swipe_help' => 'Deslize el nom de l\'arxiu/carpeta per mostrar les opcions',
|
||||
'Upload_base' => 'Pujada d\'arxius SIMPLE',
|
||||
'Upload_java' => 'Pujada d\'arxius JAVA (para arxius pesats)',
|
||||
'Upload_url' => 'URL',
|
||||
'Upload_java_help' => "Si el applet no carrega: 1. Assegura't de tenir Java instal·lat; sinó descarrega-ho i instal·la-ho <a href='http://java.com/en/download/'>des d'aquí</a> 2. Assegura't que el teu firewall no estigui bloquejant res.",
|
||||
'Upload_base_help' => "Arrossega i deixa anar els arxius dins d'aquesta àrea o faci clic en ella (per a navegadors moderns) en cas contrari, seleccioni l'arxiu i faci clic en el botó. Quan finalitzi la pujada, faci clic en el botó superior per tornar.",
|
||||
'Type_dir' => 'Carpeta',
|
||||
'Type' => 'Tipus',
|
||||
'Dimension' => 'Dimensions',
|
||||
'Size' => 'Pes',
|
||||
'Date' => 'Data',
|
||||
'Filename' => 'Nom',
|
||||
'Operations' => 'Operacions',
|
||||
'Date_type' => 'd-m-y',
|
||||
'OK' => 'OK',
|
||||
'Cancel' => 'Cancel·lar',
|
||||
'Sorting' => 'Ordenar',
|
||||
'Show_url' => 'Mostrar URL',
|
||||
'Extract' => 'Extreure aquí',
|
||||
'File_info' => 'Informació',
|
||||
'Edit_image' => 'Editar imatge',
|
||||
'Duplicate' => 'Duplicar',
|
||||
'Folders' => 'Folders',
|
||||
'Copy' => 'Copy',
|
||||
'Cut' => 'Cut',
|
||||
'Paste' => 'Paste',
|
||||
'CB' => 'CB', // clipboard
|
||||
'Paste_Here' => 'Paste to this directory',
|
||||
'Paste_Confirm' => 'Are you sure you want to paste to this directory? This will overwrite existing files/folders if encountered any.',
|
||||
'Paste_Failed' => 'Failed to paste file(s)',
|
||||
'Clear_Clipboard' => 'Clear clipboard',
|
||||
'Clear_Clipboard_Confirm' => 'Are you sure you want to clear the clipboard?',
|
||||
'Files_ON_Clipboard' => 'There are files on the clipboard.',
|
||||
'Copy_Cut_Size_Limit' => 'The selected files/folders are too big to %s. Limit: %d MB/operation', // %s = cut or copy
|
||||
'Copy_Cut_Count_Limit' => 'You selected too many files/folders to %s. Limit: %d files/operation', // %s = cut or copy
|
||||
'Copy_Cut_Not_Allowed' => 'You are not allowed to %s files.', // %s(1) = cut or copy, %s(2) = files or folders
|
||||
'Aviary_No_Save' => 'Could not save image',
|
||||
'Zip_No_Extract' => 'Could not extract. File might be corrupt.',
|
||||
'Zip_Invalid' => 'This extension is not supported. Valid: zip, gz, tar.',
|
||||
'Dir_No_Write' => 'The directory you selected is not writable.',
|
||||
'Function_Disabled' => 'The %s function has been disabled by the server.', // %s = cut or copy
|
||||
'File_Permission' => 'File permission',
|
||||
'File_Permission_Not_Allowed' => 'Changing %s permissions are not allowed.', // %s = files or folders
|
||||
'File_Permission_Recursive' => 'Apply recursively?',
|
||||
'File_Permission_Wrong_Mode' => "The supplied permission mode is incorrect.",
|
||||
'User' => 'User',
|
||||
'Group' => 'Group',
|
||||
'Yes' => 'Yes',
|
||||
'No' => 'No',
|
||||
'Lang_Not_Found' => 'Could not find language.',
|
||||
'Lang_Change' => 'Change the language',
|
||||
'File_Not_Found' => 'Could not find the file.',
|
||||
'File_Open_Edit_Not_Allowed' => 'You are not allowed to %s this file.', // %s = open or edit
|
||||
'Edit' => 'Edit',
|
||||
'Edit_File' => "Edit file's content",
|
||||
'File_Save_OK' => "File successfully saved.",
|
||||
'File_Save_Error' => "There was an error while saving the file.",
|
||||
'New_File' => 'New File',
|
||||
'No_Extension' => 'You have to add a file extension.',
|
||||
'Valid_Extensions' => 'Valid extensions: %s', // %s = txt,log etc.
|
||||
'Upload_message' => "Drop file here to upload",
|
||||
|
||||
'SERVER ERROR' => "SERVER ERROR",
|
||||
'forbiden' => "Forbiden",
|
||||
'wrong path' => "Wrong path",
|
||||
'wrong name' => "Wrong name",
|
||||
'wrong extension' => "Wrong extension",
|
||||
'wrong option' => "Wrong option",
|
||||
'wrong data' => "Wrong data",
|
||||
'wrong action' => "Wrong action",
|
||||
'wrong sub-action' => "Wrong sub-actio",
|
||||
'no action passed' => "No action passed",
|
||||
'no path' => "No path",
|
||||
'no file' => "No file",
|
||||
'view type number missing' => "View type number missing",
|
||||
'Not enought Memory' => "Not enought Memory",
|
||||
'max_size_reached' => "Your image folder has reach its maximale size of %d MB.", //%d = max overall size
|
||||
'B' => "B",
|
||||
'KB' => "KB",
|
||||
'MB' => "MB",
|
||||
'GB' => "GB",
|
||||
'TB' => "TB",
|
||||
'total size' => "Total size",
|
||||
);
|
||||
<?php
|
||||
|
||||
return array(
|
||||
'Select' => 'Seleccionar',
|
||||
'Erase' => 'Eliminar',
|
||||
'Open' => 'Obrir',
|
||||
'Confirm_del' => 'Segur que desitges eliminar aquest arxiu?',
|
||||
'All' => 'Tots',
|
||||
'Files' => 'Arxius',
|
||||
'Images' => 'Imatges',
|
||||
'Archives' => 'Fitxers',
|
||||
'Error_Upload' => 'L\'arxiu que intenta pujar excedeix el màxim permès.',
|
||||
'Error_extension' => 'L\'extensió de l\'arxiu no està permesa.',
|
||||
'Upload_file' => 'Pujar',
|
||||
'Filters' => 'Filtres',
|
||||
'Videos' => 'Vídeos',
|
||||
'Music' => 'Musica',
|
||||
'New_Folder' => 'Nova carpeta',
|
||||
'Folder_Created' => 'La carpeta ha estat creada exitosament.',
|
||||
'Existing_Folder' => 'Carpeta existent',
|
||||
'Confirm_Folder_del' => 'Segur que desitges eliminar la carpeta i tots els elements que conté?',
|
||||
'Return_Files_List' => 'Tornar a la llista d\'arxius',
|
||||
'Preview' => 'Vista prèvia',
|
||||
'Download' => 'Descarregar',
|
||||
'Insert_Folder_Name' => 'Nom de la carpeta:',
|
||||
'Root' => 'arrel',
|
||||
'Rename' => 'Renombrar',
|
||||
'Back' => 'enrere',
|
||||
'View' => 'Vista',
|
||||
'View_list' => 'Vista de llista',
|
||||
'View_columns_list' => 'Vista de columnes',
|
||||
'View_boxes' => 'Vista de miniatures',
|
||||
'Toolbar' => 'Barra d\'eines',
|
||||
'Actions' => 'Accions',
|
||||
'Rename_existing_file' => 'L\'arxiu ja existeix',
|
||||
'Rename_existing_folder' => 'La carpeta ja existeix',
|
||||
'Empty_name' => 'El nom es troba buit',
|
||||
'Text_filter' => 'filtre de text',
|
||||
'Swipe_help' => 'Deslize el nom de l\'arxiu/carpeta per mostrar les opcions',
|
||||
'Upload_base' => 'Pujada d\'arxius SIMPLE',
|
||||
'Upload_java' => 'Pujada d\'arxius JAVA (para arxius pesats)',
|
||||
'Upload_url' => 'URL',
|
||||
'Upload_java_help' => "Si el applet no carrega: 1. Assegura't de tenir Java instal·lat; sinó descarrega-ho i instal·la-ho <a href='http://java.com/en/download/'>des d'aquí</a> 2. Assegura't que el teu firewall no estigui bloquejant res.",
|
||||
'Upload_base_help' => "Arrossega i deixa anar els arxius dins d'aquesta àrea o faci clic en ella (per a navegadors moderns) en cas contrari, seleccioni l'arxiu i faci clic en el botó. Quan finalitzi la pujada, faci clic en el botó superior per tornar.",
|
||||
'Type_dir' => 'Carpeta',
|
||||
'Type' => 'Tipus',
|
||||
'Dimension' => 'Dimensions',
|
||||
'Size' => 'Pes',
|
||||
'Date' => 'Data',
|
||||
'Filename' => 'Nom',
|
||||
'Operations' => 'Operacions',
|
||||
'Date_type' => 'd-m-y',
|
||||
'OK' => 'OK',
|
||||
'Cancel' => 'Cancel·lar',
|
||||
'Sorting' => 'Ordenar',
|
||||
'Show_url' => 'Mostrar URL',
|
||||
'Extract' => 'Extreure aquí',
|
||||
'File_info' => 'Informació',
|
||||
'Edit_image' => 'Editar imatge',
|
||||
'Duplicate' => 'Duplicar',
|
||||
'Folders' => 'Folders',
|
||||
'Copy' => 'Copy',
|
||||
'Cut' => 'Cut',
|
||||
'Paste' => 'Paste',
|
||||
'CB' => 'CB', // clipboard
|
||||
'Paste_Here' => 'Paste to this directory',
|
||||
'Paste_Confirm' => 'Are you sure you want to paste to this directory? This will overwrite existing files/folders if encountered any.',
|
||||
'Paste_Failed' => 'Failed to paste file(s)',
|
||||
'Clear_Clipboard' => 'Clear clipboard',
|
||||
'Clear_Clipboard_Confirm' => 'Are you sure you want to clear the clipboard?',
|
||||
'Files_ON_Clipboard' => 'There are files on the clipboard.',
|
||||
'Copy_Cut_Size_Limit' => 'The selected files/folders are too big to %s. Limit: %d MB/operation', // %s = cut or copy
|
||||
'Copy_Cut_Count_Limit' => 'You selected too many files/folders to %s. Limit: %d files/operation', // %s = cut or copy
|
||||
'Copy_Cut_Not_Allowed' => 'You are not allowed to %s files.', // %s(1) = cut or copy, %s(2) = files or folders
|
||||
'Aviary_No_Save' => 'Could not save image',
|
||||
'Zip_No_Extract' => 'Could not extract. File might be corrupt.',
|
||||
'Zip_Invalid' => 'This extension is not supported. Valid: zip, gz, tar.',
|
||||
'Dir_No_Write' => 'The directory you selected is not writable.',
|
||||
'Function_Disabled' => 'The %s function has been disabled by the server.', // %s = cut or copy
|
||||
'File_Permission' => 'File permission',
|
||||
'File_Permission_Not_Allowed' => 'Changing %s permissions are not allowed.', // %s = files or folders
|
||||
'File_Permission_Recursive' => 'Apply recursively?',
|
||||
'File_Permission_Wrong_Mode' => "The supplied permission mode is incorrect.",
|
||||
'User' => 'User',
|
||||
'Group' => 'Group',
|
||||
'Yes' => 'Yes',
|
||||
'No' => 'No',
|
||||
'Lang_Not_Found' => 'Could not find language.',
|
||||
'Lang_Change' => 'Change the language',
|
||||
'File_Not_Found' => 'Could not find the file.',
|
||||
'File_Open_Edit_Not_Allowed' => 'You are not allowed to %s this file.', // %s = open or edit
|
||||
'Edit' => 'Edit',
|
||||
'Edit_File' => "Edit file's content",
|
||||
'File_Save_OK' => "File successfully saved.",
|
||||
'File_Save_Error' => "There was an error while saving the file.",
|
||||
'New_File' => 'New File',
|
||||
'No_Extension' => 'You have to add a file extension.',
|
||||
'Valid_Extensions' => 'Valid extensions: %s', // %s = txt,log etc.
|
||||
'Upload_message' => "Drop file here to upload",
|
||||
|
||||
'SERVER ERROR' => "SERVER ERROR",
|
||||
'forbiden' => "Forbiden",
|
||||
'wrong path' => "Wrong path",
|
||||
'wrong name' => "Wrong name",
|
||||
'wrong extension' => "Wrong extension",
|
||||
'wrong option' => "Wrong option",
|
||||
'wrong data' => "Wrong data",
|
||||
'wrong action' => "Wrong action",
|
||||
'wrong sub-action' => "Wrong sub-actio",
|
||||
'no action passed' => "No action passed",
|
||||
'no path' => "No path",
|
||||
'no file' => "No file",
|
||||
'view type number missing' => "View type number missing",
|
||||
'Not enought Memory' => "Not enought Memory",
|
||||
'max_size_reached' => "Your image folder has reach its maximale size of %d MB.", //%d = max overall size
|
||||
'B' => "B",
|
||||
'KB' => "KB",
|
||||
'MB' => "MB",
|
||||
'GB' => "GB",
|
||||
'TB' => "TB",
|
||||
'total size' => "Total size",
|
||||
);
|
||||
|
||||
@@ -1,123 +1,123 @@
|
||||
<?php
|
||||
|
||||
return array(
|
||||
|
||||
'Select' => 'Vybrat',
|
||||
'Erase' => 'Smazat',
|
||||
'Open' => 'Otevřít',
|
||||
'Confirm_del' => 'Opravdu chcete smazat tento soubor?',
|
||||
'All' => 'Vše',
|
||||
'Files' => 'Soubory',
|
||||
'Images' => 'Obrázky',
|
||||
'Archives' => 'Archivy',
|
||||
'Error_Upload' => 'Nahrávaný soubor je příliš velký.',
|
||||
'Error_extension' => 'Nahrávání souborů s touto příponou není povoleno.',
|
||||
'Upload_file' => 'Nahrát soubor',
|
||||
'Filters' => 'Filtr',
|
||||
'Videos' => 'Videa',
|
||||
'Music' => 'Hudba',
|
||||
'New_Folder' => 'Nová složka',
|
||||
'Folder_Created' => 'Složka vytvořena',
|
||||
'Existing_Folder' => 'Existující složka',
|
||||
'Confirm_Folder_del' => 'Opravdu chcete smazat tuto složku a její obsah?',
|
||||
'Return_Files_List' => 'Zpět k seznamu souborů',
|
||||
'Preview' => 'Náhled',
|
||||
'Download' => 'Stáhnout',
|
||||
'Insert_Folder_Name' => 'Vložte název složky:',
|
||||
'Root' => 'root',
|
||||
'Rename' => 'Přejmenovat',
|
||||
'Back' => 'zpět',
|
||||
'View' => 'Zobrazení',
|
||||
'View_list' => 'Seznam souborů',
|
||||
'View_columns_list' => 'Dvousloupcový seznam souborů',
|
||||
'View_boxes' => 'Dlaždicové zobrazení',
|
||||
'Toolbar' => 'Panel nástrojů',
|
||||
'Actions' => 'Akce',
|
||||
'Rename_existing_file' => 'Tento soubor již existuje',
|
||||
'Rename_existing_folder' => 'Tato složka již existuje',
|
||||
'Empty_name' => 'Zadali jste prázdný název',
|
||||
'Text_filter' => 'textový filtr',
|
||||
'Swipe_help' => 'Pro zobrazení možností klikněte na název souboru/složky.',
|
||||
'Upload_base' => 'Základní nahrávání',
|
||||
'Upload_url' => 'URL',
|
||||
'Upload_java' => 'JAVA upload (pro velké soubory)',
|
||||
'Upload_java_help' => "Pokud se Java Applet nenačítá, ujistěte se, že: 1. je ve vašem počítači nainstalována Java <a href='http://java.com/en/download/'>[odkaz pro stažení]</a> 2. nic není blokováno firewallem",
|
||||
'Upload_base_help' => "Přetáhněte soubor(y) do prostoru výše nebo do něj klikněte myší (moderní prohlížeče) a vyberte soubory. Po dokončení nahrávání klikněte na tlačítko 'Zpět k seznamu souborů'.",
|
||||
'Type_dir' => 'složka',
|
||||
'Type' => 'Typ',
|
||||
'Dimension' => 'Rozměr',
|
||||
'Size' => 'Velikost',
|
||||
'Date' => 'Datum',
|
||||
'Filename' => 'Název',
|
||||
'Operations' => 'Operace',
|
||||
'Date_type' => 'd.m.Y',
|
||||
'OK' => 'OK',
|
||||
'Cancel' => 'Zrušit',
|
||||
'Sorting' => 'Řazení',
|
||||
'Show_url' => 'Zobrazit URL adresu',
|
||||
'Extract' => 'Rozbalit zde',
|
||||
'File_info' => 'Informace o souboru',
|
||||
'Edit_image' => 'Upravit obrázek',
|
||||
'Duplicate' => 'Duplikovat',
|
||||
'Folders' => 'Složky',
|
||||
'Copy' => 'Kopírovat',
|
||||
'Cut' => 'Vyjmout',
|
||||
'Paste' => 'Vložit',
|
||||
'CB' => 'Schránka', // clipboard
|
||||
'Paste_Here' => 'Vložit do této složky',
|
||||
'Paste_Confirm' => 'Skutečně chcete vložit obsah schránky do této složky? Existující soubory či složky budou přepsány.',
|
||||
'Paste_Failed' => 'Vložení selhalo',
|
||||
'Clear_Clipboard' => 'Vymazat schránku',
|
||||
'Clear_Clipboard_Confirm' => 'Skutečně chcete vymazat obsah schránky?',
|
||||
'Files_ON_Clipboard' => 'Ve schránce jsou soubory.',
|
||||
'Copy_Cut_Size_Limit' => 'Zvolené soubory/složky jsou příliš velké pro operaci %s. Limit: %d MB/operace', // %s = cut or copy
|
||||
'Copy_Cut_Count_Limit' => 'Zvolili jste příliš mnoho souborů/složek pro operaci %s. Limit: %d souborů/operace', // %s = cut or copy
|
||||
'Copy_Cut_Not_Allowed' => 'Nemáte oprávnění %s.', // %s(1) = cut or copy, %s(2) = files or folders
|
||||
'Aviary_No_Save' => 'Obrázek nelze uložit',
|
||||
'Zip_No_Extract' => 'Archív nelze rozbalit. Soubor může být poškozen.',
|
||||
'Zip_Invalid' => 'Přípona není podporována. Povolené: zip, gz, tar.',
|
||||
'Dir_No_Write' => 'Vybraná složka není zapisovatelná.',
|
||||
'Function_Disabled' => 'Funkce %s byla zamítnuta serverem.', // %s = cut or copy
|
||||
'File_Permission' => 'Práva souboru',
|
||||
'File_Permission_Not_Allowed' => 'Změna oprávnění pro %s není povolena.', // %s = files or folders
|
||||
'File_Permission_Recursive' => 'Použít rekurzivně?',
|
||||
'File_Permission_Wrong_Mode' => "Zadaný kód oprávnění není platný.",
|
||||
'User' => 'Uživatel',
|
||||
'Group' => 'Skupina',
|
||||
'Yes' => 'Ano',
|
||||
'No' => 'Ne',
|
||||
'Lang_Not_Found' => 'Jazyk nebyl nalezen.',
|
||||
'Lang_Change' => 'Změnit jazyk',
|
||||
'File_Not_Found' => 'Soubor nebyl nalezen.',
|
||||
'File_Open_Edit_Not_Allowed' => 'Nemáte oprávnění %s tento soubor.', // %s = open or edit
|
||||
'Edit' => 'Upravit',
|
||||
'Edit_File' => "Upravit obsah souboru",
|
||||
'File_Save_OK' => "Soubor byl úspěšně uložen.",
|
||||
'File_Save_Error' => "Došlo k chybě při ukládání souboru.",
|
||||
'New_File' => 'Nový soubor',
|
||||
'No_Extension' => 'Musíte doplnit příponu souboru.',
|
||||
'Valid_Extensions' => 'Povolené přípony: %s', // %s = txt,log etc.
|
||||
'Upload_message' => "Pro nahrání přetáhněte soubor(y) sem",
|
||||
|
||||
'SERVER ERROR' => "CHYBA SERVERU",
|
||||
'forbiden' => "Zakázáno",
|
||||
'wrong path' => "Neplatná cesta",
|
||||
'wrong name' => "Neplatná název",
|
||||
'wrong extension' => "Neplatná přípona",
|
||||
'wrong option' => "Neplatná volba",
|
||||
'wrong data' => "Neplatná data",
|
||||
'wrong action' => "Neplatná akce",
|
||||
'wrong sub-action' => "Neplatná podakce",
|
||||
'no action passed' => "Nebyla předána žádná akce",
|
||||
'no path' => "Žádná cesta",
|
||||
'no file' => "Žádný soubor",
|
||||
'view type number missing' => "Chybí číslo typu pro zobrazení",
|
||||
'Not enought Memory' => "Nedostatek paměti",
|
||||
'max_size_reached' => "Vaše složka s obrázky dosáhla maximální velikosti %d MB.", //%d = max overall size
|
||||
'B' => "B",
|
||||
'KB' => "KB",
|
||||
'MB' => "MB",
|
||||
'GB' => "GB",
|
||||
'TB' => "TB",
|
||||
'total size' => "Celková velikost",
|
||||
);
|
||||
<?php
|
||||
|
||||
return array(
|
||||
|
||||
'Select' => 'Vybrat',
|
||||
'Erase' => 'Smazat',
|
||||
'Open' => 'Otevřít',
|
||||
'Confirm_del' => 'Opravdu chcete smazat tento soubor?',
|
||||
'All' => 'Vše',
|
||||
'Files' => 'Soubory',
|
||||
'Images' => 'Obrázky',
|
||||
'Archives' => 'Archivy',
|
||||
'Error_Upload' => 'Nahrávaný soubor je příliš velký.',
|
||||
'Error_extension' => 'Nahrávání souborů s touto příponou není povoleno.',
|
||||
'Upload_file' => 'Nahrát soubor',
|
||||
'Filters' => 'Filtr',
|
||||
'Videos' => 'Videa',
|
||||
'Music' => 'Hudba',
|
||||
'New_Folder' => 'Nová složka',
|
||||
'Folder_Created' => 'Složka vytvořena',
|
||||
'Existing_Folder' => 'Existující složka',
|
||||
'Confirm_Folder_del' => 'Opravdu chcete smazat tuto složku a její obsah?',
|
||||
'Return_Files_List' => 'Zpět k seznamu souborů',
|
||||
'Preview' => 'Náhled',
|
||||
'Download' => 'Stáhnout',
|
||||
'Insert_Folder_Name' => 'Vložte název složky:',
|
||||
'Root' => 'root',
|
||||
'Rename' => 'Přejmenovat',
|
||||
'Back' => 'zpět',
|
||||
'View' => 'Zobrazení',
|
||||
'View_list' => 'Seznam souborů',
|
||||
'View_columns_list' => 'Dvousloupcový seznam souborů',
|
||||
'View_boxes' => 'Dlaždicové zobrazení',
|
||||
'Toolbar' => 'Panel nástrojů',
|
||||
'Actions' => 'Akce',
|
||||
'Rename_existing_file' => 'Tento soubor již existuje',
|
||||
'Rename_existing_folder' => 'Tato složka již existuje',
|
||||
'Empty_name' => 'Zadali jste prázdný název',
|
||||
'Text_filter' => 'textový filtr',
|
||||
'Swipe_help' => 'Pro zobrazení možností klikněte na název souboru/složky.',
|
||||
'Upload_base' => 'Základní nahrávání',
|
||||
'Upload_url' => 'URL',
|
||||
'Upload_java' => 'JAVA upload (pro velké soubory)',
|
||||
'Upload_java_help' => "Pokud se Java Applet nenačítá, ujistěte se, že: 1. je ve vašem počítači nainstalována Java <a href='http://java.com/en/download/'>[odkaz pro stažení]</a> 2. nic není blokováno firewallem",
|
||||
'Upload_base_help' => "Přetáhněte soubor(y) do prostoru výše nebo do něj klikněte myší (moderní prohlížeče) a vyberte soubory. Po dokončení nahrávání klikněte na tlačítko 'Zpět k seznamu souborů'.",
|
||||
'Type_dir' => 'složka',
|
||||
'Type' => 'Typ',
|
||||
'Dimension' => 'Rozměr',
|
||||
'Size' => 'Velikost',
|
||||
'Date' => 'Datum',
|
||||
'Filename' => 'Název',
|
||||
'Operations' => 'Operace',
|
||||
'Date_type' => 'd.m.Y',
|
||||
'OK' => 'OK',
|
||||
'Cancel' => 'Zrušit',
|
||||
'Sorting' => 'Řazení',
|
||||
'Show_url' => 'Zobrazit URL adresu',
|
||||
'Extract' => 'Rozbalit zde',
|
||||
'File_info' => 'Informace o souboru',
|
||||
'Edit_image' => 'Upravit obrázek',
|
||||
'Duplicate' => 'Duplikovat',
|
||||
'Folders' => 'Složky',
|
||||
'Copy' => 'Kopírovat',
|
||||
'Cut' => 'Vyjmout',
|
||||
'Paste' => 'Vložit',
|
||||
'CB' => 'Schránka', // clipboard
|
||||
'Paste_Here' => 'Vložit do této složky',
|
||||
'Paste_Confirm' => 'Skutečně chcete vložit obsah schránky do této složky? Existující soubory či složky budou přepsány.',
|
||||
'Paste_Failed' => 'Vložení selhalo',
|
||||
'Clear_Clipboard' => 'Vymazat schránku',
|
||||
'Clear_Clipboard_Confirm' => 'Skutečně chcete vymazat obsah schránky?',
|
||||
'Files_ON_Clipboard' => 'Ve schránce jsou soubory.',
|
||||
'Copy_Cut_Size_Limit' => 'Zvolené soubory/složky jsou příliš velké pro operaci %s. Limit: %d MB/operace', // %s = cut or copy
|
||||
'Copy_Cut_Count_Limit' => 'Zvolili jste příliš mnoho souborů/složek pro operaci %s. Limit: %d souborů/operace', // %s = cut or copy
|
||||
'Copy_Cut_Not_Allowed' => 'Nemáte oprávnění %s.', // %s(1) = cut or copy, %s(2) = files or folders
|
||||
'Aviary_No_Save' => 'Obrázek nelze uložit',
|
||||
'Zip_No_Extract' => 'Archív nelze rozbalit. Soubor může být poškozen.',
|
||||
'Zip_Invalid' => 'Přípona není podporována. Povolené: zip, gz, tar.',
|
||||
'Dir_No_Write' => 'Vybraná složka není zapisovatelná.',
|
||||
'Function_Disabled' => 'Funkce %s byla zamítnuta serverem.', // %s = cut or copy
|
||||
'File_Permission' => 'Práva souboru',
|
||||
'File_Permission_Not_Allowed' => 'Změna oprávnění pro %s není povolena.', // %s = files or folders
|
||||
'File_Permission_Recursive' => 'Použít rekurzivně?',
|
||||
'File_Permission_Wrong_Mode' => "Zadaný kód oprávnění není platný.",
|
||||
'User' => 'Uživatel',
|
||||
'Group' => 'Skupina',
|
||||
'Yes' => 'Ano',
|
||||
'No' => 'Ne',
|
||||
'Lang_Not_Found' => 'Jazyk nebyl nalezen.',
|
||||
'Lang_Change' => 'Změnit jazyk',
|
||||
'File_Not_Found' => 'Soubor nebyl nalezen.',
|
||||
'File_Open_Edit_Not_Allowed' => 'Nemáte oprávnění %s tento soubor.', // %s = open or edit
|
||||
'Edit' => 'Upravit',
|
||||
'Edit_File' => "Upravit obsah souboru",
|
||||
'File_Save_OK' => "Soubor byl úspěšně uložen.",
|
||||
'File_Save_Error' => "Došlo k chybě při ukládání souboru.",
|
||||
'New_File' => 'Nový soubor',
|
||||
'No_Extension' => 'Musíte doplnit příponu souboru.',
|
||||
'Valid_Extensions' => 'Povolené přípony: %s', // %s = txt,log etc.
|
||||
'Upload_message' => "Pro nahrání přetáhněte soubor(y) sem",
|
||||
|
||||
'SERVER ERROR' => "CHYBA SERVERU",
|
||||
'forbiden' => "Zakázáno",
|
||||
'wrong path' => "Neplatná cesta",
|
||||
'wrong name' => "Neplatná název",
|
||||
'wrong extension' => "Neplatná přípona",
|
||||
'wrong option' => "Neplatná volba",
|
||||
'wrong data' => "Neplatná data",
|
||||
'wrong action' => "Neplatná akce",
|
||||
'wrong sub-action' => "Neplatná podakce",
|
||||
'no action passed' => "Nebyla předána žádná akce",
|
||||
'no path' => "Žádná cesta",
|
||||
'no file' => "Žádný soubor",
|
||||
'view type number missing' => "Chybí číslo typu pro zobrazení",
|
||||
'Not enought Memory' => "Nedostatek paměti",
|
||||
'max_size_reached' => "Vaše složka s obrázky dosáhla maximální velikosti %d MB.", //%d = max overall size
|
||||
'B' => "B",
|
||||
'KB' => "KB",
|
||||
'MB' => "MB",
|
||||
'GB' => "GB",
|
||||
'TB' => "TB",
|
||||
'total size' => "Celková velikost",
|
||||
);
|
||||
|
||||
@@ -1,123 +1,123 @@
|
||||
<?php
|
||||
|
||||
return array(
|
||||
|
||||
'Select' => 'Vælg',
|
||||
'Erase' => 'Slet',
|
||||
'Open' => 'Åbn',
|
||||
'Confirm_del' => 'Er du sikker på at du vil slette denne fil?',
|
||||
'All' => 'Alle',
|
||||
'Files' => 'Filer',
|
||||
'Images' => 'Billeder',
|
||||
'Archives' => 'Mapper',
|
||||
'Error_Upload' => 'Den uploadede fil er større end tilladt (100MB).',
|
||||
'Error_extension' => 'Fil typen er ikke tilladt.',
|
||||
'Upload_file' => 'Upload',
|
||||
'Filters' => 'Filter',
|
||||
'Videos' => 'Videoer',
|
||||
'Music' => 'Musik',
|
||||
'New_Folder' => 'Ny mappe',
|
||||
'Folder_Created' => 'Mappen er oprettet korrekt',
|
||||
'Existing_Folder' => 'Mappen findes allerede',
|
||||
'Confirm_Folder_del' => 'Er du sikker på at du vil slette mappen og alt dens indhold?',
|
||||
'Return_Files_List' => 'Tilbage til fil oversigten',
|
||||
'Preview' => 'Preview',
|
||||
'Download' => 'Download',
|
||||
'Insert_Folder_Name' => 'Indsæt mappe navn:',
|
||||
'Root' => 'rod',
|
||||
'Rename' => 'Omdøb',
|
||||
'Back' => 'tilbage',
|
||||
'View' => 'Se',
|
||||
'View_list' => 'Vis liste',
|
||||
'View_columns_list' => 'Søjle liste',
|
||||
'View_boxes' => 'Box list',
|
||||
'Toolbar' => 'Toolbar',
|
||||
'Actions' => 'Handlinger',
|
||||
'Rename_existing_file' => 'Filen findes allerede',
|
||||
'Rename_existing_folder' => 'Mappen findes allerede',
|
||||
'Empty_name' => 'Indsæt et navn',
|
||||
'Text_filter' => 'tekst filter',
|
||||
'Swipe_help' => 'Swipe over navnet på fil/mappe for at se muligheder',
|
||||
'Upload_base' => 'Basis upload',
|
||||
'Upload_url' => 'URL',
|
||||
'Upload_java' => 'JAVA upload (store filer)',
|
||||
'Upload_java_help' => "Hvis Java Appletten ikke starter, så: 1. sørg for at sikre dig at du har Java installeret, alternativt <a href='http://java.com/en/download/'>[download link]</a> 2. sørg for at sikre dig at der ikke er noget der blokeres af din firewall",
|
||||
'Upload_base_help' => "Drag & Drop filer eller klik i området herover (moderne browsers) og vælg fil(erne). Når upload er færdigt, så tryk på 'Vend tilbage til filoversigt' knappen.",
|
||||
'Type_dir' => 'dir',
|
||||
'Type' => 'Type',
|
||||
'Dimension' => 'Dimensioner',
|
||||
'Size' => 'Størrelse',
|
||||
'Date' => 'Dato',
|
||||
'Filename' => 'Filenavn',
|
||||
'Operations' => 'Operationer',
|
||||
'Date_type' => 'år-måned-dag',
|
||||
'OK' => 'OK',
|
||||
'Cancel' => 'Afbryd',
|
||||
'Sorting' => 'sortering',
|
||||
'Show_url' => 'Vis sti',
|
||||
'Extract' => 'Fold ud her',
|
||||
'File_info' => 'fil info',
|
||||
'Edit_image' => 'Redigér billede',
|
||||
'Duplicate' => 'Kopiér',
|
||||
'Folders' => 'Mapper',
|
||||
'Copy' => 'Kopiér',
|
||||
'Cut' => 'Klip',
|
||||
'Paste' => 'Indsæt',
|
||||
'CB' => 'UKH', // clipboard
|
||||
'Paste_Here' => 'Indsæt i denne mappe',
|
||||
'Paste_Confirm' => 'Er du sikker på at du vil indsætte i denne mappe? Det vil overkrive allerede eksisterende filer/mapper, hvis der findes nogen.',
|
||||
'Paste_Failed' => 'Det lykkedes ikke at indsætte fil(en/erne)',
|
||||
'Clear_Clipboard' => 'Slet indholdet af udklipsholderen',
|
||||
'Clear_Clipboard_Confirm' => 'Er du sikker på at du vil slette indholdet af udklipsholderen?',
|
||||
'Files_ON_Clipboard' => 'Der findes filer i udklipsholderen.',
|
||||
'Copy_Cut_Size_Limit' => 'De valgte filer/mapper er for store til at %s. Max.: %d MB/operation', // %s = cut or copy
|
||||
'Copy_Cut_Count_Limit' => 'Du har valgt for mange filer/mapper til at %s. Max.: %d filer/operation', // %s = cut or copy
|
||||
'Copy_Cut_Not_Allowed' => 'Du har ikke tilladelse til at %s filer. Tal med din administrator.', // %s(1) = cut or copy, %s(2) = files or folders
|
||||
'Aviary_No_Save' => 'Det var ikke muligt at gemme billedet',
|
||||
'Zip_No_Extract' => 'Det var ikke muligt at hente. Filen er muligvis ødelagt.',
|
||||
'Zip_Invalid' => 'Denne filtype understøttes ikke. De mulige filtyper er: zip, gz, tar.',
|
||||
'Dir_No_Write' => 'Der kan ikke skrives til den valgte mappe. Kontakt din administrator.',
|
||||
'Function_Disabled' => 'Denne %s funktion er slået fra af serveren.', // %s = cut or copy
|
||||
'File_Permission' => 'Fil tilladelser',
|
||||
'File_Permission_Not_Allowed' => 'Det er ikke tilladt at ændre tilladelsen for %s.', // %s = files or folders
|
||||
'File_Permission_Recursive' => 'Gøres ved alle mapper og filer (rekursivt)?',
|
||||
'File_Permission_Wrong_Mode' => "Den anvendte indstilling for tilladelse er ikke korrekt.",
|
||||
'User' => 'Bruger',
|
||||
'Group' => 'Gruppe',
|
||||
'Yes' => 'Ja',
|
||||
'No' => 'Nej',
|
||||
'Lang_Not_Found' => 'Cet var ikke muligt at finde sprog-filen.',
|
||||
'Lang_Change' => 'Andet sprog',
|
||||
'File_Not_Found' => 'Det var ikke muligt at finde filen.',
|
||||
'File_Open_Edit_Not_Allowed' => 'Du har ikke tiladelse til at %s denne fil.', // %s = open or edit
|
||||
'Edit' => 'Redigér',
|
||||
'Edit_File' => "Redigér filens indhold",
|
||||
'File_Save_OK' => "Filen blev gemt.",
|
||||
'File_Save_Error' => "Der opstod en fejl i forsøget på at gemme filen.",
|
||||
'New_File' => 'Opret ny fil',
|
||||
'No_Extension' => 'Husk at tilføje filtype.',
|
||||
'Valid_Extensions' => 'Gyldige filtyper er: %s', // %s = txt,log etc.
|
||||
'Upload_message' => "Drop file here to upload",
|
||||
|
||||
'SERVER ERROR' => "SERVER ERROR",
|
||||
'forbiden' => "Forbiden",
|
||||
'wrong path' => "Wrong path",
|
||||
'wrong name' => "Wrong name",
|
||||
'wrong extension' => "Wrong extension",
|
||||
'wrong option' => "Wrong option",
|
||||
'wrong data' => "Wrong data",
|
||||
'wrong action' => "Wrong action",
|
||||
'wrong sub-action' => "Wrong sub-actio",
|
||||
'no action passed' => "No action passed",
|
||||
'no path' => "No path",
|
||||
'no file' => "No file",
|
||||
'view type number missing' => "View type number missing",
|
||||
'Not enought Memory' => "Not enought Memory",
|
||||
'max_size_reached' => "Your image folder has reach its maximale size of %d MB.", //%d = max overall size
|
||||
'B' => "B",
|
||||
'KB' => "KB",
|
||||
'MB' => "MB",
|
||||
'GB' => "GB",
|
||||
'TB' => "TB",
|
||||
'total size' => "Total size",
|
||||
);
|
||||
<?php
|
||||
|
||||
return array(
|
||||
|
||||
'Select' => 'Vælg',
|
||||
'Erase' => 'Slet',
|
||||
'Open' => 'Åbn',
|
||||
'Confirm_del' => 'Er du sikker på at du vil slette denne fil?',
|
||||
'All' => 'Alle',
|
||||
'Files' => 'Filer',
|
||||
'Images' => 'Billeder',
|
||||
'Archives' => 'Mapper',
|
||||
'Error_Upload' => 'Den uploadede fil er større end tilladt (100MB).',
|
||||
'Error_extension' => 'Fil typen er ikke tilladt.',
|
||||
'Upload_file' => 'Upload',
|
||||
'Filters' => 'Filter',
|
||||
'Videos' => 'Videoer',
|
||||
'Music' => 'Musik',
|
||||
'New_Folder' => 'Ny mappe',
|
||||
'Folder_Created' => 'Mappen er oprettet korrekt',
|
||||
'Existing_Folder' => 'Mappen findes allerede',
|
||||
'Confirm_Folder_del' => 'Er du sikker på at du vil slette mappen og alt dens indhold?',
|
||||
'Return_Files_List' => 'Tilbage til fil oversigten',
|
||||
'Preview' => 'Preview',
|
||||
'Download' => 'Download',
|
||||
'Insert_Folder_Name' => 'Indsæt mappe navn:',
|
||||
'Root' => 'rod',
|
||||
'Rename' => 'Omdøb',
|
||||
'Back' => 'tilbage',
|
||||
'View' => 'Se',
|
||||
'View_list' => 'Vis liste',
|
||||
'View_columns_list' => 'Søjle liste',
|
||||
'View_boxes' => 'Box list',
|
||||
'Toolbar' => 'Toolbar',
|
||||
'Actions' => 'Handlinger',
|
||||
'Rename_existing_file' => 'Filen findes allerede',
|
||||
'Rename_existing_folder' => 'Mappen findes allerede',
|
||||
'Empty_name' => 'Indsæt et navn',
|
||||
'Text_filter' => 'tekst filter',
|
||||
'Swipe_help' => 'Swipe over navnet på fil/mappe for at se muligheder',
|
||||
'Upload_base' => 'Basis upload',
|
||||
'Upload_url' => 'URL',
|
||||
'Upload_java' => 'JAVA upload (store filer)',
|
||||
'Upload_java_help' => "Hvis Java Appletten ikke starter, så: 1. sørg for at sikre dig at du har Java installeret, alternativt <a href='http://java.com/en/download/'>[download link]</a> 2. sørg for at sikre dig at der ikke er noget der blokeres af din firewall",
|
||||
'Upload_base_help' => "Drag & Drop filer eller klik i området herover (moderne browsers) og vælg fil(erne). Når upload er færdigt, så tryk på 'Vend tilbage til filoversigt' knappen.",
|
||||
'Type_dir' => 'dir',
|
||||
'Type' => 'Type',
|
||||
'Dimension' => 'Dimensioner',
|
||||
'Size' => 'Størrelse',
|
||||
'Date' => 'Dato',
|
||||
'Filename' => 'Filenavn',
|
||||
'Operations' => 'Operationer',
|
||||
'Date_type' => 'år-måned-dag',
|
||||
'OK' => 'OK',
|
||||
'Cancel' => 'Afbryd',
|
||||
'Sorting' => 'sortering',
|
||||
'Show_url' => 'Vis sti',
|
||||
'Extract' => 'Fold ud her',
|
||||
'File_info' => 'fil info',
|
||||
'Edit_image' => 'Redigér billede',
|
||||
'Duplicate' => 'Kopiér',
|
||||
'Folders' => 'Mapper',
|
||||
'Copy' => 'Kopiér',
|
||||
'Cut' => 'Klip',
|
||||
'Paste' => 'Indsæt',
|
||||
'CB' => 'UKH', // clipboard
|
||||
'Paste_Here' => 'Indsæt i denne mappe',
|
||||
'Paste_Confirm' => 'Er du sikker på at du vil indsætte i denne mappe? Det vil overkrive allerede eksisterende filer/mapper, hvis der findes nogen.',
|
||||
'Paste_Failed' => 'Det lykkedes ikke at indsætte fil(en/erne)',
|
||||
'Clear_Clipboard' => 'Slet indholdet af udklipsholderen',
|
||||
'Clear_Clipboard_Confirm' => 'Er du sikker på at du vil slette indholdet af udklipsholderen?',
|
||||
'Files_ON_Clipboard' => 'Der findes filer i udklipsholderen.',
|
||||
'Copy_Cut_Size_Limit' => 'De valgte filer/mapper er for store til at %s. Max.: %d MB/operation', // %s = cut or copy
|
||||
'Copy_Cut_Count_Limit' => 'Du har valgt for mange filer/mapper til at %s. Max.: %d filer/operation', // %s = cut or copy
|
||||
'Copy_Cut_Not_Allowed' => 'Du har ikke tilladelse til at %s filer. Tal med din administrator.', // %s(1) = cut or copy, %s(2) = files or folders
|
||||
'Aviary_No_Save' => 'Det var ikke muligt at gemme billedet',
|
||||
'Zip_No_Extract' => 'Det var ikke muligt at hente. Filen er muligvis ødelagt.',
|
||||
'Zip_Invalid' => 'Denne filtype understøttes ikke. De mulige filtyper er: zip, gz, tar.',
|
||||
'Dir_No_Write' => 'Der kan ikke skrives til den valgte mappe. Kontakt din administrator.',
|
||||
'Function_Disabled' => 'Denne %s funktion er slået fra af serveren.', // %s = cut or copy
|
||||
'File_Permission' => 'Fil tilladelser',
|
||||
'File_Permission_Not_Allowed' => 'Det er ikke tilladt at ændre tilladelsen for %s.', // %s = files or folders
|
||||
'File_Permission_Recursive' => 'Gøres ved alle mapper og filer (rekursivt)?',
|
||||
'File_Permission_Wrong_Mode' => "Den anvendte indstilling for tilladelse er ikke korrekt.",
|
||||
'User' => 'Bruger',
|
||||
'Group' => 'Gruppe',
|
||||
'Yes' => 'Ja',
|
||||
'No' => 'Nej',
|
||||
'Lang_Not_Found' => 'Cet var ikke muligt at finde sprog-filen.',
|
||||
'Lang_Change' => 'Andet sprog',
|
||||
'File_Not_Found' => 'Det var ikke muligt at finde filen.',
|
||||
'File_Open_Edit_Not_Allowed' => 'Du har ikke tiladelse til at %s denne fil.', // %s = open or edit
|
||||
'Edit' => 'Redigér',
|
||||
'Edit_File' => "Redigér filens indhold",
|
||||
'File_Save_OK' => "Filen blev gemt.",
|
||||
'File_Save_Error' => "Der opstod en fejl i forsøget på at gemme filen.",
|
||||
'New_File' => 'Opret ny fil',
|
||||
'No_Extension' => 'Husk at tilføje filtype.',
|
||||
'Valid_Extensions' => 'Gyldige filtyper er: %s', // %s = txt,log etc.
|
||||
'Upload_message' => "Drop file here to upload",
|
||||
|
||||
'SERVER ERROR' => "SERVER ERROR",
|
||||
'forbiden' => "Forbiden",
|
||||
'wrong path' => "Wrong path",
|
||||
'wrong name' => "Wrong name",
|
||||
'wrong extension' => "Wrong extension",
|
||||
'wrong option' => "Wrong option",
|
||||
'wrong data' => "Wrong data",
|
||||
'wrong action' => "Wrong action",
|
||||
'wrong sub-action' => "Wrong sub-actio",
|
||||
'no action passed' => "No action passed",
|
||||
'no path' => "No path",
|
||||
'no file' => "No file",
|
||||
'view type number missing' => "View type number missing",
|
||||
'Not enought Memory' => "Not enought Memory",
|
||||
'max_size_reached' => "Your image folder has reach its maximale size of %d MB.", //%d = max overall size
|
||||
'B' => "B",
|
||||
'KB' => "KB",
|
||||
'MB' => "MB",
|
||||
'GB' => "GB",
|
||||
'TB' => "TB",
|
||||
'total size' => "Total size",
|
||||
);
|
||||
|
||||
@@ -1,123 +1,123 @@
|
||||
<?php
|
||||
|
||||
return array(
|
||||
|
||||
'Select' => 'Seleccionar',
|
||||
'Erase' => 'Eliminar',
|
||||
'Open' => 'Abrir',
|
||||
'Confirm_del' => '¿Seguro que deseas eliminar este archivo?',
|
||||
'All' => 'Todos',
|
||||
'Files' => 'Archivos',
|
||||
'Images' => 'Imágenes',
|
||||
'Archives' => 'Ficheros',
|
||||
'Error_Upload' => 'El archivo que intenta subir excede el máximo permitido.',
|
||||
'Error_extension' => 'La extensión del archivo no está permitida.',
|
||||
'Upload_file' => 'Subir',
|
||||
'Filters' => 'Filtros',
|
||||
'Videos' => 'Videos',
|
||||
'Music' => 'Música',
|
||||
'New_Folder' => 'Nueva carpeta',
|
||||
'Folder_Created' => 'La carpeta ha sido creada exitosamente.',
|
||||
'Existing_Folder' => 'Carpeta existente',
|
||||
'Confirm_Folder_del' => '¿Seguro que deseas eliminar la carpeta y todos los elementos que contiene?',
|
||||
'Return_Files_List' => 'Regresar a la lista de archivos',
|
||||
'Preview' => 'Vista previa',
|
||||
'Download' => 'Descargar',
|
||||
'Insert_Folder_Name' => 'Nombre de la carpeta:',
|
||||
'Root' => 'raíz',
|
||||
'Rename' => 'Renombrar',
|
||||
'Back' => 'Atrás',
|
||||
'View' => 'Vista',
|
||||
'View_list' => 'Vista de lista',
|
||||
'View_columns_list' => 'Vista de columnas',
|
||||
'View_boxes' => 'Vista de miniaturas',
|
||||
'Toolbar' => 'Barra de herramientas',
|
||||
'Actions' => 'Acciones',
|
||||
'Rename_existing_file' => 'El archivo ya existe',
|
||||
'Rename_existing_folder' => 'La carpeta ya existe',
|
||||
'Empty_name' => 'El nombre se encuentra vacío',
|
||||
'Text_filter' => 'filtro de texto',
|
||||
'Swipe_help' => 'Deslize el nombre del archivo/carpeta para mostrar las opciones',
|
||||
'Upload_base' => 'Subida de archivos SIMPLE',
|
||||
'Upload_url' => 'URL',
|
||||
'Upload_java' => 'Subida de archivos JAVA (para archivos pesados)',
|
||||
'Upload_java_help' => "Si el applet no carga: 1. Asegúrate de tener Java instalado; sino descárgalo e instálalo <a href='http://java.com/en/download/'>desde aquí</a> 2. Asegúrate que tu firewall no esté bloqueando nada.",
|
||||
'Upload_base_help' => "Arrastra y suelta los archivos dentro de esta área o haga clic en ella (para navegadores modernos) de lo contrario, seleccione el archivo y haga clic en el botón. Cuando finalice la subida, haga clic en el botón superior para regresar.",
|
||||
'Type_dir' => 'Carpeta',
|
||||
'Type' => 'Tipo',
|
||||
'Dimension' => 'Dimensiones',
|
||||
'Size' => 'Peso',
|
||||
'Date' => 'Fecha',
|
||||
'Filename' => 'Nombre',
|
||||
'Operations' => 'Operaciones',
|
||||
'Date_type' => 'y-m-d',
|
||||
'OK' => 'OK',
|
||||
'Cancel' => 'Cancelar',
|
||||
'Sorting' => 'Ordenar',
|
||||
'Show_url' => 'Mostrar URL',
|
||||
'Extract' => 'Extraer aquí',
|
||||
'File_info' => 'Información',
|
||||
'Edit_image' => 'Editar imagen',
|
||||
'Duplicate' => 'Duplicar',
|
||||
'Folders' => 'Carpetas',
|
||||
'Copy' => 'Copiar',
|
||||
'Cut' => 'Cortar',
|
||||
'Paste' => 'Pegar',
|
||||
'CB' => 'Portapapeles', // clipboard
|
||||
'Paste_Here' => 'Pegar en esta carpeta',
|
||||
'Paste_Confirm' => '¿Está seguro de pegar el contenido en esta carpeta? Esta acción sobreescribirá los archivos y carpetas existentes.',
|
||||
'Paste_Failed' => 'Error al pegar los archivos',
|
||||
'Clear_Clipboard' => 'Limpiar el portapapeles',
|
||||
'Clear_Clipboard_Confirm' => '¿Está seguro que desea limpiar el portapapeles?',
|
||||
'Files_ON_Clipboard' => 'Existen archivos en el portapapeles',
|
||||
'Copy_Cut_Size_Limit' => 'Los archivos/carpetas seleccionados son demasiado grandes para %s. Límite: %d MB/operación', // %s = cut or copy
|
||||
'Copy_Cut_Count_Limit' => 'Ha seleccionado demasiados archivos/carpetas para %s. Límite: %d archivos/operación', // %s = cut or copy
|
||||
'Copy_Cut_Not_Allowed' => 'No está permitido de %s archivos.', // %s(1) = cut or copy, %s(2) = files or folders
|
||||
'Aviary_No_Save' => 'No fue posible guardar la imagen',
|
||||
'Zip_No_Extract' => 'No fue posible extraer los archivos. Es posible que el archivo esté corrupto.',
|
||||
'Zip_Invalid' => 'Esta extensión no es soportada. Extensiones válidas: zip, gz, tar.',
|
||||
'Dir_No_Write' => 'El directorio que ha seleccionado no tiene permisos de escritura.',
|
||||
'Function_Disabled' => 'La función %s ha sido deshabilitada en el servidor.', // %s = cut or copy
|
||||
'File_Permission' => 'File permission',
|
||||
'File_Permission_Not_Allowed' => 'Changing %s permissions are not allowed.', // %s = files or folders
|
||||
'File_Permission_Recursive' => 'Apply recursively?',
|
||||
'File_Permission_Wrong_Mode' => "The supplied permission mode is incorrect.",
|
||||
'User' => 'User',
|
||||
'Group' => 'Group',
|
||||
'Yes' => 'Yes',
|
||||
'No' => 'No',
|
||||
'Lang_Not_Found' => 'Could not find language.',
|
||||
'Lang_Change' => 'Change the language',
|
||||
'File_Not_Found' => 'Could not find the file.',
|
||||
'File_Open_Edit_Not_Allowed' => 'You are not allowed to %s this file.', // %s = open or edit
|
||||
'Edit' => 'Edit',
|
||||
'Edit_File' => "Edit file's content",
|
||||
'File_Save_OK' => "File successfully saved.",
|
||||
'File_Save_Error' => "There was an error while saving the file.",
|
||||
'New_File' => 'New File',
|
||||
'No_Extension' => 'You have to add a file extension.',
|
||||
'Valid_Extensions' => 'Valid extensions: %s', // %s = txt,log etc.
|
||||
'Upload_message' => "Drop file here to upload",
|
||||
|
||||
'SERVER ERROR' => "SERVER ERROR",
|
||||
'forbiden' => "Forbiden",
|
||||
'wrong path' => "Wrong path",
|
||||
'wrong name' => "Wrong name",
|
||||
'wrong extension' => "Wrong extension",
|
||||
'wrong option' => "Wrong option",
|
||||
'wrong data' => "Wrong data",
|
||||
'wrong action' => "Wrong action",
|
||||
'wrong sub-action' => "Wrong sub-actio",
|
||||
'no action passed' => "No action passed",
|
||||
'no path' => "No path",
|
||||
'no file' => "No file",
|
||||
'view type number missing' => "View type number missing",
|
||||
'Not enought Memory' => "Not enought Memory",
|
||||
'max_size_reached' => "Your image folder has reach its maximale size of %d MB.", //%d = max overall size
|
||||
'B' => "B",
|
||||
'KB' => "KB",
|
||||
'MB' => "MB",
|
||||
'GB' => "GB",
|
||||
'TB' => "TB",
|
||||
'total size' => "Total size",
|
||||
);
|
||||
<?php
|
||||
|
||||
return array(
|
||||
|
||||
'Select' => 'Seleccionar',
|
||||
'Erase' => 'Eliminar',
|
||||
'Open' => 'Abrir',
|
||||
'Confirm_del' => '¿Seguro que deseas eliminar este archivo?',
|
||||
'All' => 'Todos',
|
||||
'Files' => 'Archivos',
|
||||
'Images' => 'Imágenes',
|
||||
'Archives' => 'Ficheros',
|
||||
'Error_Upload' => 'El archivo que intenta subir excede el máximo permitido.',
|
||||
'Error_extension' => 'La extensión del archivo no está permitida.',
|
||||
'Upload_file' => 'Subir',
|
||||
'Filters' => 'Filtros',
|
||||
'Videos' => 'Videos',
|
||||
'Music' => 'Música',
|
||||
'New_Folder' => 'Nueva carpeta',
|
||||
'Folder_Created' => 'La carpeta ha sido creada exitosamente.',
|
||||
'Existing_Folder' => 'Carpeta existente',
|
||||
'Confirm_Folder_del' => '¿Seguro que deseas eliminar la carpeta y todos los elementos que contiene?',
|
||||
'Return_Files_List' => 'Regresar a la lista de archivos',
|
||||
'Preview' => 'Vista previa',
|
||||
'Download' => 'Descargar',
|
||||
'Insert_Folder_Name' => 'Nombre de la carpeta:',
|
||||
'Root' => 'raíz',
|
||||
'Rename' => 'Renombrar',
|
||||
'Back' => 'Atrás',
|
||||
'View' => 'Vista',
|
||||
'View_list' => 'Vista de lista',
|
||||
'View_columns_list' => 'Vista de columnas',
|
||||
'View_boxes' => 'Vista de miniaturas',
|
||||
'Toolbar' => 'Barra de herramientas',
|
||||
'Actions' => 'Acciones',
|
||||
'Rename_existing_file' => 'El archivo ya existe',
|
||||
'Rename_existing_folder' => 'La carpeta ya existe',
|
||||
'Empty_name' => 'El nombre se encuentra vacío',
|
||||
'Text_filter' => 'filtro de texto',
|
||||
'Swipe_help' => 'Deslize el nombre del archivo/carpeta para mostrar las opciones',
|
||||
'Upload_base' => 'Subida de archivos SIMPLE',
|
||||
'Upload_url' => 'URL',
|
||||
'Upload_java' => 'Subida de archivos JAVA (para archivos pesados)',
|
||||
'Upload_java_help' => "Si el applet no carga: 1. Asegúrate de tener Java instalado; sino descárgalo e instálalo <a href='http://java.com/en/download/'>desde aquí</a> 2. Asegúrate que tu firewall no esté bloqueando nada.",
|
||||
'Upload_base_help' => "Arrastra y suelta los archivos dentro de esta área o haga clic en ella (para navegadores modernos) de lo contrario, seleccione el archivo y haga clic en el botón. Cuando finalice la subida, haga clic en el botón superior para regresar.",
|
||||
'Type_dir' => 'Carpeta',
|
||||
'Type' => 'Tipo',
|
||||
'Dimension' => 'Dimensiones',
|
||||
'Size' => 'Peso',
|
||||
'Date' => 'Fecha',
|
||||
'Filename' => 'Nombre',
|
||||
'Operations' => 'Operaciones',
|
||||
'Date_type' => 'y-m-d',
|
||||
'OK' => 'OK',
|
||||
'Cancel' => 'Cancelar',
|
||||
'Sorting' => 'Ordenar',
|
||||
'Show_url' => 'Mostrar URL',
|
||||
'Extract' => 'Extraer aquí',
|
||||
'File_info' => 'Información',
|
||||
'Edit_image' => 'Editar imagen',
|
||||
'Duplicate' => 'Duplicar',
|
||||
'Folders' => 'Carpetas',
|
||||
'Copy' => 'Copiar',
|
||||
'Cut' => 'Cortar',
|
||||
'Paste' => 'Pegar',
|
||||
'CB' => 'Portapapeles', // clipboard
|
||||
'Paste_Here' => 'Pegar en esta carpeta',
|
||||
'Paste_Confirm' => '¿Está seguro de pegar el contenido en esta carpeta? Esta acción sobreescribirá los archivos y carpetas existentes.',
|
||||
'Paste_Failed' => 'Error al pegar los archivos',
|
||||
'Clear_Clipboard' => 'Limpiar el portapapeles',
|
||||
'Clear_Clipboard_Confirm' => '¿Está seguro que desea limpiar el portapapeles?',
|
||||
'Files_ON_Clipboard' => 'Existen archivos en el portapapeles',
|
||||
'Copy_Cut_Size_Limit' => 'Los archivos/carpetas seleccionados son demasiado grandes para %s. Límite: %d MB/operación', // %s = cut or copy
|
||||
'Copy_Cut_Count_Limit' => 'Ha seleccionado demasiados archivos/carpetas para %s. Límite: %d archivos/operación', // %s = cut or copy
|
||||
'Copy_Cut_Not_Allowed' => 'No está permitido de %s archivos.', // %s(1) = cut or copy, %s(2) = files or folders
|
||||
'Aviary_No_Save' => 'No fue posible guardar la imagen',
|
||||
'Zip_No_Extract' => 'No fue posible extraer los archivos. Es posible que el archivo esté corrupto.',
|
||||
'Zip_Invalid' => 'Esta extensión no es soportada. Extensiones válidas: zip, gz, tar.',
|
||||
'Dir_No_Write' => 'El directorio que ha seleccionado no tiene permisos de escritura.',
|
||||
'Function_Disabled' => 'La función %s ha sido deshabilitada en el servidor.', // %s = cut or copy
|
||||
'File_Permission' => 'File permission',
|
||||
'File_Permission_Not_Allowed' => 'Changing %s permissions are not allowed.', // %s = files or folders
|
||||
'File_Permission_Recursive' => 'Apply recursively?',
|
||||
'File_Permission_Wrong_Mode' => "The supplied permission mode is incorrect.",
|
||||
'User' => 'User',
|
||||
'Group' => 'Group',
|
||||
'Yes' => 'Yes',
|
||||
'No' => 'No',
|
||||
'Lang_Not_Found' => 'Could not find language.',
|
||||
'Lang_Change' => 'Change the language',
|
||||
'File_Not_Found' => 'Could not find the file.',
|
||||
'File_Open_Edit_Not_Allowed' => 'You are not allowed to %s this file.', // %s = open or edit
|
||||
'Edit' => 'Edit',
|
||||
'Edit_File' => "Edit file's content",
|
||||
'File_Save_OK' => "File successfully saved.",
|
||||
'File_Save_Error' => "There was an error while saving the file.",
|
||||
'New_File' => 'New File',
|
||||
'No_Extension' => 'You have to add a file extension.',
|
||||
'Valid_Extensions' => 'Valid extensions: %s', // %s = txt,log etc.
|
||||
'Upload_message' => "Drop file here to upload",
|
||||
|
||||
'SERVER ERROR' => "SERVER ERROR",
|
||||
'forbiden' => "Forbiden",
|
||||
'wrong path' => "Wrong path",
|
||||
'wrong name' => "Wrong name",
|
||||
'wrong extension' => "Wrong extension",
|
||||
'wrong option' => "Wrong option",
|
||||
'wrong data' => "Wrong data",
|
||||
'wrong action' => "Wrong action",
|
||||
'wrong sub-action' => "Wrong sub-actio",
|
||||
'no action passed' => "No action passed",
|
||||
'no path' => "No path",
|
||||
'no file' => "No file",
|
||||
'view type number missing' => "View type number missing",
|
||||
'Not enought Memory' => "Not enought Memory",
|
||||
'max_size_reached' => "Your image folder has reach its maximale size of %d MB.", //%d = max overall size
|
||||
'B' => "B",
|
||||
'KB' => "KB",
|
||||
'MB' => "MB",
|
||||
'GB' => "GB",
|
||||
'TB' => "TB",
|
||||
'total size' => "Total size",
|
||||
);
|
||||
|
||||
@@ -1,123 +1,123 @@
|
||||
<?php
|
||||
|
||||
return array(
|
||||
|
||||
'Select' => 'Tallózás',
|
||||
'Erase' => 'Törlés',
|
||||
'Open' => 'Megnyitás',
|
||||
'Confirm_del' => 'Biztos vagy benne, hogy törlöd ezt a fájlt?',
|
||||
'All' => 'Összes',
|
||||
'Files' => 'Fájlok',
|
||||
'Images' => 'Képek',
|
||||
'Archives' => 'Tömörített',
|
||||
'Error_Upload' => 'A kiválasztott fájl mérete túl nagy!',
|
||||
'Error_extension' => 'A megadott kiterjesztésű fájl nem engedélyezett.',
|
||||
'Upload_file' => 'Fájl feltöltése',
|
||||
'Filters' => 'Szűrő',
|
||||
'Videos' => 'Videó',
|
||||
'Music' => 'Zene',
|
||||
'New_Folder' => 'Új mappa',
|
||||
'Folder_Created' => 'Mappa létrehozva',
|
||||
'Existing_Folder' => 'Mappa már létezik',
|
||||
'Confirm_Folder_del' => 'Biztos, hogy törlöd a könyvtárat és annak tartalmát?',
|
||||
'Return_Files_List' => 'Vissza a fájllistához',
|
||||
'Preview' => 'Előnézet',
|
||||
'Download' => 'Letöltés',
|
||||
'Insert_Folder_Name' => 'Mappa neve:',
|
||||
'Root' => 'root',
|
||||
'Rename' => 'Átnevezés',
|
||||
'Back' => 'vissza',
|
||||
'View' => 'Nézet',
|
||||
'View_list' => 'Lista',
|
||||
'View_columns_list' => 'Oszlopok',
|
||||
'View_boxes' => 'Miniatűrök',
|
||||
'Toolbar' => 'Eszközök',
|
||||
'Actions' => 'Műveletek',
|
||||
'Rename_existing_file' => 'A fájl már létezik',
|
||||
'Rename_existing_folder' => 'A mappa már létezik',
|
||||
'Empty_name' => 'A név nincs megadva',
|
||||
'Text_filter' => 'szűrés',
|
||||
'Swipe_help' => 'Húzd az egered a fájl/mappa nevére, hogy lásd az opciókat.',
|
||||
'Upload_base' => 'Alapértelmezett feltöltő',
|
||||
'Upload_url' => 'URL',
|
||||
'Upload_java' => 'JAVA feltöltő (nagyméretű fájlokhoz)',
|
||||
'Upload_java_help' => "Ha a Java Applet nem töltődik be: 1. ellenőrizze, hogy a JAVA telepítve van-e, ha nincs: <a href='http://java.com/en/download/'>[letöltés]</a> 2. ellenőrizze, hogy a tűzfal nem blokkolja-e",
|
||||
'Upload_base_help' => "Fogd meg és húzd az ablakba a fájlt vagy kattints bele és válaszd ki majd nyomd meg a megnyitás gombot (modern böngészők). Amikor a feltöltés befejeződött kattints a fenti gombra a visszatéréshez.",
|
||||
'Type_dir' => 'Mappa',
|
||||
'Type' => 'Típus',
|
||||
'Dimension' => 'Felbontás',
|
||||
'Size' => 'Méret',
|
||||
'Date' => 'Dátum',
|
||||
'Filename' => 'Név',
|
||||
'Operations' => 'Műveletek',
|
||||
'Date_type' => 'y-m-d',
|
||||
'OK' => 'OK',
|
||||
'Cancel' => 'Mégse',
|
||||
'Sorting' => 'rendezés',
|
||||
'Show_url' => 'URL mutatása',
|
||||
'Extract' => 'kibontás ide',
|
||||
'File_info' => 'fájl info',
|
||||
'Edit_image' => 'kép szerkesztése',
|
||||
'Duplicate' => 'Klónozás',
|
||||
'Folders' => 'Mappák',
|
||||
'Copy' => 'Másolás',
|
||||
'Cut' => 'Kivágás',
|
||||
'Paste' => 'Beillesztés',
|
||||
'CB' => 'VL', // clipboard
|
||||
'Paste_Here' => 'Beillesztés ebbe a mappába.',
|
||||
'Paste_Confirm' => 'Biztos vagy benne, hogy ebbe a mappába szeretnéd beilleszteni a fájlokat? A létező fájlok/mappák felül lesznek írva.',
|
||||
'Paste_Failed' => 'A beillesztés sikertelen!',
|
||||
'Clear_Clipboard' => 'Vágólap törlése',
|
||||
'Clear_Clipboard_Confirm' => 'Biztos törlöd a vágólap tartalmát?',
|
||||
'Files_ON_Clipboard' => 'Fájlok találhatóak a vágólapon.',
|
||||
'Copy_Cut_Size_Limit' => 'A kiválasztott fájlok/mappák túl nagyok a %shoz. Limit: %d MB/művelet', // %s = cut or copy
|
||||
'Copy_Cut_Count_Limit' => 'Túl sok fájlt választottál ki a %shoz. Limit: %d fájl/művelet', // %s = cut or copy
|
||||
'Copy_Cut_Not_Allowed' => 'A %s nem engedélyezett.', // %s(1) = cut or copy, %s(2) = files or folders
|
||||
'Aviary_No_Save' => 'A kép mentése sikertelen.',
|
||||
'Zip_No_Extract' => 'Kicsomagolás sikertelen. Lehet, hogy korrupt a fájl.',
|
||||
'Zip_Invalid' => 'Ez a kiterjesztés nem támogatott. Támogatott: zip, gz, tar.',
|
||||
'Dir_No_Write' => 'A kiválasztott mappa nem írható.',
|
||||
'Function_Disabled' => 'A %s funkciót letiltotta a szerver.', // %s = cut or copy
|
||||
'File_Permission' => 'Engedélyek',
|
||||
'File_Permission_Not_Allowed' => 'A %s jogainak a megváltoztatása nem engedélyezett.', // %s = files or folders
|
||||
'File_Permission_Recursive' => 'Rekurzív beállítás az almappákra?',
|
||||
'File_Permission_Wrong_Mode' => "A beírt engedély nem megfelelő.",
|
||||
'User' => 'Felhasználó',
|
||||
'Group' => 'Csoport',
|
||||
'Yes' => 'Igen',
|
||||
'No' => 'Nem',
|
||||
'Lang_Not_Found' => 'A nyelv nem található.',
|
||||
'Lang_Change' => 'Nyelv megváltoztatása',
|
||||
'File_Not_Found' => 'A fájl nem található.',
|
||||
'File_Open_Edit_Not_Allowed' => 'Nincs jogod %s a fájlt.', // %s = open or edit
|
||||
'Edit' => 'Szerkesztés',
|
||||
'Edit_File' => "Fájl szerkesztése",
|
||||
'File_Save_OK' => "Fájl sikeresen mentve.",
|
||||
'File_Save_Error' => "Hiba történt a fájl mentése közben.",
|
||||
'New_File' => 'Új fájl',
|
||||
'No_Extension' => 'Meg kell adnod a fájl kiterjesztését.',
|
||||
'Valid_Extensions' => 'Elfogadott kiterjesztések: %s', // %s = txt,log etc.
|
||||
'Upload_message' => "Drop file here to upload",
|
||||
|
||||
'SERVER ERROR' => "SERVER ERROR",
|
||||
'forbiden' => "Forbiden",
|
||||
'wrong path' => "Wrong path",
|
||||
'wrong name' => "Wrong name",
|
||||
'wrong extension' => "Wrong extension",
|
||||
'wrong option' => "Wrong option",
|
||||
'wrong data' => "Wrong data",
|
||||
'wrong action' => "Wrong action",
|
||||
'wrong sub-action' => "Wrong sub-actio",
|
||||
'no action passed' => "No action passed",
|
||||
'no path' => "No path",
|
||||
'no file' => "No file",
|
||||
'view type number missing' => "View type number missing",
|
||||
'Not enought Memory' => "Not enought Memory",
|
||||
'max_size_reached' => "Your image folder has reach its maximale size of %d MB.", //%d = max overall size
|
||||
'B' => "B",
|
||||
'KB' => "KB",
|
||||
'MB' => "MB",
|
||||
'GB' => "GB",
|
||||
'TB' => "TB",
|
||||
'total size' => "Total size",
|
||||
);
|
||||
<?php
|
||||
|
||||
return array(
|
||||
|
||||
'Select' => 'Tallózás',
|
||||
'Erase' => 'Törlés',
|
||||
'Open' => 'Megnyitás',
|
||||
'Confirm_del' => 'Biztos vagy benne, hogy törlöd ezt a fájlt?',
|
||||
'All' => 'Összes',
|
||||
'Files' => 'Fájlok',
|
||||
'Images' => 'Képek',
|
||||
'Archives' => 'Tömörített',
|
||||
'Error_Upload' => 'A kiválasztott fájl mérete túl nagy!',
|
||||
'Error_extension' => 'A megadott kiterjesztésű fájl nem engedélyezett.',
|
||||
'Upload_file' => 'Fájl feltöltése',
|
||||
'Filters' => 'Szűrő',
|
||||
'Videos' => 'Videó',
|
||||
'Music' => 'Zene',
|
||||
'New_Folder' => 'Új mappa',
|
||||
'Folder_Created' => 'Mappa létrehozva',
|
||||
'Existing_Folder' => 'Mappa már létezik',
|
||||
'Confirm_Folder_del' => 'Biztos, hogy törlöd a könyvtárat és annak tartalmát?',
|
||||
'Return_Files_List' => 'Vissza a fájllistához',
|
||||
'Preview' => 'Előnézet',
|
||||
'Download' => 'Letöltés',
|
||||
'Insert_Folder_Name' => 'Mappa neve:',
|
||||
'Root' => 'root',
|
||||
'Rename' => 'Átnevezés',
|
||||
'Back' => 'vissza',
|
||||
'View' => 'Nézet',
|
||||
'View_list' => 'Lista',
|
||||
'View_columns_list' => 'Oszlopok',
|
||||
'View_boxes' => 'Miniatűrök',
|
||||
'Toolbar' => 'Eszközök',
|
||||
'Actions' => 'Műveletek',
|
||||
'Rename_existing_file' => 'A fájl már létezik',
|
||||
'Rename_existing_folder' => 'A mappa már létezik',
|
||||
'Empty_name' => 'A név nincs megadva',
|
||||
'Text_filter' => 'szűrés',
|
||||
'Swipe_help' => 'Húzd az egered a fájl/mappa nevére, hogy lásd az opciókat.',
|
||||
'Upload_base' => 'Alapértelmezett feltöltő',
|
||||
'Upload_url' => 'URL',
|
||||
'Upload_java' => 'JAVA feltöltő (nagyméretű fájlokhoz)',
|
||||
'Upload_java_help' => "Ha a Java Applet nem töltődik be: 1. ellenőrizze, hogy a JAVA telepítve van-e, ha nincs: <a href='http://java.com/en/download/'>[letöltés]</a> 2. ellenőrizze, hogy a tűzfal nem blokkolja-e",
|
||||
'Upload_base_help' => "Fogd meg és húzd az ablakba a fájlt vagy kattints bele és válaszd ki majd nyomd meg a megnyitás gombot (modern böngészők). Amikor a feltöltés befejeződött kattints a fenti gombra a visszatéréshez.",
|
||||
'Type_dir' => 'Mappa',
|
||||
'Type' => 'Típus',
|
||||
'Dimension' => 'Felbontás',
|
||||
'Size' => 'Méret',
|
||||
'Date' => 'Dátum',
|
||||
'Filename' => 'Név',
|
||||
'Operations' => 'Műveletek',
|
||||
'Date_type' => 'y-m-d',
|
||||
'OK' => 'OK',
|
||||
'Cancel' => 'Mégse',
|
||||
'Sorting' => 'rendezés',
|
||||
'Show_url' => 'URL mutatása',
|
||||
'Extract' => 'kibontás ide',
|
||||
'File_info' => 'fájl info',
|
||||
'Edit_image' => 'kép szerkesztése',
|
||||
'Duplicate' => 'Klónozás',
|
||||
'Folders' => 'Mappák',
|
||||
'Copy' => 'Másolás',
|
||||
'Cut' => 'Kivágás',
|
||||
'Paste' => 'Beillesztés',
|
||||
'CB' => 'VL', // clipboard
|
||||
'Paste_Here' => 'Beillesztés ebbe a mappába.',
|
||||
'Paste_Confirm' => 'Biztos vagy benne, hogy ebbe a mappába szeretnéd beilleszteni a fájlokat? A létező fájlok/mappák felül lesznek írva.',
|
||||
'Paste_Failed' => 'A beillesztés sikertelen!',
|
||||
'Clear_Clipboard' => 'Vágólap törlése',
|
||||
'Clear_Clipboard_Confirm' => 'Biztos törlöd a vágólap tartalmát?',
|
||||
'Files_ON_Clipboard' => 'Fájlok találhatóak a vágólapon.',
|
||||
'Copy_Cut_Size_Limit' => 'A kiválasztott fájlok/mappák túl nagyok a %shoz. Limit: %d MB/művelet', // %s = cut or copy
|
||||
'Copy_Cut_Count_Limit' => 'Túl sok fájlt választottál ki a %shoz. Limit: %d fájl/művelet', // %s = cut or copy
|
||||
'Copy_Cut_Not_Allowed' => 'A %s nem engedélyezett.', // %s(1) = cut or copy, %s(2) = files or folders
|
||||
'Aviary_No_Save' => 'A kép mentése sikertelen.',
|
||||
'Zip_No_Extract' => 'Kicsomagolás sikertelen. Lehet, hogy korrupt a fájl.',
|
||||
'Zip_Invalid' => 'Ez a kiterjesztés nem támogatott. Támogatott: zip, gz, tar.',
|
||||
'Dir_No_Write' => 'A kiválasztott mappa nem írható.',
|
||||
'Function_Disabled' => 'A %s funkciót letiltotta a szerver.', // %s = cut or copy
|
||||
'File_Permission' => 'Engedélyek',
|
||||
'File_Permission_Not_Allowed' => 'A %s jogainak a megváltoztatása nem engedélyezett.', // %s = files or folders
|
||||
'File_Permission_Recursive' => 'Rekurzív beállítás az almappákra?',
|
||||
'File_Permission_Wrong_Mode' => "A beírt engedély nem megfelelő.",
|
||||
'User' => 'Felhasználó',
|
||||
'Group' => 'Csoport',
|
||||
'Yes' => 'Igen',
|
||||
'No' => 'Nem',
|
||||
'Lang_Not_Found' => 'A nyelv nem található.',
|
||||
'Lang_Change' => 'Nyelv megváltoztatása',
|
||||
'File_Not_Found' => 'A fájl nem található.',
|
||||
'File_Open_Edit_Not_Allowed' => 'Nincs jogod %s a fájlt.', // %s = open or edit
|
||||
'Edit' => 'Szerkesztés',
|
||||
'Edit_File' => "Fájl szerkesztése",
|
||||
'File_Save_OK' => "Fájl sikeresen mentve.",
|
||||
'File_Save_Error' => "Hiba történt a fájl mentése közben.",
|
||||
'New_File' => 'Új fájl',
|
||||
'No_Extension' => 'Meg kell adnod a fájl kiterjesztését.',
|
||||
'Valid_Extensions' => 'Elfogadott kiterjesztések: %s', // %s = txt,log etc.
|
||||
'Upload_message' => "Drop file here to upload",
|
||||
|
||||
'SERVER ERROR' => "SERVER ERROR",
|
||||
'forbiden' => "Forbiden",
|
||||
'wrong path' => "Wrong path",
|
||||
'wrong name' => "Wrong name",
|
||||
'wrong extension' => "Wrong extension",
|
||||
'wrong option' => "Wrong option",
|
||||
'wrong data' => "Wrong data",
|
||||
'wrong action' => "Wrong action",
|
||||
'wrong sub-action' => "Wrong sub-actio",
|
||||
'no action passed' => "No action passed",
|
||||
'no path' => "No path",
|
||||
'no file' => "No file",
|
||||
'view type number missing' => "View type number missing",
|
||||
'Not enought Memory' => "Not enought Memory",
|
||||
'max_size_reached' => "Your image folder has reach its maximale size of %d MB.", //%d = max overall size
|
||||
'B' => "B",
|
||||
'KB' => "KB",
|
||||
'MB' => "MB",
|
||||
'GB' => "GB",
|
||||
'TB' => "TB",
|
||||
'total size' => "Total size",
|
||||
);
|
||||
|
||||
@@ -1,123 +1,123 @@
|
||||
<?php
|
||||
|
||||
return array(
|
||||
|
||||
'Select' => 'Сонгох',
|
||||
'Erase' => 'Устгах',
|
||||
'Open' => 'Нээх',
|
||||
'Confirm_del' => 'Та энэ файлыг устгахдаа итгэлтэй байна уу?',
|
||||
'All' => 'Бүгд',
|
||||
'Files' => 'Файлууд',
|
||||
'Images' => 'Зурагнууд',
|
||||
'Archives' => 'Архивлагдсан файлууд',
|
||||
'Error_Upload' => 'Хуулсан файл зөвшөөрөгдөх хэмжээнээс их байна.',
|
||||
'Error_extension' => 'Файлын өргөтгөх зөвшөөрөгдөөгүй.',
|
||||
'Upload_file' => 'Хуулах',
|
||||
'Filters' => 'Шүүлтүүрүүд',
|
||||
'Videos' => 'Бичлэгнүүд',
|
||||
'Music' => 'Дуунууд',
|
||||
'New_Folder' => 'Шинэ хавтас',
|
||||
'Folder_Created' => 'Хавтас амжилттай үүслээ',
|
||||
'Existing_Folder' => 'Давхардсан хавтас',
|
||||
'Confirm_Folder_del' => 'Хавтас болон доторх бүх файлуудыг устгахдаа итгэлтэй байна уу?',
|
||||
'Return_Files_List' => 'Файлын жагсаалт руу буцах',
|
||||
'Preview' => 'Урьдчилан харах',
|
||||
'Download' => 'Татаж авах',
|
||||
'Insert_Folder_Name' => 'Хавтасны нэрийг оруулна уу:',
|
||||
'Root' => 'root',
|
||||
'Rename' => 'Нэрлэх',
|
||||
'Back' => 'буцах',
|
||||
'View' => 'Үзэх',
|
||||
'View_list' => 'Жагсаалтаар харах',
|
||||
'View_columns_list' => 'Баганаар харах',
|
||||
'View_boxes' => 'Хайрцгаар харах',
|
||||
'Toolbar' => 'Товчилсон товчнууд',
|
||||
'Actions' => 'Үйлдэл',
|
||||
'Rename_existing_file' => 'Файл аль хэдийнэ үүссэн байна',
|
||||
'Rename_existing_folder' => 'Хавтас аль хэдийнэ үүсэн байна',
|
||||
'Empty_name' => 'Нэр хоосон байна',
|
||||
'Text_filter' => 'текстэн шүүлтүүр',
|
||||
'Swipe_help' => 'Файл/Хавтасны нэрийг товшоод тохиргоог харна уу',
|
||||
'Upload_base' => 'Энгийнээр хуулах',
|
||||
'Upload_url' => 'URL',
|
||||
'Upload_java' => 'JAVA-гаар хуулах (их хэмжээтэй файл)',
|
||||
'Upload_java_help' => "Хэрэв Java Applet уншихгүй бол 1. Java суусан эсэхийг шалгана уу, үгүй бол <a href='http://java.com/en/download/'>[эндээс татаж авна уу]</a> 2. Галт хана дээр хаалт хийсэн эсэхийг шалгана уу",
|
||||
'Upload_base_help' => "Хуулах хэсэг дээр файлыг зөөж тавих болон дээр нь дарж хуулж болно (орчин үеийн хөтөч дээр). Хуулж дууссан бол 'Файлын жагсаалт руу буцах' товчин дээр дарна уу.",
|
||||
'Type_dir' => 'dir',
|
||||
'Type' => 'Төрөл',
|
||||
'Dimension' => 'Харьцаа',
|
||||
'Size' => 'Хэмжээ',
|
||||
'Date' => 'Огноо',
|
||||
'Filename' => 'Файлын нэр',
|
||||
'Operations' => 'Үйлдэлүүд',
|
||||
'Date_type' => 'y-m-d',
|
||||
'OK' => 'ОК',
|
||||
'Cancel' => 'Буцах',
|
||||
'Sorting' => 'эрэмбэлэх',
|
||||
'Show_url' => 'URL-г харах',
|
||||
'Extract' => 'энд задла',
|
||||
'File_info' => 'файлын мэдээлэл',
|
||||
'Edit_image' => 'зураг засварлах',
|
||||
'Duplicate' => 'Давхардуулах',
|
||||
'Folders' => 'Folders',
|
||||
'Copy' => 'Copy',
|
||||
'Cut' => 'Cut',
|
||||
'Paste' => 'Paste',
|
||||
'CB' => 'CB', // clipboard
|
||||
'Paste_Here' => 'Paste to this directory',
|
||||
'Paste_Confirm' => 'Are you sure you want to paste to this directory? This will overwrite existing files/folders if encountered any.',
|
||||
'Paste_Failed' => 'Failed to paste file(s)',
|
||||
'Clear_Clipboard' => 'Clear clipboard',
|
||||
'Clear_Clipboard_Confirm' => 'Are you sure you want to clear the clipboard?',
|
||||
'Files_ON_Clipboard' => 'There are files on the clipboard.',
|
||||
'Copy_Cut_Size_Limit' => 'The selected files/folders are too big to %s. Limit: %d MB/operation', // %s = cut or copy
|
||||
'Copy_Cut_Count_Limit' => 'You selected too many files/folders to %s. Limit: %d files/operation', // %s = cut or copy
|
||||
'Copy_Cut_Not_Allowed' => 'You are not allowed to %s files.', // %s(1) = cut or copy, %s(2) = files or folders
|
||||
'Aviary_No_Save' => 'Could not save image',
|
||||
'Zip_No_Extract' => 'Could not extract. File might be corrupt.',
|
||||
'Zip_Invalid' => 'This extension is not supported. Valid: zip, gz, tar.',
|
||||
'Dir_No_Write' => 'The directory you selected is not writable.',
|
||||
'Function_Disabled' => 'The %s function has been disabled by the server.', // %s = cut or copy
|
||||
'File_Permission' => 'File permission',
|
||||
'File_Permission_Not_Allowed' => 'Changing %s permissions are not allowed.', // %s = files or folders
|
||||
'File_Permission_Recursive' => 'Apply recursively?',
|
||||
'File_Permission_Wrong_Mode' => "The supplied permission mode is incorrect.",
|
||||
'User' => 'User',
|
||||
'Group' => 'Group',
|
||||
'Yes' => 'Yes',
|
||||
'No' => 'No',
|
||||
'Lang_Not_Found' => 'Could not find language.',
|
||||
'Lang_Change' => 'Change the language',
|
||||
'File_Not_Found' => 'Could not find the file.',
|
||||
'File_Open_Edit_Not_Allowed' => 'You are not allowed to %s this file.', // %s = open or edit
|
||||
'Edit' => 'Edit',
|
||||
'Edit_File' => "Edit file's content",
|
||||
'File_Save_OK' => "File successfully saved.",
|
||||
'File_Save_Error' => "There was an error while saving the file.",
|
||||
'New_File' => 'New File',
|
||||
'No_Extension' => 'You have to add a file extension.',
|
||||
'Valid_Extensions' => 'Valid extensions: %s', // %s = txt,log etc.
|
||||
'Upload_message' => "Drop file here to upload",
|
||||
|
||||
'SERVER ERROR' => "SERVER ERROR",
|
||||
'forbiden' => "Forbiden",
|
||||
'wrong path' => "Wrong path",
|
||||
'wrong name' => "Wrong name",
|
||||
'wrong extension' => "Wrong extension",
|
||||
'wrong option' => "Wrong option",
|
||||
'wrong data' => "Wrong data",
|
||||
'wrong action' => "Wrong action",
|
||||
'wrong sub-action' => "Wrong sub-actio",
|
||||
'no action passed' => "No action passed",
|
||||
'no path' => "No path",
|
||||
'no file' => "No file",
|
||||
'view type number missing' => "View type number missing",
|
||||
'Not enought Memory' => "Not enought Memory",
|
||||
'max_size_reached' => "Your image folder has reach its maximale size of %d MB.", //%d = max overall size
|
||||
'B' => "B",
|
||||
'KB' => "KB",
|
||||
'MB' => "MB",
|
||||
'GB' => "GB",
|
||||
'TB' => "TB",
|
||||
'total size' => "Total size",
|
||||
);
|
||||
<?php
|
||||
|
||||
return array(
|
||||
|
||||
'Select' => 'Сонгох',
|
||||
'Erase' => 'Устгах',
|
||||
'Open' => 'Нээх',
|
||||
'Confirm_del' => 'Та энэ файлыг устгахдаа итгэлтэй байна уу?',
|
||||
'All' => 'Бүгд',
|
||||
'Files' => 'Файлууд',
|
||||
'Images' => 'Зурагнууд',
|
||||
'Archives' => 'Архивлагдсан файлууд',
|
||||
'Error_Upload' => 'Хуулсан файл зөвшөөрөгдөх хэмжээнээс их байна.',
|
||||
'Error_extension' => 'Файлын өргөтгөх зөвшөөрөгдөөгүй.',
|
||||
'Upload_file' => 'Хуулах',
|
||||
'Filters' => 'Шүүлтүүрүүд',
|
||||
'Videos' => 'Бичлэгнүүд',
|
||||
'Music' => 'Дуунууд',
|
||||
'New_Folder' => 'Шинэ хавтас',
|
||||
'Folder_Created' => 'Хавтас амжилттай үүслээ',
|
||||
'Existing_Folder' => 'Давхардсан хавтас',
|
||||
'Confirm_Folder_del' => 'Хавтас болон доторх бүх файлуудыг устгахдаа итгэлтэй байна уу?',
|
||||
'Return_Files_List' => 'Файлын жагсаалт руу буцах',
|
||||
'Preview' => 'Урьдчилан харах',
|
||||
'Download' => 'Татаж авах',
|
||||
'Insert_Folder_Name' => 'Хавтасны нэрийг оруулна уу:',
|
||||
'Root' => 'root',
|
||||
'Rename' => 'Нэрлэх',
|
||||
'Back' => 'буцах',
|
||||
'View' => 'Үзэх',
|
||||
'View_list' => 'Жагсаалтаар харах',
|
||||
'View_columns_list' => 'Баганаар харах',
|
||||
'View_boxes' => 'Хайрцгаар харах',
|
||||
'Toolbar' => 'Товчилсон товчнууд',
|
||||
'Actions' => 'Үйлдэл',
|
||||
'Rename_existing_file' => 'Файл аль хэдийнэ үүссэн байна',
|
||||
'Rename_existing_folder' => 'Хавтас аль хэдийнэ үүсэн байна',
|
||||
'Empty_name' => 'Нэр хоосон байна',
|
||||
'Text_filter' => 'текстэн шүүлтүүр',
|
||||
'Swipe_help' => 'Файл/Хавтасны нэрийг товшоод тохиргоог харна уу',
|
||||
'Upload_base' => 'Энгийнээр хуулах',
|
||||
'Upload_url' => 'URL',
|
||||
'Upload_java' => 'JAVA-гаар хуулах (их хэмжээтэй файл)',
|
||||
'Upload_java_help' => "Хэрэв Java Applet уншихгүй бол 1. Java суусан эсэхийг шалгана уу, үгүй бол <a href='http://java.com/en/download/'>[эндээс татаж авна уу]</a> 2. Галт хана дээр хаалт хийсэн эсэхийг шалгана уу",
|
||||
'Upload_base_help' => "Хуулах хэсэг дээр файлыг зөөж тавих болон дээр нь дарж хуулж болно (орчин үеийн хөтөч дээр). Хуулж дууссан бол 'Файлын жагсаалт руу буцах' товчин дээр дарна уу.",
|
||||
'Type_dir' => 'dir',
|
||||
'Type' => 'Төрөл',
|
||||
'Dimension' => 'Харьцаа',
|
||||
'Size' => 'Хэмжээ',
|
||||
'Date' => 'Огноо',
|
||||
'Filename' => 'Файлын нэр',
|
||||
'Operations' => 'Үйлдэлүүд',
|
||||
'Date_type' => 'y-m-d',
|
||||
'OK' => 'ОК',
|
||||
'Cancel' => 'Буцах',
|
||||
'Sorting' => 'эрэмбэлэх',
|
||||
'Show_url' => 'URL-г харах',
|
||||
'Extract' => 'энд задла',
|
||||
'File_info' => 'файлын мэдээлэл',
|
||||
'Edit_image' => 'зураг засварлах',
|
||||
'Duplicate' => 'Давхардуулах',
|
||||
'Folders' => 'Folders',
|
||||
'Copy' => 'Copy',
|
||||
'Cut' => 'Cut',
|
||||
'Paste' => 'Paste',
|
||||
'CB' => 'CB', // clipboard
|
||||
'Paste_Here' => 'Paste to this directory',
|
||||
'Paste_Confirm' => 'Are you sure you want to paste to this directory? This will overwrite existing files/folders if encountered any.',
|
||||
'Paste_Failed' => 'Failed to paste file(s)',
|
||||
'Clear_Clipboard' => 'Clear clipboard',
|
||||
'Clear_Clipboard_Confirm' => 'Are you sure you want to clear the clipboard?',
|
||||
'Files_ON_Clipboard' => 'There are files on the clipboard.',
|
||||
'Copy_Cut_Size_Limit' => 'The selected files/folders are too big to %s. Limit: %d MB/operation', // %s = cut or copy
|
||||
'Copy_Cut_Count_Limit' => 'You selected too many files/folders to %s. Limit: %d files/operation', // %s = cut or copy
|
||||
'Copy_Cut_Not_Allowed' => 'You are not allowed to %s files.', // %s(1) = cut or copy, %s(2) = files or folders
|
||||
'Aviary_No_Save' => 'Could not save image',
|
||||
'Zip_No_Extract' => 'Could not extract. File might be corrupt.',
|
||||
'Zip_Invalid' => 'This extension is not supported. Valid: zip, gz, tar.',
|
||||
'Dir_No_Write' => 'The directory you selected is not writable.',
|
||||
'Function_Disabled' => 'The %s function has been disabled by the server.', // %s = cut or copy
|
||||
'File_Permission' => 'File permission',
|
||||
'File_Permission_Not_Allowed' => 'Changing %s permissions are not allowed.', // %s = files or folders
|
||||
'File_Permission_Recursive' => 'Apply recursively?',
|
||||
'File_Permission_Wrong_Mode' => "The supplied permission mode is incorrect.",
|
||||
'User' => 'User',
|
||||
'Group' => 'Group',
|
||||
'Yes' => 'Yes',
|
||||
'No' => 'No',
|
||||
'Lang_Not_Found' => 'Could not find language.',
|
||||
'Lang_Change' => 'Change the language',
|
||||
'File_Not_Found' => 'Could not find the file.',
|
||||
'File_Open_Edit_Not_Allowed' => 'You are not allowed to %s this file.', // %s = open or edit
|
||||
'Edit' => 'Edit',
|
||||
'Edit_File' => "Edit file's content",
|
||||
'File_Save_OK' => "File successfully saved.",
|
||||
'File_Save_Error' => "There was an error while saving the file.",
|
||||
'New_File' => 'New File',
|
||||
'No_Extension' => 'You have to add a file extension.',
|
||||
'Valid_Extensions' => 'Valid extensions: %s', // %s = txt,log etc.
|
||||
'Upload_message' => "Drop file here to upload",
|
||||
|
||||
'SERVER ERROR' => "SERVER ERROR",
|
||||
'forbiden' => "Forbiden",
|
||||
'wrong path' => "Wrong path",
|
||||
'wrong name' => "Wrong name",
|
||||
'wrong extension' => "Wrong extension",
|
||||
'wrong option' => "Wrong option",
|
||||
'wrong data' => "Wrong data",
|
||||
'wrong action' => "Wrong action",
|
||||
'wrong sub-action' => "Wrong sub-actio",
|
||||
'no action passed' => "No action passed",
|
||||
'no path' => "No path",
|
||||
'no file' => "No file",
|
||||
'view type number missing' => "View type number missing",
|
||||
'Not enought Memory' => "Not enought Memory",
|
||||
'max_size_reached' => "Your image folder has reach its maximale size of %d MB.", //%d = max overall size
|
||||
'B' => "B",
|
||||
'KB' => "KB",
|
||||
'MB' => "MB",
|
||||
'GB' => "GB",
|
||||
'TB' => "TB",
|
||||
'total size' => "Total size",
|
||||
);
|
||||
|
||||
@@ -1,123 +1,123 @@
|
||||
<?php
|
||||
|
||||
return array(
|
||||
|
||||
'Select' => 'Selecionar',
|
||||
'Erase' => 'Apagar',
|
||||
'Open' => 'Abrir',
|
||||
'Confirm_del' => 'Tem certeza que quer deletar este arquivo?',
|
||||
'All' => 'Todos',
|
||||
'Files' => 'Arquivos',
|
||||
'Images' => 'Imagens',
|
||||
'Archives' => 'Compactados',
|
||||
'Error_Upload' => 'O arquivo enviado é maior que o limite permitido.',
|
||||
'Error_extension' => 'Extensão não permitida.',
|
||||
'Upload_file' => 'Enviar um arquivo',
|
||||
'Filters' => 'Filtro',
|
||||
'Videos' => 'Vídeos',
|
||||
'Music' => 'Musica',
|
||||
'New_Folder' => 'Nova pasta',
|
||||
'Folder_Created' => 'Pasta criada corretamente',
|
||||
'Existing_Folder' => 'Pasta existente',
|
||||
'Confirm_Folder_del' => 'Tem certeza que você quer deletar a pasta e todo o seu conteúdo?',
|
||||
'Return_Files_List' => 'Voltar à lista de arquivos',
|
||||
'Preview' => 'Prévia',
|
||||
'Download' => 'Baixar',
|
||||
'Insert_Folder_Name' => 'Insira o nome da pasta:',
|
||||
'Root' => 'root',
|
||||
'Rename' => 'Mudar o nome',
|
||||
'Back' => 'de volta',
|
||||
'View' => 'Modo de Visualização',
|
||||
'View_list' => 'Lista',
|
||||
'View_columns_list' => 'Lista de Colunas',
|
||||
'View_boxes' => 'Box',
|
||||
'Toolbar' => 'Toolbar',
|
||||
'Actions' => 'Ações',
|
||||
'Rename_existing_file' => 'O arquivo já existe!',
|
||||
'Rename_existing_folder' => 'A pasta já existe!',
|
||||
'Empty_name' => 'O nome está vazio!',
|
||||
'Text_filter' => 'Filtrar',
|
||||
'Swipe_help' => 'Passe o nome do arquivo/pasta para ver as opções',
|
||||
'Upload_base' => 'Base upload',
|
||||
'Upload_url' => 'URL',
|
||||
'Upload_java' => 'JAVA upload (Arquivos grandes)',
|
||||
'Upload_java_help' => "Se o Java Applet não carregar: 1. Certifique-se de ter o Java instalado de outra forma <a href='http://java.com/en/download/'>[download link]</a> 2. Certifique-se que nada é impedido pelo firewall",
|
||||
'Upload_base_help' => "Arraste e Solta os arquivos dentro área acima ou clique nele (para navegadores modernos), caso contrário, selecione o arquivo e clique no botão. Quando terminar o upload, clique no botão de retorno superior.",
|
||||
'Type_dir' => 'dir',
|
||||
'Type' => 'Tipo',
|
||||
'Dimension' => 'Dimensão',
|
||||
'Size' => 'Tamanho',
|
||||
'Date' => 'Data',
|
||||
'Filename' => 'Nome',
|
||||
'Operations' => 'Operações',
|
||||
'Date_type' => 'd/m/Y',
|
||||
'OK' => 'OK',
|
||||
'Cancel' => 'Cancelar',
|
||||
'Sorting' => 'Ordenar',
|
||||
'Show_url' => 'Mostrar URL',
|
||||
'Extract' => 'Extrair aqui',
|
||||
'File_info' => 'Informação do Arquivo',
|
||||
'Edit_image' => 'Editar a imagem',
|
||||
'Duplicate' => 'Duplicar',
|
||||
'Folders' => 'Pastas',
|
||||
'Copy' => 'Copiar',
|
||||
'Cut' => 'Recortar',
|
||||
'Paste' => 'Colar',
|
||||
'CB' => 'Área de Transferência', // clipboard
|
||||
'Paste_Here' => 'Copiar para este diretório',
|
||||
'Paste_Confirm' => 'Você tem certeza quer copiar para este diretório? Isso sobrescreverá pastas/arquivos existentes se encontrar alguma coisa.',
|
||||
'Paste_Failed' => 'Não foi possível colar o(s) arquivo(s)',
|
||||
'Clear_Clipboard' => 'Limpar área de transferência',
|
||||
'Clear_Clipboard_Confirm' => 'Tem certeza de que deseja limpar a área de transferência?',
|
||||
'Files_ON_Clipboard' => 'Há arquivos na área de transferência.',
|
||||
'Copy_Cut_Size_Limit' => 'Os arquivos/pastas selecionados são grandes demais para %s. Limite: %d MB/operação', // %s = cut or copy
|
||||
'Copy_Cut_Count_Limit' => 'Você selecionou muitos arquivos/pastas para %s. Limite: %d arquivos/operação', // %s = cut or copy
|
||||
'Copy_Cut_Not_Allowed' => 'Você não tem permissão para %s arquivos.', // %s(1) = cut or copy, %s(2) = files or folders
|
||||
'Aviary_No_Save' => 'Não foi possível salvar a imagem',
|
||||
'Zip_No_Extract' => 'Não foi possível extrair. Arquivo pode estar corrompido.',
|
||||
'Zip_Invalid' => 'Esta extensão não é suportada. Válidos: zip, gz, tar.',
|
||||
'Dir_No_Write' => 'O diretório selecionado não é gravável.',
|
||||
'Function_Disabled' => 'A função %s foi desativado pelo servidor.', // %s = cut or copy
|
||||
'File_Permission' => 'Permissão arquivo',
|
||||
'File_Permission_Not_Allowed' => 'Mudanças de permissões de %s não são permitidos.', // %s = files or folders
|
||||
'File_Permission_Recursive' => 'Aplicar recursivamente?',
|
||||
'File_Permission_Wrong_Mode' => "O modo de permissão fornecido está incorreto.",
|
||||
'User' => 'Usuário',
|
||||
'Group' => 'Grupo',
|
||||
'Yes' => 'Sim',
|
||||
'No' => 'Não',
|
||||
'Lang_Not_Found' => 'Não foi possível encontrar uma linguagem.',
|
||||
'Lang_Change' => 'Alterar o idioma',
|
||||
'File_Not_Found' => 'Não foi possível encontrar o arquivo.',
|
||||
'File_Open_Edit_Not_Allowed' => 'Você não tem permissão para %s este arquivo.', // %s = open or edit
|
||||
'Edit' => 'Editar',
|
||||
'Edit_File' => "Editar conteúdo do arquivo",
|
||||
'File_Save_OK' => "Arquivo salvo com sucesso.",
|
||||
'File_Save_Error' => "Houve um erro ao salvar o arquivo.",
|
||||
'New_File' => 'Novo Arquivo',
|
||||
'No_Extension' => 'Você tem que adicionar uma extensão de arquivo.',
|
||||
'Valid_Extensions' => 'Extensões válidas: %s', // %s = txt,log etc.
|
||||
'Upload_message' => "Arraste arquivo aqui para enviar",
|
||||
|
||||
'SERVER ERROR' => "ERRO SERVIDOR",
|
||||
'forbiden' => "proibido",
|
||||
'wrong path' => "caminho errado",
|
||||
'wrong name' => "nome errado",
|
||||
'wrong extension' => "extensão errada",
|
||||
'wrong option' => "opção errada",
|
||||
'wrong data' => "dados errados",
|
||||
'wrong action' => "ação errada",
|
||||
'wrong sub-action' => "sub-ação errada",
|
||||
'no action passed' => "nenhuma ação passada",
|
||||
'no path' => "nenhum caminho",
|
||||
'no file' => "nenhum arquivo",
|
||||
'view type number missing' => "Ver tipo de número faltando",
|
||||
'Not enought Memory' => "Memória insuficiente",
|
||||
'max_size_reached' => "Sua pasta de imagens atingiu seu tamanho máximo de %d MB.", //%d = max overall size
|
||||
'B' => "B",
|
||||
'KB' => "KB",
|
||||
'MB' => "MB",
|
||||
'GB' => "GB",
|
||||
'TB' => "TB",
|
||||
'total size' => "Tamanho total",
|
||||
);
|
||||
<?php
|
||||
|
||||
return array(
|
||||
|
||||
'Select' => 'Selecionar',
|
||||
'Erase' => 'Apagar',
|
||||
'Open' => 'Abrir',
|
||||
'Confirm_del' => 'Tem certeza que quer deletar este arquivo?',
|
||||
'All' => 'Todos',
|
||||
'Files' => 'Arquivos',
|
||||
'Images' => 'Imagens',
|
||||
'Archives' => 'Compactados',
|
||||
'Error_Upload' => 'O arquivo enviado é maior que o limite permitido.',
|
||||
'Error_extension' => 'Extensão não permitida.',
|
||||
'Upload_file' => 'Enviar um arquivo',
|
||||
'Filters' => 'Filtro',
|
||||
'Videos' => 'Vídeos',
|
||||
'Music' => 'Musica',
|
||||
'New_Folder' => 'Nova pasta',
|
||||
'Folder_Created' => 'Pasta criada corretamente',
|
||||
'Existing_Folder' => 'Pasta existente',
|
||||
'Confirm_Folder_del' => 'Tem certeza que você quer deletar a pasta e todo o seu conteúdo?',
|
||||
'Return_Files_List' => 'Voltar à lista de arquivos',
|
||||
'Preview' => 'Prévia',
|
||||
'Download' => 'Baixar',
|
||||
'Insert_Folder_Name' => 'Insira o nome da pasta:',
|
||||
'Root' => 'root',
|
||||
'Rename' => 'Mudar o nome',
|
||||
'Back' => 'de volta',
|
||||
'View' => 'Modo de Visualização',
|
||||
'View_list' => 'Lista',
|
||||
'View_columns_list' => 'Lista de Colunas',
|
||||
'View_boxes' => 'Box',
|
||||
'Toolbar' => 'Toolbar',
|
||||
'Actions' => 'Ações',
|
||||
'Rename_existing_file' => 'O arquivo já existe!',
|
||||
'Rename_existing_folder' => 'A pasta já existe!',
|
||||
'Empty_name' => 'O nome está vazio!',
|
||||
'Text_filter' => 'Filtrar',
|
||||
'Swipe_help' => 'Passe o nome do arquivo/pasta para ver as opções',
|
||||
'Upload_base' => 'Base upload',
|
||||
'Upload_url' => 'URL',
|
||||
'Upload_java' => 'JAVA upload (Arquivos grandes)',
|
||||
'Upload_java_help' => "Se o Java Applet não carregar: 1. Certifique-se de ter o Java instalado de outra forma <a href='http://java.com/en/download/'>[download link]</a> 2. Certifique-se que nada é impedido pelo firewall",
|
||||
'Upload_base_help' => "Arraste e Solta os arquivos dentro área acima ou clique nele (para navegadores modernos), caso contrário, selecione o arquivo e clique no botão. Quando terminar o upload, clique no botão de retorno superior.",
|
||||
'Type_dir' => 'dir',
|
||||
'Type' => 'Tipo',
|
||||
'Dimension' => 'Dimensão',
|
||||
'Size' => 'Tamanho',
|
||||
'Date' => 'Data',
|
||||
'Filename' => 'Nome',
|
||||
'Operations' => 'Operações',
|
||||
'Date_type' => 'd/m/Y',
|
||||
'OK' => 'OK',
|
||||
'Cancel' => 'Cancelar',
|
||||
'Sorting' => 'Ordenar',
|
||||
'Show_url' => 'Mostrar URL',
|
||||
'Extract' => 'Extrair aqui',
|
||||
'File_info' => 'Informação do Arquivo',
|
||||
'Edit_image' => 'Editar a imagem',
|
||||
'Duplicate' => 'Duplicar',
|
||||
'Folders' => 'Pastas',
|
||||
'Copy' => 'Copiar',
|
||||
'Cut' => 'Recortar',
|
||||
'Paste' => 'Colar',
|
||||
'CB' => 'Área de Transferência', // clipboard
|
||||
'Paste_Here' => 'Copiar para este diretório',
|
||||
'Paste_Confirm' => 'Você tem certeza quer copiar para este diretório? Isso sobrescreverá pastas/arquivos existentes se encontrar alguma coisa.',
|
||||
'Paste_Failed' => 'Não foi possível colar o(s) arquivo(s)',
|
||||
'Clear_Clipboard' => 'Limpar área de transferência',
|
||||
'Clear_Clipboard_Confirm' => 'Tem certeza de que deseja limpar a área de transferência?',
|
||||
'Files_ON_Clipboard' => 'Há arquivos na área de transferência.',
|
||||
'Copy_Cut_Size_Limit' => 'Os arquivos/pastas selecionados são grandes demais para %s. Limite: %d MB/operação', // %s = cut or copy
|
||||
'Copy_Cut_Count_Limit' => 'Você selecionou muitos arquivos/pastas para %s. Limite: %d arquivos/operação', // %s = cut or copy
|
||||
'Copy_Cut_Not_Allowed' => 'Você não tem permissão para %s arquivos.', // %s(1) = cut or copy, %s(2) = files or folders
|
||||
'Aviary_No_Save' => 'Não foi possível salvar a imagem',
|
||||
'Zip_No_Extract' => 'Não foi possível extrair. Arquivo pode estar corrompido.',
|
||||
'Zip_Invalid' => 'Esta extensão não é suportada. Válidos: zip, gz, tar.',
|
||||
'Dir_No_Write' => 'O diretório selecionado não é gravável.',
|
||||
'Function_Disabled' => 'A função %s foi desativado pelo servidor.', // %s = cut or copy
|
||||
'File_Permission' => 'Permissão arquivo',
|
||||
'File_Permission_Not_Allowed' => 'Mudanças de permissões de %s não são permitidos.', // %s = files or folders
|
||||
'File_Permission_Recursive' => 'Aplicar recursivamente?',
|
||||
'File_Permission_Wrong_Mode' => "O modo de permissão fornecido está incorreto.",
|
||||
'User' => 'Usuário',
|
||||
'Group' => 'Grupo',
|
||||
'Yes' => 'Sim',
|
||||
'No' => 'Não',
|
||||
'Lang_Not_Found' => 'Não foi possível encontrar uma linguagem.',
|
||||
'Lang_Change' => 'Alterar o idioma',
|
||||
'File_Not_Found' => 'Não foi possível encontrar o arquivo.',
|
||||
'File_Open_Edit_Not_Allowed' => 'Você não tem permissão para %s este arquivo.', // %s = open or edit
|
||||
'Edit' => 'Editar',
|
||||
'Edit_File' => "Editar conteúdo do arquivo",
|
||||
'File_Save_OK' => "Arquivo salvo com sucesso.",
|
||||
'File_Save_Error' => "Houve um erro ao salvar o arquivo.",
|
||||
'New_File' => 'Novo Arquivo',
|
||||
'No_Extension' => 'Você tem que adicionar uma extensão de arquivo.',
|
||||
'Valid_Extensions' => 'Extensões válidas: %s', // %s = txt,log etc.
|
||||
'Upload_message' => "Arraste arquivo aqui para enviar",
|
||||
|
||||
'SERVER ERROR' => "ERRO SERVIDOR",
|
||||
'forbiden' => "proibido",
|
||||
'wrong path' => "caminho errado",
|
||||
'wrong name' => "nome errado",
|
||||
'wrong extension' => "extensão errada",
|
||||
'wrong option' => "opção errada",
|
||||
'wrong data' => "dados errados",
|
||||
'wrong action' => "ação errada",
|
||||
'wrong sub-action' => "sub-ação errada",
|
||||
'no action passed' => "nenhuma ação passada",
|
||||
'no path' => "nenhum caminho",
|
||||
'no file' => "nenhum arquivo",
|
||||
'view type number missing' => "Ver tipo de número faltando",
|
||||
'Not enought Memory' => "Memória insuficiente",
|
||||
'max_size_reached' => "Sua pasta de imagens atingiu seu tamanho máximo de %d MB.", //%d = max overall size
|
||||
'B' => "B",
|
||||
'KB' => "KB",
|
||||
'MB' => "MB",
|
||||
'GB' => "GB",
|
||||
'TB' => "TB",
|
||||
'total size' => "Tamanho total",
|
||||
);
|
||||
|
||||
@@ -1,122 +1,122 @@
|
||||
<?php
|
||||
|
||||
return array(
|
||||
|
||||
'Select' => 'Выбрать',
|
||||
'Erase' => 'Удалить',
|
||||
'Open' => 'Открыть',
|
||||
'Confirm_del' => 'Вы уверены, что хотите удалить этот файл?',
|
||||
'All' => 'Очистить фильтр',
|
||||
'Files' => 'Файлы',
|
||||
'Images' => 'Изображения',
|
||||
'Archives' => 'Архивы',
|
||||
'Error_Upload' => 'Загружаемый файл превышает допустимый размер.',
|
||||
'Error_extension' => 'Недопустимый формат файла.',
|
||||
'Upload_file' => 'Загрузить файл',
|
||||
'Filters' => 'Фильтр',
|
||||
'Videos' => 'Видео',
|
||||
'Music' => 'Музыка',
|
||||
'New_Folder' => 'Новая папка',
|
||||
'Folder_Created' => 'Папка успешно создана',
|
||||
'Existing_Folder' => 'Существующая папка',
|
||||
'Confirm_Folder_del' => 'Вы уверены, что хотите удалить эту папку и все файлы в ней?',
|
||||
'Return_Files_List' => 'Вернуться к списку файлов',
|
||||
'Preview' => 'Просмотр',
|
||||
'Download' => 'Загрузить',
|
||||
'Insert_Folder_Name' => 'Введите имя папки:',
|
||||
'Root' => 'Корневая папка',
|
||||
'Rename' => 'Переименовать',
|
||||
'Back' => 'Назад',
|
||||
'View' => 'Вид',
|
||||
'View_list' => 'Список',
|
||||
'View_columns_list' => 'Столбцы',
|
||||
'View_boxes' => 'Плитка',
|
||||
'Toolbar' => 'Панель',
|
||||
'Actions' => 'Действия',
|
||||
'Rename_existing_file' => 'Файл уже существует',
|
||||
'Rename_existing_folder' => 'Папка уже существует',
|
||||
'Empty_name' => 'Не заполнено имя',
|
||||
'Text_filter' => 'фильтр',
|
||||
'Swipe_help' => 'Наведите на имя файла/папки, чтобы увидеть опции',
|
||||
'Upload_base' => 'Основная загрузка',
|
||||
'Upload_url' => 'URL',
|
||||
'Upload_java' => 'JAVA загрузка (для файлов больших размеров)',
|
||||
'Upload_java_help' => "Если Java-апплет не загружается: 1. Убедитесь, что установлена Java, в противном случае <a href='http://java.com/en/download/'>[скачайте]</a> 2. Убедитесь, что фаервол ничего не блокирует",
|
||||
'Upload_base_help' => "Перетащите файлы в область выше или щелкните по ней мышкой (для современных браузеров) и выберите файл(ы). После завершения загрузки нажмите кнопку «Вернуться к списку файлов».",
|
||||
'Type_dir' => 'папка',
|
||||
'Type' => 'Тип',
|
||||
'Dimension' => 'Разрешение',
|
||||
'Size' => 'Размер',
|
||||
'Date' => 'Дата',
|
||||
'Filename' => 'Имя файла',
|
||||
'Operations' => 'Действие',
|
||||
'Date_type' => 'd-m-Y',
|
||||
'OK' => 'OK',
|
||||
'Cancel' => 'Отмена',
|
||||
'Sorting' => 'Сортировка',
|
||||
'Show_url' => 'Показать URL',
|
||||
'Extract' => 'Распаковать здесь',
|
||||
'File_info' => 'Свойства файла',
|
||||
'Edit_image' => 'Редактировать',
|
||||
'Duplicate' => 'Создать копию',
|
||||
'Folders' => 'Папки',
|
||||
'Copy' => 'Копировать',
|
||||
'Cut' => 'Вырезать',
|
||||
'Paste' => 'Вставить',
|
||||
'CB' => 'Буфер обмена', // clipboard
|
||||
'Paste_Here' => 'Вставить в текущую папку',
|
||||
'Paste_Confirm' => 'Вы хотите вставить в эту папку? При совпадении имён файлы будут перезаписаны',
|
||||
'Paste_Failed' => 'Не удалось вставить файл(ы).',
|
||||
'Clear_Clipboard' => 'Очистить буфер обмена',
|
||||
'Clear_Clipboard_Confirm' => 'Очистить буфер обмена?',
|
||||
'Files_ON_Clipboard' => 'Есть файлы в буфере обмена.',
|
||||
'Copy_Cut_Size_Limit' => 'Выбранные файлы/папки слишком большие для %s. Ограничение: %d Мб за одну операцию', // %s = cut or copy
|
||||
'Copy_Cut_Count_Limit' => 'Выбрано слишком много файлов/папок для %s. Ограничение: %d файлов за одну операцию', // %s = cut or copy
|
||||
'Copy_Cut_Not_Allowed' => 'Вы не можете %s файлы.', // %s(1) = cut or copy, %s(2) = files or folders
|
||||
'Aviary_No_Save' => 'Невозможно сохранить изображение.',
|
||||
'Zip_No_Extract' => 'Извлечь невозможно. Возможно файл повреждён.',
|
||||
'Zip_Invalid' => 'Это расширение не поддерживается. Разрешённые: zip, gz, tar.',
|
||||
'Dir_No_Write' => 'Выбранный каталог недоступен для записи.',
|
||||
'Function_Disabled' => 'Функция %s была отключена на сервере.', // %s = cut or copy
|
||||
'File_Permission' => 'Разрешения на файл',
|
||||
'File_Permission_Not_Allowed' => 'Изменение разрешений %s не допускается.', // %s = files or folders
|
||||
'File_Permission_Recursive' => 'Применить рекурсивно?',
|
||||
'File_Permission_Wrong_Mode' => "Выбранные режим разрешений некорректен.",
|
||||
'User' => 'Пользователь',
|
||||
'Group' => 'Группа',
|
||||
'Yes' => 'Да',
|
||||
'No' => 'Нет',
|
||||
'Lang_Not_Found' => 'Невозможно найти язык',
|
||||
'Lang_Change' => 'Сменить язык',
|
||||
'File_Not_Found' => 'Невозможно найти файл',
|
||||
'File_Open_Edit_Not_Allowed' => 'Вы не можете %s этот файл.', // %s = open or edit
|
||||
'Edit' => 'Редактировать',
|
||||
'Edit_File' => "Редактировать содержимое файла",
|
||||
'File_Save_OK' => "Файл успешно сохранён",
|
||||
'File_Save_Error' => "Произошла ошибка при сохранении файла",
|
||||
'New_File' => 'Новый файл',
|
||||
'No_Extension' => 'Необходимо добавить расширение файла',
|
||||
'Valid_Extensions' => 'Разрешённые расширения файла: %s', // %s = txt,log etc.
|
||||
'Upload_message' => "Перетащите файл сюда, чтобы загрузить",
|
||||
'SERVER ERROR' => "СЕРВЕРНАЯ ОШИБКА",
|
||||
'forbiden' => "Запрещено",
|
||||
'wrong path' => "Неверный путь",
|
||||
'wrong name' => "Неверное имя",
|
||||
'wrong extension' => "Неверное расширение",
|
||||
'wrong option' => "Неверная опция",
|
||||
'wrong data' => "Неверные данные",
|
||||
'wrong action' => "Неверное действие",
|
||||
'wrong sub-action' => "Неверное доп.действие",
|
||||
'no action passed' => "Действие не сработало",
|
||||
'no path' => "Путь не существует",
|
||||
'no file' => "Файл не существует",
|
||||
'view type number missing' => "Данный тип отсутствует",
|
||||
'Not enought Memory' => "Недостаточно памяти",
|
||||
'max_size_reached' => "Папка достигла максимального размера в %d MB.", //%d = max overall size
|
||||
'B' => "B",
|
||||
'KB' => "KB",
|
||||
'MB' => "MB",
|
||||
'GB' => "GB",
|
||||
'TB' => "TB",
|
||||
'total size' => "Общий размер",
|
||||
);
|
||||
<?php
|
||||
|
||||
return array(
|
||||
|
||||
'Select' => 'Выбрать',
|
||||
'Erase' => 'Удалить',
|
||||
'Open' => 'Открыть',
|
||||
'Confirm_del' => 'Вы уверены, что хотите удалить этот файл?',
|
||||
'All' => 'Очистить фильтр',
|
||||
'Files' => 'Файлы',
|
||||
'Images' => 'Изображения',
|
||||
'Archives' => 'Архивы',
|
||||
'Error_Upload' => 'Загружаемый файл превышает допустимый размер.',
|
||||
'Error_extension' => 'Недопустимый формат файла.',
|
||||
'Upload_file' => 'Загрузить файл',
|
||||
'Filters' => 'Фильтр',
|
||||
'Videos' => 'Видео',
|
||||
'Music' => 'Музыка',
|
||||
'New_Folder' => 'Новая папка',
|
||||
'Folder_Created' => 'Папка успешно создана',
|
||||
'Existing_Folder' => 'Существующая папка',
|
||||
'Confirm_Folder_del' => 'Вы уверены, что хотите удалить эту папку и все файлы в ней?',
|
||||
'Return_Files_List' => 'Вернуться к списку файлов',
|
||||
'Preview' => 'Просмотр',
|
||||
'Download' => 'Загрузить',
|
||||
'Insert_Folder_Name' => 'Введите имя папки:',
|
||||
'Root' => 'Корневая папка',
|
||||
'Rename' => 'Переименовать',
|
||||
'Back' => 'Назад',
|
||||
'View' => 'Вид',
|
||||
'View_list' => 'Список',
|
||||
'View_columns_list' => 'Столбцы',
|
||||
'View_boxes' => 'Плитка',
|
||||
'Toolbar' => 'Панель',
|
||||
'Actions' => 'Действия',
|
||||
'Rename_existing_file' => 'Файл уже существует',
|
||||
'Rename_existing_folder' => 'Папка уже существует',
|
||||
'Empty_name' => 'Не заполнено имя',
|
||||
'Text_filter' => 'фильтр',
|
||||
'Swipe_help' => 'Наведите на имя файла/папки, чтобы увидеть опции',
|
||||
'Upload_base' => 'Основная загрузка',
|
||||
'Upload_url' => 'URL',
|
||||
'Upload_java' => 'JAVA загрузка (для файлов больших размеров)',
|
||||
'Upload_java_help' => "Если Java-апплет не загружается: 1. Убедитесь, что установлена Java, в противном случае <a href='http://java.com/en/download/'>[скачайте]</a> 2. Убедитесь, что фаервол ничего не блокирует",
|
||||
'Upload_base_help' => "Перетащите файлы в область выше или щелкните по ней мышкой (для современных браузеров) и выберите файл(ы). После завершения загрузки нажмите кнопку «Вернуться к списку файлов».",
|
||||
'Type_dir' => 'папка',
|
||||
'Type' => 'Тип',
|
||||
'Dimension' => 'Разрешение',
|
||||
'Size' => 'Размер',
|
||||
'Date' => 'Дата',
|
||||
'Filename' => 'Имя файла',
|
||||
'Operations' => 'Действие',
|
||||
'Date_type' => 'd-m-Y',
|
||||
'OK' => 'OK',
|
||||
'Cancel' => 'Отмена',
|
||||
'Sorting' => 'Сортировка',
|
||||
'Show_url' => 'Показать URL',
|
||||
'Extract' => 'Распаковать здесь',
|
||||
'File_info' => 'Свойства файла',
|
||||
'Edit_image' => 'Редактировать',
|
||||
'Duplicate' => 'Создать копию',
|
||||
'Folders' => 'Папки',
|
||||
'Copy' => 'Копировать',
|
||||
'Cut' => 'Вырезать',
|
||||
'Paste' => 'Вставить',
|
||||
'CB' => 'Буфер обмена', // clipboard
|
||||
'Paste_Here' => 'Вставить в текущую папку',
|
||||
'Paste_Confirm' => 'Вы хотите вставить в эту папку? При совпадении имён файлы будут перезаписаны',
|
||||
'Paste_Failed' => 'Не удалось вставить файл(ы).',
|
||||
'Clear_Clipboard' => 'Очистить буфер обмена',
|
||||
'Clear_Clipboard_Confirm' => 'Очистить буфер обмена?',
|
||||
'Files_ON_Clipboard' => 'Есть файлы в буфере обмена.',
|
||||
'Copy_Cut_Size_Limit' => 'Выбранные файлы/папки слишком большие для %s. Ограничение: %d Мб за одну операцию', // %s = cut or copy
|
||||
'Copy_Cut_Count_Limit' => 'Выбрано слишком много файлов/папок для %s. Ограничение: %d файлов за одну операцию', // %s = cut or copy
|
||||
'Copy_Cut_Not_Allowed' => 'Вы не можете %s файлы.', // %s(1) = cut or copy, %s(2) = files or folders
|
||||
'Aviary_No_Save' => 'Невозможно сохранить изображение.',
|
||||
'Zip_No_Extract' => 'Извлечь невозможно. Возможно файл повреждён.',
|
||||
'Zip_Invalid' => 'Это расширение не поддерживается. Разрешённые: zip, gz, tar.',
|
||||
'Dir_No_Write' => 'Выбранный каталог недоступен для записи.',
|
||||
'Function_Disabled' => 'Функция %s была отключена на сервере.', // %s = cut or copy
|
||||
'File_Permission' => 'Разрешения на файл',
|
||||
'File_Permission_Not_Allowed' => 'Изменение разрешений %s не допускается.', // %s = files or folders
|
||||
'File_Permission_Recursive' => 'Применить рекурсивно?',
|
||||
'File_Permission_Wrong_Mode' => "Выбранные режим разрешений некорректен.",
|
||||
'User' => 'Пользователь',
|
||||
'Group' => 'Группа',
|
||||
'Yes' => 'Да',
|
||||
'No' => 'Нет',
|
||||
'Lang_Not_Found' => 'Невозможно найти язык',
|
||||
'Lang_Change' => 'Сменить язык',
|
||||
'File_Not_Found' => 'Невозможно найти файл',
|
||||
'File_Open_Edit_Not_Allowed' => 'Вы не можете %s этот файл.', // %s = open or edit
|
||||
'Edit' => 'Редактировать',
|
||||
'Edit_File' => "Редактировать содержимое файла",
|
||||
'File_Save_OK' => "Файл успешно сохранён",
|
||||
'File_Save_Error' => "Произошла ошибка при сохранении файла",
|
||||
'New_File' => 'Новый файл',
|
||||
'No_Extension' => 'Необходимо добавить расширение файла',
|
||||
'Valid_Extensions' => 'Разрешённые расширения файла: %s', // %s = txt,log etc.
|
||||
'Upload_message' => "Перетащите файл сюда, чтобы загрузить",
|
||||
'SERVER ERROR' => "СЕРВЕРНАЯ ОШИБКА",
|
||||
'forbiden' => "Запрещено",
|
||||
'wrong path' => "Неверный путь",
|
||||
'wrong name' => "Неверное имя",
|
||||
'wrong extension' => "Неверное расширение",
|
||||
'wrong option' => "Неверная опция",
|
||||
'wrong data' => "Неверные данные",
|
||||
'wrong action' => "Неверное действие",
|
||||
'wrong sub-action' => "Неверное доп.действие",
|
||||
'no action passed' => "Действие не сработало",
|
||||
'no path' => "Путь не существует",
|
||||
'no file' => "Файл не существует",
|
||||
'view type number missing' => "Данный тип отсутствует",
|
||||
'Not enought Memory' => "Недостаточно памяти",
|
||||
'max_size_reached' => "Папка достигла максимального размера в %d MB.", //%d = max overall size
|
||||
'B' => "B",
|
||||
'KB' => "KB",
|
||||
'MB' => "MB",
|
||||
'GB' => "GB",
|
||||
'TB' => "TB",
|
||||
'total size' => "Общий размер",
|
||||
);
|
||||
|
||||
@@ -1,123 +1,123 @@
|
||||
<?php
|
||||
|
||||
return array(
|
||||
|
||||
'Select' => 'Označi',
|
||||
'Erase' => 'Izbriši',
|
||||
'Open' => 'Odpri',
|
||||
'Confirm_del' => 'Ali res želite izbrisati to datoteko?',
|
||||
'All' => 'Vse',
|
||||
'Files' => 'Datoteke',
|
||||
'Images' => 'Slike',
|
||||
'Archives' => 'Arhiv',
|
||||
'Error_Upload' => 'Velikost datoteke presega maksimalno dovoljeno velikost.',
|
||||
'Error_extension' => 'Izbrana vrsta datoteke ni dovoljena.',
|
||||
'Upload_file' => 'Naloži datoteke na strežnik',
|
||||
'Filters' => 'Filtri',
|
||||
'Videos' => 'Video',
|
||||
'Music' => 'Glasba',
|
||||
'New_Folder' => 'Nova mapa',
|
||||
'Folder_Created' => 'Mapa je bila ustvarjena',
|
||||
'Existing_Folder' => 'Obstoječa mapa',
|
||||
'Confirm_Folder_del' => 'Ali res želite izbrisati mapo in vso vsebino, ki je v mapi?',
|
||||
'Return_Files_List' => 'Nazaj na seznam datotek',
|
||||
'Preview' => 'Predogled',
|
||||
'Download' => 'Prenesi',
|
||||
'Insert_Folder_Name' => 'Vpište ime mape:',
|
||||
'Root' => 'Domov',
|
||||
'Rename' => 'Preimenuj',
|
||||
'Back' => 'Nazaj',
|
||||
'View' => 'Prikaz',
|
||||
'View_list' => 'Seznam',
|
||||
'View_columns_list' => 'Stolpci',
|
||||
'View_boxes' => 'Okvirji',
|
||||
'Toolbar' => 'Orodna vrstica',
|
||||
'Actions' => 'Akcije',
|
||||
'Rename_existing_file' => 'Datoteka že obstaja',
|
||||
'Rename_existing_folder' => 'Mapa že obstaja',
|
||||
'Empty_name' => 'Ime je prazno',
|
||||
'Text_filter' => 'išči',
|
||||
'Swipe_help' => 'Izmakni ime datoteke/mape za prikaz možnosti',
|
||||
'Upload_base' => 'Osnovni način',
|
||||
'Upload_url' => 'URL',
|
||||
'Upload_java' => 'JAVA prenos (za velike datoteke)',
|
||||
'Upload_java_help' => "Če se Java ne zažene, preverite če imate Javo naloženo (če je nimate jo <a href='http://java.com/en/download/'>[naložite]</a>) in preverite da je ne blokira vaš požarni zid.",
|
||||
'Upload_base_help' => 'Povlecite in spustite datoteke ali kliknite v okvir (pri sodobnih brskalnikih) in izberite datoteke. Ko bo nalaganje končano, kliknite gumb "Nazaj na seznam datotek".',
|
||||
'Type_dir' => 'Mapa',
|
||||
'Type' => 'Vrsta',
|
||||
'Dimension' => 'Dimenzija',
|
||||
'Size' => 'Velikost',
|
||||
'Date' => 'Datum',
|
||||
'Filename' => 'Ime',
|
||||
'Operations' => 'Ukazi',
|
||||
'Date_type' => 'd.m.y',
|
||||
'OK' => 'Potrdi',
|
||||
'Cancel' => 'Prekliči',
|
||||
'Sorting' => 'Razvrsti po:',
|
||||
'Show_url' => 'Prikaži povezavo',
|
||||
'Extract' => 'Razširi sem',
|
||||
'File_info' => 'Podatki o datoteki',
|
||||
'Edit_image' => 'Uredi sliko',
|
||||
'Duplicate' => 'Podvoji',
|
||||
'Folders' => 'Folders',
|
||||
'Copy' => 'Copy',
|
||||
'Cut' => 'Cut',
|
||||
'Paste' => 'Paste',
|
||||
'CB' => 'CB', // clipboard
|
||||
'Paste_Here' => 'Paste to this directory',
|
||||
'Paste_Confirm' => 'Are you sure you want to paste to this directory? This will overwrite existing files/folders if encountered any.',
|
||||
'Paste_Failed' => 'Failed to paste file(s)',
|
||||
'Clear_Clipboard' => 'Clear clipboard',
|
||||
'Clear_Clipboard_Confirm' => 'Are you sure you want to clear the clipboard?',
|
||||
'Files_ON_Clipboard' => 'There are files on the clipboard.',
|
||||
'Copy_Cut_Size_Limit' => 'The selected files/folders are too big to %s. Limit: %d MB/operation', // %s = cut or copy
|
||||
'Copy_Cut_Count_Limit' => 'You selected too many files/folders to %s. Limit: %d files/operation', // %s = cut or copy
|
||||
'Copy_Cut_Not_Allowed' => 'You are not allowed to %s files.', // %s(1) = cut or copy, %s(2) = files or folders
|
||||
'Aviary_No_Save' => 'Could not save image',
|
||||
'Zip_No_Extract' => 'Could not extract. File might be corrupt.',
|
||||
'Zip_Invalid' => 'This extension is not supported. Valid: zip, gz, tar.',
|
||||
'Dir_No_Write' => 'The directory you selected is not writable.',
|
||||
'Function_Disabled' => 'The %s function has been disabled by the server.', // %s = cut or copy
|
||||
'File_Permission' => 'File permission',
|
||||
'File_Permission_Not_Allowed' => 'Changing %s permissions are not allowed.', // %s = files or folders
|
||||
'File_Permission_Recursive' => 'Apply recursively?',
|
||||
'File_Permission_Wrong_Mode' => "The supplied permission mode is incorrect.",
|
||||
'User' => 'User',
|
||||
'Group' => 'Group',
|
||||
'Yes' => 'Yes',
|
||||
'No' => 'No',
|
||||
'Lang_Not_Found' => 'Could not find language.',
|
||||
'Lang_Change' => 'Change the language',
|
||||
'File_Not_Found' => 'Could not find the file.',
|
||||
'File_Open_Edit_Not_Allowed' => 'You are not allowed to %s this file.', // %s = open or edit
|
||||
'Edit' => 'Edit',
|
||||
'Edit_File' => "Edit file's content",
|
||||
'File_Save_OK' => "File successfully saved.",
|
||||
'File_Save_Error' => "There was an error while saving the file.",
|
||||
'New_File' => 'New File',
|
||||
'No_Extension' => 'You have to add a file extension.',
|
||||
'Valid_Extensions' => 'Valid extensions: %s', // %s = txt,log etc.
|
||||
'Upload_message' => "Drop file here to upload",
|
||||
|
||||
'SERVER ERROR' => "SERVER ERROR",
|
||||
'forbiden' => "Forbiden",
|
||||
'wrong path' => "Wrong path",
|
||||
'wrong name' => "Wrong name",
|
||||
'wrong extension' => "Wrong extension",
|
||||
'wrong option' => "Wrong option",
|
||||
'wrong data' => "Wrong data",
|
||||
'wrong action' => "Wrong action",
|
||||
'wrong sub-action' => "Wrong sub-actio",
|
||||
'no action passed' => "No action passed",
|
||||
'no path' => "No path",
|
||||
'no file' => "No file",
|
||||
'view type number missing' => "View type number missing",
|
||||
'Not enought Memory' => "Not enought Memory",
|
||||
'max_size_reached' => "Your image folder has reach its maximale size of %d MB.", //%d = max overall size
|
||||
'B' => "B",
|
||||
'KB' => "KB",
|
||||
'MB' => "MB",
|
||||
'GB' => "GB",
|
||||
'TB' => "TB",
|
||||
'total size' => "Total size",
|
||||
);
|
||||
<?php
|
||||
|
||||
return array(
|
||||
|
||||
'Select' => 'Označi',
|
||||
'Erase' => 'Izbriši',
|
||||
'Open' => 'Odpri',
|
||||
'Confirm_del' => 'Ali res želite izbrisati to datoteko?',
|
||||
'All' => 'Vse',
|
||||
'Files' => 'Datoteke',
|
||||
'Images' => 'Slike',
|
||||
'Archives' => 'Arhiv',
|
||||
'Error_Upload' => 'Velikost datoteke presega maksimalno dovoljeno velikost.',
|
||||
'Error_extension' => 'Izbrana vrsta datoteke ni dovoljena.',
|
||||
'Upload_file' => 'Naloži datoteke na strežnik',
|
||||
'Filters' => 'Filtri',
|
||||
'Videos' => 'Video',
|
||||
'Music' => 'Glasba',
|
||||
'New_Folder' => 'Nova mapa',
|
||||
'Folder_Created' => 'Mapa je bila ustvarjena',
|
||||
'Existing_Folder' => 'Obstoječa mapa',
|
||||
'Confirm_Folder_del' => 'Ali res želite izbrisati mapo in vso vsebino, ki je v mapi?',
|
||||
'Return_Files_List' => 'Nazaj na seznam datotek',
|
||||
'Preview' => 'Predogled',
|
||||
'Download' => 'Prenesi',
|
||||
'Insert_Folder_Name' => 'Vpište ime mape:',
|
||||
'Root' => 'Domov',
|
||||
'Rename' => 'Preimenuj',
|
||||
'Back' => 'Nazaj',
|
||||
'View' => 'Prikaz',
|
||||
'View_list' => 'Seznam',
|
||||
'View_columns_list' => 'Stolpci',
|
||||
'View_boxes' => 'Okvirji',
|
||||
'Toolbar' => 'Orodna vrstica',
|
||||
'Actions' => 'Akcije',
|
||||
'Rename_existing_file' => 'Datoteka že obstaja',
|
||||
'Rename_existing_folder' => 'Mapa že obstaja',
|
||||
'Empty_name' => 'Ime je prazno',
|
||||
'Text_filter' => 'išči',
|
||||
'Swipe_help' => 'Izmakni ime datoteke/mape za prikaz možnosti',
|
||||
'Upload_base' => 'Osnovni način',
|
||||
'Upload_url' => 'URL',
|
||||
'Upload_java' => 'JAVA prenos (za velike datoteke)',
|
||||
'Upload_java_help' => "Če se Java ne zažene, preverite če imate Javo naloženo (če je nimate jo <a href='http://java.com/en/download/'>[naložite]</a>) in preverite da je ne blokira vaš požarni zid.",
|
||||
'Upload_base_help' => 'Povlecite in spustite datoteke ali kliknite v okvir (pri sodobnih brskalnikih) in izberite datoteke. Ko bo nalaganje končano, kliknite gumb "Nazaj na seznam datotek".',
|
||||
'Type_dir' => 'Mapa',
|
||||
'Type' => 'Vrsta',
|
||||
'Dimension' => 'Dimenzija',
|
||||
'Size' => 'Velikost',
|
||||
'Date' => 'Datum',
|
||||
'Filename' => 'Ime',
|
||||
'Operations' => 'Ukazi',
|
||||
'Date_type' => 'd.m.y',
|
||||
'OK' => 'Potrdi',
|
||||
'Cancel' => 'Prekliči',
|
||||
'Sorting' => 'Razvrsti po:',
|
||||
'Show_url' => 'Prikaži povezavo',
|
||||
'Extract' => 'Razširi sem',
|
||||
'File_info' => 'Podatki o datoteki',
|
||||
'Edit_image' => 'Uredi sliko',
|
||||
'Duplicate' => 'Podvoji',
|
||||
'Folders' => 'Folders',
|
||||
'Copy' => 'Copy',
|
||||
'Cut' => 'Cut',
|
||||
'Paste' => 'Paste',
|
||||
'CB' => 'CB', // clipboard
|
||||
'Paste_Here' => 'Paste to this directory',
|
||||
'Paste_Confirm' => 'Are you sure you want to paste to this directory? This will overwrite existing files/folders if encountered any.',
|
||||
'Paste_Failed' => 'Failed to paste file(s)',
|
||||
'Clear_Clipboard' => 'Clear clipboard',
|
||||
'Clear_Clipboard_Confirm' => 'Are you sure you want to clear the clipboard?',
|
||||
'Files_ON_Clipboard' => 'There are files on the clipboard.',
|
||||
'Copy_Cut_Size_Limit' => 'The selected files/folders are too big to %s. Limit: %d MB/operation', // %s = cut or copy
|
||||
'Copy_Cut_Count_Limit' => 'You selected too many files/folders to %s. Limit: %d files/operation', // %s = cut or copy
|
||||
'Copy_Cut_Not_Allowed' => 'You are not allowed to %s files.', // %s(1) = cut or copy, %s(2) = files or folders
|
||||
'Aviary_No_Save' => 'Could not save image',
|
||||
'Zip_No_Extract' => 'Could not extract. File might be corrupt.',
|
||||
'Zip_Invalid' => 'This extension is not supported. Valid: zip, gz, tar.',
|
||||
'Dir_No_Write' => 'The directory you selected is not writable.',
|
||||
'Function_Disabled' => 'The %s function has been disabled by the server.', // %s = cut or copy
|
||||
'File_Permission' => 'File permission',
|
||||
'File_Permission_Not_Allowed' => 'Changing %s permissions are not allowed.', // %s = files or folders
|
||||
'File_Permission_Recursive' => 'Apply recursively?',
|
||||
'File_Permission_Wrong_Mode' => "The supplied permission mode is incorrect.",
|
||||
'User' => 'User',
|
||||
'Group' => 'Group',
|
||||
'Yes' => 'Yes',
|
||||
'No' => 'No',
|
||||
'Lang_Not_Found' => 'Could not find language.',
|
||||
'Lang_Change' => 'Change the language',
|
||||
'File_Not_Found' => 'Could not find the file.',
|
||||
'File_Open_Edit_Not_Allowed' => 'You are not allowed to %s this file.', // %s = open or edit
|
||||
'Edit' => 'Edit',
|
||||
'Edit_File' => "Edit file's content",
|
||||
'File_Save_OK' => "File successfully saved.",
|
||||
'File_Save_Error' => "There was an error while saving the file.",
|
||||
'New_File' => 'New File',
|
||||
'No_Extension' => 'You have to add a file extension.',
|
||||
'Valid_Extensions' => 'Valid extensions: %s', // %s = txt,log etc.
|
||||
'Upload_message' => "Drop file here to upload",
|
||||
|
||||
'SERVER ERROR' => "SERVER ERROR",
|
||||
'forbiden' => "Forbiden",
|
||||
'wrong path' => "Wrong path",
|
||||
'wrong name' => "Wrong name",
|
||||
'wrong extension' => "Wrong extension",
|
||||
'wrong option' => "Wrong option",
|
||||
'wrong data' => "Wrong data",
|
||||
'wrong action' => "Wrong action",
|
||||
'wrong sub-action' => "Wrong sub-actio",
|
||||
'no action passed' => "No action passed",
|
||||
'no path' => "No path",
|
||||
'no file' => "No file",
|
||||
'view type number missing' => "View type number missing",
|
||||
'Not enought Memory' => "Not enought Memory",
|
||||
'max_size_reached' => "Your image folder has reach its maximale size of %d MB.", //%d = max overall size
|
||||
'B' => "B",
|
||||
'KB' => "KB",
|
||||
'MB' => "MB",
|
||||
'GB' => "GB",
|
||||
'TB' => "TB",
|
||||
'total size' => "Total size",
|
||||
);
|
||||
|
||||
@@ -1,123 +1,123 @@
|
||||
<?php
|
||||
|
||||
return array(
|
||||
|
||||
'Select' => 'Вибрати',
|
||||
'Erase' => 'Видалити',
|
||||
'Open' => 'Відкрити',
|
||||
'Confirm_del' => 'Впевнені, що хочете видалити цей файл?',
|
||||
'All' => 'Всі',
|
||||
'Files' => 'Файли',
|
||||
'Images' => 'Зображення',
|
||||
'Archives' => 'Архіви',
|
||||
'Error_Upload' => 'Файл, що завантажується перевищує дозволений розмір.',
|
||||
'Error_extension' => 'Неприпустимий формат файлу.',
|
||||
'Upload_file' => 'Завантажити файл',
|
||||
'Filters' => 'Фільтр',
|
||||
'Videos' => 'Відео',
|
||||
'Music' => 'Музика',
|
||||
'New_Folder' => 'Нова тека',
|
||||
'Folder_Created' => 'Теку успішно створено',
|
||||
'Existing_Folder' => 'Існуюча тека',
|
||||
'Confirm_Folder_del' => 'Впевнені, що хочете видалити цю теку і всі файли в ній?',
|
||||
'Return_Files_List' => 'Повернутися до списку файлів',
|
||||
'Preview' => 'Перегляд',
|
||||
'Download' => 'Завантажити',
|
||||
'Insert_Folder_Name' => 'Введіть ім`я папки:',
|
||||
'Root' => 'Коренева тека',
|
||||
'Rename' => 'Переіменувати',
|
||||
'Back' => 'назад',
|
||||
'View' => 'Вигляд',
|
||||
'View_list' => 'Список',
|
||||
'View_columns_list' => 'Стовпчики',
|
||||
'View_boxes' => 'Плиткою',
|
||||
'Toolbar' => 'Панель',
|
||||
'Actions' => 'Дії',
|
||||
'Rename_existing_file' => 'Файл вже існує',
|
||||
'Rename_existing_folder' => 'Тека вже існує',
|
||||
'Empty_name' => 'Не заповнено ім`я',
|
||||
'Text_filter' => 'фільтр',
|
||||
'Swipe_help' => 'Наведіть на ім`я файлу/папки, щоб побачити опції',
|
||||
'Upload_base' => 'Основне завантаження',
|
||||
'Upload_url' => 'URL',
|
||||
'Upload_java' => 'JAVA-завантаження (для файлів великих розмірів)',
|
||||
'Upload_java_help' => "Якщо Java-апплет не завантажується: 1. переконайтесь, що Java встановлено на вашому комп`ютері, інакше <a href='http://java.com/en/download/'>[завантажте]</a> 2. переконайтесь, що фаєрвол нічого не блокує",
|
||||
'Upload_base_help' => "Перетягніть файли в область, що вище або клікніть по ній мишкою (для сучасних браузерів), в іншому разі виберіть файл та натисніть кнопку. Коли завантаження закінчиться - натисніть кнопку повернення.",
|
||||
'Type_dir' => 'Тека',
|
||||
'Type' => 'Тип',
|
||||
'Dimension' => 'Розмір',
|
||||
'Size' => 'Об`єм',
|
||||
'Date' => 'Дата',
|
||||
'Filename' => 'Ім`я файлу',
|
||||
'Operations' => 'Дії',
|
||||
'Date_type' => 'd-m-y',
|
||||
'OK' => 'OK',
|
||||
'Cancel' => 'Відміна',
|
||||
'Sorting' => 'Сортування',
|
||||
'Show_url' => 'Показати URL',
|
||||
'Extract' => 'Видобути тут',
|
||||
'File_info' => 'Інфо файла',
|
||||
'Edit_image' => 'Редагувати зображення',
|
||||
'Duplicate' => 'Дублікати',
|
||||
'Folders' => 'Папки',
|
||||
'Copy' => 'Копіювати',
|
||||
'Cut' => 'Вирізати',
|
||||
'Paste' => 'Вставити',
|
||||
'CB' => 'БО', // clipboard
|
||||
'Paste_Here' => 'Вставити в цю теку',
|
||||
'Paste_Confirm' => 'Ви впевнені, що хочете вставити в цю теку? Це перезапише всі файли/папки, якщо такі будуть.',
|
||||
'Paste_Failed' => 'Помилка вставки файлів',
|
||||
'Clear_Clipboard' => 'Очистити буфер обміну',
|
||||
'Clear_Clipboard_Confirm' => 'Ви впевнені, що хочете очистити буфер обміну?',
|
||||
'Files_ON_Clipboard' => 'Немає файлів у буфері обміну.',
|
||||
'Copy_Cut_Size_Limit' => 'Вибрані файли/папки завеликі для %s. Обмеження: %d MB/операцію', // %s = cut or copy
|
||||
'Copy_Cut_Count_Limit' => 'Ви вибрали забагато файлів/папок для %s. Обмеження: %d файлів/операцію', // %s = cut or copy
|
||||
'Copy_Cut_Not_Allowed' => 'У вас немає прав доступу для %s файлів.', // %s(1) = cut or copy, %s(2) = files or folders
|
||||
'Aviary_No_Save' => 'Неможливо зберегти зображення',
|
||||
'Zip_No_Extract' => 'Неможливо видобути. Файл може бути пошкодженим',
|
||||
'Zip_Invalid' => 'Це розширення не підтримується. Можливі: zip, gz, tar.',
|
||||
'Dir_No_Write' => 'Обрана тека захищена від запису.',
|
||||
'Function_Disabled' => 'Функція %s заборонена сервером.', // %s = cut or copy
|
||||
'File_Permission' => 'Права доступу',
|
||||
'File_Permission_Not_Allowed' => 'Зміна прав доступу для %s заборонена.', // %s = files or folders
|
||||
'File_Permission_Recursive' => 'Застосувати рекурсивно?',
|
||||
'File_Permission_Wrong_Mode' => "Наданы права доступу невірні.",
|
||||
'User' => 'Користувач',
|
||||
'Group' => 'Група',
|
||||
'Yes' => 'Так',
|
||||
'No' => 'Ні',
|
||||
'Lang_Not_Found' => 'Не можу знайти мову.',
|
||||
'Lang_Change' => 'Зміна мови',
|
||||
'File_Not_Found' => 'Не можу знайти файл.',
|
||||
'File_Open_Edit_Not_Allowed' => 'У вас немає прав для відкриття цього файлу %s.', // %s = open or edit
|
||||
'Edit' => 'Редагувати',
|
||||
'Edit_File' => "Редагувати вміст файлу",
|
||||
'File_Save_OK' => "Файл успішно збережено.",
|
||||
'File_Save_Error' => "Виникла помилка при збереженні файлу.",
|
||||
'New_File' => 'Новий файл',
|
||||
'No_Extension' => 'Вам необхідно додати розширення файлу.',
|
||||
'Valid_Extensions' => 'Дозволені розширення: %s', // %s = txt,log etc.
|
||||
'Upload_message' => "Перетягніть сюди файл для завантаження",
|
||||
|
||||
'SERVER ERROR' => "ПОМИЛКА СЕРВЕРА",
|
||||
'forbiden' => "Заборонено",
|
||||
'wrong path' => "Хибний шлях",
|
||||
'wrong name' => "Хибне ім`я",
|
||||
'wrong extension' => "Хибне розширення",
|
||||
'wrong option' => "Хибна операція",
|
||||
'wrong data' => "Хибні дані",
|
||||
'wrong action' => "Хибна дія",
|
||||
'wrong sub-action' => "Хибна під-дія",
|
||||
'no action passed' => "Жодної дії не передано",
|
||||
'no path' => "Немає шляху",
|
||||
'no file' => "Немає файлу",
|
||||
'view type number missing' => "Відсутній номер типу перегляду",
|
||||
'Not enought Memory' => "Недостатньо пам`яті",
|
||||
'max_size_reached' => "Ваша тека досягла максимального ліміту у %d Мб.", //%d = max overall size
|
||||
'B' => "Б",
|
||||
'KB' => "Кб",
|
||||
'MB' => "Мб",
|
||||
'GB' => "Гб",
|
||||
'TB' => "Тб",
|
||||
'total size' => "Загальний розмір",
|
||||
);
|
||||
<?php
|
||||
|
||||
return array(
|
||||
|
||||
'Select' => 'Вибрати',
|
||||
'Erase' => 'Видалити',
|
||||
'Open' => 'Відкрити',
|
||||
'Confirm_del' => 'Впевнені, що хочете видалити цей файл?',
|
||||
'All' => 'Всі',
|
||||
'Files' => 'Файли',
|
||||
'Images' => 'Зображення',
|
||||
'Archives' => 'Архіви',
|
||||
'Error_Upload' => 'Файл, що завантажується перевищує дозволений розмір.',
|
||||
'Error_extension' => 'Неприпустимий формат файлу.',
|
||||
'Upload_file' => 'Завантажити файл',
|
||||
'Filters' => 'Фільтр',
|
||||
'Videos' => 'Відео',
|
||||
'Music' => 'Музика',
|
||||
'New_Folder' => 'Нова тека',
|
||||
'Folder_Created' => 'Теку успішно створено',
|
||||
'Existing_Folder' => 'Існуюча тека',
|
||||
'Confirm_Folder_del' => 'Впевнені, що хочете видалити цю теку і всі файли в ній?',
|
||||
'Return_Files_List' => 'Повернутися до списку файлів',
|
||||
'Preview' => 'Перегляд',
|
||||
'Download' => 'Завантажити',
|
||||
'Insert_Folder_Name' => 'Введіть ім`я папки:',
|
||||
'Root' => 'Коренева тека',
|
||||
'Rename' => 'Переіменувати',
|
||||
'Back' => 'назад',
|
||||
'View' => 'Вигляд',
|
||||
'View_list' => 'Список',
|
||||
'View_columns_list' => 'Стовпчики',
|
||||
'View_boxes' => 'Плиткою',
|
||||
'Toolbar' => 'Панель',
|
||||
'Actions' => 'Дії',
|
||||
'Rename_existing_file' => 'Файл вже існує',
|
||||
'Rename_existing_folder' => 'Тека вже існує',
|
||||
'Empty_name' => 'Не заповнено ім`я',
|
||||
'Text_filter' => 'фільтр',
|
||||
'Swipe_help' => 'Наведіть на ім`я файлу/папки, щоб побачити опції',
|
||||
'Upload_base' => 'Основне завантаження',
|
||||
'Upload_url' => 'URL',
|
||||
'Upload_java' => 'JAVA-завантаження (для файлів великих розмірів)',
|
||||
'Upload_java_help' => "Якщо Java-апплет не завантажується: 1. переконайтесь, що Java встановлено на вашому комп`ютері, інакше <a href='http://java.com/en/download/'>[завантажте]</a> 2. переконайтесь, що фаєрвол нічого не блокує",
|
||||
'Upload_base_help' => "Перетягніть файли в область, що вище або клікніть по ній мишкою (для сучасних браузерів), в іншому разі виберіть файл та натисніть кнопку. Коли завантаження закінчиться - натисніть кнопку повернення.",
|
||||
'Type_dir' => 'Тека',
|
||||
'Type' => 'Тип',
|
||||
'Dimension' => 'Розмір',
|
||||
'Size' => 'Об`єм',
|
||||
'Date' => 'Дата',
|
||||
'Filename' => 'Ім`я файлу',
|
||||
'Operations' => 'Дії',
|
||||
'Date_type' => 'd-m-y',
|
||||
'OK' => 'OK',
|
||||
'Cancel' => 'Відміна',
|
||||
'Sorting' => 'Сортування',
|
||||
'Show_url' => 'Показати URL',
|
||||
'Extract' => 'Видобути тут',
|
||||
'File_info' => 'Інфо файла',
|
||||
'Edit_image' => 'Редагувати зображення',
|
||||
'Duplicate' => 'Дублікати',
|
||||
'Folders' => 'Папки',
|
||||
'Copy' => 'Копіювати',
|
||||
'Cut' => 'Вирізати',
|
||||
'Paste' => 'Вставити',
|
||||
'CB' => 'БО', // clipboard
|
||||
'Paste_Here' => 'Вставити в цю теку',
|
||||
'Paste_Confirm' => 'Ви впевнені, що хочете вставити в цю теку? Це перезапише всі файли/папки, якщо такі будуть.',
|
||||
'Paste_Failed' => 'Помилка вставки файлів',
|
||||
'Clear_Clipboard' => 'Очистити буфер обміну',
|
||||
'Clear_Clipboard_Confirm' => 'Ви впевнені, що хочете очистити буфер обміну?',
|
||||
'Files_ON_Clipboard' => 'Немає файлів у буфері обміну.',
|
||||
'Copy_Cut_Size_Limit' => 'Вибрані файли/папки завеликі для %s. Обмеження: %d MB/операцію', // %s = cut or copy
|
||||
'Copy_Cut_Count_Limit' => 'Ви вибрали забагато файлів/папок для %s. Обмеження: %d файлів/операцію', // %s = cut or copy
|
||||
'Copy_Cut_Not_Allowed' => 'У вас немає прав доступу для %s файлів.', // %s(1) = cut or copy, %s(2) = files or folders
|
||||
'Aviary_No_Save' => 'Неможливо зберегти зображення',
|
||||
'Zip_No_Extract' => 'Неможливо видобути. Файл може бути пошкодженим',
|
||||
'Zip_Invalid' => 'Це розширення не підтримується. Можливі: zip, gz, tar.',
|
||||
'Dir_No_Write' => 'Обрана тека захищена від запису.',
|
||||
'Function_Disabled' => 'Функція %s заборонена сервером.', // %s = cut or copy
|
||||
'File_Permission' => 'Права доступу',
|
||||
'File_Permission_Not_Allowed' => 'Зміна прав доступу для %s заборонена.', // %s = files or folders
|
||||
'File_Permission_Recursive' => 'Застосувати рекурсивно?',
|
||||
'File_Permission_Wrong_Mode' => "Наданы права доступу невірні.",
|
||||
'User' => 'Користувач',
|
||||
'Group' => 'Група',
|
||||
'Yes' => 'Так',
|
||||
'No' => 'Ні',
|
||||
'Lang_Not_Found' => 'Не можу знайти мову.',
|
||||
'Lang_Change' => 'Зміна мови',
|
||||
'File_Not_Found' => 'Не можу знайти файл.',
|
||||
'File_Open_Edit_Not_Allowed' => 'У вас немає прав для відкриття цього файлу %s.', // %s = open or edit
|
||||
'Edit' => 'Редагувати',
|
||||
'Edit_File' => "Редагувати вміст файлу",
|
||||
'File_Save_OK' => "Файл успішно збережено.",
|
||||
'File_Save_Error' => "Виникла помилка при збереженні файлу.",
|
||||
'New_File' => 'Новий файл',
|
||||
'No_Extension' => 'Вам необхідно додати розширення файлу.',
|
||||
'Valid_Extensions' => 'Дозволені розширення: %s', // %s = txt,log etc.
|
||||
'Upload_message' => "Перетягніть сюди файл для завантаження",
|
||||
|
||||
'SERVER ERROR' => "ПОМИЛКА СЕРВЕРА",
|
||||
'forbiden' => "Заборонено",
|
||||
'wrong path' => "Хибний шлях",
|
||||
'wrong name' => "Хибне ім`я",
|
||||
'wrong extension' => "Хибне розширення",
|
||||
'wrong option' => "Хибна операція",
|
||||
'wrong data' => "Хибні дані",
|
||||
'wrong action' => "Хибна дія",
|
||||
'wrong sub-action' => "Хибна під-дія",
|
||||
'no action passed' => "Жодної дії не передано",
|
||||
'no path' => "Немає шляху",
|
||||
'no file' => "Немає файлу",
|
||||
'view type number missing' => "Відсутній номер типу перегляду",
|
||||
'Not enought Memory' => "Недостатньо пам`яті",
|
||||
'max_size_reached' => "Ваша тека досягла максимального ліміту у %d Мб.", //%d = max overall size
|
||||
'B' => "Б",
|
||||
'KB' => "Кб",
|
||||
'MB' => "Мб",
|
||||
'GB' => "Гб",
|
||||
'TB' => "Тб",
|
||||
'total size' => "Загальний розмір",
|
||||
);
|
||||
|
||||
@@ -1,166 +1,166 @@
|
||||
<?php
|
||||
|
||||
$config = include '../config/config.php';
|
||||
//TODO switch to array
|
||||
extract($config, EXTR_OVERWRITE);
|
||||
|
||||
if ( ! $java_upload)
|
||||
{
|
||||
die('forbidden');
|
||||
}
|
||||
if ($_SESSION['RF']["verify"] != "RESPONSIVEfilemanager")
|
||||
{
|
||||
die('forbidden');
|
||||
}
|
||||
|
||||
//Let's load the 'interesting' stuff ... ;-)
|
||||
include 'jupload.php';
|
||||
include '../include/utils.php';
|
||||
|
||||
$path = $current_path . $_GET['path'];
|
||||
$cycle = true;
|
||||
$max_cycles = 50;
|
||||
$i = 0;
|
||||
while ($cycle && $i < $max_cycles)
|
||||
{
|
||||
$i++;
|
||||
if ($path == $current_path)
|
||||
{
|
||||
$cycle = false;
|
||||
}
|
||||
|
||||
if (file_exists($path . "config.php"))
|
||||
{
|
||||
require_once $path . "config.php";
|
||||
$cycle = false;
|
||||
}
|
||||
$path = fix_dirname($path) . "/";
|
||||
}
|
||||
|
||||
$path = "../" . $current_path . $_GET['path'];
|
||||
|
||||
if (strpos($_GET['path'], '../') !== false || strpos($_GET['path'], './') !== false || strpos($_GET['path'], '/') === 0)
|
||||
{
|
||||
die ('path error');
|
||||
}
|
||||
|
||||
$path = str_replace(' ', '~', $path);
|
||||
////////////////////////////////////////////////////////////////////////////////////////////////////////
|
||||
/////////////// The user callback function, that can be called after upload ////////////////////////
|
||||
////////////////////////////////////////////////////////////////////////////////////////////////////////
|
||||
/**
|
||||
* This function will be called, once all files are uploaded, with the list of uploaded files as an argument.
|
||||
*
|
||||
* Condition to have this function called:
|
||||
* - Have the applet parameter afterUploadURL unset in this file. This makes the applet use its default behavior, that
|
||||
* is: afterUploadURL is the current web page, with the ?afterupload=1 parameter added.
|
||||
* - Have the class parameter callbackAfterUploadManagement set to 'handle_uploaded_files', name of this callback. You
|
||||
* can use any name you want, but the function must accept one unique parameter: the array that contains the file
|
||||
* descriptions.
|
||||
*
|
||||
* @param $juploadPhpSupportClass The instance of the JUpload PHP class.
|
||||
* @param $file The array wich contains info about all uploaded files.
|
||||
*/
|
||||
function handle_uploaded_files($juploadPhpSupportClass, $files)
|
||||
{
|
||||
return
|
||||
"<P>We are in the 'handle_uploaded_files' callback function, in the index.php script. To avoid double coding, we "
|
||||
. "just call the default behavior of the JUpload PHP class. Just replace this by your code...</P>"
|
||||
. $juploadPhpSupportClass->defaultAfterUploadManagement();;
|
||||
|
||||
}
|
||||
|
||||
////////////////////////////////////////////////////////////////////////////////////////////////////////
|
||||
|
||||
|
||||
//First: the applet parameters
|
||||
//
|
||||
// Default value should work nice on most configuration. In this sample, we use some specific parameters, to show
|
||||
// how to use this array.
|
||||
// See comment for the parameters used on this demo page.
|
||||
//
|
||||
// You can use all applet parameters in this array.
|
||||
// see all details http://jupload.sourceforge.net/howto-customization.html
|
||||
//
|
||||
$appletParameters = array(
|
||||
//Default value is ... maximum size for a file on the current FS. 2G is problably too much already.
|
||||
'maxFileSize' => $JAVAMaxSizeUpload . 'G',
|
||||
//
|
||||
//In the sourceforge project structure, the applet jar file is one folder below. Default
|
||||
//configuration is ok, if wjhk.jupload.jar is in the same folder as the script containing this call.
|
||||
'archive' => 'wjhk.jupload.jar',
|
||||
'showLogWindow' => 'false',
|
||||
'width' => '100%',
|
||||
'height' => '358px',
|
||||
'name' => 'No limit Uploader',
|
||||
'allowedFileExtensions' => implode('/', $ext),
|
||||
//To manage, other jar files, like the ftp jar files if postURL is an FTP URL:
|
||||
//'archive' => 'wjhk.jupload.jar,jakarta-commons-oro.jar,jakarta-commons-net.jar',
|
||||
//
|
||||
//Default afterUploadURL displays the list of uploaded files above the applet (in the <!--JUPLOAD_FILES--> markers, see below)
|
||||
//You can use any page you want, to manage the uploaded files. Here is a sample, that also only shows the list of files.
|
||||
'afterUploadURL' => 'success.php?path=' . $_GET['path'],
|
||||
//
|
||||
//This demo expects the md5sum to be sent by the applet. But the parameter is not mandatory
|
||||
//This value should be set to false (or the line commented), for big files, as md5 calculation
|
||||
//may be long (Note this must be string and *not* boolean true/false)
|
||||
'sendMD5Sum' => 'false',
|
||||
//
|
||||
'debugLevel' => 0 // 100 disables redirect after upload, so we keep it below. This still gives a lot of information, in case of problem.
|
||||
);
|
||||
|
||||
// for htaccess protected folders
|
||||
if ((isset($_SERVER['PHP_AUTH_USER']) && $_SERVER['PHP_AUTH_USER'] != '') && $_SERVER['PHP_AUTH_USER'] != '' && $_SERVER['PHP_AUTH_USER'] != '')
|
||||
{
|
||||
$appletParameters['specificHeaders'] = 'Authorization: Basic ' . base64_encode($_SERVER['PHP_AUTH_USER'] . ":" . $_SERVER['PHP_AUTH_PW']);
|
||||
}
|
||||
|
||||
//
|
||||
//Then: the jupload PHP class parameters
|
||||
$classParameters = array(
|
||||
//Files won't be stored on the server. Useful for first tests of the applet behavior ... and sourceforge demo site !
|
||||
'demo_mode' => false,
|
||||
//
|
||||
//Allow creation of subdirectories, when uploading several folders/files (drag and drop a folder on the applet to use it).
|
||||
'allow_subdirs' => true,
|
||||
//
|
||||
// The callbackAfterUploadManagement function will be called, once all files are uploaded, with the list
|
||||
//of uploaded files as an argument. See the above sample, and change it according to your needs.
|
||||
//'callbackAfterUploadManagement' => 'handle_uploaded_files',
|
||||
//
|
||||
//I work on windows. The default configuration is /var/tmp/jupload_test
|
||||
'destdir' => $path //Where to store the files on the web
|
||||
//'errormail' => 'me@my.domain.org',
|
||||
);
|
||||
if ( ! empty($convert_spaces))
|
||||
{
|
||||
$classParameters['convert_spaces'] = true;
|
||||
}
|
||||
|
||||
////////////////////////////////////////////////////////////////////////////////////////////////////////
|
||||
// Instantiate and initialize JUpload : integration of the applet in your web site.
|
||||
$juploadPhpSupportClass = new JUpload($appletParameters, $classParameters);
|
||||
////////////////////////////////////////////////////////////////////////////////////////////////////////
|
||||
|
||||
|
||||
//Then, a simple HTML page, for the demo
|
||||
//
|
||||
// "<!--JUPLOAD_FILES-->" is the tag where the list of uploaded files will be written.
|
||||
// "<!--JUPLOAD_APPLET-->" is the place where the applet will be integrated, in the web page.
|
||||
?>
|
||||
<html>
|
||||
<head>
|
||||
<!--JUPLOAD_JSCRIPT-->
|
||||
<title>JUpload RESPONSIVE filemanager</title>
|
||||
<style>
|
||||
body {
|
||||
padding: 0px;
|
||||
margin: 0px;
|
||||
}
|
||||
</style>
|
||||
</head>
|
||||
<body>
|
||||
<div align="center"><!--JUPLOAD_FILES--></div>
|
||||
<div align="center"><!--JUPLOAD_APPLET--></div>
|
||||
</body>
|
||||
<?php
|
||||
|
||||
$config = include '../config/config.php';
|
||||
//TODO switch to array
|
||||
extract($config, EXTR_OVERWRITE);
|
||||
|
||||
if ( ! $java_upload)
|
||||
{
|
||||
die('forbidden');
|
||||
}
|
||||
if ($_SESSION['RF']["verify"] != "RESPONSIVEfilemanager")
|
||||
{
|
||||
die('forbidden');
|
||||
}
|
||||
|
||||
//Let's load the 'interesting' stuff ... ;-)
|
||||
include 'jupload.php';
|
||||
include '../include/utils.php';
|
||||
|
||||
$path = $current_path . $_GET['path'];
|
||||
$cycle = true;
|
||||
$max_cycles = 50;
|
||||
$i = 0;
|
||||
while ($cycle && $i < $max_cycles)
|
||||
{
|
||||
$i++;
|
||||
if ($path == $current_path)
|
||||
{
|
||||
$cycle = false;
|
||||
}
|
||||
|
||||
if (file_exists($path . "config.php"))
|
||||
{
|
||||
require_once $path . "config.php";
|
||||
$cycle = false;
|
||||
}
|
||||
$path = fix_dirname($path) . "/";
|
||||
}
|
||||
|
||||
$path = "../" . $current_path . $_GET['path'];
|
||||
|
||||
if (strpos($_GET['path'], '../') !== false || strpos($_GET['path'], './') !== false || strpos($_GET['path'], '/') === 0)
|
||||
{
|
||||
die ('path error');
|
||||
}
|
||||
|
||||
$path = str_replace(' ', '~', $path);
|
||||
////////////////////////////////////////////////////////////////////////////////////////////////////////
|
||||
/////////////// The user callback function, that can be called after upload ////////////////////////
|
||||
////////////////////////////////////////////////////////////////////////////////////////////////////////
|
||||
/**
|
||||
* This function will be called, once all files are uploaded, with the list of uploaded files as an argument.
|
||||
*
|
||||
* Condition to have this function called:
|
||||
* - Have the applet parameter afterUploadURL unset in this file. This makes the applet use its default behavior, that
|
||||
* is: afterUploadURL is the current web page, with the ?afterupload=1 parameter added.
|
||||
* - Have the class parameter callbackAfterUploadManagement set to 'handle_uploaded_files', name of this callback. You
|
||||
* can use any name you want, but the function must accept one unique parameter: the array that contains the file
|
||||
* descriptions.
|
||||
*
|
||||
* @param $juploadPhpSupportClass The instance of the JUpload PHP class.
|
||||
* @param $file The array wich contains info about all uploaded files.
|
||||
*/
|
||||
function handle_uploaded_files($juploadPhpSupportClass, $files)
|
||||
{
|
||||
return
|
||||
"<P>We are in the 'handle_uploaded_files' callback function, in the index.php script. To avoid double coding, we "
|
||||
. "just call the default behavior of the JUpload PHP class. Just replace this by your code...</P>"
|
||||
. $juploadPhpSupportClass->defaultAfterUploadManagement();;
|
||||
|
||||
}
|
||||
|
||||
////////////////////////////////////////////////////////////////////////////////////////////////////////
|
||||
|
||||
|
||||
//First: the applet parameters
|
||||
//
|
||||
// Default value should work nice on most configuration. In this sample, we use some specific parameters, to show
|
||||
// how to use this array.
|
||||
// See comment for the parameters used on this demo page.
|
||||
//
|
||||
// You can use all applet parameters in this array.
|
||||
// see all details http://jupload.sourceforge.net/howto-customization.html
|
||||
//
|
||||
$appletParameters = array(
|
||||
//Default value is ... maximum size for a file on the current FS. 2G is problably too much already.
|
||||
'maxFileSize' => $JAVAMaxSizeUpload . 'G',
|
||||
//
|
||||
//In the sourceforge project structure, the applet jar file is one folder below. Default
|
||||
//configuration is ok, if wjhk.jupload.jar is in the same folder as the script containing this call.
|
||||
'archive' => 'wjhk.jupload.jar',
|
||||
'showLogWindow' => 'false',
|
||||
'width' => '100%',
|
||||
'height' => '358px',
|
||||
'name' => 'No limit Uploader',
|
||||
'allowedFileExtensions' => implode('/', $ext),
|
||||
//To manage, other jar files, like the ftp jar files if postURL is an FTP URL:
|
||||
//'archive' => 'wjhk.jupload.jar,jakarta-commons-oro.jar,jakarta-commons-net.jar',
|
||||
//
|
||||
//Default afterUploadURL displays the list of uploaded files above the applet (in the <!--JUPLOAD_FILES--> markers, see below)
|
||||
//You can use any page you want, to manage the uploaded files. Here is a sample, that also only shows the list of files.
|
||||
'afterUploadURL' => 'success.php?path=' . $_GET['path'],
|
||||
//
|
||||
//This demo expects the md5sum to be sent by the applet. But the parameter is not mandatory
|
||||
//This value should be set to false (or the line commented), for big files, as md5 calculation
|
||||
//may be long (Note this must be string and *not* boolean true/false)
|
||||
'sendMD5Sum' => 'false',
|
||||
//
|
||||
'debugLevel' => 0 // 100 disables redirect after upload, so we keep it below. This still gives a lot of information, in case of problem.
|
||||
);
|
||||
|
||||
// for htaccess protected folders
|
||||
if ((isset($_SERVER['PHP_AUTH_USER']) && $_SERVER['PHP_AUTH_USER'] != '') && $_SERVER['PHP_AUTH_USER'] != '' && $_SERVER['PHP_AUTH_USER'] != '')
|
||||
{
|
||||
$appletParameters['specificHeaders'] = 'Authorization: Basic ' . base64_encode($_SERVER['PHP_AUTH_USER'] . ":" . $_SERVER['PHP_AUTH_PW']);
|
||||
}
|
||||
|
||||
//
|
||||
//Then: the jupload PHP class parameters
|
||||
$classParameters = array(
|
||||
//Files won't be stored on the server. Useful for first tests of the applet behavior ... and sourceforge demo site !
|
||||
'demo_mode' => false,
|
||||
//
|
||||
//Allow creation of subdirectories, when uploading several folders/files (drag and drop a folder on the applet to use it).
|
||||
'allow_subdirs' => true,
|
||||
//
|
||||
// The callbackAfterUploadManagement function will be called, once all files are uploaded, with the list
|
||||
//of uploaded files as an argument. See the above sample, and change it according to your needs.
|
||||
//'callbackAfterUploadManagement' => 'handle_uploaded_files',
|
||||
//
|
||||
//I work on windows. The default configuration is /var/tmp/jupload_test
|
||||
'destdir' => $path //Where to store the files on the web
|
||||
//'errormail' => 'me@my.domain.org',
|
||||
);
|
||||
if ( ! empty($convert_spaces))
|
||||
{
|
||||
$classParameters['convert_spaces'] = true;
|
||||
}
|
||||
|
||||
////////////////////////////////////////////////////////////////////////////////////////////////////////
|
||||
// Instantiate and initialize JUpload : integration of the applet in your web site.
|
||||
$juploadPhpSupportClass = new JUpload($appletParameters, $classParameters);
|
||||
////////////////////////////////////////////////////////////////////////////////////////////////////////
|
||||
|
||||
|
||||
//Then, a simple HTML page, for the demo
|
||||
//
|
||||
// "<!--JUPLOAD_FILES-->" is the tag where the list of uploaded files will be written.
|
||||
// "<!--JUPLOAD_APPLET-->" is the place where the applet will be integrated, in the web page.
|
||||
?>
|
||||
<html>
|
||||
<head>
|
||||
<!--JUPLOAD_JSCRIPT-->
|
||||
<title>JUpload RESPONSIVE filemanager</title>
|
||||
<style>
|
||||
body {
|
||||
padding: 0px;
|
||||
margin: 0px;
|
||||
}
|
||||
</style>
|
||||
</head>
|
||||
<body>
|
||||
<div align="center"><!--JUPLOAD_FILES--></div>
|
||||
<div align="center"><!--JUPLOAD_APPLET--></div>
|
||||
</body>
|
||||
</html>
|
||||
@@ -1,19 +1,19 @@
|
||||
<html>
|
||||
<head>
|
||||
<!--JUPLOAD_JSCRIPT-->
|
||||
<title>JUpload RESPONSIVE filemanager</title>
|
||||
<style>
|
||||
body {
|
||||
padding: 0px;
|
||||
margin: 0px;
|
||||
}
|
||||
</style>
|
||||
<meta http-equiv="refresh"
|
||||
content="3;url=index.php?path=<?php echo strip_tags(preg_replace("/[^a-zA-Z0-9\.\[\]_| -]/", '', $_GET['path'])); ?>">
|
||||
</head>
|
||||
<body>
|
||||
<center><br/><br/>
|
||||
<img src="success.jpg" alt="success">
|
||||
</center>
|
||||
</body>
|
||||
<html>
|
||||
<head>
|
||||
<!--JUPLOAD_JSCRIPT-->
|
||||
<title>JUpload RESPONSIVE filemanager</title>
|
||||
<style>
|
||||
body {
|
||||
padding: 0px;
|
||||
margin: 0px;
|
||||
}
|
||||
</style>
|
||||
<meta http-equiv="refresh"
|
||||
content="3;url=index.php?path=<?php echo strip_tags(preg_replace("/[^a-zA-Z0-9\.\[\]_| -]/", '', $_GET['path'])); ?>">
|
||||
</head>
|
||||
<body>
|
||||
<center><br/><br/>
|
||||
<img src="success.jpg" alt="success">
|
||||
</center>
|
||||
</body>
|
||||
</html>
|
||||
@@ -1,10 +1,10 @@
|
||||
tinymce.addI18n('ru',{
|
||||
'YouTube Title' : "Вставить видео YouTube",
|
||||
'Youtube URL' : 'Ссылка',
|
||||
'Youtube ID' : 'Формат ссылки: http://youtu.be/xxxxxxxx или http://www.youtube.com/watch?v=xxxxxxxx',
|
||||
'width' : 'Ширина',
|
||||
'height' : 'Высота',
|
||||
'autoplay' : 'Автозапуск',
|
||||
'Related video' : 'Похожие видео',
|
||||
'HD video' : 'В формате HD'
|
||||
tinymce.addI18n('ru',{
|
||||
'YouTube Title' : "Вставить видео YouTube",
|
||||
'Youtube URL' : 'Ссылка',
|
||||
'Youtube ID' : 'Формат ссылки: http://youtu.be/xxxxxxxx или http://www.youtube.com/watch?v=xxxxxxxx',
|
||||
'width' : 'Ширина',
|
||||
'height' : 'Высота',
|
||||
'autoplay' : 'Автозапуск',
|
||||
'Related video' : 'Похожие видео',
|
||||
'HD video' : 'В формате HD'
|
||||
});
|
||||
@@ -4,13 +4,13 @@
|
||||
<meta charset="utf-8">
|
||||
<meta content="width=device-width, initial-scale=1.0" name="viewport">
|
||||
<title>YouTube</title>
|
||||
<link href="./css/styles.css" rel="stylesheet">
|
||||
<link href="./css/styles.css" rel="stylesheet">
|
||||
<!--[if lt IE 9]>
|
||||
<script type="text/javascript" src="http://html5shiv.googlecode.com/svn/trunk/html5.js"></script>
|
||||
<![endif]-->
|
||||
<script src="//ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min.js"></script>
|
||||
<script>window.jQuery || document.write('<script src="./js/vendor/jquery.js"><\/script>')</script>
|
||||
<script src="./js/main.js"></script>
|
||||
<script src="./js/main.js"></script>
|
||||
</head>
|
||||
<body>
|
||||
<div class="container">
|
||||
|
||||
52
php-cs.bat
@@ -1,27 +1,27 @@
|
||||
@echo off
|
||||
echo Running php-cs-fixer...
|
||||
call php-cs-fixer fix core\lib\Thelia\Action --level=psr2
|
||||
call php-cs-fixer fix core\lib\Thelia\Command --level=psr2
|
||||
call php-cs-fixer fix core\lib\Thelia\Condition --level=psr2
|
||||
call php-cs-fixer fix core\lib\Thelia\Config --level=psr2
|
||||
call php-cs-fixer fix core\lib\Thelia\Controller --level=psr2
|
||||
call php-cs-fixer fix core\lib\Thelia\Core --level=psr2
|
||||
call php-cs-fixer fix core\lib\Thelia\Coupon --level=psr2
|
||||
call php-cs-fixer fix core\lib\Thelia\Exception --level=psr2
|
||||
call php-cs-fixer fix core\lib\Thelia\Files --level=psr2
|
||||
call php-cs-fixer fix core\lib\Thelia\Form --level=psr2
|
||||
call php-cs-fixer fix core\lib\Thelia\ImportExport --level=psr2
|
||||
call php-cs-fixer fix core\lib\Thelia\Install --level=psr2
|
||||
call php-cs-fixer fix core\lib\Thelia\Log --level=psr2
|
||||
call php-cs-fixer fix core\lib\Thelia\Mailer --level=psr2
|
||||
for %%F in (core\lib\Thelia\Model\*.php) DO call php-cs-fixer fix %%F --level=psr2
|
||||
call php-cs-fixer fix core\lib\Thelia\Model\Breadcrumb --level=psr2
|
||||
call php-cs-fixer fix core\lib\Thelia\Model\Exception --level=psr2
|
||||
call php-cs-fixer fix core\lib\Thelia\Model\Tools --level=psr2
|
||||
call php-cs-fixer fix core\lib\Thelia\Module --level=psr2
|
||||
call php-cs-fixer fix core\lib\Thelia\Rewriting --level=psr2
|
||||
call php-cs-fixer fix core\lib\Thelia\TaxEngine --level=psr2
|
||||
call php-cs-fixer fix tests\phpunit\Thelia\Tests --level=psr2
|
||||
call php-cs-fixer fix core\lib\Thelia\Tools --level=psr2
|
||||
call php-cs-fixer fix core\lib\Thelia\Type --level=psr2
|
||||
@echo off
|
||||
echo Running php-cs-fixer...
|
||||
call php-cs-fixer fix core\lib\Thelia\Action --level=psr2
|
||||
call php-cs-fixer fix core\lib\Thelia\Command --level=psr2
|
||||
call php-cs-fixer fix core\lib\Thelia\Condition --level=psr2
|
||||
call php-cs-fixer fix core\lib\Thelia\Config --level=psr2
|
||||
call php-cs-fixer fix core\lib\Thelia\Controller --level=psr2
|
||||
call php-cs-fixer fix core\lib\Thelia\Core --level=psr2
|
||||
call php-cs-fixer fix core\lib\Thelia\Coupon --level=psr2
|
||||
call php-cs-fixer fix core\lib\Thelia\Exception --level=psr2
|
||||
call php-cs-fixer fix core\lib\Thelia\Files --level=psr2
|
||||
call php-cs-fixer fix core\lib\Thelia\Form --level=psr2
|
||||
call php-cs-fixer fix core\lib\Thelia\ImportExport --level=psr2
|
||||
call php-cs-fixer fix core\lib\Thelia\Install --level=psr2
|
||||
call php-cs-fixer fix core\lib\Thelia\Log --level=psr2
|
||||
call php-cs-fixer fix core\lib\Thelia\Mailer --level=psr2
|
||||
for %%F in (core\lib\Thelia\Model\*.php) DO call php-cs-fixer fix %%F --level=psr2
|
||||
call php-cs-fixer fix core\lib\Thelia\Model\Breadcrumb --level=psr2
|
||||
call php-cs-fixer fix core\lib\Thelia\Model\Exception --level=psr2
|
||||
call php-cs-fixer fix core\lib\Thelia\Model\Tools --level=psr2
|
||||
call php-cs-fixer fix core\lib\Thelia\Module --level=psr2
|
||||
call php-cs-fixer fix core\lib\Thelia\Rewriting --level=psr2
|
||||
call php-cs-fixer fix core\lib\Thelia\TaxEngine --level=psr2
|
||||
call php-cs-fixer fix tests\phpunit\Thelia\Tests --level=psr2
|
||||
call php-cs-fixer fix core\lib\Thelia\Tools --level=psr2
|
||||
call php-cs-fixer fix core\lib\Thelia\Type --level=psr2
|
||||
echo Done.
|
||||
@@ -1,53 +1,53 @@
|
||||
echo off
|
||||
REM @author Guillaume MOREL
|
||||
REM v0.1
|
||||
|
||||
echo [WARN] This script will reset this Thelia2 install, all data will be cleared.
|
||||
pause
|
||||
|
||||
if exist local\config\database.yml (
|
||||
|
||||
echo [INFO] Clearing caches
|
||||
php Thelia cache:clear
|
||||
|
||||
echo [INFO] Self-updating Composer
|
||||
composer self-update
|
||||
|
||||
echo [INFO] Downloading vendors
|
||||
composer install --prefer-dist --optimize-autoloader
|
||||
|
||||
cd local\config\
|
||||
|
||||
echo [INFO] Building Models file
|
||||
..\..\bin\propel build -v --output-dir=../../core/lib/ --enable-identifier-quoting
|
||||
|
||||
echo [INFO] Building SQL CREATE file
|
||||
..\..\bin\propel sql:build -v --output-dir=..\..\setup
|
||||
|
||||
echo [INFO] Reloading Thelia2 database
|
||||
cd ..\..
|
||||
del setup\sqldb.map
|
||||
php Thelia thelia:dev:reloadDB
|
||||
|
||||
echo [INFO] Installing fixtures
|
||||
php setup\faker.php
|
||||
|
||||
echo [INFO] Clearing caches
|
||||
php Thelia cache:clear
|
||||
|
||||
echo [INFO] Adding admin
|
||||
php Thelia admin:create --login_name thelia2 --password thelia2 --last_name thelia2 --first_name thelia2 --email thelia2@example.com
|
||||
|
||||
echo [INFO] Admin user thelia2 with password thelia2 and email admin@example.com successfully created.
|
||||
|
||||
echo [INFO] Activating Delivery Module
|
||||
php Thelia module:activate Colissimo
|
||||
|
||||
echo [INFO] Activating Payment Module
|
||||
php Thelia module:activate Cheque
|
||||
|
||||
echo [SUCCESS] Reset done
|
||||
)
|
||||
) else (
|
||||
echo [FAILED] Please add your database informations in local\config\database.yml and start this script again.
|
||||
)
|
||||
echo off
|
||||
REM @author Guillaume MOREL
|
||||
REM v0.1
|
||||
|
||||
echo [WARN] This script will reset this Thelia2 install, all data will be cleared.
|
||||
pause
|
||||
|
||||
if exist local\config\database.yml (
|
||||
|
||||
echo [INFO] Clearing caches
|
||||
php Thelia cache:clear
|
||||
|
||||
echo [INFO] Self-updating Composer
|
||||
composer self-update
|
||||
|
||||
echo [INFO] Downloading vendors
|
||||
composer install --prefer-dist --optimize-autoloader
|
||||
|
||||
cd local\config\
|
||||
|
||||
echo [INFO] Building Models file
|
||||
..\..\bin\propel build -v --output-dir=../../core/lib/ --enable-identifier-quoting
|
||||
|
||||
echo [INFO] Building SQL CREATE file
|
||||
..\..\bin\propel sql:build -v --output-dir=..\..\setup
|
||||
|
||||
echo [INFO] Reloading Thelia2 database
|
||||
cd ..\..
|
||||
del setup\sqldb.map
|
||||
php Thelia thelia:dev:reloadDB
|
||||
|
||||
echo [INFO] Installing fixtures
|
||||
php setup\faker.php
|
||||
|
||||
echo [INFO] Clearing caches
|
||||
php Thelia cache:clear
|
||||
|
||||
echo [INFO] Adding admin
|
||||
php Thelia admin:create --login_name thelia2 --password thelia2 --last_name thelia2 --first_name thelia2 --email thelia2@example.com
|
||||
|
||||
echo [INFO] Admin user thelia2 with password thelia2 and email admin@example.com successfully created.
|
||||
|
||||
echo [INFO] Activating Delivery Module
|
||||
php Thelia module:activate Colissimo
|
||||
|
||||
echo [INFO] Activating Payment Module
|
||||
php Thelia module:activate Cheque
|
||||
|
||||
echo [SUCCESS] Reset done
|
||||
)
|
||||
) else (
|
||||
echo [FAILED] Please add your database informations in local\config\database.yml and start this script again.
|
||||
)
|
||||
|
||||
@@ -1,3 +1,3 @@
|
||||
/* jqPlot 1.0.8r1250 | (c) 2009-2013 Chris Leonello | jplot.com
|
||||
jsDate | (c) 2010-2013 Chris Leonello
|
||||
/* jqPlot 1.0.8r1250 | (c) 2009-2013 Chris Leonello | jplot.com
|
||||
jsDate | (c) 2010-2013 Chris Leonello
|
||||
*/(function(a){a.jqplot.BlockRenderer=function(){a.jqplot.LineRenderer.call(this)};a.jqplot.BlockRenderer.prototype=new a.jqplot.LineRenderer();a.jqplot.BlockRenderer.prototype.constructor=a.jqplot.BlockRenderer;a.jqplot.BlockRenderer.prototype.init=function(b){this.css={padding:"2px",border:"1px solid #999",textAlign:"center"};this.escapeHtml=false;this.insertBreaks=true;this.varyBlockColors=false;a.extend(true,this,b);if(this.css.backgroundColor){this.color=this.css.backgroundColor}else{if(this.css.background){this.color=this.css.background}else{if(!this.varyBlockColors){this.css.background=this.color}}}this.canvas=new a.jqplot.BlockCanvas();this.shadowCanvas=new a.jqplot.BlockCanvas();this.canvas._plotDimensions=this._plotDimensions;this.shadowCanvas._plotDimensions=this._plotDimensions;this._type="block";this.moveBlock=function(l,j,i,e){var c=this.canvas._elem.children(":eq("+l+")");this.data[l][0]=j;this.data[l][1]=i;this._plotData[l][0]=j;this._plotData[l][1]=i;this._stackData[l][0]=j;this._stackData[l][1]=i;this.gridData[l][0]=this._xaxis.series_u2p(j);this.gridData[l][1]=this._yaxis.series_u2p(i);var k=c.outerWidth();var f=c.outerHeight();var d=this.gridData[l][0]-k/2+"px";var g=this.gridData[l][1]-f/2+"px";if(e){if(parseInt(e,10)){e=parseInt(e,10)}c.animate({left:d,top:g},e)}else{c.css({left:d,top:g})}c=null}};a.jqplot.BlockRenderer.prototype.draw=function(q,o,r){if(this.plugins.pointLabels){this.plugins.pointLabels.show=false}var f,c,l,o,p,k,n,g,e,m;var b=(r!=undefined)?r:{};var j=new a.jqplot.ColorGenerator(this.seriesColors);this.canvas._elem.empty();for(f=0;f<this.gridData.length;f++){l=this.data[f];o=this.gridData[f];p="";k={};if(typeof l[2]=="string"){p=l[2]}else{if(typeof l[2]=="object"){k=l[2]}}if(typeof l[3]=="object"){k=l[3]}if(this.insertBreaks){p=p.replace(/ /g,"<br />")}k=a.extend(true,{},this.css,k);c=a('<div style="position:absolute;margin-left:auto;margin-right:auto;"></div>');this.canvas._elem.append(c);this.escapeHtml?c.text(p):c.html(p);delete k.position;delete k.marginRight;delete k.marginLeft;if(!k.background&&!k.backgroundColor&&!k.backgroundImage){k.background=j.next()}c.css(k);n=c.outerWidth();g=c.outerHeight();e=o[0]-n/2+"px";m=o[1]-g/2+"px";c.css({left:e,top:m});c=null}};a.jqplot.BlockCanvas=function(){a.jqplot.ElemContainer.call(this);this._ctx};a.jqplot.BlockCanvas.prototype=new a.jqplot.ElemContainer();a.jqplot.BlockCanvas.prototype.constructor=a.jqplot.BlockCanvas;a.jqplot.BlockCanvas.prototype.createElement=function(i,e,c){this._offsets=i;var b="jqplot-blockCanvas";if(e!=undefined){b=e}var g;if(this._elem){g=this._elem.get(0)}else{g=document.createElement("div")}if(c!=undefined){this._plotDimensions=c}var d=this._plotDimensions.width-this._offsets.left-this._offsets.right+"px";var f=this._plotDimensions.height-this._offsets.top-this._offsets.bottom+"px";this._elem=a(g);this._elem.css({position:"absolute",width:d,height:f,left:this._offsets.left,top:this._offsets.top});this._elem.addClass(b);return this._elem};a.jqplot.BlockCanvas.prototype.setContext=function(){this._ctx={canvas:{width:0,height:0},clearRect:function(){return null}};return this._ctx}})(jQuery);
|
||||
@@ -1,3 +1,3 @@
|
||||
/* jqPlot 1.0.8r1250 | (c) 2009-2013 Chris Leonello | jplot.com
|
||||
jsDate | (c) 2010-2013 Chris Leonello
|
||||
/* jqPlot 1.0.8r1250 | (c) 2009-2013 Chris Leonello | jplot.com
|
||||
jsDate | (c) 2010-2013 Chris Leonello
|
||||
*/(function(a){a.jqplot.CanvasAxisLabelRenderer=function(b){this.angle=0;this.axis;this.show=true;this.showLabel=true;this.label="";this.fontFamily='"Trebuchet MS", Arial, Helvetica, sans-serif';this.fontSize="11pt";this.fontWeight="normal";this.fontStretch=1;this.textColor="#666666";this.enableFontSupport=true;this.pt2px=null;this._elem;this._ctx;this._plotWidth;this._plotHeight;this._plotDimensions={height:null,width:null};a.extend(true,this,b);if(b.angle==null&&this.axis!="xaxis"&&this.axis!="x2axis"){this.angle=-90}var c={fontSize:this.fontSize,fontWeight:this.fontWeight,fontStretch:this.fontStretch,fillStyle:this.textColor,angle:this.getAngleRad(),fontFamily:this.fontFamily};if(this.pt2px){c.pt2px=this.pt2px}if(this.enableFontSupport){if(a.jqplot.support_canvas_text()){this._textRenderer=new a.jqplot.CanvasFontRenderer(c)}else{this._textRenderer=new a.jqplot.CanvasTextRenderer(c)}}else{this._textRenderer=new a.jqplot.CanvasTextRenderer(c)}};a.jqplot.CanvasAxisLabelRenderer.prototype.init=function(b){a.extend(true,this,b);this._textRenderer.init({fontSize:this.fontSize,fontWeight:this.fontWeight,fontStretch:this.fontStretch,fillStyle:this.textColor,angle:this.getAngleRad(),fontFamily:this.fontFamily})};a.jqplot.CanvasAxisLabelRenderer.prototype.getWidth=function(d){if(this._elem){return this._elem.outerWidth(true)}else{var f=this._textRenderer;var c=f.getWidth(d);var e=f.getHeight(d);var b=Math.abs(Math.sin(f.angle)*e)+Math.abs(Math.cos(f.angle)*c);return b}};a.jqplot.CanvasAxisLabelRenderer.prototype.getHeight=function(d){if(this._elem){return this._elem.outerHeight(true)}else{var f=this._textRenderer;var c=f.getWidth(d);var e=f.getHeight(d);var b=Math.abs(Math.cos(f.angle)*e)+Math.abs(Math.sin(f.angle)*c);return b}};a.jqplot.CanvasAxisLabelRenderer.prototype.getAngleRad=function(){var b=this.angle*Math.PI/180;return b};a.jqplot.CanvasAxisLabelRenderer.prototype.draw=function(c,f){if(this._elem){if(a.jqplot.use_excanvas&&window.G_vmlCanvasManager.uninitElement!==undefined){window.G_vmlCanvasManager.uninitElement(this._elem.get(0))}this._elem.emptyForce();this._elem=null}var e=f.canvasManager.getCanvas();this._textRenderer.setText(this.label,c);var b=this.getWidth(c);var d=this.getHeight(c);e.width=b;e.height=d;e.style.width=b;e.style.height=d;e=f.canvasManager.initCanvas(e);this._elem=a(e);this._elem.css({position:"absolute"});this._elem.addClass("jqplot-"+this.axis+"-label");e=null;return this._elem};a.jqplot.CanvasAxisLabelRenderer.prototype.pack=function(){this._textRenderer.draw(this._elem.get(0).getContext("2d"),this.label)}})(jQuery);
|
||||
@@ -1,3 +1,3 @@
|
||||
/* jqPlot 1.0.8r1250 | (c) 2009-2013 Chris Leonello | jplot.com
|
||||
jsDate | (c) 2010-2013 Chris Leonello
|
||||
/* jqPlot 1.0.8r1250 | (c) 2009-2013 Chris Leonello | jplot.com
|
||||
jsDate | (c) 2010-2013 Chris Leonello
|
||||
*/(function(a){a.jqplot.CanvasAxisTickRenderer=function(b){this.mark="outside";this.showMark=true;this.showGridline=true;this.isMinorTick=false;this.angle=0;this.markSize=4;this.show=true;this.showLabel=true;this.labelPosition="auto";this.label="";this.value=null;this._styles={};this.formatter=a.jqplot.DefaultTickFormatter;this.formatString="";this.prefix="";this.fontFamily='"Trebuchet MS", Arial, Helvetica, sans-serif';this.fontSize="10pt";this.fontWeight="normal";this.fontStretch=1;this.textColor="#666666";this.enableFontSupport=true;this.pt2px=null;this._elem;this._ctx;this._plotWidth;this._plotHeight;this._plotDimensions={height:null,width:null};a.extend(true,this,b);var c={fontSize:this.fontSize,fontWeight:this.fontWeight,fontStretch:this.fontStretch,fillStyle:this.textColor,angle:this.getAngleRad(),fontFamily:this.fontFamily};if(this.pt2px){c.pt2px=this.pt2px}if(this.enableFontSupport){if(a.jqplot.support_canvas_text()){this._textRenderer=new a.jqplot.CanvasFontRenderer(c)}else{this._textRenderer=new a.jqplot.CanvasTextRenderer(c)}}else{this._textRenderer=new a.jqplot.CanvasTextRenderer(c)}};a.jqplot.CanvasAxisTickRenderer.prototype.init=function(b){a.extend(true,this,b);this._textRenderer.init({fontSize:this.fontSize,fontWeight:this.fontWeight,fontStretch:this.fontStretch,fillStyle:this.textColor,angle:this.getAngleRad(),fontFamily:this.fontFamily})};a.jqplot.CanvasAxisTickRenderer.prototype.getWidth=function(d){if(this._elem){return this._elem.outerWidth(true)}else{var f=this._textRenderer;var c=f.getWidth(d);var e=f.getHeight(d);var b=Math.abs(Math.sin(f.angle)*e)+Math.abs(Math.cos(f.angle)*c);return b}};a.jqplot.CanvasAxisTickRenderer.prototype.getHeight=function(d){if(this._elem){return this._elem.outerHeight(true)}else{var f=this._textRenderer;var c=f.getWidth(d);var e=f.getHeight(d);var b=Math.abs(Math.cos(f.angle)*e)+Math.abs(Math.sin(f.angle)*c);return b}};a.jqplot.CanvasAxisTickRenderer.prototype.getTop=function(b){if(this._elem){return this._elem.position().top}else{return null}};a.jqplot.CanvasAxisTickRenderer.prototype.getAngleRad=function(){var b=this.angle*Math.PI/180;return b};a.jqplot.CanvasAxisTickRenderer.prototype.setTick=function(b,d,c){this.value=b;if(c){this.isMinorTick=true}return this};a.jqplot.CanvasAxisTickRenderer.prototype.draw=function(c,f){if(!this.label){this.label=this.prefix+this.formatter(this.formatString,this.value)}if(this._elem){if(a.jqplot.use_excanvas&&window.G_vmlCanvasManager.uninitElement!==undefined){window.G_vmlCanvasManager.uninitElement(this._elem.get(0))}this._elem.emptyForce();this._elem=null}var e=f.canvasManager.getCanvas();this._textRenderer.setText(this.label,c);var b=this.getWidth(c);var d=this.getHeight(c);e.width=b;e.height=d;e.style.width=b;e.style.height=d;e.style.textAlign="left";e.style.position="absolute";e=f.canvasManager.initCanvas(e);this._elem=a(e);this._elem.css(this._styles);this._elem.addClass("jqplot-"+this.axis+"-tick");e=null;return this._elem};a.jqplot.CanvasAxisTickRenderer.prototype.pack=function(){this._textRenderer.draw(this._elem.get(0).getContext("2d"),this.label)}})(jQuery);
|
||||
@@ -1,3 +1,3 @@
|
||||
/* jqPlot 1.0.8r1250 | (c) 2009-2013 Chris Leonello | jplot.com
|
||||
jsDate | (c) 2010-2013 Chris Leonello
|
||||
/* jqPlot 1.0.8r1250 | (c) 2009-2013 Chris Leonello | jplot.com
|
||||
jsDate | (c) 2010-2013 Chris Leonello
|
||||
*/(function(a){a.jqplot.ciParser=function(g,l){var m=[],o,n,h,f,e,c;if(typeof(g)=="string"){g=a.jqplot.JSON.parse(g,d)}else{if(typeof(g)=="object"){for(e in g){for(h=0;h<g[e].length;h++){for(c in g[e][h]){g[e][h][c]=d(c,g[e][h][c])}}}}else{return null}}function d(j,k){var i;if(k!=null){if(k.toString().indexOf("Date")>=0){i=/^\/Date\((-?[0-9]+)\)\/$/.exec(k);if(i){return parseInt(i[1],10)}}return k}}for(var b in g){o=[];n=g[b];switch(b){case"PriceTicks":for(h=0;h<n.length;h++){o.push([n[h]["TickDate"],n[h]["Price"]])}break;case"PriceBars":for(h=0;h<n.length;h++){o.push([n[h]["BarDate"],n[h]["Open"],n[h]["High"],n[h]["Low"],n[h]["Close"]])}break}m.push(o)}return m}})(jQuery);
|
||||
@@ -1,3 +1,3 @@
|
||||
/* jqPlot 1.0.8r1250 | (c) 2009-2013 Chris Leonello | jplot.com
|
||||
jsDate | (c) 2010-2013 Chris Leonello
|
||||
/* jqPlot 1.0.8r1250 | (c) 2009-2013 Chris Leonello | jplot.com
|
||||
jsDate | (c) 2010-2013 Chris Leonello
|
||||
*/(function(d){d.jqplot.Dragable=function(g){this.markerRenderer=new d.jqplot.MarkerRenderer({shadow:false});this.shapeRenderer=new d.jqplot.ShapeRenderer();this.isDragging=false;this.isOver=false;this._ctx;this._elem;this._point;this._gridData;this.color;this.constrainTo="none";d.extend(true,this,g)};function b(){d.jqplot.GenericCanvas.call(this);this.isDragging=false;this.isOver=false;this._neighbor;this._cursors=[]}b.prototype=new d.jqplot.GenericCanvas();b.prototype.constructor=b;d.jqplot.Dragable.parseOptions=function(i,h){var g=h||{};this.plugins.dragable=new d.jqplot.Dragable(g.dragable);this.isDragable=d.jqplot.config.enablePlugins};d.jqplot.Dragable.postPlotDraw=function(){if(this.plugins.dragable&&this.plugins.dragable.highlightCanvas){this.plugins.dragable.highlightCanvas.resetCanvas();this.plugins.dragable.highlightCanvas=null}this.plugins.dragable={previousCursor:"auto",isOver:false};this.plugins.dragable.dragCanvas=new b();this.eventCanvas._elem.before(this.plugins.dragable.dragCanvas.createElement(this._gridPadding,"jqplot-dragable-canvas",this._plotDimensions,this));var g=this.plugins.dragable.dragCanvas.setContext()};d.jqplot.preParseSeriesOptionsHooks.push(d.jqplot.Dragable.parseOptions);d.jqplot.postDrawHooks.push(d.jqplot.Dragable.postPlotDraw);d.jqplot.eventListenerHooks.push(["jqplotMouseMove",e]);d.jqplot.eventListenerHooks.push(["jqplotMouseDown",c]);d.jqplot.eventListenerHooks.push(["jqplotMouseUp",a]);function f(n,p){var q=n.series[p.seriesIndex];var m=q.plugins.dragable;var h=q.markerRenderer;var i=m.markerRenderer;i.style=h.style;i.lineWidth=h.lineWidth+2.5;i.size=h.size+5;if(!m.color){var l=d.jqplot.getColorComponents(h.color);var o=[l[0],l[1],l[2]];var k=(l[3]>=0.6)?l[3]*0.6:l[3]*(2-l[3]);m.color="rgba("+o[0]+","+o[1]+","+o[2]+","+k+")"}i.color=m.color;i.init();var g=(p.pointIndex>0)?p.pointIndex-1:0;var j=p.pointIndex+2;m._gridData=q.gridData.slice(g,j)}function e(o,l,h,t,m){if(m.plugins.dragable.dragCanvas.isDragging){var u=m.plugins.dragable.dragCanvas;var i=u._neighbor;var w=m.series[i.seriesIndex];var k=w.plugins.dragable;var r=w.gridData;var p=(k.constrainTo=="y")?i.gridData[0]:l.x;var n=(k.constrainTo=="x")?i.gridData[1]:l.y;var g=w._xaxis.series_p2u(p);var q=w._yaxis.series_p2u(n);var v=u._ctx;v.clearRect(0,0,v.canvas.width,v.canvas.height);if(i.pointIndex>0){k._gridData[1]=[p,n]}else{k._gridData[0]=[p,n]}m.series[i.seriesIndex].draw(u._ctx,{gridData:k._gridData,shadow:false,preventJqPlotSeriesDrawTrigger:true,color:k.color,markerOptions:{color:k.color,shadow:false},trendline:{show:false}});m.target.trigger("jqplotSeriesPointChange",[i.seriesIndex,i.pointIndex,[g,q],[p,n]])}else{if(t!=null){var j=m.series[t.seriesIndex];if(j.isDragable){var u=m.plugins.dragable.dragCanvas;if(!u.isOver){u._cursors.push(o.target.style.cursor);o.target.style.cursor="pointer"}u.isOver=true}}else{if(t==null){var u=m.plugins.dragable.dragCanvas;if(u.isOver){o.target.style.cursor=u._cursors.pop();u.isOver=false}}}}}function c(k,i,g,l,j){var m=j.plugins.dragable.dragCanvas;m._cursors.push(k.target.style.cursor);if(l!=null){var o=j.series[l.seriesIndex];var h=o.plugins.dragable;if(o.isDragable&&!m.isDragging){m._neighbor=l;m.isDragging=true;f(j,l);h.markerRenderer.draw(o.gridData[l.pointIndex][0],o.gridData[l.pointIndex][1],m._ctx);k.target.style.cursor="move";j.target.trigger("jqplotDragStart",[l.seriesIndex,l.pointIndex,i,g])}}else{var n=m._ctx;n.clearRect(0,0,n.canvas.width,n.canvas.height);m.isDragging=false}}function a(m,j,g,o,k){if(k.plugins.dragable.dragCanvas.isDragging){var p=k.plugins.dragable.dragCanvas;var q=p._ctx;q.clearRect(0,0,q.canvas.width,q.canvas.height);p.isDragging=false;var h=p._neighbor;var r=k.series[h.seriesIndex];var i=r.plugins.dragable;var n=(i.constrainTo=="y")?h.data[0]:g[r.xaxis];var l=(i.constrainTo=="x")?h.data[1]:g[r.yaxis];r.data[h.pointIndex][0]=n;r.data[h.pointIndex][1]=l;k.drawSeries({preventJqPlotSeriesDrawTrigger:true},h.seriesIndex);p._neighbor=null;m.target.style.cursor=p._cursors.pop();k.target.trigger("jqplotDragStop",[j,g])}}})(jQuery);
|
||||
@@ -1,3 +1,3 @@
|
||||
/* jqPlot 1.0.8r1250 | (c) 2009-2013 Chris Leonello | jplot.com
|
||||
jsDate | (c) 2010-2013 Chris Leonello
|
||||
/* jqPlot 1.0.8r1250 | (c) 2009-2013 Chris Leonello | jplot.com
|
||||
jsDate | (c) 2010-2013 Chris Leonello
|
||||
*/(function(c){c.jqplot.EnhancedLegendRenderer=function(){c.jqplot.TableLegendRenderer.call(this)};c.jqplot.EnhancedLegendRenderer.prototype=new c.jqplot.TableLegendRenderer();c.jqplot.EnhancedLegendRenderer.prototype.constructor=c.jqplot.EnhancedLegendRenderer;c.jqplot.EnhancedLegendRenderer.prototype.init=function(d){this.numberRows=null;this.numberColumns=null;this.seriesToggle="normal";this.seriesToggleReplot=false;this.disableIEFading=true;c.extend(true,this,d);if(this.seriesToggle){c.jqplot.postDrawHooks.push(b)}};c.jqplot.EnhancedLegendRenderer.prototype.draw=function(m,y){var f=this;if(this.show){var r=this._series;var u;var w="position:absolute;";w+=(this.background)?"background:"+this.background+";":"";w+=(this.border)?"border:"+this.border+";":"";w+=(this.fontSize)?"font-size:"+this.fontSize+";":"";w+=(this.fontFamily)?"font-family:"+this.fontFamily+";":"";w+=(this.textColor)?"color:"+this.textColor+";":"";w+=(this.marginTop!=null)?"margin-top:"+this.marginTop+";":"";w+=(this.marginBottom!=null)?"margin-bottom:"+this.marginBottom+";":"";w+=(this.marginLeft!=null)?"margin-left:"+this.marginLeft+";":"";w+=(this.marginRight!=null)?"margin-right:"+this.marginRight+";":"";this._elem=c('<table class="jqplot-table-legend" style="'+w+'"></table>');if(this.seriesToggle){this._elem.css("z-index","3")}var C=false,q=false,d,o;if(this.numberRows){d=this.numberRows;if(!this.numberColumns){o=Math.ceil(r.length/d)}else{o=this.numberColumns}}else{if(this.numberColumns){o=this.numberColumns;d=Math.ceil(r.length/this.numberColumns)}else{d=r.length;o=1}}var B,z,e,l,k,n,p,t,h,g;var v=0;for(B=r.length-1;B>=0;B--){if(o==1&&r[B]._stack||r[B].renderer.constructor==c.jqplot.BezierCurveRenderer){q=true}}for(B=0;B<d;B++){e=c(document.createElement("tr"));e.addClass("jqplot-table-legend");if(q){e.prependTo(this._elem)}else{e.appendTo(this._elem)}for(z=0;z<o;z++){if(v<r.length&&(r[v].show||r[v].showLabel)){u=r[v];n=this.labels[v]||u.label.toString();if(n){var x=u.color;if(!q){if(B>0){C=true}else{C=false}}else{if(B==d-1){C=false}else{C=true}}p=(C)?this.rowSpacing:"0";l=c(document.createElement("td"));l.addClass("jqplot-table-legend jqplot-table-legend-swatch");l.css({textAlign:"center",paddingTop:p});h=c(document.createElement("div"));h.addClass("jqplot-table-legend-swatch-outline");g=c(document.createElement("div"));g.addClass("jqplot-table-legend-swatch");g.css({backgroundColor:x,borderColor:x});l.append(h.append(g));k=c(document.createElement("td"));k.addClass("jqplot-table-legend jqplot-table-legend-label");k.css("paddingTop",p);if(this.escapeHtml){k.text(n)}else{k.html(n)}if(q){if(this.showLabels){k.prependTo(e)}if(this.showSwatches){l.prependTo(e)}}else{if(this.showSwatches){l.appendTo(e)}if(this.showLabels){k.appendTo(e)}}if(this.seriesToggle){var A;if(typeof(this.seriesToggle)==="string"||typeof(this.seriesToggle)==="number"){if(!c.jqplot.use_excanvas||!this.disableIEFading){A=this.seriesToggle}}if(this.showSwatches){l.bind("click",{series:u,speed:A,plot:y,replot:this.seriesToggleReplot},a);l.addClass("jqplot-seriesToggle")}if(this.showLabels){k.bind("click",{series:u,speed:A,plot:y,replot:this.seriesToggleReplot},a);k.addClass("jqplot-seriesToggle")}if(!u.show&&u.showLabel){l.addClass("jqplot-series-hidden");k.addClass("jqplot-series-hidden")}}C=true}}v++}l=k=h=g=null}}return this._elem};var a=function(j){var i=j.data,m=i.series,k=i.replot,h=i.plot,f=i.speed,l=m.index,g=false;if(m.canvas._elem.is(":hidden")||!m.show){g=true}var e=function(){if(k){var n={};if(c.isPlainObject(k)){c.extend(true,n,k)}h.replot(n);if(g&&f){var d=h.series[l];if(d.shadowCanvas._elem){d.shadowCanvas._elem.hide().fadeIn(f)}d.canvas._elem.hide().fadeIn(f);d.canvas._elem.nextAll(".jqplot-point-label.jqplot-series-"+d.index).hide().fadeIn(f)}}else{var d=h.series[l];if(d.canvas._elem.is(":hidden")||!d.show){if(typeof h.options.legend.showSwatches==="undefined"||h.options.legend.showSwatches===true){h.legend._elem.find("td").eq(l*2).addClass("jqplot-series-hidden")}if(typeof h.options.legend.showLabels==="undefined"||h.options.legend.showLabels===true){h.legend._elem.find("td").eq((l*2)+1).addClass("jqplot-series-hidden")}}else{if(typeof h.options.legend.showSwatches==="undefined"||h.options.legend.showSwatches===true){h.legend._elem.find("td").eq(l*2).removeClass("jqplot-series-hidden")}if(typeof h.options.legend.showLabels==="undefined"||h.options.legend.showLabels===true){h.legend._elem.find("td").eq((l*2)+1).removeClass("jqplot-series-hidden")}}}};m.toggleDisplay(j,e)};var b=function(){if(this.legend.renderer.constructor==c.jqplot.EnhancedLegendRenderer&&this.legend.seriesToggle){var d=this.legend._elem.detach();this.eventCanvas._elem.after(d)}}})(jQuery);
|
||||
@@ -1,3 +1,3 @@
|
||||
/* jqPlot 1.0.8r1250 | (c) 2009-2013 Chris Leonello | jplot.com
|
||||
jsDate | (c) 2010-2013 Chris Leonello
|
||||
/* jqPlot 1.0.8r1250 | (c) 2009-2013 Chris Leonello | jplot.com
|
||||
jsDate | (c) 2010-2013 Chris Leonello
|
||||
*/(function($){$.jqplot.JSON=window.JSON;if(!window.JSON){$.jqplot.JSON={}}function f(n){return n<10?"0"+n:n}if(typeof Date.prototype.toJSON!=="function"){Date.prototype.toJSON=function(key){return isFinite(this.valueOf())?this.getUTCFullYear()+"-"+f(this.getUTCMonth()+1)+"-"+f(this.getUTCDate())+"T"+f(this.getUTCHours())+":"+f(this.getUTCMinutes())+":"+f(this.getUTCSeconds())+"Z":null};String.prototype.toJSON=Number.prototype.toJSON=Boolean.prototype.toJSON=function(key){return this.valueOf()}}var cx=/[\u0000\u00ad\u0600-\u0604\u070f\u17b4\u17b5\u200c-\u200f\u2028-\u202f\u2060-\u206f\ufeff\ufff0-\uffff]/g,escapable=/[\\\"\x00-\x1f\x7f-\x9f\u00ad\u0600-\u0604\u070f\u17b4\u17b5\u200c-\u200f\u2028-\u202f\u2060-\u206f\ufeff\ufff0-\uffff]/g,gap,indent,meta={"\b":"\\b","\t":"\\t","\n":"\\n","\f":"\\f","\r":"\\r",'"':'\\"',"\\":"\\\\"},rep;function quote(string){escapable.lastIndex=0;return escapable.test(string)?'"'+string.replace(escapable,function(a){var c=meta[a];return typeof c==="string"?c:"\\u"+("0000"+a.charCodeAt(0).toString(16)).slice(-4)})+'"':'"'+string+'"'}function str(key,holder){var i,k,v,length,mind=gap,partial,value=holder[key];if(value&&typeof value==="object"&&typeof value.toJSON==="function"){value=value.toJSON(key)}if(typeof rep==="function"){value=rep.call(holder,key,value)}switch(typeof value){case"string":return quote(value);case"number":return isFinite(value)?String(value):"null";case"boolean":case"null":return String(value);case"object":if(!value){return"null"}gap+=indent;partial=[];if(Object.prototype.toString.apply(value)==="[object Array]"){length=value.length;for(i=0;i<length;i+=1){partial[i]=str(i,value)||"null"}v=partial.length===0?"[]":gap?"[\n"+gap+partial.join(",\n"+gap)+"\n"+mind+"]":"["+partial.join(",")+"]";gap=mind;return v}if(rep&&typeof rep==="object"){length=rep.length;for(i=0;i<length;i+=1){k=rep[i];if(typeof k==="string"){v=str(k,value);if(v){partial.push(quote(k)+(gap?": ":":")+v)}}}}else{for(k in value){if(Object.hasOwnProperty.call(value,k)){v=str(k,value);if(v){partial.push(quote(k)+(gap?": ":":")+v)}}}}v=partial.length===0?"{}":gap?"{\n"+gap+partial.join(",\n"+gap)+"\n"+mind+"}":"{"+partial.join(",")+"}";gap=mind;return v}}if(typeof $.jqplot.JSON.stringify!=="function"){$.jqplot.JSON.stringify=function(value,replacer,space){var i;gap="";indent="";if(typeof space==="number"){for(i=0;i<space;i+=1){indent+=" "}}else{if(typeof space==="string"){indent=space}}rep=replacer;if(replacer&&typeof replacer!=="function"&&(typeof replacer!=="object"||typeof replacer.length!=="number")){throw new Error("$.jqplot.JSON.stringify")}return str("",{"":value})}}if(typeof $.jqplot.JSON.parse!=="function"){$.jqplot.JSON.parse=function(text,reviver){var j;function walk(holder,key){var k,v,value=holder[key];if(value&&typeof value==="object"){for(k in value){if(Object.hasOwnProperty.call(value,k)){v=walk(value,k);if(v!==undefined){value[k]=v}else{delete value[k]}}}}return reviver.call(holder,key,value)}text=String(text);cx.lastIndex=0;if(cx.test(text)){text=text.replace(cx,function(a){return"\\u"+("0000"+a.charCodeAt(0).toString(16)).slice(-4)})}if(/^[\],:{}\s]*$/.test(text.replace(/\\(?:["\\\/bfnrt]|u[0-9a-fA-F]{4})/g,"@").replace(/"[^"\\\n\r]*"|true|false|null|-?\d+(?:\.\d*)?(?:[eE][+\-]?\d+)?/g,"]").replace(/(?:^|:|,)(?:\s*\[)+/g,""))){j=eval("("+text+")");return typeof reviver==="function"?walk({"":j},""):j}throw new SyntaxError("$.jqplot.JSON.parse")}}})(jQuery);
|
||||
@@ -1,3 +1,3 @@
|
||||
/* jqPlot 1.0.8r1250 | (c) 2009-2013 Chris Leonello | jplot.com
|
||||
jsDate | (c) 2010-2013 Chris Leonello
|
||||
/* jqPlot 1.0.8r1250 | (c) 2009-2013 Chris Leonello | jplot.com
|
||||
jsDate | (c) 2010-2013 Chris Leonello
|
||||
*/(function(b){function a(e,d,c){this.bindCustomEvents=function(){this.eventCanvas._elem.bind("vclick",{plot:this},this.onClick);this.eventCanvas._elem.bind("dblclick",{plot:this},this.onDblClick);this.eventCanvas._elem.bind("taphold",{plot:this},this.onDblClick);this.eventCanvas._elem.bind("vmousedown",{plot:this},this.onMouseDown);this.eventCanvas._elem.bind("vmousemove",{plot:this},this.onMouseMove);this.eventCanvas._elem.bind("mouseenter",{plot:this},this.onMouseEnter);this.eventCanvas._elem.bind("mouseleave",{plot:this},this.onMouseLeave);if(this.captureRightClick){this.eventCanvas._elem.bind("vmouseup",{plot:this},this.onRightClick);this.eventCanvas._elem.get(0).oncontextmenu=function(){return false}}else{this.eventCanvas._elem.bind("vmouseup",{plot:this},this.onMouseUp)}};this.plugins.mobile=true}b.jqplot.postInitHooks.push(a)})(jQuery);
|
||||
@@ -1,3 +1,3 @@
|
||||
/* jqPlot 1.0.8r1250 | (c) 2009-2013 Chris Leonello | jplot.com
|
||||
jsDate | (c) 2010-2013 Chris Leonello
|
||||
/* jqPlot 1.0.8r1250 | (c) 2009-2013 Chris Leonello | jplot.com
|
||||
jsDate | (c) 2010-2013 Chris Leonello
|
||||
*/(function(a){a.jqplot.OHLCRenderer=function(){a.jqplot.LineRenderer.call(this);this.candleStick=false;this.tickLength="auto";this.bodyWidth="auto";this.openColor=null;this.closeColor=null;this.wickColor=null;this.fillUpBody=false;this.fillDownBody=true;this.upBodyColor=null;this.downBodyColor=null;this.hlc=false;this.lineWidth=1.5;this._tickLength;this._bodyWidth};a.jqplot.OHLCRenderer.prototype=new a.jqplot.LineRenderer();a.jqplot.OHLCRenderer.prototype.constructor=a.jqplot.OHLCRenderer;a.jqplot.OHLCRenderer.prototype.init=function(e){e=e||{};this.lineWidth=e.lineWidth||1.5;a.jqplot.LineRenderer.prototype.init.call(this,e);this._type="ohlc";var b=this._yaxis._dataBounds;var f=this._plotData;if(f[0].length<5){this.renderer.hlc=true;for(var c=0;c<f.length;c++){if(f[c][2]<b.min||b.min==null){b.min=f[c][2]}if(f[c][1]>b.max||b.max==null){b.max=f[c][1]}}}else{for(var c=0;c<f.length;c++){if(f[c][3]<b.min||b.min==null){b.min=f[c][3]}if(f[c][2]>b.max||b.max==null){b.max=f[c][2]}}}};a.jqplot.OHLCRenderer.prototype.draw=function(A,N,j){var J=this.data;var v=this._xaxis.min;var z=this._xaxis.max;var l=0;var K=J.length;var p=this._xaxis.series_u2p;var G=this._yaxis.series_u2p;var D,E,f,M,F,n,O,C;var y;var u=this.renderer;var s=(j!=undefined)?j:{};var k=(s.shadow!=undefined)?s.shadow:this.shadow;var B=(s.fill!=undefined)?s.fill:this.fill;var c=(s.fillAndStroke!=undefined)?s.fillAndStroke:this.fillAndStroke;u.bodyWidth=(s.bodyWidth!=undefined)?s.bodyWidth:u.bodyWidth;u.tickLength=(s.tickLength!=undefined)?s.tickLength:u.tickLength;A.save();if(this.show){var m,q,g,Q,t;for(var D=0;D<J.length;D++){if(J[D][0]<v){l=D}else{if(J[D][0]<z){K=D+1}}}var I=this.gridData[K-1][0]-this.gridData[l][0];var L=K-l;try{var P=Math.abs(this._xaxis.series_u2p(parseInt(this._xaxis._intervalStats[0].sortedIntervals[0].interval,10))-this._xaxis.series_u2p(0))}catch(H){var P=I/L}if(u.candleStick){if(typeof(u.bodyWidth)=="number"){u._bodyWidth=u.bodyWidth}else{u._bodyWidth=Math.min(20,P/1.65)}}else{if(typeof(u.tickLength)=="number"){u._tickLength=u.tickLength}else{u._tickLength=Math.min(10,P/3.5)}}for(var D=l;D<K;D++){m=p(J[D][0]);if(u.hlc){q=null;g=G(J[D][1]);Q=G(J[D][2]);t=G(J[D][3])}else{q=G(J[D][1]);g=G(J[D][2]);Q=G(J[D][3]);t=G(J[D][4])}y={};if(u.candleStick&&!u.hlc){n=u._bodyWidth;O=m-n/2;if(t<q){if(u.wickColor){y.color=u.wickColor}else{if(u.downBodyColor){y.color=u.upBodyColor}}f=a.extend(true,{},s,y);u.shapeRenderer.draw(A,[[m,g],[m,t]],f);u.shapeRenderer.draw(A,[[m,q],[m,Q]],f);y={};M=t;F=q-t;if(u.fillUpBody){y.fillRect=true}else{y.strokeRect=true;n=n-this.lineWidth;O=m-n/2}if(u.upBodyColor){y.color=u.upBodyColor;y.fillStyle=u.upBodyColor}C=[O,M,n,F]}else{if(t>q){if(u.wickColor){y.color=u.wickColor}else{if(u.downBodyColor){y.color=u.downBodyColor}}f=a.extend(true,{},s,y);u.shapeRenderer.draw(A,[[m,g],[m,q]],f);u.shapeRenderer.draw(A,[[m,t],[m,Q]],f);y={};M=q;F=t-q;if(u.fillDownBody){y.fillRect=true}else{y.strokeRect=true;n=n-this.lineWidth;O=m-n/2}if(u.downBodyColor){y.color=u.downBodyColor;y.fillStyle=u.downBodyColor}C=[O,M,n,F]}else{if(u.wickColor){y.color=u.wickColor}f=a.extend(true,{},s,y);u.shapeRenderer.draw(A,[[m,g],[m,Q]],f);y={};y.fillRect=false;y.strokeRect=false;O=[m-n/2,q];M=[m+n/2,t];n=null;F=null;C=[O,M]}}f=a.extend(true,{},s,y);u.shapeRenderer.draw(A,C,f)}else{E=s.color;if(u.openColor){s.color=u.openColor}if(!u.hlc){u.shapeRenderer.draw(A,[[m-u._tickLength,q],[m,q]],s)}s.color=E;if(u.wickColor){s.color=u.wickColor}u.shapeRenderer.draw(A,[[m,g],[m,Q]],s);s.color=E;if(u.closeColor){s.color=u.closeColor}u.shapeRenderer.draw(A,[[m,t],[m+u._tickLength,t]],s);s.color=E}}}A.restore()};a.jqplot.OHLCRenderer.prototype.drawShadow=function(b,d,c){};a.jqplot.OHLCRenderer.checkOptions=function(d,c,b){if(!b.highlighter){b.highlighter={showMarker:false,tooltipAxes:"y",yvalues:4,formatString:'<table class="jqplot-highlighter"><tr><td>date:</td><td>%s</td></tr><tr><td>open:</td><td>%s</td></tr><tr><td>hi:</td><td>%s</td></tr><tr><td>low:</td><td>%s</td></tr><tr><td>close:</td><td>%s</td></tr></table>'}}}})(jQuery);
|
||||
@@ -1,3 +1,3 @@
|
||||
/* jqPlot 1.0.8r1250 | (c) 2009-2013 Chris Leonello | jplot.com
|
||||
jsDate | (c) 2010-2013 Chris Leonello
|
||||
/* jqPlot 1.0.8r1250 | (c) 2009-2013 Chris Leonello | jplot.com
|
||||
jsDate | (c) 2010-2013 Chris Leonello
|
||||
*/(function(c){c.jqplot.PointLabels=function(e){this.show=c.jqplot.config.enablePlugins;this.location="n";this.labelsFromSeries=false;this.seriesLabelIndex=null;this.labels=[];this._labels=[];this.stackedValue=false;this.ypadding=6;this.xpadding=6;this.escapeHTML=true;this.edgeTolerance=-5;this.formatter=c.jqplot.DefaultTickFormatter;this.formatString="";this.hideZeros=false;this._elems=[];c.extend(true,this,e)};var a=["nw","n","ne","e","se","s","sw","w"];var d={nw:0,n:1,ne:2,e:3,se:4,s:5,sw:6,w:7};var b=["se","s","sw","w","nw","n","ne","e"];c.jqplot.PointLabels.init=function(j,h,f,g,i){var e=c.extend(true,{},f,g);e.pointLabels=e.pointLabels||{};if(this.renderer.constructor===c.jqplot.BarRenderer&&this.barDirection==="horizontal"&&!e.pointLabels.location){e.pointLabels.location="e"}this.plugins.pointLabels=new c.jqplot.PointLabels(e.pointLabels);this.plugins.pointLabels.setLabels.call(this)};c.jqplot.PointLabels.prototype.setLabels=function(){var f=this.plugins.pointLabels;var h;if(f.seriesLabelIndex!=null){h=f.seriesLabelIndex}else{if(this.renderer.constructor===c.jqplot.BarRenderer&&this.barDirection==="horizontal"){h=(this._plotData[0].length<3)?0:this._plotData[0].length-1}else{h=(this._plotData.length===0)?0:this._plotData[0].length-1}}f._labels=[];if(f.labels.length===0||f.labelsFromSeries){if(f.stackedValue){if(this._plotData.length&&this._plotData[0].length){for(var e=0;e<this._plotData.length;e++){f._labels.push(this._plotData[e][h])}}}else{var g=this.data;if(this.renderer.constructor===c.jqplot.BarRenderer&&this.waterfall){g=this._data}if(g.length&&g[0].length){for(var e=0;e<g.length;e++){f._labels.push(g[e][h])}}g=null}}else{if(f.labels.length){f._labels=f.labels}}};c.jqplot.PointLabels.prototype.xOffset=function(f,e,g){e=e||this.location;g=g||this.xpadding;var h;switch(e){case"nw":h=-f.outerWidth(true)-this.xpadding;break;case"n":h=-f.outerWidth(true)/2;break;case"ne":h=this.xpadding;break;case"e":h=this.xpadding;break;case"se":h=this.xpadding;break;case"s":h=-f.outerWidth(true)/2;break;case"sw":h=-f.outerWidth(true)-this.xpadding;break;case"w":h=-f.outerWidth(true)-this.xpadding;break;default:h=-f.outerWidth(true)-this.xpadding;break}return h};c.jqplot.PointLabels.prototype.yOffset=function(f,e,g){e=e||this.location;g=g||this.xpadding;var h;switch(e){case"nw":h=-f.outerHeight(true)-this.ypadding;break;case"n":h=-f.outerHeight(true)-this.ypadding;break;case"ne":h=-f.outerHeight(true)-this.ypadding;break;case"e":h=-f.outerHeight(true)/2;break;case"se":h=this.ypadding;break;case"s":h=this.ypadding;break;case"sw":h=this.ypadding;break;case"w":h=-f.outerHeight(true)/2;break;default:h=-f.outerHeight(true)-this.ypadding;break}return h};c.jqplot.PointLabels.draw=function(x,j,v){var t=this.plugins.pointLabels;t.setLabels.call(this);for(var w=0;w<t._elems.length;w++){t._elems[w].emptyForce()}t._elems.splice(0,t._elems.length);if(t.show){var r="_"+this._stackAxis+"axis";if(!t.formatString){t.formatString=this[r]._ticks[0].formatString;t.formatter=this[r]._ticks[0].formatter}var E=this._plotData;var D=this._prevPlotData;var A=this._xaxis;var q=this._yaxis;var z,f;for(var w=0,u=t._labels.length;w<u;w++){var o=t._labels[w];if(o==null||(t.hideZeros&&parseInt(o,10)==0)){continue}o=t.formatter(t.formatString,o);f=document.createElement("div");t._elems[w]=c(f);z=t._elems[w];z.addClass("jqplot-point-label jqplot-series-"+this.index+" jqplot-point-"+w);z.css("position","absolute");z.insertAfter(x.canvas);if(t.escapeHTML){z.text(o)}else{z.html(o)}var g=t.location;if((this.fillToZero&&E[w][1]<0)||(this.fillToZero&&this._type==="bar"&&this.barDirection==="horizontal"&&E[w][0]<0)||(this.waterfall&&parseInt(o,10))<0){g=b[d[g]]}var n=A.u2p(E[w][0])+t.xOffset(z,g);var h=q.u2p(E[w][1])+t.yOffset(z,g);if(this._stack&&!t.stackedValue){if(this.barDirection==="vertical"){h=(this._barPoints[w][0][1]+this._barPoints[w][1][1])/2+v._gridPadding.top-0.5*z.outerHeight(true)}else{n=(this._barPoints[w][2][0]+this._barPoints[w][0][0])/2+v._gridPadding.left-0.5*z.outerWidth(true)}}if(this.renderer.constructor==c.jqplot.BarRenderer){if(this.barDirection=="vertical"){n+=this._barNudge}else{h-=this._barNudge}}z.css("left",n);z.css("top",h);var k=n+z.width();var s=h+z.height();var C=t.edgeTolerance;var e=c(x.canvas).position().left;var y=c(x.canvas).position().top;var B=x.canvas.width+e;var m=x.canvas.height+y;if(n-C<e||h-C<y||k+C>B||s+C>m){z.remove()}z=null;f=null}}};c.jqplot.postSeriesInitHooks.push(c.jqplot.PointLabels.init);c.jqplot.postDrawSeriesHooks.push(c.jqplot.PointLabels.draw)})(jQuery);
|
||||
@@ -1,3 +1,3 @@
|
||||
/* jqPlot 1.0.8r1250 | (c) 2009-2013 Chris Leonello | jplot.com
|
||||
jsDate | (c) 2010-2013 Chris Leonello
|
||||
/* jqPlot 1.0.8r1250 | (c) 2009-2013 Chris Leonello | jplot.com
|
||||
jsDate | (c) 2010-2013 Chris Leonello
|
||||
*/(function(f){f.jqplot.Trendline=function(){this.show=f.jqplot.config.enablePlugins;this.color="#666666";this.renderer=new f.jqplot.LineRenderer();this.rendererOptions={marker:{show:false}};this.label="";this.type="linear";this.shadow=true;this.markerRenderer={show:false};this.lineWidth=1.5;this.shadowAngle=45;this.shadowOffset=1;this.shadowAlpha=0.07;this.shadowDepth=3;this.isTrendline=true};f.jqplot.postSeriesInitHooks.push(e);f.jqplot.postDrawSeriesHooks.push(g);f.jqplot.addLegendRowHooks.push(a);function a(k){var j=null;if(k.trendline&&k.trendline.show){var i=k.trendline.label.toString();if(i){j={label:i,color:k.trendline.color}}}return j}function e(m,k,j,i,l){if(this._type&&(this._type==="line"||this._type=="bar")){this.trendline=new f.jqplot.Trendline();i=i||{};f.extend(true,this.trendline,{color:this.color},j.trendline,i.trendline);this.trendline.renderer.init.call(this.trendline,null)}}function g(m,i){i=f.extend(true,{},this.trendline,i);if(this.trendline&&i.show){var k;var l=i.data||this.data;k=c(l,this.trendline.type);var j=i.gridData||this.renderer.makeGridData.call(this,k.data);this.trendline.renderer.draw.call(this.trendline,m,j,{showLine:true,shadow:this.trendline.shadow})}}function b(w,v,n){var u=(n==null)?"linear":n;var s=w.length;var t;var z;var o=0;var m=0;var r=0;var q=0;var l=0;var j=[];var k=[];if(u=="linear"){k=w;j=v}else{if(u=="exp"||u=="exponential"){for(var p=0;p<v.length;p++){if(v[p]<=0){s--}else{k.push(w[p]);j.push(Math.log(v[p]))}}}}for(var p=0;p<s;p++){o=o+k[p];m=m+j[p];q=q+k[p]*j[p];r=r+k[p]*k[p];l=l+j[p]*j[p]}t=(s*q-o*m)/(s*r-o*o);z=(m-t*o)/s;return[t,z]}function h(k,j){var i;i=b(k,j,"linear");return[i[0],i[1]]}function d(o,m){var k;var i=o;var n=m;k=b(i,n,"exp");var l=Math.exp(k[0]);var j=Math.exp(k[1]);return[l,j]}function c(l,j){var p=(j==null)?"linear":j;var n;var o;var r=[];var q=[];var m=[];for(k=0;k<l.length;k++){if(l[k]!=null&&l[k][0]!=null&&l[k][1]!=null){r.push(l[k][0]);q.push(l[k][1])}}if(p=="linear"){n=h(r,q);for(var k=0;k<r.length;k++){o=n[0]*r[k]+n[1];m.push([r[k],o])}}else{if(p=="exp"||p=="exponential"){n=d(r,q);for(var k=0;k<r.length;k++){o=n[1]*Math.pow(n[0],r[k]);m.push([r[k],o])}}}return{data:m,slope:n[0],intercept:n[1]}}})(jQuery);
|
||||
@@ -1,423 +1,423 @@
|
||||
{extends file="admin-layout.tpl"}
|
||||
|
||||
{block name="no-return-functions"}
|
||||
{$admin_current_location = 'configuration'}
|
||||
{/block}
|
||||
|
||||
{block name="page-title"}{intl l='Configuration'}{/block}
|
||||
|
||||
{block name="check-resource"}admin.configuration{/block}
|
||||
{block name="check-access"}view{/block}
|
||||
|
||||
{block name="main-content"}
|
||||
<div class="configuration">
|
||||
|
||||
<div id="wrapper" class="container">
|
||||
|
||||
<nav>
|
||||
<ul class="breadcrumb">
|
||||
<li><a href="{url path='admin/home'}">{intl l='Home'}</a></li>
|
||||
<li>{intl l='Configuration'}</li>
|
||||
</ul>
|
||||
</nav>
|
||||
|
||||
{hook name="configuration.top" location="configuration_top" }
|
||||
|
||||
<div class="row">
|
||||
|
||||
<div class="col-md-4">
|
||||
<div class="menu-list-table general-block-decorator">
|
||||
<div class="table-responsive">
|
||||
<table class="table table-striped table-condensed">
|
||||
<caption>{intl l='Product catalog configuration'}</caption>
|
||||
|
||||
{hook name="configuration.catalog-top" location="configuration_catalog_top" }
|
||||
|
||||
{loop type="auth" name="pcc1" role="ADMIN" resource="admin.configuration.template" access="VIEW"}
|
||||
<tr>
|
||||
<td><a href="{url path='/admin/configuration/templates'}">{intl l='Product templates'}</a></td>
|
||||
<td>
|
||||
{include file='renderer/buttons.html' btn_small=true btn_group=false buttons=[
|
||||
[
|
||||
'type' => 'edit',
|
||||
'href' => {url path='/admin/configuration/templates'}
|
||||
]
|
||||
]}
|
||||
</td>
|
||||
</tr>
|
||||
{/loop}
|
||||
|
||||
{loop type="auth" name="pcc2" role="ADMIN" resource="admin.configuration.attribute" access="VIEW"}
|
||||
<tr>
|
||||
<td><a href="{url path='/admin/configuration/attributes'}">{intl l='Product attributes'}</a></td>
|
||||
<td>
|
||||
{include file='renderer/buttons.html' btn_small=true btn_group=false buttons=[
|
||||
[
|
||||
'type' => 'edit',
|
||||
'href' => {url path='/admin/configuration/attributes'}
|
||||
]
|
||||
]}
|
||||
</td>
|
||||
</tr>
|
||||
{/loop}
|
||||
|
||||
{loop type="auth" name="pcc3" role="ADMIN" resource="admin.configuration.feature" access="VIEW"}
|
||||
<tr>
|
||||
<td><a href="{url path='/admin/configuration/features'}">{intl l='Product features'}</a></td>
|
||||
<td>
|
||||
{include file='renderer/buttons.html' btn_small=true btn_group=false buttons=[
|
||||
[
|
||||
'type' => 'edit',
|
||||
'href' => {url path='/admin/configuration/features'}
|
||||
]
|
||||
]}
|
||||
</td>
|
||||
</tr>
|
||||
{/loop}
|
||||
|
||||
{loop type="auth" name="pcc4" role="ADMIN" resource="admin.configuration.message" access="VIEW"}
|
||||
<tr>
|
||||
<td><a href="{url path='/admin/configuration/messages'}">{intl l='Mailing templates'}</a></td>
|
||||
<td>
|
||||
{include file='renderer/buttons.html' btn_small=true btn_group=false buttons=[
|
||||
[
|
||||
'type' => 'edit',
|
||||
'href' => {url path='/admin/configuration/messages'}
|
||||
]
|
||||
]}
|
||||
</td>
|
||||
</tr>
|
||||
{/loop}
|
||||
|
||||
{loop type="auth" name="pcc5" role="ADMIN" resource="admin.configuration.currency" access="VIEW"}
|
||||
<tr>
|
||||
<td><a href="{url path='/admin/configuration/currencies'}">{intl l='Currencies'}</a></td>
|
||||
<td>
|
||||
{include file='renderer/buttons.html' btn_small=true btn_group=false buttons=[
|
||||
[
|
||||
'type' => 'edit',
|
||||
'href' => {url path='/admin/configuration/currencies'}
|
||||
]
|
||||
]}
|
||||
</td>
|
||||
</tr>
|
||||
{/loop}
|
||||
|
||||
{loop type="auth" name="pcc6" role="ADMIN" resource="admin.configuration.tax-rule" access="VIEW"}
|
||||
<tr>
|
||||
<td><a href="{url path='/admin/configuration/taxes_rules'}">{intl l='Tax rules'}</a></td>
|
||||
<td>
|
||||
{include file='renderer/buttons.html' btn_small=true btn_group=false buttons=[
|
||||
[
|
||||
'type' => 'edit',
|
||||
'href' => {url path='/admin/configuration/taxes_rules'}
|
||||
]
|
||||
]}
|
||||
</td>
|
||||
</tr>
|
||||
{/loop}
|
||||
|
||||
{hook name="configuration.catalog-bottom" location="configuration_catalog_bottom" }
|
||||
</table>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="col-md-4">
|
||||
<div class="menu-list-table general-block-decorator">
|
||||
<div class="table-responsive">
|
||||
<table class="table table-striped table-condensed">
|
||||
<caption>{intl l='Shipping configuration'}</caption>
|
||||
|
||||
{hook name="configuration.shipping-top" location="configuration_shipping_top" }
|
||||
|
||||
{loop type="auth" name="pcc1" role="ADMIN" resource="admin.configuration.contry" access="VIEW"}
|
||||
<tr>
|
||||
<td><a href="{url path='/admin/configuration/countries'}">{intl l='Countries'}</a></td>
|
||||
<td>
|
||||
{include file='renderer/buttons.html' btn_small=true btn_group=false buttons=[
|
||||
[
|
||||
'type' => 'edit',
|
||||
'href' => {url path='/admin/configuration/countries'}
|
||||
]
|
||||
]}
|
||||
</td>
|
||||
</tr>
|
||||
{/loop}
|
||||
|
||||
{loop type="auth" name="pcc2" role="ADMIN" resource="admin.configuration.state" access="VIEW"}
|
||||
<tr>
|
||||
<td><a href="{url path='/admin/configuration/states'}">{intl l='States / Provinces'}</a></td>
|
||||
<td>
|
||||
{include file='renderer/buttons.html' btn_small=true btn_group=false buttons=[
|
||||
[
|
||||
'type' => 'edit',
|
||||
'href' => {url path='/admin/configuration/states'}
|
||||
]
|
||||
]}
|
||||
</td>
|
||||
</tr>
|
||||
{/loop}
|
||||
|
||||
{loop type="auth" name="pcc3" role="ADMIN" resource="admin.configuration.shipping-zone" access="VIEW"}
|
||||
<tr>
|
||||
<td><a href="{url path='/admin/configuration/shipping_zones'}">{intl l='Shipping configuration'}</a></td>
|
||||
<td>
|
||||
{include file='renderer/buttons.html' btn_small=true btn_group=false buttons=[
|
||||
[
|
||||
'type' => 'edit',
|
||||
'href' => {url path='/admin/configuration/shipping_zones'}
|
||||
]
|
||||
]}
|
||||
</td>
|
||||
</tr>
|
||||
{/loop}
|
||||
|
||||
{loop type="auth" name="pcc4" role="ADMIN" resource="admin.configuration.shipping-configuration" access="VIEW"}
|
||||
<tr>
|
||||
<td><a href="{url path='/admin/configuration/shipping_configuration'}">{intl l='Shipping zones management'}</a></td>
|
||||
<td>
|
||||
{include file='renderer/buttons.html' btn_small=true btn_group=false buttons=[
|
||||
[
|
||||
'type' => 'edit',
|
||||
'href' => {url path='/admin/configuration/shipping_configuration'}
|
||||
]
|
||||
]}
|
||||
</td>
|
||||
</tr>
|
||||
{/loop}
|
||||
|
||||
{hook name="configuration.shipping-bottom" location="configuration_shipping_bottom" }
|
||||
|
||||
</table>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="menu-list-table general-block-decorator">
|
||||
<div class="table-responsive">
|
||||
<table class="table table-striped table-condensed">
|
||||
<caption>{intl l='Order path configuration'}</caption>
|
||||
|
||||
{hook name="configuration.order-path.top"}
|
||||
|
||||
{loop type="auth" name="pcc1" role="ADMIN" resource="admin.configuration.order-status" access="VIEW"}
|
||||
<tr>
|
||||
<td><a href="{url path='/admin/configuration/order-status'}">{intl l='Order status'}</a></td>
|
||||
<td>
|
||||
{include file='renderer/buttons.html' btn_small=true btn_group=false buttons=[
|
||||
[
|
||||
'type' => 'edit',
|
||||
'href' => {url path='/admin/configuration/order-status'}
|
||||
]
|
||||
]}
|
||||
</td>
|
||||
</tr>
|
||||
{/loop}
|
||||
|
||||
{hook name="configuration.order-path.bottom"}
|
||||
|
||||
</table>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="col-md-4">
|
||||
<div class="menu-list-table general-block-decorator">
|
||||
<div class="table-responsive">
|
||||
<table class="table table-striped table-condensed">
|
||||
<caption>{intl l='System parameters'}</caption>
|
||||
|
||||
{hook name="configuration.system-top" location="configuration_system_top" }
|
||||
|
||||
{loop type="auth" name="pcc-store" role="ADMIN" resource="admin.configuration.store" access="VIEW"}
|
||||
<tr>
|
||||
<td><a href="{url path='/admin/configuration/store'}">{intl l='Store'}</a></td>
|
||||
<td>
|
||||
{include file='renderer/buttons.html' btn_small=true btn_group=false buttons=[
|
||||
[
|
||||
'type' => 'edit',
|
||||
'href' => {url path='/admin/configuration/store'}
|
||||
]
|
||||
]}
|
||||
</td>
|
||||
</tr>
|
||||
{/loop}
|
||||
|
||||
{loop type="auth" name="pcc2" role="ADMIN" resource="admin.configuration.variable" access="VIEW"}
|
||||
<tr>
|
||||
<td><a href="{url path='/admin/configuration/variables'}">{intl l='System variables'}</a></td>
|
||||
<td>
|
||||
{include file='renderer/buttons.html' btn_small=true btn_group=false buttons=[
|
||||
[
|
||||
'type' => 'edit',
|
||||
'href' => {url path='/admin/configuration/variables'}
|
||||
]
|
||||
]}
|
||||
</td>
|
||||
</tr>
|
||||
{/loop}
|
||||
|
||||
{loop type="auth" name="pcc3" role="ADMIN" resource="admin.configuration.profile" access="VIEW"}
|
||||
<tr>
|
||||
<td><a href="{url path='/admin/configuration/profiles'}">{intl l='Administration profiles'}</a></td>
|
||||
<td>
|
||||
{include file='renderer/buttons.html' btn_small=true btn_group=false buttons=[
|
||||
[
|
||||
'type' => 'edit',
|
||||
'href' => {url path='/admin/configuration/profiles'}
|
||||
]
|
||||
]}
|
||||
</td>
|
||||
</tr>
|
||||
{/loop}
|
||||
|
||||
{loop type="auth" name="pcc4" role="ADMIN" resource="admin.configuration.administrator" access="VIEW"}
|
||||
<tr>
|
||||
<td><a href="{url path='/admin/configuration/administrators'}">{intl l='Administrators'}</a></td>
|
||||
<td>
|
||||
{include file='renderer/buttons.html' btn_small=true btn_group=false buttons=[
|
||||
[
|
||||
'type' => 'edit',
|
||||
'href' => {url path='/admin/configuration/administrators'}
|
||||
]
|
||||
]}
|
||||
</td>
|
||||
</tr>
|
||||
{/loop}
|
||||
|
||||
{loop type="auth" name="pcc5" role="ADMIN" resource="admin.configuration.language" access="VIEW"}
|
||||
<tr>
|
||||
<td><a href="{url path='/admin/configuration/languages'}">{intl l='Languages & URLs'}</a></td>
|
||||
<td>
|
||||
{include file='renderer/buttons.html' btn_small=true btn_group=false buttons=[
|
||||
[
|
||||
'type' => 'edit',
|
||||
'href' => {url path='/admin/configuration/languages'}
|
||||
]
|
||||
]}
|
||||
</td>
|
||||
</tr>
|
||||
{/loop}
|
||||
|
||||
{loop type="auth" name="pcc5.1" role="ADMIN" resource="admin.configuration.translations" access="VIEW"}
|
||||
<tr>
|
||||
<td><a href="{url path='/admin/configuration/translations'}">{intl l='Translations'}</a></td>
|
||||
<td>
|
||||
{include file='renderer/buttons.html' btn_small=true btn_group=false buttons=[
|
||||
[
|
||||
'type' => 'edit',
|
||||
'href' => {url path='/admin/configuration/translations'}
|
||||
]
|
||||
]}
|
||||
</td>
|
||||
</tr>
|
||||
{/loop}
|
||||
|
||||
{loop type="auth" name="pcc6" role="ADMIN" resource="admin.configuration.mailing-system" access="VIEW"}
|
||||
<tr>
|
||||
<td><a href="{url path='/admin/configuration/mailingSystem'}">{intl l='Mailing system'}</a></td>
|
||||
<td>
|
||||
{include file='renderer/buttons.html' btn_small=true btn_group=false buttons=[
|
||||
[
|
||||
'type' => 'edit',
|
||||
'href' => {url path='/admin/configuration/mailingSystem'}
|
||||
]
|
||||
]}
|
||||
</td>
|
||||
</tr>
|
||||
{/loop}
|
||||
|
||||
{loop type="auth" name="pcc7" role="ADMIN" resource="admin.configuration.admin-logs" access="VIEW"}
|
||||
<tr>
|
||||
<td><a href="{url path='/admin/configuration/adminLogs'}">{intl l='Administration logs'}</a></td>
|
||||
<td>
|
||||
{include file='renderer/buttons.html' btn_small=true btn_group=false buttons=[
|
||||
[
|
||||
'type' => 'edit',
|
||||
'href' => {url path='/admin/configuration/adminLogs'}
|
||||
]
|
||||
]}
|
||||
</td>
|
||||
</tr>
|
||||
{/loop}
|
||||
|
||||
{loop type="auth" name="pcc8" role="ADMIN" resource="admin.configuration.system-logs" access="VIEW"}
|
||||
<tr>
|
||||
<td><a href="{url path='/admin/configuration/system-logs'}">{intl l='System logs'}</a></td>
|
||||
<td>
|
||||
{include file='renderer/buttons.html' btn_small=true btn_group=false buttons=[
|
||||
[
|
||||
'type' => 'edit',
|
||||
'href' => {url path='/admin/configuration/system-logs'}
|
||||
]
|
||||
]}
|
||||
</td>
|
||||
</tr>
|
||||
{/loop}
|
||||
{loop type="auth" name="pcc9" role="ADMIN" resource="admin.configuration.api" access="VIEW"}
|
||||
<tr>
|
||||
<td><a href="{url path='/admin/configuration/api'}">{intl l='API configuration'}</a></td>
|
||||
<td>
|
||||
{include file='renderer/buttons.html' btn_small=true btn_group=false buttons=[
|
||||
[
|
||||
'type' => 'edit',
|
||||
'href' => {url path='/admin/configuration/api'}
|
||||
]
|
||||
]}
|
||||
</td>
|
||||
</tr>
|
||||
{/loop}
|
||||
{loop type="auth" name="pcc10" role="ADMIN" resource="admin.configuration.advanced" access="VIEW"}
|
||||
<tr>
|
||||
<td><a href="{url path='/admin/configuration/advanced'}">{intl l='Advanced configuration'}</a></td>
|
||||
<td>
|
||||
{include file='renderer/buttons.html' btn_small=true btn_group=false buttons=[
|
||||
[
|
||||
'type' => 'edit',
|
||||
'href' => {url path='/admin/configuration/advanced'}
|
||||
]
|
||||
]}
|
||||
</td>
|
||||
</tr>
|
||||
{/loop}
|
||||
{loop type="auth" name="pcc10" role="ADMIN" resource="admin.hook" access="VIEW"}
|
||||
<tr>
|
||||
<td><a href="{url path='/admin/hooks'}">{intl l='Hooks'}</a></td>
|
||||
<td>
|
||||
{include file='renderer/buttons.html' btn_small=true btn_group=false buttons=[
|
||||
[
|
||||
'type' => 'edit',
|
||||
'href' => {url path='/admin/hooks'}
|
||||
]
|
||||
]}
|
||||
</td>
|
||||
</tr>
|
||||
{/loop}
|
||||
{loop type="auth" name="pcc11" role="ADMIN" resource="admin.module-hook" access="VIEW"}
|
||||
<tr>
|
||||
<td><a href="{url path='/admin/module-hooks'}">{intl l='Modules attachments'}</a></td>
|
||||
<td>
|
||||
{include file='renderer/buttons.html' btn_small=true btn_group=false buttons=[
|
||||
[
|
||||
'type' => 'edit',
|
||||
'href' => {url path='/admin/module-hooks'}
|
||||
]
|
||||
]}
|
||||
</td>
|
||||
</tr>
|
||||
{/loop}
|
||||
{hook name="configuration.system-bottom" location="configuration_system_bottom" }
|
||||
</table>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
{hook name="configuration.bottom" location="configuration_bottom" }
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
{/block}
|
||||
|
||||
{block name="javascript-last-call"}
|
||||
{hook name="configuration.js" location="configuration-js" }
|
||||
{extends file="admin-layout.tpl"}
|
||||
|
||||
{block name="no-return-functions"}
|
||||
{$admin_current_location = 'configuration'}
|
||||
{/block}
|
||||
|
||||
{block name="page-title"}{intl l='Configuration'}{/block}
|
||||
|
||||
{block name="check-resource"}admin.configuration{/block}
|
||||
{block name="check-access"}view{/block}
|
||||
|
||||
{block name="main-content"}
|
||||
<div class="configuration">
|
||||
|
||||
<div id="wrapper" class="container">
|
||||
|
||||
<nav>
|
||||
<ul class="breadcrumb">
|
||||
<li><a href="{url path='admin/home'}">{intl l='Home'}</a></li>
|
||||
<li>{intl l='Configuration'}</li>
|
||||
</ul>
|
||||
</nav>
|
||||
|
||||
{hook name="configuration.top" location="configuration_top" }
|
||||
|
||||
<div class="row">
|
||||
|
||||
<div class="col-md-4">
|
||||
<div class="menu-list-table general-block-decorator">
|
||||
<div class="table-responsive">
|
||||
<table class="table table-striped table-condensed">
|
||||
<caption>{intl l='Product catalog configuration'}</caption>
|
||||
|
||||
{hook name="configuration.catalog-top" location="configuration_catalog_top" }
|
||||
|
||||
{loop type="auth" name="pcc1" role="ADMIN" resource="admin.configuration.template" access="VIEW"}
|
||||
<tr>
|
||||
<td><a href="{url path='/admin/configuration/templates'}">{intl l='Product templates'}</a></td>
|
||||
<td>
|
||||
{include file='renderer/buttons.html' btn_small=true btn_group=false buttons=[
|
||||
[
|
||||
'type' => 'edit',
|
||||
'href' => {url path='/admin/configuration/templates'}
|
||||
]
|
||||
]}
|
||||
</td>
|
||||
</tr>
|
||||
{/loop}
|
||||
|
||||
{loop type="auth" name="pcc2" role="ADMIN" resource="admin.configuration.attribute" access="VIEW"}
|
||||
<tr>
|
||||
<td><a href="{url path='/admin/configuration/attributes'}">{intl l='Product attributes'}</a></td>
|
||||
<td>
|
||||
{include file='renderer/buttons.html' btn_small=true btn_group=false buttons=[
|
||||
[
|
||||
'type' => 'edit',
|
||||
'href' => {url path='/admin/configuration/attributes'}
|
||||
]
|
||||
]}
|
||||
</td>
|
||||
</tr>
|
||||
{/loop}
|
||||
|
||||
{loop type="auth" name="pcc3" role="ADMIN" resource="admin.configuration.feature" access="VIEW"}
|
||||
<tr>
|
||||
<td><a href="{url path='/admin/configuration/features'}">{intl l='Product features'}</a></td>
|
||||
<td>
|
||||
{include file='renderer/buttons.html' btn_small=true btn_group=false buttons=[
|
||||
[
|
||||
'type' => 'edit',
|
||||
'href' => {url path='/admin/configuration/features'}
|
||||
]
|
||||
]}
|
||||
</td>
|
||||
</tr>
|
||||
{/loop}
|
||||
|
||||
{loop type="auth" name="pcc4" role="ADMIN" resource="admin.configuration.message" access="VIEW"}
|
||||
<tr>
|
||||
<td><a href="{url path='/admin/configuration/messages'}">{intl l='Mailing templates'}</a></td>
|
||||
<td>
|
||||
{include file='renderer/buttons.html' btn_small=true btn_group=false buttons=[
|
||||
[
|
||||
'type' => 'edit',
|
||||
'href' => {url path='/admin/configuration/messages'}
|
||||
]
|
||||
]}
|
||||
</td>
|
||||
</tr>
|
||||
{/loop}
|
||||
|
||||
{loop type="auth" name="pcc5" role="ADMIN" resource="admin.configuration.currency" access="VIEW"}
|
||||
<tr>
|
||||
<td><a href="{url path='/admin/configuration/currencies'}">{intl l='Currencies'}</a></td>
|
||||
<td>
|
||||
{include file='renderer/buttons.html' btn_small=true btn_group=false buttons=[
|
||||
[
|
||||
'type' => 'edit',
|
||||
'href' => {url path='/admin/configuration/currencies'}
|
||||
]
|
||||
]}
|
||||
</td>
|
||||
</tr>
|
||||
{/loop}
|
||||
|
||||
{loop type="auth" name="pcc6" role="ADMIN" resource="admin.configuration.tax-rule" access="VIEW"}
|
||||
<tr>
|
||||
<td><a href="{url path='/admin/configuration/taxes_rules'}">{intl l='Tax rules'}</a></td>
|
||||
<td>
|
||||
{include file='renderer/buttons.html' btn_small=true btn_group=false buttons=[
|
||||
[
|
||||
'type' => 'edit',
|
||||
'href' => {url path='/admin/configuration/taxes_rules'}
|
||||
]
|
||||
]}
|
||||
</td>
|
||||
</tr>
|
||||
{/loop}
|
||||
|
||||
{hook name="configuration.catalog-bottom" location="configuration_catalog_bottom" }
|
||||
</table>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="col-md-4">
|
||||
<div class="menu-list-table general-block-decorator">
|
||||
<div class="table-responsive">
|
||||
<table class="table table-striped table-condensed">
|
||||
<caption>{intl l='Shipping configuration'}</caption>
|
||||
|
||||
{hook name="configuration.shipping-top" location="configuration_shipping_top" }
|
||||
|
||||
{loop type="auth" name="pcc1" role="ADMIN" resource="admin.configuration.contry" access="VIEW"}
|
||||
<tr>
|
||||
<td><a href="{url path='/admin/configuration/countries'}">{intl l='Countries'}</a></td>
|
||||
<td>
|
||||
{include file='renderer/buttons.html' btn_small=true btn_group=false buttons=[
|
||||
[
|
||||
'type' => 'edit',
|
||||
'href' => {url path='/admin/configuration/countries'}
|
||||
]
|
||||
]}
|
||||
</td>
|
||||
</tr>
|
||||
{/loop}
|
||||
|
||||
{loop type="auth" name="pcc2" role="ADMIN" resource="admin.configuration.state" access="VIEW"}
|
||||
<tr>
|
||||
<td><a href="{url path='/admin/configuration/states'}">{intl l='States / Provinces'}</a></td>
|
||||
<td>
|
||||
{include file='renderer/buttons.html' btn_small=true btn_group=false buttons=[
|
||||
[
|
||||
'type' => 'edit',
|
||||
'href' => {url path='/admin/configuration/states'}
|
||||
]
|
||||
]}
|
||||
</td>
|
||||
</tr>
|
||||
{/loop}
|
||||
|
||||
{loop type="auth" name="pcc3" role="ADMIN" resource="admin.configuration.shipping-zone" access="VIEW"}
|
||||
<tr>
|
||||
<td><a href="{url path='/admin/configuration/shipping_zones'}">{intl l='Shipping configuration'}</a></td>
|
||||
<td>
|
||||
{include file='renderer/buttons.html' btn_small=true btn_group=false buttons=[
|
||||
[
|
||||
'type' => 'edit',
|
||||
'href' => {url path='/admin/configuration/shipping_zones'}
|
||||
]
|
||||
]}
|
||||
</td>
|
||||
</tr>
|
||||
{/loop}
|
||||
|
||||
{loop type="auth" name="pcc4" role="ADMIN" resource="admin.configuration.shipping-configuration" access="VIEW"}
|
||||
<tr>
|
||||
<td><a href="{url path='/admin/configuration/shipping_configuration'}">{intl l='Shipping zones management'}</a></td>
|
||||
<td>
|
||||
{include file='renderer/buttons.html' btn_small=true btn_group=false buttons=[
|
||||
[
|
||||
'type' => 'edit',
|
||||
'href' => {url path='/admin/configuration/shipping_configuration'}
|
||||
]
|
||||
]}
|
||||
</td>
|
||||
</tr>
|
||||
{/loop}
|
||||
|
||||
{hook name="configuration.shipping-bottom" location="configuration_shipping_bottom" }
|
||||
|
||||
</table>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="menu-list-table general-block-decorator">
|
||||
<div class="table-responsive">
|
||||
<table class="table table-striped table-condensed">
|
||||
<caption>{intl l='Order path configuration'}</caption>
|
||||
|
||||
{hook name="configuration.order-path.top"}
|
||||
|
||||
{loop type="auth" name="pcc1" role="ADMIN" resource="admin.configuration.order-status" access="VIEW"}
|
||||
<tr>
|
||||
<td><a href="{url path='/admin/configuration/order-status'}">{intl l='Order status'}</a></td>
|
||||
<td>
|
||||
{include file='renderer/buttons.html' btn_small=true btn_group=false buttons=[
|
||||
[
|
||||
'type' => 'edit',
|
||||
'href' => {url path='/admin/configuration/order-status'}
|
||||
]
|
||||
]}
|
||||
</td>
|
||||
</tr>
|
||||
{/loop}
|
||||
|
||||
{hook name="configuration.order-path.bottom"}
|
||||
|
||||
</table>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="col-md-4">
|
||||
<div class="menu-list-table general-block-decorator">
|
||||
<div class="table-responsive">
|
||||
<table class="table table-striped table-condensed">
|
||||
<caption>{intl l='System parameters'}</caption>
|
||||
|
||||
{hook name="configuration.system-top" location="configuration_system_top" }
|
||||
|
||||
{loop type="auth" name="pcc-store" role="ADMIN" resource="admin.configuration.store" access="VIEW"}
|
||||
<tr>
|
||||
<td><a href="{url path='/admin/configuration/store'}">{intl l='Store'}</a></td>
|
||||
<td>
|
||||
{include file='renderer/buttons.html' btn_small=true btn_group=false buttons=[
|
||||
[
|
||||
'type' => 'edit',
|
||||
'href' => {url path='/admin/configuration/store'}
|
||||
]
|
||||
]}
|
||||
</td>
|
||||
</tr>
|
||||
{/loop}
|
||||
|
||||
{loop type="auth" name="pcc2" role="ADMIN" resource="admin.configuration.variable" access="VIEW"}
|
||||
<tr>
|
||||
<td><a href="{url path='/admin/configuration/variables'}">{intl l='System variables'}</a></td>
|
||||
<td>
|
||||
{include file='renderer/buttons.html' btn_small=true btn_group=false buttons=[
|
||||
[
|
||||
'type' => 'edit',
|
||||
'href' => {url path='/admin/configuration/variables'}
|
||||
]
|
||||
]}
|
||||
</td>
|
||||
</tr>
|
||||
{/loop}
|
||||
|
||||
{loop type="auth" name="pcc3" role="ADMIN" resource="admin.configuration.profile" access="VIEW"}
|
||||
<tr>
|
||||
<td><a href="{url path='/admin/configuration/profiles'}">{intl l='Administration profiles'}</a></td>
|
||||
<td>
|
||||
{include file='renderer/buttons.html' btn_small=true btn_group=false buttons=[
|
||||
[
|
||||
'type' => 'edit',
|
||||
'href' => {url path='/admin/configuration/profiles'}
|
||||
]
|
||||
]}
|
||||
</td>
|
||||
</tr>
|
||||
{/loop}
|
||||
|
||||
{loop type="auth" name="pcc4" role="ADMIN" resource="admin.configuration.administrator" access="VIEW"}
|
||||
<tr>
|
||||
<td><a href="{url path='/admin/configuration/administrators'}">{intl l='Administrators'}</a></td>
|
||||
<td>
|
||||
{include file='renderer/buttons.html' btn_small=true btn_group=false buttons=[
|
||||
[
|
||||
'type' => 'edit',
|
||||
'href' => {url path='/admin/configuration/administrators'}
|
||||
]
|
||||
]}
|
||||
</td>
|
||||
</tr>
|
||||
{/loop}
|
||||
|
||||
{loop type="auth" name="pcc5" role="ADMIN" resource="admin.configuration.language" access="VIEW"}
|
||||
<tr>
|
||||
<td><a href="{url path='/admin/configuration/languages'}">{intl l='Languages & URLs'}</a></td>
|
||||
<td>
|
||||
{include file='renderer/buttons.html' btn_small=true btn_group=false buttons=[
|
||||
[
|
||||
'type' => 'edit',
|
||||
'href' => {url path='/admin/configuration/languages'}
|
||||
]
|
||||
]}
|
||||
</td>
|
||||
</tr>
|
||||
{/loop}
|
||||
|
||||
{loop type="auth" name="pcc5.1" role="ADMIN" resource="admin.configuration.translations" access="VIEW"}
|
||||
<tr>
|
||||
<td><a href="{url path='/admin/configuration/translations'}">{intl l='Translations'}</a></td>
|
||||
<td>
|
||||
{include file='renderer/buttons.html' btn_small=true btn_group=false buttons=[
|
||||
[
|
||||
'type' => 'edit',
|
||||
'href' => {url path='/admin/configuration/translations'}
|
||||
]
|
||||
]}
|
||||
</td>
|
||||
</tr>
|
||||
{/loop}
|
||||
|
||||
{loop type="auth" name="pcc6" role="ADMIN" resource="admin.configuration.mailing-system" access="VIEW"}
|
||||
<tr>
|
||||
<td><a href="{url path='/admin/configuration/mailingSystem'}">{intl l='Mailing system'}</a></td>
|
||||
<td>
|
||||
{include file='renderer/buttons.html' btn_small=true btn_group=false buttons=[
|
||||
[
|
||||
'type' => 'edit',
|
||||
'href' => {url path='/admin/configuration/mailingSystem'}
|
||||
]
|
||||
]}
|
||||
</td>
|
||||
</tr>
|
||||
{/loop}
|
||||
|
||||
{loop type="auth" name="pcc7" role="ADMIN" resource="admin.configuration.admin-logs" access="VIEW"}
|
||||
<tr>
|
||||
<td><a href="{url path='/admin/configuration/adminLogs'}">{intl l='Administration logs'}</a></td>
|
||||
<td>
|
||||
{include file='renderer/buttons.html' btn_small=true btn_group=false buttons=[
|
||||
[
|
||||
'type' => 'edit',
|
||||
'href' => {url path='/admin/configuration/adminLogs'}
|
||||
]
|
||||
]}
|
||||
</td>
|
||||
</tr>
|
||||
{/loop}
|
||||
|
||||
{loop type="auth" name="pcc8" role="ADMIN" resource="admin.configuration.system-logs" access="VIEW"}
|
||||
<tr>
|
||||
<td><a href="{url path='/admin/configuration/system-logs'}">{intl l='System logs'}</a></td>
|
||||
<td>
|
||||
{include file='renderer/buttons.html' btn_small=true btn_group=false buttons=[
|
||||
[
|
||||
'type' => 'edit',
|
||||
'href' => {url path='/admin/configuration/system-logs'}
|
||||
]
|
||||
]}
|
||||
</td>
|
||||
</tr>
|
||||
{/loop}
|
||||
{loop type="auth" name="pcc9" role="ADMIN" resource="admin.configuration.api" access="VIEW"}
|
||||
<tr>
|
||||
<td><a href="{url path='/admin/configuration/api'}">{intl l='API configuration'}</a></td>
|
||||
<td>
|
||||
{include file='renderer/buttons.html' btn_small=true btn_group=false buttons=[
|
||||
[
|
||||
'type' => 'edit',
|
||||
'href' => {url path='/admin/configuration/api'}
|
||||
]
|
||||
]}
|
||||
</td>
|
||||
</tr>
|
||||
{/loop}
|
||||
{loop type="auth" name="pcc10" role="ADMIN" resource="admin.configuration.advanced" access="VIEW"}
|
||||
<tr>
|
||||
<td><a href="{url path='/admin/configuration/advanced'}">{intl l='Advanced configuration'}</a></td>
|
||||
<td>
|
||||
{include file='renderer/buttons.html' btn_small=true btn_group=false buttons=[
|
||||
[
|
||||
'type' => 'edit',
|
||||
'href' => {url path='/admin/configuration/advanced'}
|
||||
]
|
||||
]}
|
||||
</td>
|
||||
</tr>
|
||||
{/loop}
|
||||
{loop type="auth" name="pcc10" role="ADMIN" resource="admin.hook" access="VIEW"}
|
||||
<tr>
|
||||
<td><a href="{url path='/admin/hooks'}">{intl l='Hooks'}</a></td>
|
||||
<td>
|
||||
{include file='renderer/buttons.html' btn_small=true btn_group=false buttons=[
|
||||
[
|
||||
'type' => 'edit',
|
||||
'href' => {url path='/admin/hooks'}
|
||||
]
|
||||
]}
|
||||
</td>
|
||||
</tr>
|
||||
{/loop}
|
||||
{loop type="auth" name="pcc11" role="ADMIN" resource="admin.module-hook" access="VIEW"}
|
||||
<tr>
|
||||
<td><a href="{url path='/admin/module-hooks'}">{intl l='Modules attachments'}</a></td>
|
||||
<td>
|
||||
{include file='renderer/buttons.html' btn_small=true btn_group=false buttons=[
|
||||
[
|
||||
'type' => 'edit',
|
||||
'href' => {url path='/admin/module-hooks'}
|
||||
]
|
||||
]}
|
||||
</td>
|
||||
</tr>
|
||||
{/loop}
|
||||
{hook name="configuration.system-bottom" location="configuration_system_bottom" }
|
||||
</table>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
{hook name="configuration.bottom" location="configuration_bottom" }
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
{/block}
|
||||
|
||||
{block name="javascript-last-call"}
|
||||
{hook name="configuration.js" location="configuration-js" }
|
||||
{/block}
|
||||
@@ -1,19 +1,19 @@
|
||||
{capture name="module_include"}
|
||||
{if $location}
|
||||
{hook name="$hook" location="$location" id="$id" view="$view" countvar="module_count"}
|
||||
{else}
|
||||
{hook name="$hook" id="$id" view="$view" countvar="module_count"}
|
||||
{/if}
|
||||
{/capture}
|
||||
|
||||
{if trim($smarty.capture.module_include) == ''}
|
||||
<br />
|
||||
|
||||
<div class="alert alert-info">
|
||||
<p class="text-center" style="font-size: 2.2em"><span class="glyphicon glyphicon-info-sign"></span></p>
|
||||
<p class="text-center">{intl l="There is currently no active module here."}</p>
|
||||
</div>
|
||||
|
||||
{else}
|
||||
{$smarty.capture.module_include nofilter}
|
||||
{/if}
|
||||
{capture name="module_include"}
|
||||
{if $location}
|
||||
{hook name="$hook" location="$location" id="$id" view="$view" countvar="module_count"}
|
||||
{else}
|
||||
{hook name="$hook" id="$id" view="$view" countvar="module_count"}
|
||||
{/if}
|
||||
{/capture}
|
||||
|
||||
{if trim($smarty.capture.module_include) == ''}
|
||||
<br />
|
||||
|
||||
<div class="alert alert-info">
|
||||
<p class="text-center" style="font-size: 2.2em"><span class="glyphicon glyphicon-info-sign"></span></p>
|
||||
<p class="text-center">{intl l="There is currently no active module here."}</p>
|
||||
</div>
|
||||
|
||||
{else}
|
||||
{$smarty.capture.module_include nofilter}
|
||||
{/if}
|
||||
|
||||
@@ -168,10 +168,10 @@ return array(
|
||||
'Price descending' => 'Price descending',
|
||||
'Proceed checkout' => 'Proceed checkout',
|
||||
'Product Empty Button' => 'Add my first product',
|
||||
'Product Empty Message' => 'It\'s really quick to add a product.
|
||||
<ol>
|
||||
<li>Check <strong>NEW</strong> under the details tab if you want to see your product in the latest product section.</li>
|
||||
<li>Check <strong>SALE</strong> under the details tab if you want to see your product in the offer product section.</li>
|
||||
'Product Empty Message' => 'It\'s really quick to add a product.
|
||||
<ol>
|
||||
<li>Check <strong>NEW</strong> under the details tab if you want to see your product in the latest product section.</li>
|
||||
<li>Check <strong>SALE</strong> under the details tab if you want to see your product in the offer product section.</li>
|
||||
</ol>',
|
||||
'Product Empty Title' => 'Welcome',
|
||||
'Product Name' => 'Product Name',
|
||||
|
||||
@@ -219,6 +219,7 @@
|
||||
{/if}
|
||||
</span>
|
||||
{/loop}
|
||||
<input type="hidden" id="has-digressive-price" value="true">
|
||||
{/ifloop}
|
||||
{elseloop rel="dp"}
|
||||
<span id="pse-promo">
|
||||
@@ -229,6 +230,7 @@
|
||||
<span class="old-price"><span class="price-label">{intl l="Regular Price:"} </span><span id="pse-price-old" class="price">{format_money number=$TAXED_PRICE}</span></span>
|
||||
{/if}
|
||||
</span>
|
||||
<input type="hidden" id="has-digressive-price" value="false">
|
||||
{/elseloop}
|
||||
<!-- TheCoreDev le 21/05/2021 : rajout du prix au kilo -->
|
||||
<!-- <div class="prix-au-kilo">-->
|
||||
|
||||
@@ -168,10 +168,10 @@ return array(
|
||||
'Price descending' => 'Price descending',
|
||||
'Proceed checkout' => 'Proceed checkout',
|
||||
'Product Empty Button' => 'Add my first product',
|
||||
'Product Empty Message' => 'It\'s really quick to add a product.
|
||||
<ol>
|
||||
<li>Check <strong>NEW</strong> under the details tab if you want to see your product in the latest product section.</li>
|
||||
<li>Check <strong>SALE</strong> under the details tab if you want to see your product in the offer product section.</li>
|
||||
'Product Empty Message' => 'It\'s really quick to add a product.
|
||||
<ol>
|
||||
<li>Check <strong>NEW</strong> under the details tab if you want to see your product in the latest product section.</li>
|
||||
<li>Check <strong>SALE</strong> under the details tab if you want to see your product in the offer product section.</li>
|
||||
</ol>',
|
||||
'Product Empty Title' => 'Welcome',
|
||||
'Product Name' => 'Product Name',
|
||||
|
||||
@@ -1,110 +1,110 @@
|
||||
<!--
|
||||
______ __ __ ______ __ __ ______
|
||||
/\__ _\ /\ \_\ \ /\ ___\ /\ \ /\ \ /\ __ \
|
||||
\/_/\ \/ \ \ __ \ \ \ __\ \ \ \____ \ \ \ \ \ __ \
|
||||
\ \_\ \ \_\ \_\ \ \_____\ \ \_____\ \ \_\ \ \_\ \_\
|
||||
\/_/ \/_/\/_/ \/_____/ \/_____/ \/_/ \/_/\/_/
|
||||
|
||||
|
||||
Copyright (c) OpenStudio
|
||||
email : info@thelia.net
|
||||
web : http://www.thelia.net
|
||||
|
||||
This program is free software; you can redistribute it and/or modify
|
||||
it under the terms of the GNU General Public License as published by
|
||||
the Free Software Foundation; either version 3 of the
|
||||
GNU General Public License : http://www.gnu.org/licenses/
|
||||
-->
|
||||
|
||||
<!--
|
||||
TEMPLATE-TEST-HOOK
|
||||
-->
|
||||
|
||||
{* Declare assets directory, relative to template base directory *}
|
||||
{declare_assets directory='assets'}
|
||||
|
||||
{* Set the default translation domain, that will be used by {intl} when the 'd' parameter is not set *}
|
||||
{default_translation_domain domain='fo.default'}
|
||||
|
||||
{hook name="main.head-top"}
|
||||
|
||||
{hook name="main.stylesheet"}
|
||||
|
||||
{hook name="main.body-top"}
|
||||
|
||||
{hook name="main.header-top"}
|
||||
|
||||
{hook name="main.navbar-secondary"}
|
||||
{ifhook rel="main.navbar-secondary"}
|
||||
::main.navbar-secondary ifhook::
|
||||
{/ifhook}
|
||||
{elsehook rel="main.navbar-secondary"}
|
||||
::main.navbar-secondary elsehook::
|
||||
{/elsehook}
|
||||
|
||||
{hook name="main.navbar-primary"}
|
||||
{ifhook rel="main.navbar-primary"}
|
||||
::main.navbar-primary ifhook::
|
||||
{/ifhook}
|
||||
{elsehook rel="main.navbar-primary"}
|
||||
::main.navbar-primary elsehook::
|
||||
{/elsehook}
|
||||
|
||||
{hook name="main.header-bottom"}
|
||||
|
||||
{hook name="main.content-top"}
|
||||
|
||||
|
||||
{block name="main-content"}{/block}
|
||||
|
||||
|
||||
{hook name="main.content-bottom"}
|
||||
|
||||
{ifhook rel="main.footer-top"}
|
||||
{hook name="main.footer-top"}
|
||||
{/ifhook}
|
||||
{elsehook rel="main.footer-top"}
|
||||
::NO main.footer-top::
|
||||
{/elsehook}
|
||||
|
||||
{ifhook rel="product.additional"}
|
||||
{hookblock name="product.additional"}
|
||||
{forhook rel="product.additional"}
|
||||
::product.additional ifhook::
|
||||
{/forhook}
|
||||
{/hookblock}
|
||||
{/ifhook}
|
||||
{elsehook rel="product.additional"}
|
||||
::product.additional elsehook::
|
||||
{/elsehook}
|
||||
|
||||
|
||||
|
||||
{ifhook rel="main.footer-body"}
|
||||
::main.footer-body ifhook::
|
||||
{hookblock name="main.footer-body"}
|
||||
{forhook rel="main.footer-body"}
|
||||
::main.footer-body {$id} {$class} {$content}::
|
||||
{/forhook}
|
||||
{/hookblock}
|
||||
{/ifhook}
|
||||
{elsehook rel="main.footer-body"}
|
||||
::main.footer-body elsehook::
|
||||
{/elsehook}
|
||||
|
||||
{ifhook rel="main.footer-bottom"}
|
||||
{hook name="main.footer-bottom"}
|
||||
{/ifhook}
|
||||
{elsehook rel="main.footer-bottom"}
|
||||
::NO main.footer-bottom::
|
||||
{/elsehook}
|
||||
|
||||
{hook name="main.after-javascript-include"}
|
||||
|
||||
{block name="after-javascript-include"}{/block}
|
||||
|
||||
{hook name="main.javascript-initialization"}
|
||||
|
||||
{block name="javascript-initialization"}{/block}
|
||||
|
||||
{hook name="main.body-bottom"}
|
||||
<!--
|
||||
______ __ __ ______ __ __ ______
|
||||
/\__ _\ /\ \_\ \ /\ ___\ /\ \ /\ \ /\ __ \
|
||||
\/_/\ \/ \ \ __ \ \ \ __\ \ \ \____ \ \ \ \ \ __ \
|
||||
\ \_\ \ \_\ \_\ \ \_____\ \ \_____\ \ \_\ \ \_\ \_\
|
||||
\/_/ \/_/\/_/ \/_____/ \/_____/ \/_/ \/_/\/_/
|
||||
|
||||
|
||||
Copyright (c) OpenStudio
|
||||
email : info@thelia.net
|
||||
web : http://www.thelia.net
|
||||
|
||||
This program is free software; you can redistribute it and/or modify
|
||||
it under the terms of the GNU General Public License as published by
|
||||
the Free Software Foundation; either version 3 of the
|
||||
GNU General Public License : http://www.gnu.org/licenses/
|
||||
-->
|
||||
|
||||
<!--
|
||||
TEMPLATE-TEST-HOOK
|
||||
-->
|
||||
|
||||
{* Declare assets directory, relative to template base directory *}
|
||||
{declare_assets directory='assets'}
|
||||
|
||||
{* Set the default translation domain, that will be used by {intl} when the 'd' parameter is not set *}
|
||||
{default_translation_domain domain='fo.default'}
|
||||
|
||||
{hook name="main.head-top"}
|
||||
|
||||
{hook name="main.stylesheet"}
|
||||
|
||||
{hook name="main.body-top"}
|
||||
|
||||
{hook name="main.header-top"}
|
||||
|
||||
{hook name="main.navbar-secondary"}
|
||||
{ifhook rel="main.navbar-secondary"}
|
||||
::main.navbar-secondary ifhook::
|
||||
{/ifhook}
|
||||
{elsehook rel="main.navbar-secondary"}
|
||||
::main.navbar-secondary elsehook::
|
||||
{/elsehook}
|
||||
|
||||
{hook name="main.navbar-primary"}
|
||||
{ifhook rel="main.navbar-primary"}
|
||||
::main.navbar-primary ifhook::
|
||||
{/ifhook}
|
||||
{elsehook rel="main.navbar-primary"}
|
||||
::main.navbar-primary elsehook::
|
||||
{/elsehook}
|
||||
|
||||
{hook name="main.header-bottom"}
|
||||
|
||||
{hook name="main.content-top"}
|
||||
|
||||
|
||||
{block name="main-content"}{/block}
|
||||
|
||||
|
||||
{hook name="main.content-bottom"}
|
||||
|
||||
{ifhook rel="main.footer-top"}
|
||||
{hook name="main.footer-top"}
|
||||
{/ifhook}
|
||||
{elsehook rel="main.footer-top"}
|
||||
::NO main.footer-top::
|
||||
{/elsehook}
|
||||
|
||||
{ifhook rel="product.additional"}
|
||||
{hookblock name="product.additional"}
|
||||
{forhook rel="product.additional"}
|
||||
::product.additional ifhook::
|
||||
{/forhook}
|
||||
{/hookblock}
|
||||
{/ifhook}
|
||||
{elsehook rel="product.additional"}
|
||||
::product.additional elsehook::
|
||||
{/elsehook}
|
||||
|
||||
|
||||
|
||||
{ifhook rel="main.footer-body"}
|
||||
::main.footer-body ifhook::
|
||||
{hookblock name="main.footer-body"}
|
||||
{forhook rel="main.footer-body"}
|
||||
::main.footer-body {$id} {$class} {$content}::
|
||||
{/forhook}
|
||||
{/hookblock}
|
||||
{/ifhook}
|
||||
{elsehook rel="main.footer-body"}
|
||||
::main.footer-body elsehook::
|
||||
{/elsehook}
|
||||
|
||||
{ifhook rel="main.footer-bottom"}
|
||||
{hook name="main.footer-bottom"}
|
||||
{/ifhook}
|
||||
{elsehook rel="main.footer-bottom"}
|
||||
::NO main.footer-bottom::
|
||||
{/elsehook}
|
||||
|
||||
{hook name="main.after-javascript-include"}
|
||||
|
||||
{block name="after-javascript-include"}{/block}
|
||||
|
||||
{hook name="main.javascript-initialization"}
|
||||
|
||||
{block name="javascript-initialization"}{/block}
|
||||
|
||||
{hook name="main.body-bottom"}
|
||||
|
||||