first commit

This commit is contained in:
2026-02-08 21:16:11 +01:00
commit e17b7026fd
8881 changed files with 1160453 additions and 0 deletions

View File

@@ -0,0 +1,339 @@
GNU GENERAL PUBLIC LICENSE
Version 2, June 1991
Copyright (C) 1989, 1991 Free Software Foundation, Inc.,
51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
Everyone is permitted to copy and distribute verbatim copies
of this license document, but changing it is not allowed.
Preamble
The licenses for most software are designed to take away your
freedom to share and change it. By contrast, the GNU General Public
License is intended to guarantee your freedom to share and change free
software--to make sure the software is free for all its users. This
General Public License applies to most of the Free Software
Foundation's software and to any other program whose authors commit to
using it. (Some other Free Software Foundation software is covered by
the GNU Lesser General Public License instead.) You can apply it to
your programs, too.
When we speak of free software, we are referring to freedom, not
price. Our General Public Licenses are designed to make sure that you
have the freedom to distribute copies of free software (and charge for
this service if you wish), that you receive source code or can get it
if you want it, that you can change the software or use pieces of it
in new free programs; and that you know you can do these things.
To protect your rights, we need to make restrictions that forbid
anyone to deny you these rights or to ask you to surrender the rights.
These restrictions translate to certain responsibilities for you if you
distribute copies of the software, or if you modify it.
For example, if you distribute copies of such a program, whether
gratis or for a fee, you must give the recipients all the rights that
you have. You must make sure that they, too, receive or can get the
source code. And you must show them these terms so they know their
rights.
We protect your rights with two steps: (1) copyright the software, and
(2) offer you this license which gives you legal permission to copy,
distribute and/or modify the software.
Also, for each author's protection and ours, we want to make certain
that everyone understands that there is no warranty for this free
software. If the software is modified by someone else and passed on, we
want its recipients to know that what they have is not the original, so
that any problems introduced by others will not reflect on the original
authors' reputations.
Finally, any free program is threatened constantly by software
patents. We wish to avoid the danger that redistributors of a free
program will individually obtain patent licenses, in effect making the
program proprietary. To prevent this, we have made it clear that any
patent must be licensed for everyone's free use or not licensed at all.
The precise terms and conditions for copying, distribution and
modification follow.
GNU GENERAL PUBLIC LICENSE
TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
0. This License applies to any program or other work which contains
a notice placed by the copyright holder saying it may be distributed
under the terms of this General Public License. The "Program", below,
refers to any such program or work, and a "work based on the Program"
means either the Program or any derivative work under copyright law:
that is to say, a work containing the Program or a portion of it,
either verbatim or with modifications and/or translated into another
language. (Hereinafter, translation is included without limitation in
the term "modification".) Each licensee is addressed as "you".
Activities other than copying, distribution and modification are not
covered by this License; they are outside its scope. The act of
running the Program is not restricted, and the output from the Program
is covered only if its contents constitute a work based on the
Program (independent of having been made by running the Program).
Whether that is true depends on what the Program does.
1. You may copy and distribute verbatim copies of the Program's
source code as you receive it, in any medium, provided that you
conspicuously and appropriately publish on each copy an appropriate
copyright notice and disclaimer of warranty; keep intact all the
notices that refer to this License and to the absence of any warranty;
and give any other recipients of the Program a copy of this License
along with the Program.
You may charge a fee for the physical act of transferring a copy, and
you may at your option offer warranty protection in exchange for a fee.
2. You may modify your copy or copies of the Program or any portion
of it, thus forming a work based on the Program, and copy and
distribute such modifications or work under the terms of Section 1
above, provided that you also meet all of these conditions:
a) You must cause the modified files to carry prominent notices
stating that you changed the files and the date of any change.
b) You must cause any work that you distribute or publish, that in
whole or in part contains or is derived from the Program or any
part thereof, to be licensed as a whole at no charge to all third
parties under the terms of this License.
c) If the modified program normally reads commands interactively
when run, you must cause it, when started running for such
interactive use in the most ordinary way, to print or display an
announcement including an appropriate copyright notice and a
notice that there is no warranty (or else, saying that you provide
a warranty) and that users may redistribute the program under
these conditions, and telling the user how to view a copy of this
License. (Exception: if the Program itself is interactive but
does not normally print such an announcement, your work based on
the Program is not required to print an announcement.)
These requirements apply to the modified work as a whole. If
identifiable sections of that work are not derived from the Program,
and can be reasonably considered independent and separate works in
themselves, then this License, and its terms, do not apply to those
sections when you distribute them as separate works. But when you
distribute the same sections as part of a whole which is a work based
on the Program, the distribution of the whole must be on the terms of
this License, whose permissions for other licensees extend to the
entire whole, and thus to each and every part regardless of who wrote it.
Thus, it is not the intent of this section to claim rights or contest
your rights to work written entirely by you; rather, the intent is to
exercise the right to control the distribution of derivative or
collective works based on the Program.
In addition, mere aggregation of another work not based on the Program
with the Program (or with a work based on the Program) on a volume of
a storage or distribution medium does not bring the other work under
the scope of this License.
3. You may copy and distribute the Program (or a work based on it,
under Section 2) in object code or executable form under the terms of
Sections 1 and 2 above provided that you also do one of the following:
a) Accompany it with the complete corresponding machine-readable
source code, which must be distributed under the terms of Sections
1 and 2 above on a medium customarily used for software interchange; or,
b) Accompany it with a written offer, valid for at least three
years, to give any third party, for a charge no more than your
cost of physically performing source distribution, a complete
machine-readable copy of the corresponding source code, to be
distributed under the terms of Sections 1 and 2 above on a medium
customarily used for software interchange; or,
c) Accompany it with the information you received as to the offer
to distribute corresponding source code. (This alternative is
allowed only for noncommercial distribution and only if you
received the program in object code or executable form with such
an offer, in accord with Subsection b above.)
The source code for a work means the preferred form of the work for
making modifications to it. For an executable work, complete source
code means all the source code for all modules it contains, plus any
associated interface definition files, plus the scripts used to
control compilation and installation of the executable. However, as a
special exception, the source code distributed need not include
anything that is normally distributed (in either source or binary
form) with the major components (compiler, kernel, and so on) of the
operating system on which the executable runs, unless that component
itself accompanies the executable.
If distribution of executable or object code is made by offering
access to copy from a designated place, then offering equivalent
access to copy the source code from the same place counts as
distribution of the source code, even though third parties are not
compelled to copy the source along with the object code.
4. You may not copy, modify, sublicense, or distribute the Program
except as expressly provided under this License. Any attempt
otherwise to copy, modify, sublicense or distribute the Program is
void, and will automatically terminate your rights under this License.
However, parties who have received copies, or rights, from you under
this License will not have their licenses terminated so long as such
parties remain in full compliance.
5. You are not required to accept this License, since you have not
signed it. However, nothing else grants you permission to modify or
distribute the Program or its derivative works. These actions are
prohibited by law if you do not accept this License. Therefore, by
modifying or distributing the Program (or any work based on the
Program), you indicate your acceptance of this License to do so, and
all its terms and conditions for copying, distributing or modifying
the Program or works based on it.
6. Each time you redistribute the Program (or any work based on the
Program), the recipient automatically receives a license from the
original licensor to copy, distribute or modify the Program subject to
these terms and conditions. You may not impose any further
restrictions on the recipients' exercise of the rights granted herein.
You are not responsible for enforcing compliance by third parties to
this License.
7. If, as a consequence of a court judgment or allegation of patent
infringement or for any other reason (not limited to patent issues),
conditions are imposed on you (whether by court order, agreement or
otherwise) that contradict the conditions of this License, they do not
excuse you from the conditions of this License. If you cannot
distribute so as to satisfy simultaneously your obligations under this
License and any other pertinent obligations, then as a consequence you
may not distribute the Program at all. For example, if a patent
license would not permit royalty-free redistribution of the Program by
all those who receive copies directly or indirectly through you, then
the only way you could satisfy both it and this License would be to
refrain entirely from distribution of the Program.
If any portion of this section is held invalid or unenforceable under
any particular circumstance, the balance of the section is intended to
apply and the section as a whole is intended to apply in other
circumstances.
It is not the purpose of this section to induce you to infringe any
patents or other property right claims or to contest validity of any
such claims; this section has the sole purpose of protecting the
integrity of the free software distribution system, which is
implemented by public license practices. Many people have made
generous contributions to the wide range of software distributed
through that system in reliance on consistent application of that
system; it is up to the author/donor to decide if he or she is willing
to distribute software through any other system and a licensee cannot
impose that choice.
This section is intended to make thoroughly clear what is believed to
be a consequence of the rest of this License.
8. If the distribution and/or use of the Program is restricted in
certain countries either by patents or by copyrighted interfaces, the
original copyright holder who places the Program under this License
may add an explicit geographical distribution limitation excluding
those countries, so that distribution is permitted only in or among
countries not thus excluded. In such case, this License incorporates
the limitation as if written in the body of this License.
9. The Free Software Foundation may publish revised and/or new versions
of the General Public License from time to time. Such new versions will
be similar in spirit to the present version, but may differ in detail to
address new problems or concerns.
Each version is given a distinguishing version number. If the Program
specifies a version number of this License which applies to it and "any
later version", you have the option of following the terms and conditions
either of that version or of any later version published by the Free
Software Foundation. If the Program does not specify a version number of
this License, you may choose any version ever published by the Free Software
Foundation.
10. If you wish to incorporate parts of the Program into other free
programs whose distribution conditions are different, write to the author
to ask for permission. For software which is copyrighted by the Free
Software Foundation, write to the Free Software Foundation; we sometimes
make exceptions for this. Our decision will be guided by the two goals
of preserving the free status of all derivatives of our free software and
of promoting the sharing and reuse of software generally.
NO WARRANTY
11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY
FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN
OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES
PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED
OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS
TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE
PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING,
REPAIR OR CORRECTION.
12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING
WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR
REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES,
INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING
OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED
TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY
YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER
PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE
POSSIBILITY OF SUCH DAMAGES.
END OF TERMS AND CONDITIONS
How to Apply These Terms to Your New Programs
If you develop a new program, and you want it to be of the greatest
possible use to the public, the best way to achieve this is to make it
free software which everyone can redistribute and change under these terms.
To do so, attach the following notices to the program. It is safest
to attach them to the start of each source file to most effectively
convey the exclusion of warranty; and each file should have at least
the "copyright" line and a pointer to where the full notice is found.
<one line to give the program's name and a brief idea of what it does.>
Copyright (C) <year> <name of author>
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 2 of the License, or
(at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License along
with this program; if not, write to the Free Software Foundation, Inc.,
51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
Also add information on how to contact you by electronic and paper mail.
If the program is interactive, make it output a short notice like this
when it starts in an interactive mode:
Gnomovision version 69, Copyright (C) year name of author
Gnomovision comes with ABSOLUTELY NO WARRANTY; for details type `show w'.
This is free software, and you are welcome to redistribute it
under certain conditions; type `show c' for details.
The hypothetical commands `show w' and `show c' should show the appropriate
parts of the General Public License. Of course, the commands you use may
be called something other than `show w' and `show c'; they could even be
mouse-clicks or menu items--whatever suits your program.
You should also get your employer (if you work as a programmer) or your
school, if any, to sign a "copyright disclaimer" for the program, if
necessary. Here is a sample; alter the names:
Yoyodyne, Inc., hereby disclaims all copyright interest in the program
`Gnomovision' (which makes passes at compilers) written by James Hacker.
<signature of Ty Coon>, 1 April 1989
Ty Coon, President of Vice
This General Public License does not permit incorporating your program into
proprietary programs. If your program is a subroutine library, you may
consider it more useful to permit linking proprietary applications with the
library. If this is what you want to do, use the GNU Lesser General
Public License instead of this License.

View File

@@ -0,0 +1,14 @@
<?xml version="1.0" encoding="utf-8" ?>
<access component="com_quantummanager">
<section name="component">
<action name="core.admin" title="JACTION_ADMIN" description="JACTION_ADMIN_COMPONENT_DESC" />
<action name="core.options" title="JACTION_OPTIONS" description="JACTION_OPTIONS_COMPONENT_DESC" />
<action name="core.manage" title="JACTION_MANAGE" description="JACTION_MANAGE_COMPONENT_DESC" />
<action name="core.create" title="JACTION_CREATE" description="JACTION_CREATE_COMPONENT_DESC" />
<action name="core.delete" title="JACTION_DELETE" description="JACTION_DELETE_COMPONENT_DESC" />
<action name="core.edit" title="JACTION_EDIT" description="JACTION_EDIT_COMPONENT_DESC" />
<action name="core.edit.state" title="JACTION_EDITSTATE" description="JACTION_EDITSTATE_COMPONENT_DESC" />
<action name="core.edit.own" title="JACTION_EDITOWN" description="JACTION_EDITOWN_COMPONENT_DESC" />
<action name="core.edit.value" title="JACTION_EDITVALUE" description="JACTION_EDITVALUE_COMPONENT_DESC" />
</section>
</access>

View File

@@ -0,0 +1,729 @@
<?xml version="1.0" encoding="utf-8"?>
<config>
<fieldset name="general" label="COM_QUANTUMMANAGER_CONFIG_GENERAL" description="COM_QUANTUMMANAGER_CONFIG_GENERAL_DESC">
<field type="hidden"
name="helpURL"
default="https://norrnext.com/docs/joomla-extensions/quantum-manager"
/>
<field type="note"
label="COM_QUANTUMMANAGER_CONFIG_GENERAL_DOCS_LABEL"
description="COM_QUANTUMMANAGER_CONFIG_GENERAL_DOCS_DESC"
class="alert alert-info"
/>
<field type="spacer"
name="spacer_scopes"
label="COM_QUANTUMMANAGER_CONFIG_GENERAL_SPACER_SCOPES"
filter="unset"
/>
<field type="note"
label="COM_QUANTUMMANAGER_CONFIG_GENERAL_PATH_VARIABLES_LABEL"
description="COM_QUANTUMMANAGER_CONFIG_GENERAL_PATH_DESC"
class="alert alert-info"
/>
<field name="scopes"
type="subform"
label="COM_QUANTUMMANAGER_CONFIG_GENERAL_SCOPES_LABEL"
buttons=" "
multiple="true"
default='{"scopes0":{"id":"images","title":"Images","enable":"1","path":"images"},"scopes1":{"id":"docs","title":"Docs","enable":"0","path":"docs"},"scopes2":{"id":"music","title":"Music","enable":"0","path":"music"},"scopes3":{"id":"videos","title":"Videos","enable":"0","path":"videos"}}'
addfieldpath="/administrator/components/com_quantummanager/fields">
<form>
<field
name="id"
type="hidden"
label="ID"
/>
<field
name="title"
type="quantumconfigscopetitle"
label="COM_QUANTUMMANAGER_CONFIG_GENERAL_SCOPES_NAME_LABEL"
disabled="disabled"
/>
<field name="enable"
type="radio"
label="COM_QUANTUMMANAGER_CONFIG_GENERAL_SCOPES_ENABLE_LABEL"
class="btn-group btn-group-yesno"
default="1">
<option value="1">JYES</option>
<option value="0">JNO</option>
</field>
<field
name="path"
type="quantumconfigpath"
label="COM_QUANTUMMANAGER_CONFIG_GENERAL_SCOPES_PATH_LABEL"
/>
</form>
</field>
<field name="scopescustom"
type="subform"
label="COM_QUANTUMMANAGER_CONFIG_GENERAL_SCOPES_CUSTOM_LABEL"
multiple="true"
addfieldpath="/administrator/components/com_quantummanager/fields">
<form>
<field
name="title"
type="text"
label="COM_QUANTUMMANAGER_CONFIG_GENERAL_SCOPES_NAME_LABEL"
/>
<field
name="path"
type="quantumconfigpath"
label="COM_QUANTUMMANAGER_CONFIG_GENERAL_SCOPES_PATH_LABEL"
/>
<field
name="id"
type="hidden"
label="ID"
/>
</form>
</field>
<field type="spacer"
name="spacer_files"
label="COM_QUANTUMMANAGER_CONFIG_GENERAL_SPACER_FILES"
filter="unset"
/>
<field name="maxsize"
type="text"
label="COM_QUANTUMMANAGER_CONFIG_GENERAL_MAXSIZE_LABEL"
description="COM_QUANTUMMANAGER_CONFIG_GENERAL_MAXSIZE_DESC"
required="true"
default="10"
/>
<field name="maxsizefilename"
type="number"
required="true"
label="COM_QUANTUMMANAGER_CONFIG_GENERAL_MAXSIZEFILENAME_LABEL"
description="COM_QUANTUMMANAGER_CONFIG_GENERAL_MAXSIZEFILENAME_DESC"
default="63"
/>
<field name="postfix"
type="radio"
label="COM_QUANTUMMANAGER_CONFIG_GENERAL_POSTFIX_LABEL"
description="COM_QUANTUMMANAGER_CONFIG_GENERAL_POSTFIX_DESC"
required="true"
class="btn-group btn-group-yesno"
default="0">
<option value="1">JYES</option>
<option value="0">JNO</option>
</field>
<field name="translit"
type="radio"
label="COM_QUANTUMMANAGER_CONFIG_GENERAL_TRANSLIT_LABEL"
description="COM_QUANTUMMANAGER_CONFIG_GENERAL_TRANSLIT_DESC"
required="true"
class="btn-group btn-group-yesno"
default="0">
<option value="1">JYES</option>
<option value="0">JNO</option>
</field>
<field name="hashname"
type="radio"
label="COM_QUANTUMMANAGER_CONFIG_GENERAL_HASHNAME_LABEL"
description="COM_QUANTUMMANAGER_CONFIG_GENERAL_HASHNAME_DESC"
required="true"
class="btn-group btn-group-yesno"
default="0">
<option value="1">JYES</option>
<option value="0">JNO</option>
</field>
<field name="contentcheck"
type="radio"
label="COM_QUANTUMMANAGER_CONFIG_GENERAL_CHECK_LABEL"
description="COM_QUANTUMMANAGER_CONFIG_GENERAL_CHECK_DESC"
required="true"
class="btn-group btn-group-yesno"
default="1">
<option value="1">JYES</option>
<option value="0">JNO</option>
</field>
<field name="mimetype"
type="textarea"
label="COM_QUANTUMMANAGER_CONFIG_GENERAL_MIMETYPE_LABEL"
description="COM_QUANTUMMANAGER_CONFIG_GENERAL_MIMETYPE_DESC"
rows="15"
/>
<field type="spacer"
name="spacer_metadata"
label="COM_QUANTUMMANAGER_CONFIG_GENERAL_SPACER_METADATA"
filter="unset"
/>
<field name="metafile"
type="radio"
label="COM_QUANTUMMANAGER_CONFIG_GENERAL_METAFILE_LABEL"
description="COM_QUANTUMMANAGER_CONFIG_GENERAL_METAFILE_DESC"
required="true"
class="btn-group btn-group-yesno"
default="1">
<option value="1">COM_QUANTUMMANAGER_ACTION_SHOW</option>
<option value="0">COM_QUANTUMMANAGER_ACTION_HIDE</option>
</field>
<field name="metafileextended"
type="radio"
label="COM_QUANTUMMANAGER_CONFIG_GENERAL_METAFILE_EXTENDED_LABEL"
description="COM_QUANTUMMANAGER_CONFIG_GENERAL_METAFILE_EXTENDED_DESC"
required="true"
class="btn-group btn-group-yesno"
default="0"
showon="metafile:1">
<option value="1">COM_QUANTUMMANAGER_ACTION_SHOW</option>
<option value="0">COM_QUANTUMMANAGER_ACTION_HIDE</option>
</field>
<field name="metafileshowpath"
type="radio"
label="COM_QUANTUMMANAGER_CONFIG_GENERAL_METAFILE_SHOWPATH_LABEL"
description="COM_QUANTUMMANAGER_CONFIG_GENERAL_METAFILE_SHOWPATH_DESC"
required="true"
class="btn-group btn-group-yesno"
default="0"
showon="metafile:1">
<option value="1">COM_QUANTUMMANAGER_ACTION_SHOW</option>
<option value="0">COM_QUANTUMMANAGER_ACTION_HIDE</option>
</field>
<field type="spacer"
name="spacer_general"
label="COM_QUANTUMMANAGER_CONFIG_GENERAL_SPACER_GENERAL"
filter="unset"
/>
<field name="folderdblclick"
type="radio"
label="COM_QUANTUMMANAGER_CONFIG_GENERAL_FOLDERDBLCLICK_LABEL"
description="COM_QUANTUMMANAGER_CONFIG_GENERAL_FOLDERDBLCLICK_DESC"
required="true"
class="btn-group btn-group-yesno"
default="0">
<option value="1">JYES</option>
<option value="0">JNO</option>
</field>
<field name="front"
type="radio"
label="COM_QUANTUMMANAGER_CONFIG_GENERAL_FRONT_LABEL"
description="COM_QUANTUMMANAGER_CONFIG_GENERAL_FRONT_DESC"
required="true"
class="btn-group btn-group-yesno"
default="0">
<option value="1">JYES</option>
<option value="0">JNO</option>
</field>
<field name="bufferpaste"
type="radio"
label="COM_QUANTUMMANAGER_CONFIG_GENERAL_BUFFERPASTE_LABEL"
description="COM_QUANTUMMANAGER_CONFIG_GENERAL_BUFFERPASTE_DESC"
required="true"
class="btn-group btn-group-yesno"
default="0">
<option value="1">JYES</option>
<option value="0">JNO</option>
</field>
<field name="dropareahidden"
type="radio"
label="COM_QUANTUMMANAGER_CONFIG_GENERAL_DROPAREAHIDDEN_LABEL"
description="COM_QUANTUMMANAGER_CONFIG_GENERAL_DROPAREAHIDDEN_DESC"
required="true"
class="btn-group btn-group-yesno"
default="0">
<option value="0">COM_QUANTUMMANAGER_ACTION_SHOW</option>
<option value="1">COM_QUANTUMMANAGER_ACTION_HIDE</option>
</field>
<field name="itemmenumove"
type="radio"
label="COM_QUANTUMMANAGER_CONFIG_GENERAL_ITEMMENUMOVE_LABEL"
description="COM_QUANTUMMANAGER_CONFIG_GENERAL_ITEMMENUMOVE_DESC"
required="true"
class="btn-group btn-group-yesno"
default="0">
<option value="1">JYES</option>
<option value="0">JNO</option>
</field>
<field name="itemmenumovefiles"
type="radio"
label="COM_QUANTUMMANAGER_CONFIG_GENERAL_ITEMMENUMOVEFILES_LABEL"
description="COM_QUANTUMMANAGER_CONFIG_GENERAL_ITEMMENUMOVEFILES_DESC"
required="true"
showon="itemmenumove:1"
class="btn-group btn-group-yesno"
default="1">
<option value="1">JYES</option>
<option value="0">JNO</option>
</field>
<field name="help"
type="radio"
label="COM_QUANTUMMANAGER_CONFIG_GENERAL_HELP_LABEL"
description="COM_QUANTUMMANAGER_CONFIG_GENERAL_HELP_DESC"
required="true"
class="btn-group btn-group-yesno"
default="1">
<option value="1">COM_QUANTUMMANAGER_ACTION_SHOW</option>
<option value="0">COM_QUANTUMMANAGER_ACTION_HIDE</option>
</field>
<field name="review"
type="radio"
label="COM_QUANTUMMANAGER_CONFIG_GENERAL_REVIEW_LABEL"
description="COM_QUANTUMMANAGER_CONFIG_GENERAL_REVIEW_DESC"
required="true"
class="btn-group btn-group-yesno"
default="1">
<option value="1">COM_QUANTUMMANAGER_ACTION_SHOW</option>
<option value="0">COM_QUANTUMMANAGER_ACTION_HIDE</option>
</field>
</fieldset>
<fieldset name="image" label="COM_QUANTUMMANAGER_CONFIG_IMAGE" description="COM_QUANTUMMANAGER_CONFIG_IMAGE_DESC">
<field name="unsplash"
type="radio"
label="COM_QUANTUMMANAGER_CONFIG_IMAGE_UNSPLASH_LABEL"
description="COM_QUANTUMMANAGER_CONFIG_IMAGE_UNSPLASH_DESC"
required="true"
class="btn-group btn-group-yesno"
default="1">
<option value="1">COM_QUANTUMMANAGER_ACTION_ENABLE</option>
<option value="0">COM_QUANTUMMANAGER_ACTION_DISABLE</option>
</field>
<!--
<field name="pixabay"
type="radio"
label="COM_QUANTUMMANAGER_CONFIG_IMAGE_PIXABAY_LABEL"
description="COM_QUANTUMMANAGER_CONFIG_IMAGE_PIXABAY_DESC"
required="true"
class="btn-group btn-group-yesno"
default="1">
<option value="1">COM_QUANTUMMANAGER_ACTION_ENABLE</option>
<option value="0">COM_QUANTUMMANAGER_ACTION_DISABLE</option>
</field>
<field name="pexels"
type="radio"
label="COM_QUANTUMMANAGER_CONFIG_IMAGE_PEXELS_LABEL"
description="COM_QUANTUMMANAGER_CONFIG_IMAGE_PEXELS_DESC"
required="true"
class="btn-group btn-group-yesno"
default="1">
<option value="1">COM_QUANTUMMANAGER_ACTION_ENABLE</option>
<option value="0">COM_QUANTUMMANAGER_ACTION_DISABLE</option>
</field>
-->
<field name="original"
type="radio"
label="COM_QUANTUMMANAGER_CONFIG_IMAGE_ORIGINAL_LABEL"
description="COM_QUANTUMMANAGER_CONFIG_IMAGE_ORIGINAL_DESC"
required="true"
class="btn-group btn-group-yesno"
default="0">
<option value="1">JYES</option>
<option value="0">JNO</option>
</field>
<field name="originalresize"
type="radio"
label="COM_QUANTUMMANAGER_CONFIG_IMAGE_ORIGINALRESIZE_LABEL"
description="COM_QUANTUMMANAGER_CONFIG_IMAGE_ORIGINALRESIZE_DESC"
required="true"
class="btn-group btn-group-yesno"
default="0"
showon="original:1">
<option value="1">JYES</option>
<option value="0">JNO</option>
</field>
<field name="resize"
type="radio"
label="COM_QUANTUMMANAGER_CONFIG_IMAGE_RESIZE_LABEL"
description="COM_QUANTUMMANAGER_CONFIG_IMAGE_RESIZE_DESC"
required="true"
class="btn-group btn-group-yesno"
default="0">
<option value="1">COM_QUANTUMMANAGER_ACTION_ENABLE</option>
<option value="0">COM_QUANTUMMANAGER_ACTION_DISABLE</option>
</field>
<field name="rezizemaxwidth"
type="text"
label="COM_QUANTUMMANAGER_CONFIG_IMAGE_RESIZE_MAXWIDTH_LABEL"
description="COM_QUANTUMMANAGER_CONFIG_IMAGE_RESIZE_MAXWIDTH_DESC"
required="true"
default="1980"
showon="resize:1"
/>
<field name="rezizemaxheight"
type="text"
label="COM_QUANTUMMANAGER_CONFIG_IMAGE_RESIZE_MAXHEIGHT_LABEL"
description="COM_QUANTUMMANAGER_CONFIG_IMAGE_RESIZE_MAXHEIGHT_DESC"
required="true"
default="1280"
showon="resize:1"
/>
<field name="exifsave"
type="radio"
label="COM_QUANTUMMANAGER_CONFIG_IMAGE_EXIFSAVE_LABEL"
description="COM_QUANTUMMANAGER_CONFIG_IMAGE_EXIFSAVE_DESC"
required="true"
class="btn-group btn-group-yesno"
default="0">
<option value="1">JYES</option>
<option value="0">JNO</option>
</field>
<field name="rotateexif"
type="radio"
label="COM_QUANTUMMANAGER_CONFIG_IMAGE_ROTATEEXIF_LABEL"
description="COM_QUANTUMMANAGER_CONFIG_IMAGE_ROTATEEXIF_DESC"
required="true"
class="btn-group btn-group-yesno"
default="0"
showon="exifsave:0"
>
<option value="1">JYES</option>
<option value="0">JNO</option>
</field>
<field name="overlay"
type="radio"
label="COM_QUANTUMMANAGER_CONFIG_IMAGE_OVERLAY_LABEL"
description="COM_QUANTUMMANAGER_CONFIG_IMAGE_OVERLAY_DESC"
required="true"
default="0"
class="btn-group">
<option value="1">COM_QUANTUMMANAGER_CONFIG_IMAGE_OVERLAY_AUTO_LABEL</option>
<option value="2">COM_QUANTUMMANAGER_CONFIG_IMAGE_OVERLAY_BUTTON_LABEL</option>
<option value="0">JNO</option>
</field>
<field name="overlayfile"
type="media"
label="COM_QUANTUMMANAGER_CONFIG_IMAGE_OVERLAY_FILE_LABEL"
description="COM_QUANTUMMANAGER_CONFIG_IMAGE_OVERLAY_FILE_DESC"
folder="images"
default="images/joomla_black.png"
showon="overlay!:0"
/>
<field name="overlaypercent"
type="radio"
label="COM_QUANTUMMANAGER_CONFIG_IMAGE_OVERLAY_PERCENT_LABEL"
description="COM_QUANTUMMANAGER_CONFIG_IMAGE_OVERLAY_PERCENT_DESC"
required="true"
class="btn-group btn-group-yesno"
default="0"
showon="overlay!:0">
<option value="1">JYES</option>
<option value="0">JNO</option>
</field>
<field name="overlaypercentvalue"
type="text"
label="COM_QUANTUMMANAGER_CONFIG_IMAGE_OVERLAY_PERCENT_VALUE_LABEL"
description="COM_QUANTUMMANAGER_CONFIG_IMAGE_OVERLAY_PERCENT_VALUE_DESC"
default="10"
showon="overlaypercent:1[AND]overlay!:0"
/>
<field name="overlaypos"
type="list"
required="true"
label="COM_QUANTUMMANAGER_CONFIG_IMAGE_OVERLAY_POS_LABEL"
description="COM_QUANTUMMANAGER_CONFIG_IMAGE_OVERLAY_POS_DESC"
default="topleft"
showon="overlay!:0"
>
<option value="top-left">Top Left</option>
<option value="top">Top center</option>
<option value="top-right">Top right</option>
<option value="left">Center left</option>
<option value="center">Center center</option>
<option value="right">Center right</option>
<option value="bottom-left">Bottom left</option>
<option value="bottom">Bottom center</option>
<option value="bottom-right">Bottom right</option>
</field>
<field name="overlaypadding"
type="text"
label="COM_QUANTUMMANAGER_CONFIG_IMAGE_OVERLAY_PADDING_LABEL"
description="COM_QUANTUMMANAGER_CONFIG_IMAGE_OVERLAY_PADDING_DESC"
required="true"
default="10"
showon="overlay!:0"/>
<field type="spacer"
name="spacer_image_editor"
label="COM_QUANTUMMANAGER_CONFIG_IMAGE_SPACER_IMAGE_EDITOR"
filter="unset"
/>
<field name="compression"
type="number"
label="COM_QUANTUMMANAGER_CONFIG_IMAGE_COMPRESSION_LABEL"
description="COM_QUANTUMMANAGER_CONFIG_IMAGE_COMPRESSION_DESC"
default="90"
min="0"
max="100" />
<field name="sharpen"
type="number"
label="COM_QUANTUMMANAGER_CONFIG_IMAGE_SHARPEN_LABEL"
description="COM_QUANTUMMANAGER_CONFIG_IMAGE_SHARPEN_DESC"
default="0"
min="0"
max="100" />
<field name="brightness"
type="number"
label="COM_QUANTUMMANAGER_CONFIG_IMAGE_BRIGHTNESS_LABEL"
description="COM_QUANTUMMANAGER_CONFIG_IMAGE_BRIGHTNESS_DESC"
default="0"
min="-100"
max="100" />
<field name="blur"
type="number"
label="COM_QUANTUMMANAGER_CONFIG_IMAGE_BLUR_LABEL"
description="COM_QUANTUMMANAGER_CONFIG_IMAGE_BRIGHTNESS_DESC"
default="0"
min="0"
max="100" />
<field name="custompresetscrop"
type="subform"
label="COM_QUANTUMMANAGER_CONFIG_IMAGE_CUSTOMPRESETCROP"
layout="joomla.form.field.subform.repeatable-table"
multiple="true"
min="0"
max="20">
<form>
<field
name="label"
type="text"
label="COM_QUANTUMMANAGER_CONFIG_IMAGE_CUSTOMPRESETCROP_NAME"
/>
<field
name="ratio"
type="number"
label="COM_QUANTUMMANAGER_CONFIG_IMAGE_CUSTOMPRESETCROP_RATIO"
/>
</form>
</field>
<field type="spacer"
name="spacer_image_resize_folders"
label="COM_QUANTUMMANAGER_CONFIG_IMAGE_SPACER_RESIZE_FOLDERS"
filter="unset"
/>
<field name="resizefolders"
type="subform"
label="COM_QUANTUMMANAGER_CONFIG_IMAGE_RESIZE_FOLDERS"
layout="joomla.form.field.subform.repeatable"
multiple="true"
min="0"
max="20">
<form>
<field name="folder"
type="text"
label="COM_QUANTUMMANAGER_CONFIG_IMAGE_RESIZE_FOLDERS_FOLDER"
/>
<field name="subfolder"
type="radio"
label="COM_QUANTUMMANAGER_CONFIG_IMAGE_RESIZE_FOLDERS_SUBFOLDER"
class="btn-group btn-group-yesno"
default="0">
<option value="1">JYES</option>
<option value="0">JNO</option>
</field>
<field name="maxwidth"
type="text"
label="COM_QUANTUMMANAGER_CONFIG_IMAGE_RESIZE_FOLDERS_MAX_WIDTH"
/>
<field name="maxheight"
type="number"
label="COM_QUANTUMMANAGER_CONFIG_IMAGE_RESIZE_FOLDERS_MAX_HEIGHT"
/>
<field name="algorithm"
type="list"
label="COM_QUANTUMMANAGER_CONFIG_IMAGE_RESIZE_FOLDERS_ALGORITHM"
default="fit"
>
<option value="fit">COM_QUANTUMMANAGER_CONFIG_IMAGE_RESIZE_FOLDERS_ALGORITHM_FIT</option>
<option value="bestfit">COM_QUANTUMMANAGER_CONFIG_IMAGE_RESIZE_FOLDERS_ALGORITHM_BEST_FIT</option>
<option value="resize">COM_QUANTUMMANAGER_CONFIG_IMAGE_RESIZE_FOLDERS_ALGORITHM_RESIZE</option>
</field>
</form>
</field>
<field type="spacer"
name="spacer_previews"
label="COM_QUANTUMMANAGER_CONFIG_IMAGE_SPACER_PREVIEWS"
filter="unset"
/>
<field name="previewsfolder"
type="radio"
label="COM_QUANTUMMANAGER_CONFIG_IMAGE_PREVIEWSFOLDER_LABEL"
description="COM_QUANTUMMANAGER_CONFIG_IMAGE_PREVIEWSFOLDER_DESC"
class="btn-group btn-group-yesno"
default="1">
<option value="1">JYES</option>
<option value="0">JNO</option>
</field>
<field name="previewsfolderopen"
type="radio"
label="COM_QUANTUMMANAGER_CONFIG_IMAGE_PREVIEWSFOLDEROPEN_LABEL"
description="COM_QUANTUMMANAGER_CONFIG_IMAGE_PREVIEWSFOLDEROPEN_DESC"
class="btn-group btn-group-yesno"
default="1"
showon="previewsfolder:1">
<option value="1">JYES</option>
<option value="0">JNO</option>
</field>
<field name="previewslist"
type="subform"
label="COM_QUANTUMMANAGER_CONFIG_IMAGE_PREVIEWSLLIST_LABEL"
description="COM_QUANTUMMANAGER_CONFIG_IMAGE_PREVIEWSLLIST_DESC"
layout="joomla.form.field.subform.repeatable"
multiple="true"
min="0"
max="20">
<form>
<field
name="label"
type="text"
label="COM_QUANTUMMANAGER_CONFIG_IMAGE_PREVIEWSLLIST_NAME"
/>
<field
name="width"
type="number"
label="COM_QUANTUMMANAGER_CONFIG_IMAGE_PREVIEWSLLIST_WIDTH"
/>
<field
name="height"
type="number"
label="COM_QUANTUMMANAGER_CONFIG_IMAGE_PREVIEWSLLIST_HEIGHT"
/>
<field name="algorithm"
type="list"
label="COM_QUANTUMMANAGER_CONFIG_IMAGE_PREVIEWSLLIST_ALGORITHM"
default="fit"
>
<option value="fit">COM_QUANTUMMANAGER_CONFIG_IMAGE_PREVIEWSLLIST_ALGORITHM_FIT</option>
<option value="resize">COM_QUANTUMMANAGER_CONFIG_IMAGE_PREVIEWSLLIST_ALGORITHM_RESIZE</option>
</field>
</form>
</field>
</fieldset>
<fieldset name="colors" label="COM_QUANTUMMANAGER_CONFIG_COLORS" description="COM_QUANTUMMANAGER_CONFIG_COLORS_DESC">
<field name="colorsfiles"
type="subform"
label="COM_QUANTUMMANAGER_CONFIG_COLORS_COLORSFILES_LABEL"
description="COM_QUANTUMMANAGER_CONFIG_COLORS_COLORSFILES_DESC"
layout="joomla.form.field.subform.repeatable"
multiple="true"
min="0">
<form>
<field
name="ext"
type="text"
label="COM_QUANTUMMANAGER_CONFIG_COLORS_COLORSFILES_EXT_LABEL"
/>
<field
name="main"
type="color"
label="COM_QUANTUMMANAGER_CONFIG_COLORS_COLORSFILES_MAIN_LABEL"
/>
<field
name="fold"
type="color"
label="COM_QUANTUMMANAGER_CONFIG_COLORS_COLORSFILES_FOLD_LABEL"
/>
</form>
</field>
</fieldset>
<fieldset name="profiles" label="COM_QUANTUMMANAGER_CONFIG_PROFILES" description="COM_QUANTUMMANAGER_CONFIG_PROFILES_DESC">
<field name="profiles"
type="subform"
layout="joomla.form.field.subform.repeatable"
label="COM_QUANTUMMANAGER_CONFIG_PROFILES_VARIABLES"
multiple="true">
<form>
<field
name="group"
type="sql"
label="COM_QUANTUMMANAGER_CONFIG_PROFILES_GROUP"
query="SELECT id, title FROM #__usergroups"
key_field="id"
value_field="title"
/>
<field
name="config"
type="text"
label="COM_QUANTUMMANAGER_CONFIG_PROFILES_CONFIG"
/>
<field
name="value"
type="textarea"
label="COM_QUANTUMMANAGER_CONFIG_PROFILES_VALUE"
cols="40"
rows="8"
/>
</form>
</field>
</fieldset>
<fieldset name="permissions" label="JCONFIG_PERMISSIONS_LABEL" description="JCONFIG_PERMISSIONS_DESC">
<field name="rules"
type="rules"
label="JCONFIG_PERMISSIONS_LABEL"
filter="rules"
component="com_quantummanager"
section="component">
</field>
</fieldset>
</config>

View File

@@ -0,0 +1,31 @@
<?php
/**
* @package quantummanager
* @author Dmitry Tsymbal <cymbal@delo-design.ru>
* @copyright Copyright © 2019 Delo Design & NorrNext. All rights reserved.
* @license GNU General Public License version 3 or later; see license.txt
* @link https://www.norrnext.com
*/
defined('_JEXEC') or die;
use Joomla\CMS\MVC\Controller\BaseController;
use Joomla\CMS\Plugin\PluginHelper;
/**
* Quantummanager Controller.
*
* @package quantummanager
* @since 1.0
*/
class QuantummanagerController extends BaseController
{
public function __construct($config = array())
{
parent::__construct($config);
PluginHelper::importPlugin('quantummanager');
}
}

View File

@@ -0,0 +1,23 @@
<?php
/**
* @package quantummanager
* @author Dmitry Tsymbal <cymbal@delo-design.ru>
* @copyright Copyright © 2019 Delo Design & NorrNext. All rights reserved.
* @license GNU General Public License version 3 or later; see license.txt
* @link https://www.norrnext.com
*/
defined('_JEXEC') or die;
use Joomla\CMS\Factory;
use Joomla\CMS\MVC\Controller\AdminController;
use Joomla\Filesystem\Folder;
JLoader::register('QuantummanagerController', JPATH_ADMINISTRATOR . '/components/com_quantummanager/controller.php');
/**
* Class QuantummanagerControllerQuantumcodemirror
*/
class QuantummanagerControllerQuantumcodemirror extends QuantummanagerController
{
}

View File

@@ -0,0 +1,54 @@
<?php
/**
* @package quantummanager
* @author Dmitry Tsymbal <cymbal@delo-design.ru>
* @copyright Copyright © 2019 Delo Design & NorrNext. All rights reserved.
* @license GNU General Public License version 3 or later; see license.txt
* @link https://www.norrnext.com
*/
defined('_JEXEC') or die;
use Joomla\CMS\Factory;
use Joomla\CMS\MVC\Controller\AdminController;
use Joomla\Filesystem\Folder;
JLoader::register('QuantummanagerController', JPATH_ADMINISTRATOR . '/components/com_quantummanager/controller.php');
/**
* Class QuantummanagerControllerQuantumcropperjs
*/
class QuantummanagerControllerQuantumcropperjs extends QuantummanagerController
{
public function getImageForCrop()
{
$app = Factory::getApplication();
$data = $app->input->getArray();
if(!isset($data['path'], $data['scope'], $data['file']))
{
$app->close();
}
JLoader::register('QuantummanagerFileSystemLocal', JPATH_ROOT . '/administrator/components/com_quantummanager/filesystem/local.php');
echo QuantummanagerFileSystemLocal::getImageForCrop($data['path'], $data['scope'], $data['file']);
QuantummanagerHelper::setHeadersNoCache();
$app->close();
}
public function save()
{
$app = Factory::getApplication();
JLoader::register('QuantummanagerFileSystemLocal', JPATH_ROOT . '/administrator/components/com_quantummanager/filesystem/local.php');
echo QuantummanagerFileSystemLocal::converterSave();
QuantummanagerHelper::setHeadersNoCache();
$app->close();
}
}

View File

@@ -0,0 +1,37 @@
<?php
/**
* @package quantummanager
* @author Dmitry Tsymbal <cymbal@delo-design.ru>
* @copyright Copyright © 2019 Delo Design & NorrNext. All rights reserved.
* @license GNU General Public License version 3 or later; see license.txt
* @link https://www.norrnext.com
*/
defined('_JEXEC') or die;
use Joomla\CMS\Factory;
use Joomla\CMS\MVC\Controller\AdminController;
JLoader::register('QuantummanagerController', JPATH_ADMINISTRATOR . '/components/com_quantummanager/controller.php');
/**
* Class QuantummanagerControllerQuantummanager
*/
class QuantummanagerControllerQuantummanager extends QuantummanagerController
{
public function hideJedReview()
{
$app = Factory::getApplication();
JLoader::register('QuantummanagerHelper', JPATH_ROOT . '/administrator/components/com_quantummanager/helpers/quantummanager.php');
if((int)QuantummanagerHelper::getParamsComponentValue('reivew', 1))
{
QuantummanagerHelper::setComponentsParams('review', "0");
}
$app->close();
}
}

View File

@@ -0,0 +1,106 @@
<?php
/**
* @package quantummanager
* @author Dmitry Tsymbal <cymbal@delo-design.ru>
* @copyright Copyright © 2019 Delo Design & NorrNext. All rights reserved.
* @license GNU General Public License version 3 or later; see license.txt
* @link https://www.norrnext.com
*/
defined('_JEXEC') or die;
use Joomla\CMS\Factory;
use Joomla\CMS\Http\Transport\CurlTransport;
use Joomla\CMS\Language\Text;
use Joomla\CMS\MVC\Controller\AdminController;
use Joomla\CMS\Uri\Uri;
use Joomla\Filesystem\File;
use Joomla\Filesystem\Folder;
use Joomla\Registry\Registry;
JLoader::register('QuantummanagerController', JPATH_ADMINISTRATOR . '/components/com_quantummanager/controller.php');
/**
* Class QuantummanagerControllerquantumpexels
*/
class QuantummanagerControllerquantumpexels extends QuantummanagerController
{
public function search()
{
$app = Factory::getApplication();
try
{
$data = Factory::getApplication()->input->getArray();
$dataForRequest = [
'q' => '',
'page' => '1',
];
$fields = [
'q',
'page',
'locale'
];
foreach ($fields as $field)
{
if(isset($data[$field]))
{
$dataForRequest[$field] = $data[$field];
}
}
$query = http_build_query([
'option' => 'com_yoohikashop',
'task' => 'pexels.search'
]);
$curlTransport = new CurlTransport(new Registry());
$uri = new Uri();
$uri->setScheme('https');
$uri->setHost('hika.su/');
$uri->setPath('index.php');
$uri->setQuery($query);
$request = $curlTransport->request('POST', $uri, $dataForRequest);
echo $request->body;
}
catch (Exception $e)
{
echo $e->getMessage();
}
QuantummanagerHelper::setHeadersNoCache();
$app->close();
}
public function download()
{
$app = Factory::getApplication();
$data = Factory::getApplication()->input->getArray();
$file = $data['file'];
if(!isset($data['file'], $data['path'], $data['scope']))
{
$app->close();
}
$path = $data['path'];
$scope = $data['scope'];
$file = $data['file'];
$id = $data['id'];
JLoader::register('QuantummanagerFileSystemLocal', JPATH_ROOT . '/administrator/components/com_quantummanager/filesystem/local.php');
echo QuantummanagerFileSystemLocal::downloadFilePexels($path, $scope, $file, $id);
QuantummanagerHelper::setHeadersNoCache();
$app->close();
}
}

View File

@@ -0,0 +1,109 @@
<?php
/**
* @package quantummanager
* @author Dmitry Tsymbal <cymbal@delo-design.ru>
* @copyright Copyright © 2019 Delo Design & NorrNext. All rights reserved.
* @license GNU General Public License version 3 or later; see license.txt
* @link https://www.norrnext.com
*/
defined('_JEXEC') or die;
use Joomla\CMS\Factory;
use Joomla\CMS\Http\Transport\CurlTransport;
use Joomla\CMS\Language\Text;
use Joomla\CMS\MVC\Controller\AdminController;
use Joomla\CMS\Uri\Uri;
use Joomla\Filesystem\File;
use Joomla\Filesystem\Folder;
use Joomla\Registry\Registry;
JLoader::register('QuantummanagerController', JPATH_ADMINISTRATOR . '/components/com_quantummanager/controller.php');
/**
* Class QuantummanagerControllerquantumpixabay
*/
class QuantummanagerControllerquantumpixabay extends QuantummanagerController
{
public function search()
{
$app = Factory::getApplication();
try
{
$data = Factory::getApplication()->input->getArray();
$dataForRequest = [
'q' => '',
'page' => '1',
];
$fields = [
'q',
'page',
'colors',
'orientation',
'size',
'image_type',
];
foreach ($fields as $field)
{
if(isset($data[$field]))
{
$dataForRequest[$field] = $data[$field];
}
}
$query = http_build_query([
'option' => 'com_yoohikashop',
'task' => 'pixabay.search'
]);
$curlTransport = new CurlTransport(new Registry());
$uri = new Uri();
$uri->setScheme('https');
$uri->setHost('hika.su/');
$uri->setPath('index.php');
$uri->setQuery($query);
$request = $curlTransport->request('POST', $uri, $dataForRequest);
echo $request->body;
}
catch (Exception $e)
{
echo $e->getMessage();
}
QuantummanagerHelper::setHeadersNoCache();
$app->close();
}
public function download()
{
$app = Factory::getApplication();
$data = Factory::getApplication()->input->getArray();
$file = $data['file'];
if(!isset($data['file'], $data['path'], $data['scope']))
{
$app->close();
}
$path = $data['path'];
$scope = $data['scope'];
$file = $data['file'];
$id = $data['id'];
JLoader::register('QuantummanagerFileSystemLocal', JPATH_ROOT . '/administrator/components/com_quantummanager/filesystem/local.php');
echo QuantummanagerFileSystemLocal::downloadFilePixabay($path, $scope, $file, $id);
QuantummanagerHelper::setHeadersNoCache();
$app->close();
}
}

View File

@@ -0,0 +1,59 @@
<?php
/**
* @package quantummanager
* @author Dmitry Tsymbal <cymbal@delo-design.ru>
* @copyright Copyright © 2019 Delo Design & NorrNext. All rights reserved.
* @license GNU General Public License version 3 or later; see license.txt
* @link https://www.norrnext.com
*/
defined('_JEXEC') or die;
use Joomla\CMS\Factory;
use Joomla\CMS\MVC\Controller\AdminController;
use Joomla\Filesystem\Folder;
JLoader::register('QuantummanagerController', JPATH_ADMINISTRATOR . '/components/com_quantummanager/controller.php');
/**
* Class QuantummanagerControllerQuantumtreecatalogs
*/
class QuantummanagerControllerQuantumtreecatalogs extends QuantummanagerController
{
public function getDirectories()
{
$app = Factory::getApplication();
$data = $app->input->getArray();
if(!isset($data['path']))
{
$app->close();
}
$path = $data['path'];
$scope = isset($data['scope']) ? $data['scope'] : '';
$rootSplit = explode('/', $data['root']);
if(isset($rootSplit[0]))
{
$root = $rootSplit[0];
}
else
{
$root = '';
}
if(empty($scope))
{
$scope = 'all';
}
JLoader::register('QuantummanagerFileSystemLocal', JPATH_ROOT . '/administrator/components/com_quantummanager/filesystem/local.php');
echo QuantummanagerFileSystemLocal::getScopesDirectories($path, $root, $scope);
QuantummanagerHelper::setHeadersNoCache();
$app->close();
}
}

View File

@@ -0,0 +1,127 @@
<?php
/**
* @package quantummanager
* @author Dmitry Tsymbal <cymbal@delo-design.ru>
* @copyright Copyright © 2019 Delo Design & NorrNext. All rights reserved.
* @license GNU General Public License version 3 or later; see license.txt
* @link https://www.norrnext.com
*/
defined('_JEXEC') or die;
use Joomla\CMS\Factory;
use Joomla\CMS\Http\Transport\CurlTransport;
use Joomla\CMS\Language\Text;
use Joomla\CMS\MVC\Controller\AdminController;
use Joomla\CMS\Uri\Uri;
use Joomla\Filesystem\File;
use Joomla\Filesystem\Folder;
use Joomla\Registry\Registry;
JLoader::register('QuantummanagerController', JPATH_ADMINISTRATOR . '/components/com_quantummanager/controller.php');
/**
* Class QuantummanagerControllerquantumunsplash
*/
class QuantummanagerControllerquantumunsplash extends QuantummanagerController
{
public function search()
{
$app = Factory::getApplication();
try
{
$data = Factory::getApplication()->input->getArray();
$dataForRequest = [
'q' => '',
'page' => '1',
];
if(isset($data['q']))
{
$dataForRequest['q'] = $data['q'];
}
if(isset($data['page']))
{
$dataForRequest['page'] = $data['page'];
}
$query = http_build_query([
'option' => 'com_yoohikashop',
'task' => 'unsplash.search'
]);
$curlTransport = new CurlTransport(new Registry());
$uri = new Uri();
$uri->setScheme('https');
$uri->setHost('hika.su/');
$uri->setPath('index.php');
$uri->setQuery($query);
$request = $curlTransport->request('POST', $uri, $dataForRequest);
echo $request->body;
}
catch (Exception $e)
{
echo $e->getMessage();
}
QuantummanagerHelper::setHeadersNoCache();
$app->close();
}
public function download()
{
$app = Factory::getApplication();
$data = Factory::getApplication()->input->getArray();
$file = $data['file'];
if(!isset($data['file'], $data['path'], $data['scope']))
{
$app->close();
}
$path = $data['path'];
$scope = $data['scope'];
$file = $data['file'];
$id = $data['id'];
JLoader::register('QuantummanagerFileSystemLocal', JPATH_ROOT . '/administrator/components/com_quantummanager/filesystem/local.php');
echo QuantummanagerFileSystemLocal::downloadFileUnsplash($path, $scope, $file, $id);
QuantummanagerHelper::setHeadersNoCache();
$app->close();
}
public function downloadTrigger()
{
$app = Factory::getApplication();
$data = $app->input->getArray();
$query = http_build_query([
'option' => 'com_yoohikashop',
'task' => 'unsplash.downloadTrigger',
'uid' => $data['id']
]);
$curlTransport = new CurlTransport(new Registry());
$uri = new Uri();
$uri->setScheme('https');
$uri->setHost('hika.su/');
$uri->setPath('index.php');
$uri->setQuery($query);
$request = $curlTransport->request('GET', $uri);
$photo = json_decode($request->body, JSON_OBJECT_AS_ARRAY);
QuantummanagerHelper::setHeadersNoCache();
$app->close();
}
}

View File

@@ -0,0 +1,44 @@
<?php
/**
* @package quantummanager
* @author Dmitry Tsymbal <cymbal@delo-design.ru>
* @copyright Copyright © 2019 Delo Design & NorrNext. All rights reserved.
* @license GNU General Public License version 3 or later; see license.txt
* @link https://www.norrnext.com
*/
defined('_JEXEC') or die;
use Joomla\CMS\Factory;
use Joomla\CMS\Language\Text;
use Joomla\CMS\MVC\Controller\AdminController;
use Joomla\Filesystem\File;
use Joomla\Filesystem\Folder;
JLoader::register('QuantummanagerController', JPATH_ADMINISTRATOR . '/components/com_quantummanager/controller.php');
/**
* Class QuantummanagerControllerQuantumupload
*/
class QuantummanagerControllerQuantumupload extends QuantummanagerController
{
public function upload()
{
$app = Factory::getApplication();
$data = $app->input->getArray();
if(!isset($data['path'], $data['scope']))
{
$app->close();
}
JLoader::register('QuantummanagerFileSystemLocal', JPATH_ROOT . '/administrator/components/com_quantummanager/filesystem/local.php');
echo QuantummanagerFileSystemLocal::upload();
QuantummanagerHelper::setHeadersNoCache();
$app->close();
}
}

View File

@@ -0,0 +1,360 @@
<?php
/**
* @package quantummanager
* @author Dmitry Tsymbal <cymbal@delo-design.ru>
* @copyright Copyright © 2019 Delo Design & NorrNext. All rights reserved.
* @license GNU General Public License version 3 or later; see license.txt
* @link https://www.norrnext.com
*/
defined('_JEXEC') or die;
use Joomla\CMS\Factory;
JLoader::register('QuantummanagerController', JPATH_ADMINISTRATOR . '/components/com_quantummanager/controller.php');
/**
* Class QuantummanagerControllerquantumviewfiles
*/
class QuantummanagerControllerQuantumviewfiles extends QuantummanagerController
{
public function createDirectory()
{
$app = Factory::getApplication();
$data = $app->input->getArray();
if (!isset($data['path'], $data['name'], $data['scope']))
{
$app->close();
}
JLoader::register('QuantummanagerFileSystemLocal', JPATH_ROOT . '/administrator/components/com_quantummanager/filesystem/local.php');
echo QuantummanagerFileSystemLocal::createDirectory($data['path'], $data['scope'], $data['name']);
QuantummanagerHelper::setHeadersNoCache();
$app->close();
}
public function getFiles()
{
$app = Factory::getApplication();
$data = $app->input->getArray();
if (!isset($data['path'], $data['scope']))
{
$app->close();
}
JLoader::register('QuantummanagerFileSystemLocal', JPATH_ROOT . '/administrator/components/com_quantummanager/filesystem/local.php');
echo QuantummanagerFileSystemLocal::getFiles($data['path'], $data['scope']);
QuantummanagerHelper::setHeadersNoCache();
$app->close();
}
public function getMetaFile()
{
$app = Factory::getApplication();
$data = $app->input->getArray();
if (!isset($data['path'], $data['scope']))
{
$app->close();
}
$name = '';
if (isset($data['name']))
{
$name = $data['name'];
}
JLoader::register('QuantummanagerFileSystemLocal', JPATH_ROOT . '/administrator/components/com_quantummanager/filesystem/local.php');
echo QuantummanagerFileSystemLocal::getMetaFile($data['path'], $data['scope'], $name);
QuantummanagerHelper::setHeadersNoCache();
$app->close();
}
public function watermark()
{
$app = Factory::getApplication();
$data = $app->input->getArray();
if (!isset($data['path'], $data['scope']))
{
$app->close();
}
$list = '';
if (isset($data['list']))
{
$list = json_decode($data['list']);
}
JLoader::register('QuantummanagerFileSystemLocal', JPATH_ROOT . '/administrator/components/com_quantummanager/filesystem/local.php');
echo QuantummanagerFileSystemLocal::setWatermark($data['path'], $data['scope'], $list);
QuantummanagerHelper::setHeadersNoCache();
$app->close();
}
public function duplicate()
{
$app = Factory::getApplication();
$data = $app->input->getArray();
if (!isset(
$data['path'],
$data['scope'],
$data['list'])
)
{
$app->close();
}
$path = $data['path'];
$scope = $data['scope'];
$list = json_decode($data['list'], JSON_OBJECT_AS_ARRAY);
if (count($list) === 0)
{
$app->close();
}
JLoader::register('QuantummanagerFileSystemLocal', JPATH_ROOT . '/administrator/components/com_quantummanager/filesystem/local.php');
echo QuantummanagerFileSystemLocal::duplicate($path, $scope, $list);
QuantummanagerHelper::setHeadersNoCache();
$app->close();
}
public function paste()
{
$app = Factory::getApplication();
$data = $app->input->getArray();
if (!isset(
$data['pathFrom'],
$data['scopeFrom'],
$data['pathTo'],
$data['scopeTo'],
$data['cut'],
$data['list'])
)
{
$app->close();
}
$pathFrom = $data['pathFrom'];
$scopeFrom = $data['scopeFrom'];
$pathTo = $data['pathTo'];
$scopeTo = $data['scopeTo'];
$cut = (int) $data['cut'];
$list = json_decode($data['list'], JSON_OBJECT_AS_ARRAY);
if (count($list) === 0)
{
$app->close();
}
JLoader::register('QuantummanagerFileSystemLocal', JPATH_ROOT . '/administrator/components/com_quantummanager/filesystem/local.php');
echo QuantummanagerFileSystemLocal::paste($pathFrom, $scopeFrom, $pathTo, $scopeTo, $cut, $list);
QuantummanagerHelper::setHeadersNoCache();
$app->close();
}
public function delete()
{
$app = Factory::getApplication();
$data = $app->input->getArray();
if (!isset($data['path'], $data['list'], $data['scope']))
{
$app->close();
}
$path = $data['path'];
$scope = $data['scope'];
$list = json_decode($data['list']);
JLoader::register('QuantummanagerFileSystemLocal', JPATH_ROOT . '/administrator/components/com_quantummanager/filesystem/local.php');
echo QuantummanagerFileSystemLocal::delete($scope, $path, $list);
QuantummanagerHelper::setHeadersNoCache();
$app->close();
}
public function getParsePath()
{
try
{
$app = Factory::getApplication();
$data = $app->input->getArray();
if (!isset($data['path'], $data['scope']))
{
$app->close();
}
$path = $data['path'];
$scope = $data['scope'];
$host = '';
if (isset($data['host']))
{
$host = $data['host'];
}
JLoader::register('QuantummanagerHelper', JPATH_ROOT . '/administrator/components/com_quantummanager/helpers/quantummanager.php');
echo json_encode([
'path' => QuantummanagerHelper::preparePath($path, $host, $scope, true)
]);
QuantummanagerHelper::setHeadersNoCache();
$app->close();
}
catch (Exception $e)
{
echo $e->getMessage();
}
}
public function renameFile()
{
try
{
$app = Factory::getApplication();
$data = $app->input->getArray();
$file = '';
if (!isset($data['path'], $data['scope'], $data['file'], $data['name']))
{
$app->close();
}
if (empty($data['path']) || empty($data['scope']) || empty($data['file']) || empty($data['name']))
{
$app->close();
}
$path = $data['path'];
$scope = $data['scope'];
$file = $data['file'];
$name = $data['name'];
JLoader::register('QuantummanagerFileSystemLocal', JPATH_ROOT . '/administrator/components/com_quantummanager/filesystem/local.php');
echo QuantummanagerFileSystemLocal::renameFile($path, $scope, $file, $name);
QuantummanagerHelper::setHeadersNoCache();
$app->close();
}
catch (Exception $e)
{
echo $e->getMessage();
}
}
public function renameDirectory()
{
try
{
$app = Factory::getApplication();
$data = $app->input->getArray();
$file = '';
if (!isset($data['path'], $data['scope'], $data['oldName'], $data['name']))
{
$app->close();
}
if (empty($data['path']) || empty($data['scope']) || empty($data['oldName']) || empty($data['name']))
{
$app->close();
}
$path = $data['path'];
$scope = $data['scope'];
$oldName = $data['oldName'];
$name = $data['name'];
JLoader::register('QuantummanagerFileSystemLocal', JPATH_ROOT . '/administrator/components/com_quantummanager/filesystem/local.php');
echo QuantummanagerFileSystemLocal::renameDirectory($path, $scope, $oldName, $name);
QuantummanagerHelper::setHeadersNoCache();
$app->close();
}
catch (Exception $e)
{
echo $e->getMessage();
}
}
public function generatePreviewImage()
{
try
{
$app = Factory::getApplication();
$data = $app->input->getArray();
$file = '';
if (!isset($data['path'], $data['scope']))
{
$app->close();
}
$path = $data['path'];
$scope = $data['scope'];
if (isset($data['file']))
{
$file = $data['file'];
}
JLoader::register('QuantummanagerFileSystemLocal', JPATH_ROOT . '/administrator/components/com_quantummanager/filesystem/local.php');
QuantummanagerFileSystemLocal::generatePreviewImage($path, $scope, $file);
QuantummanagerHelper::setHeadersNoCache();
$app->close();
}
catch (Exception $e)
{
echo $e->getMessage();
}
}
public function createPreview()
{
try
{
$app = Factory::getApplication();
$data = $app->input->getArray();
$file = '';
if (!isset($data['path'], $data['scope'], $data['list'], $data['preview']))
{
$app->close();
}
$path = $data['path'];
$scope = $data['scope'];
$list = json_decode($data['list'], true);
$preview = $data['preview'];
JLoader::register('QuantummanagerFileSystemLocal', JPATH_ROOT . '/administrator/components/com_quantummanager/filesystem/local.php');
echo QuantummanagerFileSystemLocal::createPreview($path, $scope, $list, $preview);
QuantummanagerHelper::setHeadersNoCache();
$app->close();
}
catch (Exception $e)
{
echo $e->getMessage();
}
}
}

View File

@@ -0,0 +1,107 @@
<?php
/**
* @package quantummanager
* @author Dmitry Tsymbal <cymbal@delo-design.ru>
* @copyright Copyright © 2019 Delo Design & NorrNext. All rights reserved.
* @license GNU General Public License version 3 or later; see license.txt
* @link https://www.norrnext.com
*/
defined('_JEXEC') or die;
use Joomla\CMS\Factory;
use Joomla\CMS\Uri\Uri;
/**
* Class JFormFieldQuantumbase
*/
class JFormFieldQuantumbase extends JFormField
{
/**
* @var array
* @since version
*/
private $addLayouts = [];
/**
* JFormFieldQuantumbase constructor.
*
* @param null $form
*/
public function __construct($form = null)
{
JLoader::register('QuantummanagerHelper', JPATH_SITE . '/administrator/components/com_quantummanager/helpers/quantummanager.php');
JLoader::register('QuantummanagerLibs', JPATH_SITE . '/administrator/components/com_quantummanager/helpers/quantumlibs.php');
parent::__construct($form);
}
/**
* @return array
*/
protected function getLayoutData()
{
$scopes = QuantummanagerHelper::getAllScope();
if (empty($this->element))
{
$this->element = [
'name' => '',
'label' => ''
];
}
$urlFull = Uri::root(false);
$urlBase = Uri::root(true);
$urlRoot = $urlMedia = $urlFull;
if (substr($urlBase, -1) !== '/')
{
$urlBase .= '/';
}
if (Factory::getApplication()->isClient('administrator'))
{
$urlFull .= 'administrator/';
$urlBase .= 'administrator/';
}
return array_merge(parent::getLayoutData(),
[
'cssClass' => $this->cssClass,
'urlFull' => $urlFull,
'urlBase' => $urlBase,
'urlRoot' => $urlRoot,
'urlMedia' => $urlMedia,
'scopes' => $scopes,
'isJoomla4' => QuantummanagerHelper::isJoomla4() ? '1' : '0',
]
);
}
/**
* Allow to override renderer include paths in child fields
*
* @return array
*
* @since 3.5
*/
protected function getLayoutPaths()
{
return array_merge(parent::getLayoutPaths(), $this->addLayouts, [
JPATH_ROOT . '/administrator/components/com_quantummanager/layouts/fields',
JPATH_ROOT . '/layouts/joomla/form',
]);
}
public function addCustomLayoutsPath($layouts)
{
$this->addLayouts = array_merge($this->addLayouts, $layouts);
}
}

View File

@@ -0,0 +1,122 @@
<?php
/**
* @package quantummanager
* @author Dmitry Tsymbal <cymbal@delo-design.ru>
* @copyright Copyright © 2019 Delo Design & NorrNext. All rights reserved.
* @license GNU General Public License version 3 or later; see license.txt
* @link https://www.norrnext.com
*/
defined('_JEXEC') or die;
use Joomla\CMS\Filter\OutputFilter;
use Joomla\CMS\HTML\HTMLHelper;
use Joomla\CMS\Language\Text;
use Joomla\CMS\Factory;
use Joomla\CMS\Layout\FileLayout;
JLoader::register('JFormFieldQuantumbase', __DIR__ . DIRECTORY_SEPARATOR . 'quantumbase.php');
/**
* Class JFormFieldQuantumcodemirror
*/
class JFormFieldQuantumcodemirror extends JFormField
{
/**
* @var string
*/
public $type = 'Quantumcodemirror';
/**
* @var string
*/
protected $layout = 'quantumcodemirror';
/**
* Allow to override renderer include paths in child fields
*
* @return array
*
* @since 3.5
*/
protected function getLayoutPaths()
{
return [
JPATH_ROOT . '/administrator/components/com_quantummanager/layouts/fields',
];
}
/**
* @return array
*/
protected function getLayoutData()
{
return array_merge(parent::getLayoutData(),
[
]
);
}
public function getInput()
{
try {
$doc = Factory::getDocument();
$this->__set('standalone', $this->getAttribute('standalone', true));
JLoader::register('QuantummanagerHelper', JPATH_SITE . '/administrator/components/com_quantummanager/helpers/quantummanager.php');
QuantummanagerHelper::includeScriptHead();
HTMLHelper::_('stylesheet', 'com_quantummanager/main.css', [
'version' => filemtime(__FILE__),
'relative' => true
]);
HTMLHelper::_('stylesheet', 'com_quantummanager/quantumcodemirror.css', [
'version' => filemtime(__FILE__),
'relative' => true
]);
HTMLHelper::_('script', 'com_quantummanager/main.js', [
'version' => filemtime(__FILE__),
'relative' => true
]);
HTMLHelper::_('script', 'com_quantummanager/utils.js', [
'version' => filemtime(__FILE__),
'relative' => true
]);
HTMLHelper::_('script', 'com_quantummanager/quantumcodemirror.js', [
'version' => filemtime(__FILE__),
'relative' => true
]);
$doc->addStyleSheet('/media/editors/codemirror/lib/codemirror.min.css');
$doc->addStyleSheet('/media/editors/codemirror/theme/elegant.css');
$doc->addScript('/media/editors/codemirror/lib/codemirror.min.js');
$doc->addScript('/media/editors/codemirror/mode/javascript/javascript.min.js');
$field = parent::getInput();
if($this->standalone)
{
$filemanager = new FileLayout( 'fieldstandalone', JPATH_ROOT . '/administrator/components/com_quantummanager/layouts');
return $filemanager->render(['field' => $field]);
}
return $field;
}
catch (Exception $e) {
echo $e->getMessage();
}
}
}

View File

@@ -0,0 +1,158 @@
<?php
/**
* @package quantummanager
* @author Dmitry Tsymbal <cymbal@delo-design.ru>
* @copyright Copyright © 2019 Delo Design & NorrNext. All rights reserved.
* @license GNU General Public License version 3 or later; see license.txt
* @link https://www.norrnext.com
*/
defined('_JEXEC') or die;
use Joomla\CMS\Component\ComponentHelper;
use Joomla\CMS\HTML\HTMLHelper;
use Joomla\CMS\Layout\FileLayout;
JLoader::register('JFormFieldQuantumbase', __DIR__ . DIRECTORY_SEPARATOR . 'quantumbase.php');
/**
* Class JFormFieldQuantumCombine
*/
class JFormFieldQuantumCombine extends JFormFieldQuantumbase
{
/**
* @var string
*/
public $type = 'QuantumCombine';
/**
* @var string
*/
protected $layout = 'quantumcombine';
/**
*
* @return string
*
* @since version
*/
public function getInput()
{
try
{
QuantummanagerLibs::includeScriptHead();
$componentParams = ComponentHelper::getParams('com_quantummanager');
if (empty($this->fields))
{
$this->__set('fields', $this->getAttribute('fields', true));
}
if (!empty($this->fields))
{
if (file_exists(JPATH_ROOT . '/media/com_quantummanager/css/' . $this->layout . '.css'))
{
HTMLHelper::_('stylesheet', 'com_quantummanager/' . $this->layout . '.css', [
'version' => filemtime(__FILE__),
'relative' => true
]);
}
if (file_exists(JPATH_ROOT . '/media/com_quantummanager/js/' . $this->layout . '.js'))
{
HTMLHelper::_('script', 'com_quantummanager/' . $this->layout . '.js', [
'version' => filemtime(__FILE__),
'relative' => true,
'defer' => 'defer'
]);
}
JLoader::register('QuantummanagerHelper', JPATH_SITE . '/administrator/components/com_quantummanager/helpers/quantummanager.php');
QuantummanagerHelper::loadLang();
QuantummanagerLibs::includes([
'utils',
'split'
]);
HTMLHelper::_('script', 'com_quantummanager/combine.js', [
'version' => filemtime(__FILE__),
'relative' => true
]);
$fields = json_decode($this->fields, JSON_OBJECT_AS_ARRAY);
$htmlFields = [
'top' => '',
'container-top' => '',
'left' => '',
'center' => '',
'right' => '',
'container-bottom' => '',
'bottom' => '',
'container-bottom-fixed' => '',
];
foreach ($fields as $field => $options)
{
$position = 'center';
$classField = 'JFormField' . ucfirst($field);
JLoader::register($classField, JPATH_ROOT . '/administrator/components/com_quantummanager/fields/' . $field . '.php');
$optionsForField = $options;
$optionsForField = array_merge($optionsForField, [
'standalone' => false
]);
$dataAttributes = array_map(static function ($value, $key) {
return $key . '="' . $value . '"';
}, array_values($optionsForField), array_keys($optionsForField));
if (isset($optionsForField['position']))
{
$position = $optionsForField['position'];
}
if (!isset($htmlFields[$position]))
{
$htmlFields[$position] = '';
}
$fieldObject = new $classField;
$fieldObject->setup(new SimpleXMLElement('<field name="" type="' . $field . '" ' . implode(' ', $dataAttributes) . ' />'), '');
$htmlFields[$position] .= $fieldObject->getInput();
}
if ((int) $componentParams->get('review', 1))
{
$htmlFields['container-bottom-fixed'] .= (new FileLayout('jedreview', JPATH_ROOT . '/administrator/components/com_quantummanager/layouts'))->render();
}
$filemanager = new FileLayout($this->layout, JPATH_ROOT . '/administrator/components/com_quantummanager/layouts');
$filemanager->addIncludePaths($this->getLayoutPaths());
return $filemanager->render(array_merge($this->getLayoutData(), $htmlFields));
}
return '';
}
catch (Exception $e)
{
echo $e->getMessage();
}
}
}

View File

@@ -0,0 +1,58 @@
<?php
/**
* @package quantummanager
* @author Dmitry Tsymbal <cymbal@delo-design.ru>
* @copyright Copyright © 2019 Delo Design & NorrNext. All rights reserved.
* @license GNU General Public License version 3 or later; see license.txt
* @link https://www.norrnext.com
*/
defined('_JEXEC') or die;
use Joomla\CMS\Filter\OutputFilter;
use Joomla\CMS\HTML\HTMLHelper;
use Joomla\CMS\Language\Text;
use Joomla\CMS\Factory;
use Joomla\CMS\Layout\FileLayout;
use Joomla\CMS\Uri\Uri;
JLoader::register('JFormFieldQuantumtreecatalogs', JPATH_ROOT . DIRECTORY_SEPARATOR . implode(DIRECTORY_SEPARATOR, ['administrator', 'components', 'com_quantummanager', 'fields', 'quantumtreecatalogs.php']));
JFormHelper::loadFieldClass('text');
/**
* Class JFormFieldQuantumconfigpath
*/
class JFormFieldQuantumconfigpath extends JFormFieldText
{
/**
* @var string
* @since version
*/
public $type = 'QuantumConfigpath';
/**
*
* @return string
*
* @since version
*/
public function getInput()
{
HTMLHelper::_('stylesheet', 'com_quantummanager/configfields.css', [
'version' => filemtime(__FILE__),
'relative' => true
]);
$this->__set('prefix', $this->getAttribute('prefix', Uri::root()));
$html = parent::getInput();
$html = "<div class='quantumconfig-quantumconfigpath-inputs'><span>" . $this->prefix . "</span>" . $html . "</div>";
return $html;
}
}

View File

@@ -0,0 +1,47 @@
<?php
/**
* @package quantummanager
* @author Dmitry Tsymbal <cymbal@delo-design.ru>
* @copyright Copyright © 2019 Delo Design & NorrNext. All rights reserved.
* @license GNU General Public License version 3 or later; see license.txt
* @link https://www.norrnext.com
*/
defined('_JEXEC') or die;
use Joomla\CMS\Filter\OutputFilter;
use Joomla\CMS\HTML\HTMLHelper;
use Joomla\CMS\Language\Text;
use Joomla\CMS\Factory;
use Joomla\CMS\Layout\FileLayout;
use Joomla\CMS\Uri\Uri;
JFormHelper::loadFieldClass('text');
/**
* Class JFormFieldQuantumconfigscopetitle
*/
class JFormFieldQuantumconfigscopetitle extends JFormFieldText
{
/**
* @var string
* @since version
*/
public $type = 'QuantumconfigScopeTitle';
/**
*
* @return string
*
* @since version
*/
public function getInput()
{
$id = $this->form->getData()->get('id');
$this->value = Text::_('COM_QUANTUMMANAGER_SCOPE_' . mb_strtoupper($id));
return parent::getInput();
}
}

View File

@@ -0,0 +1,125 @@
<?php
/**
* @package quantummanager
* @author Dmitry Tsymbal <cymbal@delo-design.ru>
* @copyright Copyright © 2019 Delo Design & NorrNext. All rights reserved.
* @license GNU General Public License version 3 or later; see license.txt
* @link https://www.norrnext.com
*/
defined('_JEXEC') or die;
use Joomla\CMS\Component\ComponentHelper;
use Joomla\CMS\Filter\OutputFilter;
use Joomla\CMS\HTML\HTMLHelper;
use Joomla\CMS\Language\Text;
use Joomla\CMS\Factory;
use Joomla\CMS\Layout\FileLayout;
JLoader::register('JFormFieldQuantumbase', __DIR__ . DIRECTORY_SEPARATOR . 'quantumbase.php');
/**
* Class JFormFieldQuantumcropperjs
*/
class JFormFieldQuantumcropperjs extends JFormField
{
/**
* @var string
*/
public $type = 'Quantumcropperjs';
/**
* @var string
*/
protected $layout = 'quantumcropperjs';
/**
* Allow to override renderer include paths in child fields
*
* @return array
*
* @since 3.5
*/
protected function getLayoutPaths()
{
return array_merge(parent::getLayoutPaths(), [
JPATH_ROOT . '/administrator/components/com_quantummanager/layouts/fields',
]);
}
/**
* @return array
*/
protected function getLayoutData()
{
JLoader::register('QuantummanagerHelperImage', JPATH_ROOT . '/administrator/components/com_quantummanager/helpers/image.php');
$driver = (new QuantummanagerHelperImage)->getNameDriver();
$values_default = [
'compression' => QuantummanagerHelper::getParamsComponentValue('compression', 90),
'sharpen' => QuantummanagerHelper::getParamsComponentValue('sharpen', 0),
'brightness' => QuantummanagerHelper::getParamsComponentValue('brightness', 0),
'blur' => QuantummanagerHelper::getParamsComponentValue('blur', 0),
];
return array_merge(parent::getLayoutData(),
[
'paramsComponents' => ComponentHelper::getParams('com_quantummanager'),
'cssClass' => $this->cssClass,
'driver' => $driver,
'values_default' => $values_default
]
);
}
public function getInput()
{
try {
$this->__set('standalone', $this->getAttribute('standalone', true));
$this->__set('cssClass', $this->getAttribute('cssClass', ''));
JLoader::register('QuantummanagerHelper', JPATH_SITE . '/administrator/components/com_quantummanager/helpers/quantummanager.php');
JLoader::register('QuantummanagerLibs', JPATH_SITE . '/administrator/components/com_quantummanager/helpers/quantumlibs.php');
QuantummanagerLibs::includeScriptHead();
QuantummanagerLibs::includes([
'core',
'utils',
'imageEditor',
]);
HTMLHelper::_('stylesheet', 'com_quantummanager/quantumcropperjs.css', [
'version' => filemtime(__FILE__),
'relative' => true
]);
HTMLHelper::_('script', 'com_quantummanager/quantumcropperjs.js', [
'version' => filemtime(__FILE__),
'relative' => true
]);
$field = parent::getInput();
if($this->standalone)
{
$filemanager = new FileLayout( 'fieldstandalone', JPATH_ROOT . '/administrator/components/com_quantummanager/layouts');
return $filemanager->render(['field' => $field]);
}
return $field;
}
catch (Exception $e) {
echo $e->getMessage();
}
}
}

View File

@@ -0,0 +1,109 @@
<?php
/**
* @package quantummanager
* @author Dmitry Tsymbal <cymbal@delo-design.ru>
* @copyright Copyright © 2019 Delo Design & NorrNext. All rights reserved.
* @license GNU General Public License version 3 or later; see license.txt
* @link https://www.norrnext.com
*/
defined('_JEXEC') or die;
use Joomla\CMS\Filter\OutputFilter;
use Joomla\CMS\HTML\HTMLHelper;
use Joomla\CMS\Language\Text;
use Joomla\CMS\Factory;
use Joomla\CMS\Layout\FileLayout;
JLoader::register('JFormFieldQuantumbase', __DIR__ . DIRECTORY_SEPARATOR . 'quantumbase.php');
/**
* Class JFormFieldQuantumpexels
*/
class JFormFieldQuantumpexels extends JFormField
{
/**
* @var string
*/
public $type = 'QuantumPexels';
/**
* @var string
*/
protected $layout = 'quantumpexels';
/**
* Allow to override renderer include paths in child fields
*
* @return array
*
* @since 3.5
*/
protected function getLayoutPaths()
{
return array_merge(parent::getLayoutPaths(), [
JPATH_ROOT . '/administrator/components/com_quantummanager/layouts/fields',
]);
}
/**
* @return array
*/
protected function getLayoutData()
{
return array_merge(parent::getLayoutData(),
[
'cssClass' => $this->cssClass,
]
);
}
public function getInput()
{
try {
$this->__set('standalone', $this->getAttribute('standalone', true));
$this->__set('cssClass', $this->getAttribute('cssClass', ''));
JLoader::register('QuantummanagerHelper', JPATH_SITE . '/administrator/components/com_quantummanager/helpers/quantummanager.php');
JLoader::register('QuantummanagerLibs', JPATH_SITE . '/administrator/components/com_quantummanager/helpers/quantumlibs.php');
QuantummanagerLibs::includeScriptHead();
QuantummanagerLibs::includes([
'core',
'utils',
'dynamicGrid',
]);
HTMLHelper::_('stylesheet', 'com_quantummanager/quantumpexels.css', [
'version' => filemtime(__FILE__),
'relative' => true
]);
HTMLHelper::_('script', 'com_quantummanager/quantumpexels.js', [
'version' => filemtime(__FILE__),
'relative' => true
]);
$field = parent::getInput();
if($this->standalone)
{
$filemanager = new FileLayout( 'fieldstandalone', JPATH_ROOT . '/administrator/components/com_quantummanager/layouts');
return $filemanager->render(['field' => $field]);
}
return $field;
}
catch (Exception $e) {
echo $e->getMessage();
}
}
}

View File

@@ -0,0 +1,108 @@
<?php
/**
* @package quantummanager
* @author Dmitry Tsymbal <cymbal@delo-design.ru>
* @copyright Copyright © 2019 Delo Design & NorrNext. All rights reserved.
* @license GNU General Public License version 3 or later; see license.txt
* @link https://www.norrnext.com
*/
defined('_JEXEC') or die;
use Joomla\CMS\Filter\OutputFilter;
use Joomla\CMS\HTML\HTMLHelper;
use Joomla\CMS\Language\Text;
use Joomla\CMS\Factory;
use Joomla\CMS\Layout\FileLayout;
JLoader::register('JFormFieldQuantumbase', __DIR__ . DIRECTORY_SEPARATOR . 'quantumbase.php');
/**
* Class JFormFieldQuantumpixabay
*/
class JFormFieldQuantumpixabay extends JFormField
{
/**
* @var string
*/
public $type = 'QuantumPixabay';
/**
* @var string
*/
protected $layout = 'quantumpixabay';
/**
* Allow to override renderer include paths in child fields
*
* @return array
*
* @since 3.5
*/
protected function getLayoutPaths()
{
return array_merge(parent::getLayoutPaths(), [
JPATH_ROOT . '/administrator/components/com_quantummanager/layouts/fields',
]);
}
/**
* @return array
*/
protected function getLayoutData()
{
return array_merge(parent::getLayoutData(),
[
'cssClass' => $this->cssClass,
]
);
}
public function getInput()
{
try {
$this->__set('standalone', $this->getAttribute('standalone', true));
$this->__set('cssClass', $this->getAttribute('cssClass', ''));
JLoader::register('QuantummanagerHelper', JPATH_SITE . '/administrator/components/com_quantummanager/helpers/quantummanager.php');
JLoader::register('QuantummanagerLibs', JPATH_SITE . '/administrator/components/com_quantummanager/helpers/quantumlibs.php');
QuantummanagerLibs::includeScriptHead();
QuantummanagerLibs::includes([
'core',
'utils',
'dynamicGrid',
]);
HTMLHelper::_('stylesheet', 'com_quantummanager/quantumpixabay.css', [
'version' => filemtime(__FILE__),
'relative' => true
]);
HTMLHelper::_('script', 'com_quantummanager/quantumpixabay.js', [
'version' => filemtime(__FILE__),
'relative' => true
]);
$field = parent::getInput();
if($this->standalone)
{
$filemanager = new FileLayout( 'fieldstandalone', JPATH_ROOT . '/administrator/components/com_quantummanager/layouts');
return $filemanager->render(['field' => $field]);
}
return $field;
}
catch (Exception $e) {
echo $e->getMessage();
}
}
}

View File

@@ -0,0 +1,11 @@
<?php
/**
* @package quantummanager
*
* @author Cymbal <cymbal@delo-design.ru>
* @copyright Copyright (C) 2019 "Delo Design". All rights reserved.
* @license GNU General Public License version 2 or later; see LICENSE.txt
* @link https://delo-design.ru
*/
defined('_JEXEC') or die;

View File

@@ -0,0 +1,111 @@
<?php
/**
* @package quantummanager
* @author Dmitry Tsymbal <cymbal@delo-design.ru>
* @copyright Copyright © 2019 Delo Design & NorrNext. All rights reserved.
* @license GNU General Public License version 3 or later; see license.txt
* @link https://www.norrnext.com
*/
defined('_JEXEC') or die;
use Joomla\CMS\Filter\OutputFilter;
use Joomla\CMS\HTML\HTMLHelper;
use Joomla\CMS\Language\Text;
use Joomla\CMS\Factory;
use Joomla\CMS\Layout\FileLayout;
JLoader::register('JFormFieldQuantumbase', __DIR__ . DIRECTORY_SEPARATOR . 'quantumbase.php');
/**
* Class JFormFieldQuantumtoolbar
*/
class JFormFieldQuantumtoolbar extends JFormField
{
/**
* @var string
*/
public $type = 'QuantumToolbar';
/**
* @var string
*/
protected $layout = 'quantumtoolbar';
/**
* Allow to override renderer include paths in child fields
*
* @return array
*
* @since 3.5
*/
protected function getLayoutPaths()
{
return array_merge(parent::getLayoutPaths(), [
JPATH_ROOT . '/administrator/components/com_quantummanager/layouts/fields',
]);
}
/**
* @return array
*/
protected function getLayoutData()
{
return array_merge(parent::getLayoutData(),
[
'buttons' => explode(',', $this->buttons),
'buttonsBun' => explode(',', $this->buttonsBun),
'cssClass' => $this->cssClass,
]
);
}
public function getInput()
{
try {
$this->__set('standalone', $this->getAttribute('standalone', true));
$this->__set('buttons', $this->getAttribute('buttons', 'all'));
$this->__set('buttonsBun', $this->getAttribute('buttonsBun', ','));
$this->__set('cssClass', $this->getAttribute('cssClass', ''));
JLoader::register('QuantummanagerHelper', JPATH_SITE . '/administrator/components/com_quantummanager/helpers/quantummanager.php');
JLoader::register('QuantummanagerLibs', JPATH_SITE . '/administrator/components/com_quantummanager/helpers/quantumlibs.php');
QuantummanagerLibs::includeScriptHead();
QuantummanagerLibs::includes([
'core',
'utils',
]);
HTMLHelper::_('stylesheet', 'com_quantummanager/quantumtoolbar.css', [
'version' => filemtime(__FILE__),
'relative' => true
]);
HTMLHelper::_('script', 'com_quantummanager/quantumtoolbar.js', [
'version' => filemtime(__FILE__),
'relative' => true
]);
$field = parent::getInput();
if($this->standalone)
{
$filemanager = new FileLayout( 'fieldstandalone', JPATH_ROOT . '/administrator/components/com_quantummanager/layouts');
return $filemanager->render(['field' => $field]);
}
return $field;
}
catch (Exception $e) {
echo $e->getMessage();
}
}
}

View File

@@ -0,0 +1,122 @@
<?php
/**
* @package quantummanager
* @author Dmitry Tsymbal <cymbal@delo-design.ru>
* @copyright Copyright © 2019 Delo Design & NorrNext. All rights reserved.
* @license GNU General Public License version 3 or later; see license.txt
* @link https://www.norrnext.com
*/
defined('_JEXEC') or die;
use Joomla\CMS\HTML\HTMLHelper;
use Joomla\CMS\Layout\FileLayout;
use Joomla\CMS\Uri\Uri;
JLoader::register('JFormFieldQuantumbase', __DIR__ . DIRECTORY_SEPARATOR . 'quantumbase.php');
/**
* Class JFormFieldQuantumtreecatalogs
*/
class JFormFieldQuantumtreecatalogs extends JFormField
{
/**
* @var string
*/
public $type = 'QuantumTreeCatalogs';
/**
* @var string
*/
protected $layout = 'quantumtreecatalogs';
/**
* Allow to override renderer include paths in child fields
*
* @return array
*
* @since 3.5
*/
protected function getLayoutPaths()
{
$path = JPATH_ROOT . '/administrator/components/com_quantummanager/layouts/fields';
if($this->standalone)
{
if(file_exists($path . '/single/' . $this->layout . '.php'))
{
$path .= '/single';
}
}
return array_merge(parent::getLayoutPaths(), [
$path,
]);
}
/**
* @return array
*/
protected function getLayoutData()
{
return array_merge(parent::getLayoutData(),
[
'urlFull' => Uri::root(false),
'urlBase' => Uri::root(true),
'directory' => $this->directory,
'cssClass' => $this->cssClass,
'scope' => $this->scope,
'other' => '',
]
);
}
public function getInput()
{
try {
$this->__set('standalone', $this->getAttribute('standalone', true));
$this->__set('cssClass', $this->getAttribute('cssClass', ''));
$this->directory = $this->getAttribute('directory', 'root');
JLoader::register('QuantummanagerHelper', JPATH_SITE . '/administrator/components/com_quantummanager/helpers/quantummanager.php');
JLoader::register('QuantummanagerLibs', JPATH_SITE . '/administrator/components/com_quantummanager/helpers/quantumlibs.php');
QuantummanagerLibs::includeScriptHead();
QuantummanagerLibs::includes([
'core',
'utils',
'alert',
]);
HTMLHelper::_('stylesheet', 'com_quantummanager/quantumtreecatalogs.css', [
'version' => filemtime(__FILE__),
'relative' => true
]);
HTMLHelper::_('script', 'com_quantummanager/quantumtreecatalogs.js', [
'version' => filemtime(__FILE__),
'relative' => true
]);
$field = parent::getInput();
if($this->standalone)
{
$filemanager = new FileLayout( 'fieldstandalone', JPATH_ROOT . '/administrator/components/com_quantummanager/layouts');
return $filemanager->render(array_merge($this->getLayoutData(), ['field' => $field]));
}
return $field;
}
catch (Exception $e) {
echo $e->getMessage();
}
}
}

View File

@@ -0,0 +1,109 @@
<?php
/**
* @package quantummanager
* @author Dmitry Tsymbal <cymbal@delo-design.ru>
* @copyright Copyright © 2019 Delo Design & NorrNext. All rights reserved.
* @license GNU General Public License version 3 or later; see license.txt
* @link https://www.norrnext.com
*/
defined('_JEXEC') or die;
use Joomla\CMS\Filter\OutputFilter;
use Joomla\CMS\HTML\HTMLHelper;
use Joomla\CMS\Language\Text;
use Joomla\CMS\Factory;
use Joomla\CMS\Layout\FileLayout;
JLoader::register('JFormFieldQuantumbase', __DIR__ . DIRECTORY_SEPARATOR . 'quantumbase.php');
/**
* Class JFormFieldQuantumunsplash
*/
class JFormFieldQuantumunsplash extends JFormField
{
/**
* @var string
*/
public $type = 'QuantumUnsplash';
/**
* @var string
*/
protected $layout = 'quantumunsplash';
/**
* Allow to override renderer include paths in child fields
*
* @return array
*
* @since 3.5
*/
protected function getLayoutPaths()
{
return array_merge(parent::getLayoutPaths(), [
JPATH_ROOT . '/administrator/components/com_quantummanager/layouts/fields',
]);
}
/**
* @return array
*/
protected function getLayoutData()
{
return array_merge(parent::getLayoutData(),
[
'cssClass' => $this->cssClass,
]
);
}
public function getInput()
{
try {
$this->__set('standalone', $this->getAttribute('standalone', true));
$this->__set('cssClass', $this->getAttribute('cssClass', ''));
JLoader::register('QuantummanagerHelper', JPATH_SITE . '/administrator/components/com_quantummanager/helpers/quantummanager.php');
JLoader::register('QuantummanagerLibs', JPATH_SITE . '/administrator/components/com_quantummanager/helpers/quantumlibs.php');
QuantummanagerLibs::includeScriptHead();
QuantummanagerLibs::includes([
'core',
'utils',
'dynamicGrid',
]);
HTMLHelper::_('stylesheet', 'com_quantummanager/quantumunsplash.css', [
'version' => filemtime(__FILE__),
'relative' => true
]);
HTMLHelper::_('script', 'com_quantummanager/quantumunsplash.js', [
'version' => filemtime(__FILE__),
'relative' => true
]);
$field = parent::getInput();
if($this->standalone)
{
$filemanager = new FileLayout( 'fieldstandalone', JPATH_ROOT . '/administrator/components/com_quantummanager/layouts');
return $filemanager->render(['field' => $field]);
}
return $field;
}
catch (Exception $e) {
echo $e->getMessage();
}
}
}

View File

@@ -0,0 +1,122 @@
<?php
/**
* @package quantummanager
* @author Dmitry Tsymbal <cymbal@delo-design.ru>
* @copyright Copyright © 2019 Delo Design & NorrNext. All rights reserved.
* @license GNU General Public License version 3 or later; see license.txt
* @link https://www.norrnext.com
*/
defined('_JEXEC') or die;
use Joomla\CMS\HTML\HTMLHelper;
use Joomla\CMS\Layout\FileLayout;
JLoader::register('JFormFieldQuantumbase', __DIR__ . DIRECTORY_SEPARATOR . 'quantumbase.php');
/**
* Class JFormFieldQuantumUpload
*/
class JFormFieldQuantumupload extends JFormFieldQuantumbase
{
/**
* @var string
*/
public $type = 'QuantumUpload';
/**
* @var string
* @since version
*/
protected $layout = 'quantumupload';
/**
* Allow to override renderer include paths in child fields
*
* @return array
*
* @since 3.5
*/
protected function getLayoutPaths()
{
$renderer = new FileLayout('default');
$renderer->getDefaultIncludePaths();
return array_merge(parent::getLayoutPaths(), [
JPATH_ROOT . '/administrator/components/com_quantummanager/layouts/fields'
], $renderer->getDefaultIncludePaths());
}
/**
* @return array
*/
protected function getLayoutData()
{
return array_merge(parent::getLayoutData(),
[
'scope' => $this->scope,
'directory' => $this->directory,
'dropAreaHidden' => $this->dropAreaHidden,
'maxsize' => $this->maxsize,
'maxsizeServer' => $this->maxsizeServer,
'cssClass' => $this->cssClass,
'other' => '',
]
);
}
public function getInput()
{
try
{
JLoader::register('QuantummanagerHelper', JPATH_SITE . '/administrator/components/com_quantummanager/helpers/quantummanager.php');
JLoader::register('QuantummanagerLibs', JPATH_SITE . '/administrator/components/com_quantummanager/helpers/quantumlibs.php');
$this->__set('standalone', $this->getAttribute('standalone', true));
$this->__set('cssClass', $this->getAttribute('cssClass', ''));
$this->__set('maxsize', $this->getAttribute('maxsize', QuantummanagerHelper::getParamsComponentValue('maxsize', 2)));
$this->__set('maxsizeServer', QuantummanagerHelper::fileUploadMaxSize());
$this->directory = isset($this->directory) ? $this->directory : $this->getAttribute('directory', 'images');
$this->scope = isset($this->scope) ? $this->scope : $this->getAttribute('scope', 'images');
$this->dropAreaHidden = isset($this->dropAreaHidden) ? $this->dropAreaHidden : $this->getAttribute('dropAreaHidden', QuantummanagerHelper::getParamsComponentValue('dropareahidden', 0));
QuantummanagerHelper::loadLang();
QuantummanagerLibs::includeScriptHead();
QuantummanagerLibs::includes([
'core',
'utils',
]);
HTMLHelper::_('stylesheet', 'com_quantummanager/quantumupload.css', [
'version' => filemtime(__FILE__),
'relative' => true
]);
HTMLHelper::_('script', 'com_quantummanager/quantumupload.js', [
'version' => filemtime(__FILE__),
'relative' => true
]);
$field = parent::getInput();
if ($this->standalone)
{
$filemanager = new FileLayout('fieldstandalone', JPATH_ROOT . '/administrator/components/com_quantummanager/layouts');
return $filemanager->render(array_merge($this->getLayoutData(), ['field' => $field]));
}
return $field;
}
catch (Exception $e)
{
echo $e->getMessage();
}
}
}

View File

@@ -0,0 +1,144 @@
<?php
/**
* @package quantummanager
* @author Dmitry Tsymbal <cymbal@delo-design.ru>
* @copyright Copyright © 2019 Delo Design & NorrNext. All rights reserved.
* @license GNU General Public License version 3 or later; see license.txt
* @link https://www.norrnext.com
*/
defined('_JEXEC') or die;
use Joomla\CMS\HTML\HTMLHelper;
use Joomla\CMS\Layout\FileLayout;
JLoader::register('JFormFieldQuantumbase', __DIR__ . DIRECTORY_SEPARATOR . 'quantumbase.php');
/**
* Class JFormFieldQuantumviewfiles
*/
class JFormFieldQuantumviewfiles extends JFormField
{
/**
* @var string
*/
public $type = 'QuantumViewfiles';
/**
* @var string
*/
protected $layout = 'quantumviewfiles';
public function __construct($form = null)
{
JLoader::register('QuantummanagerHelper', JPATH_SITE . '/administrator/components/com_quantummanager/helpers/quantummanager.php');
JLoader::register('QuantummanagerLibs', JPATH_SITE . '/administrator/components/com_quantummanager/helpers/quantumlibs.php');
parent::__construct($form);
}
/**
* Allow to override renderer include paths in child fields
*
* @return array
*
* @since 3.5
*/
protected function getLayoutPaths()
{
return array_merge(parent::getLayoutPaths(), [
JPATH_ROOT . '/administrator/components/com_quantummanager/layouts/fields',
]);
}
/**
* @return array
*/
protected function getLayoutData()
{
return array_merge(parent::getLayoutData(),
[
'directory' => $this->directory,
'onlyfiles' => $this->onlyfiles,
'metafile' => $this->metafile,
'watermark' => $this->watermark,
'help' => $this->help,
'folderdblclick' => $this->folderdblclick,
'previewsfolder' => $this->previewsfolder,
'previewsfolderopen' => $this->previewsfolderopen,
'previewslist' => $this->previewslist,
'hash' => md5(QuantummanagerHelper::preparePath($this->directory)),
'cssClass' => $this->cssClass,
'quantumVersion' => QuantummanagerHelper::getVersion(),
]
);
}
/**
*
* @return string
*
* @since version
*/
public function getInput()
{
try
{
$this->__set('standalone', $this->getAttribute('standalone', true));
$this->__set('cssClass', $this->getAttribute('cssClass', ''));
$this->__set('metafile', $this->getAttribute('metafile', '1'));
$this->__set('watermark', $this->getAttribute('watermark', '0'));
$this->__set('folderdblclick', $this->getAttribute('folderdblclick', QuantummanagerHelper::getParamsComponentValue('folderdblclick', '0')));
$this->__set('help', $this->getAttribute('help', '1'));
$this->__set('previewsfolder', $this->getAttribute('previewsfolderopen', QuantummanagerHelper::getParamsComponentValue('previewsfolder', '1')));
$this->__set('previewsfolderopen', $this->getAttribute('previewsfolderopen', QuantummanagerHelper::getParamsComponentValue('previewsfolderopen', '1')));
$this->__set('previewslist', $this->getAttribute('previewslist', QuantummanagerHelper::getParamsComponentValue('previewslist', [])));
$this->directory = $this->getAttribute('directory', 'images');
$this->onlyfiles = $this->getAttribute('onlyfiles', '0');
QuantummanagerLibs::includeScriptHead();
QuantummanagerLibs::includes([
'core',
'utils',
'alert',
'contextmenu',
'clipboard',
'notify',
'lazyload',
'dragSelect',
]);
HTMLHelper::_('stylesheet', 'com_quantummanager/quantumviewfiles.css', [
'version' => filemtime(__FILE__),
'relative' => true
]);
HTMLHelper::_('script', 'com_quantummanager/quantumviewfiles.js', [
'version' => filemtime(__FILE__),
'relative' => true
]);
$field = parent::getInput();
if ($this->standalone)
{
$filemanager = new FileLayout('fieldstandalone', JPATH_ROOT . '/administrator/components/com_quantummanager/layouts');
return $filemanager->render(['field' => $field]);
}
return $field;
}
catch (Exception $e)
{
echo $e->getMessage();
}
}
}

File diff suppressed because it is too large Load Diff

View File

@@ -0,0 +1,601 @@
<?php
/**
* @package quantummanager
* @author Dmitry Tsymbal <cymbal@delo-design.ru>
* @copyright Copyright © 2019 Delo Design & NorrNext. All rights reserved.
* @license GNU General Public License version 3 or later; see license.txt
* @link https://www.norrnext.com
*/
defined('_JEXEC') or die;
use Joomla\CMS\Component\ComponentHelper;
use Joomla\Filesystem\File;
use Joomla\Filesystem\Folder;
/**
* Class QuantummanagerHelperImage
*/
class QuantummanagerHelperImage
{
private $exifs = [];
public function __construct()
{
JLoader::register('QuantummanagerHelper', JPATH_SITE . '/administrator/components/com_quantummanager/helpers/quantummanager.php');
}
/**
* @param $path_source
* @param $file
* @param array $options
* @return bool
*/
public function afterUpload($path_source, $file, $options = [])
{
$info = pathinfo($file);
if(isset($info['extension']) && (!in_array(mb_strtolower($info['extension']), ['jpg', 'jpeg', 'png', 'webp'])))
{
return false;
}
$defaultOptions = [
'original' => 1,
'rotateExif' => 0,
'resize' => 1,
'overlay' => 1,
'foldersResize' => 1,
];
foreach ($options as $key => $value)
{
$defaultOptions[$key] = $value;
}
$this->saveExif($file);
if(QuantummanagerHelper::getParamsComponentValue('original', 0) && (int)$defaultOptions['original'])
{
$this->originalSave($file);
}
if(QuantummanagerHelper::getParamsComponentValue('resize', 0) && (int)$defaultOptions['resize'])
{
$this->bestFit($file);
}
if((int)$defaultOptions['foldersResize'])
{
$this->foldersResize($path_source, $file);
}
if((int)QuantummanagerHelper::getParamsComponentValue('overlay', 0) === 1 && (int)$defaultOptions['overlay'])
{
$this->resizeWatermark($file);
}
if((int)QuantummanagerHelper::getParamsComponentValue('rotateexif', 0) === 1 && (int)$defaultOptions['rotateExif'])
{
$this->rotateExif($file);
}
$this->otherFilters($file);
$this->writeExif($file);
$this->reloadCache($file);
}
/**
* @param $file
*/
public function resizeWatermark($file)
{
try
{
$fileWatermark = JPATH_SITE . DIRECTORY_SEPARATOR . QuantummanagerHelper::getParamsComponentValue('overlayfile');
$position = QuantummanagerHelper::getParamsComponentValue('overlaypos', 'bottom-right');
$padding = QuantummanagerHelper::getParamsComponentValue('overlaypadding', 10);
$percent = QuantummanagerHelper::getParamsComponentValue('overlaypadding', 10);
if(file_exists($file) && file_exists($fileWatermark))
{
JLoader::register('JInterventionimage', JPATH_LIBRARIES . DIRECTORY_SEPARATOR . 'jinterventionimage' . DIRECTORY_SEPARATOR . 'jinterventionimage.php');
$manager = JInterventionimage::getInstance(['driver' => $this->getNameDriver()]);
$image = $manager->make($file);
$managerForWatermark = JInterventionimage::getInstance(['driver' => $this->getNameDriver()]);
$watermark = $managerForWatermark->make($fileWatermark);
$logoWidth = $watermark->width();
$logoHeight = $watermark->height();
$imageWidth = $image->width();
$imageHeight = $image->height();
if((int)QuantummanagerHelper::getParamsComponentValue('overlaypercent', 0))
{
//сжимаем водяной знак по процентному соотношению от изображения на который накладывается
$precent = (double)QuantummanagerHelper::getParamsComponentValue('overlaypercentvalue', 10);
$logoWidthMax = $imageWidth / 100 * $precent;
$logoHeightMax = $imageHeight / 100 * $precent;
$watermark->resize((int)$logoWidthMax, (int)$logoHeightMax, function ($constraint) {
$constraint->aspectRatio();
$constraint->upsize();
});
}
if($logoWidth > $imageWidth && $logoHeight > $imageHeight)
{
return false;
}
$image->insert($watermark, $position, $padding, $padding);
$image->save($file);
}
}
catch (Exception $e)
{
echo $e->getMessage();
}
}
/**
* @param $file
* @param null $widthFit
* @param null $heightFit
*/
public function bestFit($file, $widthFit = null, $heightFit = null)
{
JLoader::register('JInterventionimage', JPATH_LIBRARIES . DIRECTORY_SEPARATOR . 'jinterventionimage' . DIRECTORY_SEPARATOR . 'jinterventionimage.php');
list($width, $height, $type, $attr) = getimagesize($file);
$newWidth = $width;
$newHeight = $height;
if(is_null($widthFit))
{
$maxWidth = (int)QuantummanagerHelper::getParamsComponentValue('rezizemaxwidth', 1920);
}
else
{
$maxWidth = (int)$widthFit;
}
if(is_null($heightFit))
{
$maxHeight = (int)QuantummanagerHelper::getParamsComponentValue('rezizemaxheight', 1280);
}
else
{
$maxHeight = (int)$heightFit;
}
$ratio = $width / $height;
if($width > $maxWidth)
{
$newWidth = $maxWidth;
$newHeight = round($newWidth / $ratio);
}
if($newHeight > $maxHeight)
{
$newHeight = $maxHeight;
$newWidth = round($newHeight * $ratio);
}
$manager = JInterventionimage::getInstance(['driver' => $this->getNameDriver()]);
$manager
->make($file)
->resize($newWidth, $newHeight, function ($constraint) {
$constraint->aspectRatio();
$constraint->upsize();
})
->save($file);
}
/**
* @param $file
* @param null $widthFit
* @param null $heightFit
*/
public function fit($file, $widthFit = null, $heightFit = null)
{
JLoader::register('JInterventionimage', JPATH_LIBRARIES . DIRECTORY_SEPARATOR . 'jinterventionimage' . DIRECTORY_SEPARATOR . 'jinterventionimage.php');
list($width, $height, $type, $attr) = getimagesize($file);
$newWidth = $width;
$newHeight = $height;
if(is_null($widthFit))
{
$maxWidth = (int)QuantummanagerHelper::getParamsComponentValue('rezizemaxwidth', 1920);
}
else
{
$maxWidth = (int)$widthFit;
}
if(is_null($heightFit))
{
$maxHeight = (int)QuantummanagerHelper::getParamsComponentValue('rezizemaxwidth', 1920);
}
else
{
$maxHeight = (int)$heightFit;
}
$manager = JInterventionimage::getInstance(['driver' => $this->getNameDriver()]);
$manager
->make($file)
->fit($maxWidth, $maxHeight, function ($constraint) {
$constraint->aspectRatio();
})
->save($file);
}
public function foldersResize($path_source, $file)
{
$folders_rules = QuantummanagerHelper::getParamsComponentValue('resizefolders', []);
foreach ($folders_rules as $folder_rule)
{
if(in_array(substr($folder_rule->folder, 0, 1), ['/', '\\']))
{
$folder_rule->folder = substr($folder_rule->folder, 1);
}
$pos = mb_strpos($path_source, $folder_rule->folder);
if($pos !== false)
{
if($pos === 0)
{
$more = mb_strlen(str_replace($path_source, '', $folder_rule->folder));
$resize = false;
if($more > 0)
{
if((int)$folder_rule->subfolder)
{
$resize = true;
}
}
else
{
$resize = true;
}
if($resize)
{
if($folder_rule->algorithm === 'fit')
{
$this->fit($file, (int)$folder_rule->maxwidth, (int)$folder_rule->maxheight);
}
if($folder_rule->algorithm === 'bestfit')
{
$this->bestFit($file, (int)$folder_rule->maxwidth, (int)$folder_rule->maxheight);
}
if($folder_rule->algorithm === 'resize')
{
$this->resize($file, (int)$folder_rule->maxwidth, (int)$folder_rule->maxheight);
}
}
}
}
}
}
/**
* @param $file
* @param null $widthFit
* @param null $heightFit
*/
public function resize($file, $widthFit = null, $heightFit = null)
{
JLoader::register('JInterventionimage', JPATH_LIBRARIES . DIRECTORY_SEPARATOR . 'jinterventionimage' . DIRECTORY_SEPARATOR . 'jinterventionimage.php');
list($width, $height, $type, $attr) = getimagesize($file);
$newWidth = $width;
$newHeight = $height;
if(is_null($widthFit))
{
$maxWidth = (int)QuantummanagerHelper::getParamsComponentValue('rezizemaxwidth', 1920);
}
else
{
$maxWidth = (int)$widthFit;
}
if(is_null($heightFit))
{
$maxHeight = (int)QuantummanagerHelper::getParamsComponentValue('rezizemaxwidth', 1920);
}
else
{
$maxHeight = (int)$heightFit;
}
$manager = JInterventionimage::getInstance(['driver' => $this->getNameDriver()]);
$manager
->make($file)
->resize($maxWidth, $maxHeight, function ($constraint) {
$constraint->aspectRatio();
})
->resizeCanvas($maxWidth, $maxHeight)
->save($file);
}
/**
* @param $fileSource
*/
public function rotateExif($fileSource)
{
if (function_exists('exif_read_data'))
{
$exif = @exif_read_data($fileSource);
if (!empty($exif['Orientation']))
{
$exif['Orientation'] = (int)$exif['Orientation'];
$rotated = false;
$angle = 0;
switch ($exif['Orientation'])
{
case 3:
$angle = 180;
$rotated = true;
break;
case 6:
$angle = -90;
$rotated = true;
break;
case 8:
$angle = 90;
$rotated = true;
break;
}
if ($rotated)
{
JLoader::register('JInterventionimage', JPATH_LIBRARIES . DIRECTORY_SEPARATOR . 'jinterventionimage' . DIRECTORY_SEPARATOR . 'jinterventionimage.php');
$manager = JInterventionimage::getInstance(['driver' => $this->getNameDriver()]);
$manager
->make($fileSource)
->rotate($angle)
->save($fileSource);
}
}
}
}
/**
* @param $fileSource
*/
public function originalSave($fileSource)
{
try
{
$path = explode(DIRECTORY_SEPARATOR, $fileSource);
$file = array_pop($path);
$pathSave = implode(DIRECTORY_SEPARATOR, $path) . DIRECTORY_SEPARATOR . '_original';
if (!file_exists($pathSave))
{
Folder::create($pathSave);
}
if(!file_exists($pathSave . DIRECTORY_SEPARATOR . $file))
{
File::copy($fileSource, $pathSave . DIRECTORY_SEPARATOR . $file);
}
}
catch (Exception $e)
{
echo $e->getMessage();
}
}
/**
* @param $file
*
* @return bool
*
* @since version
*/
public function otherFilters($file)
{
try
{
$info = pathinfo($file);
if(isset($info['extension']) && (!in_array(mb_strtolower($info['extension']), ['jpg', 'jpeg', 'png', 'webp'])))
{
return false;
}
JLoader::register('JInterventionimage', JPATH_LIBRARIES . DIRECTORY_SEPARATOR . 'jinterventionimage' . DIRECTORY_SEPARATOR . 'jinterventionimage.php');
$input = \Joomla\CMS\Factory::getApplication()->input;
$filters = $input->getString('filters', '');
if(!empty($filters))
{
$filters = json_decode($filters, JSON_OBJECT_AS_ARRAY);
if(is_array($filters))
{
$manager = JInterventionimage::getInstance(['driver' => $this->getNameDriver()]);
$manager = $manager->make($file);
if(isset($filters['compression']))
{
if((int)$filters['compression'] > 0)
{
if(in_array($info['extension'], ['jpg', 'jpeg']))
{
$manager = $manager->encode('jpg', (int)$filters['compression']);
$manager->save($file, (int)$filters['compression']);
$manager = JInterventionimage::getInstance(['driver' => $this->getNameDriver()]);
$manager = $manager->make($file);
}
}
}
if(isset($filters['sharpen']))
{
if((int)$filters['sharpen'] > 0)
{
$manager = $manager->sharpen((int)$filters['sharpen']);
}
}
if(isset($filters['brightness']))
{
if((int)$filters['brightness'] !== 0)
{
$manager = $manager->brightness((int)$filters['brightness']);
}
}
if(isset($filters['blur']))
{
if((int)$filters['blur'] > 0)
{
$manager = $manager->blur((int)$filters['blur']);
}
}
$manager->save($file);
}
}
}
catch (Exception $e)
{
echo $e->getMessage();
}
}
/**
* @param $file
*/
public function reloadCache($file)
{
try
{
$cacheSource = JPATH_ROOT . DIRECTORY_SEPARATOR . 'administrator/cache/com_quantummanager';
$cache = $cacheSource . DIRECTORY_SEPARATOR . str_replace(JPATH_SITE . DIRECTORY_SEPARATOR,'', $file);
if(file_exists($cache))
{
File::delete($cache);
}
}
catch (Exception $e)
{
echo $e->getMessage();
}
}
/**
*
* @return string
*
* @since version
*/
public function getNameDriver()
{
if (extension_loaded('imagick'))
{
return 'imagick';
}
return 'gd';
}
/**
* @param $file
*/
public function saveExif($file)
{
if(!empty($this->exifs))
{
return;
}
$exifSave = (int)QuantummanagerHelper::getParamsComponentValue('exifsave', 0);
if($exifSave)
{
JLoader::register('JPel', JPATH_LIBRARIES . DIRECTORY_SEPARATOR . 'jpel' . DIRECTORY_SEPARATOR . 'jpel.php');
$fi = JPel::instance($file);
if ($fi)
{
$this->exifs = $fi->getExif();
}
}
}
/**
* @param $file
*/
public function writeExif($file)
{
if(empty($this->exifs))
{
return;
}
$exifSave = (int)QuantummanagerHelper::getParamsComponentValue('exifsave', 0);
if($exifSave)
{
JLoader::register('JPel', JPATH_LIBRARIES . DIRECTORY_SEPARATOR . 'jpel' . DIRECTORY_SEPARATOR . 'jpel.php');
$fi = JPel::instance($file);
if ($fi)
{
$fi->setExif($this->exifs);
$fi->save($file);
$this->exifs = [];
}
}
}
}

View File

@@ -0,0 +1,220 @@
<?php
/**
* @package quantummanager
* @author Dmitry Tsymbal <cymbal@delo-design.ru>
* @copyright Copyright © 2019 Delo Design & NorrNext. All rights reserved.
* @license GNU General Public License version 3 or later; see license.txt
* @link https://www.norrnext.com
*/
defined('_JEXEC') or die;
use Joomla\CMS\Factory;
use Joomla\CMS\HTML\HTMLHelper;
/**
* Quantummanager helper.
*
* @package A package name
* @since 1.0
*/
class QuantummanagerLibs
{
/**
* @var bool
* @since version
*/
private static $flagScriptHead = false;
/**
*
*
* @since version
*/
public static function includeScriptHead()
{
if (!self::$flagScriptHead)
{
Factory::getDocument()
->addScriptDeclaration(file_get_contents(JPATH_ROOT . '/media/com_quantummanager/js/dispatcher.js'));
self::$flagScriptHead = true;
}
}
/**
* @param $includes
*/
public static function includes($includes)
{
if (is_array($includes))
{
foreach ($includes as $static_method)
{
if (method_exists('QuantummanagerLibs', $static_method))
{
forward_static_call(__CLASS__ . "::" . $static_method);
}
}
}
if (is_string($includes))
{
if (method_exists('QuantummanagerLibs', $includes))
{
forward_static_call(__CLASS__ . "::" . $includes);
}
}
}
public static function core()
{
HTMLHelper::_('stylesheet', 'com_quantummanager/main.css', [
'version' => filemtime(__FILE__),
'relative' => true
]);
HTMLHelper::_('script', 'com_quantummanager/main.js', [
'version' => filemtime(__FILE__),
'relative' => true
]);
static::theme();
}
public static function theme()
{
$joomla_style = 'joomla3';
if (QuantummanagerHelper::isJoomla4())
{
$joomla_style = 'joomla4';
}
HTMLHelper::_('stylesheet', 'com_quantummanager/' . $joomla_style . '.css', [
'version' => filemtime(__FILE__),
'relative' => true
]);
if (Factory::getApplication()->isClient('site') &&
QuantummanagerHelper::isJoomla4()
)
{
HTMLHelper::_('stylesheet', 'com_quantummanager/joomla4-front.css', [
'version' => filemtime(__FILE__),
'relative' => true
]);
}
}
public static function utils()
{
HTMLHelper::_('script', 'com_quantummanager/utils.js', [
'version' => filemtime(__FILE__),
'relative' => true
]);
}
public static function alert()
{
HTMLHelper::_('script', 'com_quantummanager/jsalert.min.js', [
'version' => filemtime(__FILE__),
'relative' => true
]);
}
public static function contextmenu()
{
HTMLHelper::_('stylesheet', 'com_quantummanager/contextual.css', [
'version' => filemtime(__FILE__),
'relative' => true
]);
HTMLHelper::_('script', 'com_quantummanager/contentual.js', [
'version' => filemtime(__FILE__),
'relative' => true
]);
}
public static function clipboard()
{
HTMLHelper::_('script', 'com_quantummanager/clipboard.min.js', [
'version' => filemtime(__FILE__),
'relative' => true
]);
}
public static function notify()
{
HTMLHelper::_('stylesheet', 'com_quantummanager/notify.css', [
'version' => filemtime(__FILE__),
'relative' => true
]);
HTMLHelper::_('script', 'com_quantummanager/notify.js', [
'version' => filemtime(__FILE__),
'relative' => true
]);
}
public static function lazyload()
{
HTMLHelper::_('script', 'com_quantummanager/lazyload.js', [
'version' => filemtime(__FILE__),
'relative' => true
]);
}
public static function dragSelect()
{
HTMLHelper::_('script', 'com_quantummanager/ds.min.js', [
'version' => filemtime(__FILE__),
'relative' => true
]);
}
public static function dynamicGrid()
{
HTMLHelper::_('script', 'com_quantummanager/masonry.min.js', [
'version' => filemtime(__FILE__),
'relative' => true
]);
}
public static function split()
{
HTMLHelper::_('script', 'com_quantummanager/split.min.js', [
'version' => filemtime(__FILE__),
'relative' => true
]);
}
public static function imageEditor()
{
HTMLHelper::_('stylesheet', 'com_quantummanager/cropperjs.min.css', [
'version' => filemtime(__FILE__),
'relative' => true
]);
HTMLHelper::_('script', 'com_quantummanager/cropperjs.min.js', [
'version' => filemtime(__FILE__),
'relative' => true
]);
}
}

File diff suppressed because it is too large Load Diff

View File

@@ -0,0 +1,381 @@
; @package quantummanager
; @author Dmitry Tsymbal <cymbal@delo-design.ru>
; @copyright Copyright © 2019 Delo Design & NorrNext. All rights reserved.
; @license GNU General Public License version 3 or later; see license.txt
; @link https://www.norrnext.com
COM_QUANTUMMANAGER="Quantum Manager"
COM_QUANTUMMANAGER_XML_DESCRIPTION="File & media manager for Joomla!"
COM_QUANTUMMANAGER_CONFIGURATION="Quantum Manager configuration"
COM_QUANTUMMANAGER_CLEAN_WINDOW="Open in a new window"
COM_QUANTUMMANAGER_EMPTY_MIMETYPE="Unknown MIME type"
; Config general
COM_QUANTUMMANAGER_CONFIG_GENERAL="General"
COM_QUANTUMMANAGER_CONFIG_GENERAL_DESC="Here you can find general settings for entire file manager."
COM_QUANTUMMANAGER_CONFIG_GENERAL_DOCS_LABEL="Documentation"
COM_QUANTUMMANAGER_CONFIG_GENERAL_DOCS_DESC="If you have difficulties with configuring the file manager, you can read the <a href='https://www.norrnext.com/docs/joomla-extensions/quantum-manager/component-options' target="_blank">documentation</a><br /><a href='https://github.com/Quantum-Manager/tracker' target='_blank'>Support</a> | <a href='https://www.norrnext.com/quantum-manager' target='_blank'>Product page</a> | <a href='https://extensions.joomla.org/extension/quantum-manager/' target='_blank'>Reviews on JED</a>"
COM_QUANTUMMANAGER_CONFIG_GENERAL_API_KEY_LABEL="API key"
COM_QUANTUMMANAGER_CONFIG_GENERAL_API_KEY_DESC="A service key is needed to connect to the server, for example, to optimize images."
COM_QUANTUMMANAGER_CONFIG_GENERAL_SPACER_SCOPES="<h4>Scopes</h4>"
COM_QUANTUMMANAGER_CONFIG_GENERAL_SCOPES_LABEL="Default Scopes"
COM_QUANTUMMANAGER_CONFIG_GENERAL_SCOPES_NAME_LABEL="Name"
COM_QUANTUMMANAGER_CONFIG_GENERAL_SCOPES_ENABLE_LABEL="Enable"
COM_QUANTUMMANAGER_CONFIG_GENERAL_SCOPES_PATH_LABEL="Folder"
COM_QUANTUMMANAGER_CONFIG_GENERAL_SCOPES_CUSTOM_LABEL="Custom Scopes"
COM_QUANTUMMANAGER_CONFIG_GENERAL_PATH_LABEL="Default folder"
COM_QUANTUMMANAGER_CONFIG_GENERAL_PATH_VARIABLES_LABEL="Path Variables"
COM_QUANTUMMANAGER_CONFIG_GENERAL_PATH_DESC="You can use the following variables in the path: <br /><b>{user_id}</b> - ID of current user<br /><b>{year}</b> - current year<br /><b>{month}</b> - current month<br/><b>{week_year}</b> - the number of the week in the year<br/><b>{week_day}</b> - the ordinal number of the day of the week (starting from 0)<br/><b>{day_year}</b> - ordinal number of the day in the year (starting from 0)<br/><b>{day}</b> - current day<br/><b>{hours}</b> - current hour<br/><b>{minutes}</b> - minutes<br/><b>{second}</b> - seconds<br/><b>{unix}</b> - UNIX time in seconds<br/><br/>Example:<br/>images/{user_id}/{year}-{month}-{day}"
COM_QUANTUMMANAGER_CONFIG_GENERAL_SPACER_FILES="<h4>Files</h4>"
COM_QUANTUMMANAGER_CONFIG_GENERAL_MAXSIZE_LABEL="Max File Size"
COM_QUANTUMMANAGER_CONFIG_GENERAL_MAXSIZE_DESC="Maximum file size for uploading in megabytes."
COM_QUANTUMMANAGER_CONFIG_GENERAL_MAXSIZEFILENAME_LABEL="Max Name Length"
COM_QUANTUMMANAGER_CONFIG_GENERAL_MAXSIZEFILENAME_DESC="Maximum characters in the name of folders and files. If the name of the file or folder exceeds the specified number of characters, then it is truncated and a hash of digits is added ('_pxxxxxx', where x are digits)."
COM_QUANTUMMANAGER_CONFIG_GENERAL_POSTFIX_LABEL="Suffix"
COM_QUANTUMMANAGER_CONFIG_GENERAL_POSTFIX_DESC="If enabled, then the manager will add the suffix (hash of digits) to the name of the uploaded file ('_pxxxxxx', where x are digits)."
COM_QUANTUMMANAGER_CONFIG_GENERAL_TRANSLIT_LABEL="Names in Unicode"
COM_QUANTUMMANAGER_CONFIG_GENERAL_TRANSLIT_DESC="Use Unicode in folder and file names."
COM_QUANTUMMANAGER_CONFIG_GENERAL_HASHNAME_LABEL="Filenames in MD5"
COM_QUANTUMMANAGER_CONFIG_GENERAL_HASHNAME_DESC="Change filenames to MD5 hash format on upload"
COM_QUANTUMMANAGER_CONFIG_GENERAL_SPACER_METADATA="<h4>Metadata</h4>"
COM_QUANTUMMANAGER_CONFIG_GENERAL_METAFILE_LABEL="Metadata"
COM_QUANTUMMANAGER_CONFIG_GENERAL_METAFILE_DESC="If enabled, then the manager will show on the right side the additional data for folders and files (size of files in folder, number of files and subfolders, metadata of files)."
COM_QUANTUMMANAGER_CONFIG_GENERAL_METAFILE_EXTENDED_LABEL="Extended Metadata"
COM_QUANTUMMANAGER_CONFIG_GENERAL_METAFILE_EXTENDED_DESC="In enabled, then the additional information for a folder will be displayed: total number of folders and files (with subfolders), folder size (with subfolders), etc."
COM_QUANTUMMANAGER_CONFIG_GENERAL_METAFILE_SHOWPATH_LABEL="Full Folder Paths"
COM_QUANTUMMANAGER_CONFIG_GENERAL_METAFILE_SHOWPATH_DESC="Show or hide the full folder path in the metadata."
COM_QUANTUMMANAGER_CONFIG_GENERAL_FOLDERDBLCLICK_LABEL="Go to folder by double click"
COM_QUANTUMMANAGER_CONFIG_GENERAL_FOLDERDBLCLICK_DESC="If this option is enabled, then you can select a folder for further actions by one click and double click will let to go inside the folder."
COM_QUANTUMMANAGER_CONFIG_GENERAL_FRONT_LABEL="Enable Quantum Manager on the front-end"
COM_QUANTUMMANAGER_CONFIG_GENERAL_FRONT_DESC="Quantum Manager hasn't passed any security research yet and the known protections are implemented. Enable this option on your risk if you really need this feature and understand the potential risk."
COM_QUANTUMMANAGER_CONFIG_GENERAL_BUFFERPASTE_LABEL="Allow creating a file from image taken from clipboard"
COM_QUANTUMMANAGER_CONFIG_GENERAL_BUFFERPASTE_DESC="If there is an image in the clipboard, you can use the combination of hotkeys to create a new file with clipboard_<random number>.png filename."
COM_QUANTUMMANAGER_CONFIG_GENERAL_DROPAREAHIDDEN_LABEL="Upload Area"
COM_QUANTUMMANAGER_CONFIG_GENERAL_DROPAREAHIDDEN_DESC="To add more space for viewing files and folders you can hide the upload area and the <b>Download</b> button will be displayed in the toolbar.<br /><br />The entire manager can be used as the upload area, you can drag-and-drop files into the manager for upload."
COM_QUANTUMMANAGER_CONFIG_GENERAL_ITEMMENUMOVE_LABEL="Move component menu item to the root of sidebar"
COM_QUANTUMMANAGER_CONFIG_GENERAL_ITEMMENUMOVE_DESC="This option moves Quantum Manager from "Components" section to the root of main menu (sidebar)"
COM_QUANTUMMANAGER_CONFIG_GENERAL_ITEMMENUMOVEFILES_LABEL="Replace menu item name to Files"
COM_QUANTUMMANAGER_CONFIG_GENERAL_ITEMMENUMOVEFILES_DESC="Replace "Quantum Manager" menu item name to "Files"."
COM_QUANTUMMANAGER_CONFIG_GENERAL_SPACER_GENERAL="<h4>General</h4>"
COM_QUANTUMMANAGER_CONFIG_GENERAL_HELP_LABEL="Help Button"
COM_QUANTUMMANAGER_CONFIG_GENERAL_HELP_DESC="Show or hide the help button."
COM_QUANTUMMANAGER_CONFIG_GENERAL_ARHIVEUPLOAD_LABEL="Upload Archives"
COM_QUANTUMMANAGER_CONFIG_GENERAL_ARHIVEUPLOAD_DESC="Allow to upload archives or not. You will also need to add archive types to MIME types list."
COM_QUANTUMMANAGER_CONFIG_GENERAL_CHECK_LABEL="Check Archive"
COM_QUANTUMMANAGER_CONFIG_GENERAL_CHECK_DESC="If such option is enabled, the component checks uploading file (zip, rar, tar.gz formats) and if the archive contains php file(s), the uploading process will be cancelled and the archive will not be uploaded."
COM_QUANTUMMANAGER_CONFIG_GENERAL_REVIEW_LABEL="JED Bar"
COM_QUANTUMMANAGER_CONFIG_GENERAL_REVIEW_DESC="Show or hide JED review bar."
COM_QUANTUMMANAGER_CONFIG_GENERAL_MIMETYPE_LABEL="Allowed MIME Types"
COM_QUANTUMMANAGER_CONFIG_GENERAL_MIMETYPE_DESC="The manager restricts uploads by MIME types. If you try to upload a file and manager displays an invalid MIME type error, enter its MIME type in this field and save the settings (keep in mind that different browsers send different MIME types).<br /><br />Please note that during the initial setup the list of MIME types is empty. Do not worry. When you upload at least one file the list will be updated with the standard allowed types automatically."
; Config image
COM_QUANTUMMANAGER_CONFIG_IMAGE="Images"
COM_QUANTUMMANAGER_CONFIG_IMAGE_DESC="Settings related to images."
COM_QUANTUMMANAGER_CONFIG_IMAGE_UNSPLASH_LABEL="Search in Unsplash"
COM_QUANTUMMANAGER_CONFIG_IMAGE_UNSPLASH_DESC="Unsplash is a free stock photography website providing high-quality and free images.<br />The button is added to the manager toolbar. The file is downloaded to the currently open folder."
COM_QUANTUMMANAGER_CONFIG_IMAGE_PIXABAY_LABEL="Search in Pixabay"
COM_QUANTUMMANAGER_CONFIG_IMAGE_PIXABAY_DESC="Pixabay is a free stock photography website providing high-quality and free images.<br />The button is added to the manager toolbar. The file is downloaded to the currently open folder."
COM_QUANTUMMANAGER_CONFIG_IMAGE_PEXELS_LABEL="Search in Pexels"
COM_QUANTUMMANAGER_CONFIG_IMAGE_PEXELS_DESC="Pexels is a free photography website providing high-quality and free images.<br />The button is added to the manager toolbar. The file is downloaded to the currently open folder."
COM_QUANTUMMANAGER_CONFIG_IMAGE_OPTIMIZATION_LABEL="Image Optimization"
COM_QUANTUMMANAGER_CONFIG_IMAGE_OPTIMIZATION_DESC="This requires a service key. This will compress the image."
COM_QUANTUMMANAGER_CONFIG_IMAGE_ORIGINAL_LABEL="Keep Original"
COM_QUANTUMMANAGER_CONFIG_IMAGE_ORIGINAL_DESC="If you want to keep the originals of the downloaded images (without automatic resizing, without a watermark), then enable this setting. Originals are saved in the <b>_original</b> folder relative to the current folder."
COM_QUANTUMMANAGER_CONFIG_IMAGE_ORIGINALRESIZE_LABEL="Use Original for Cropping"
COM_QUANTUMMANAGER_CONFIG_IMAGE_ORIGINALRESIZE_DESC="Use original images for cropping."
COM_QUANTUMMANAGER_CONFIG_IMAGE_RESIZE_LABEL="Auto Resize"
COM_QUANTUMMANAGER_CONFIG_IMAGE_RESIZE_DESC="If it is necessary that the image does not exceed some values in width and height, then enable this setting and set the number of maximum pixels in width and height."
COM_QUANTUMMANAGER_CONFIG_IMAGE_RESIZE_MAXWIDTH_LABEL="Max Width"
COM_QUANTUMMANAGER_CONFIG_IMAGE_RESIZE_MAXWIDTH_DESC="Set the maximum width in pixels."
COM_QUANTUMMANAGER_CONFIG_IMAGE_RESIZE_MAXHEIGHT_LABEL="Max Height"
COM_QUANTUMMANAGER_CONFIG_IMAGE_RESIZE_MAXHEIGHT_DESC="Set the maximum height in pixels."
COM_QUANTUMMANAGER_CONFIG_IMAGE_OVERLAY_LABEL="Watermark"
COM_QUANTUMMANAGER_CONFIG_IMAGE_OVERLAY_DESC="Option for watermark overlay mode.<br /><b>Auto</b> - when uploading a file, the watermark is automatically applied<br /><b>Button</b> - to apply a watermark, select an image and click on the <b>Watermark</b> button on the manager toolbar. The button also appears when you select an image in the <b>Auto</b> mode."
COM_QUANTUMMANAGER_CONFIG_IMAGE_OVERLAY_AUTO_LABEL="Auto"
COM_QUANTUMMANAGER_CONFIG_IMAGE_OVERLAY_BUTTON_LABEL="Button"
COM_QUANTUMMANAGER_CONFIG_IMAGE_OVERLAY_FILE_LABEL="Watermark Image"
COM_QUANTUMMANAGER_CONFIG_IMAGE_OVERLAY_FILE_DESC="Select an image for the watermark."
COM_QUANTUMMANAGER_CONFIG_IMAGE_OVERLAY_PERCENT_LABEL="Watermark Resize"
COM_QUANTUMMANAGER_CONFIG_IMAGE_OVERLAY_PERCENT_DESC="If you want the watermark to look the same in the images, enable this setting. You can choose a watermark of any size - it will be automatically adjusted to the current image."
COM_QUANTUMMANAGER_CONFIG_IMAGE_OVERLAY_PERCENT_VALUE_LABEL="Watermark Percentage"
COM_QUANTUMMANAGER_CONFIG_IMAGE_OVERLAY_PERCENT_VALUE_DESC="Resize the watermark as a percentage."
COM_QUANTUMMANAGER_CONFIG_IMAGE_OVERLAY_POS_LABEL="Watermark Position"
COM_QUANTUMMANAGER_CONFIG_IMAGE_OVERLAY_POS_DESC="Select the position in the image where the watermark will be located."
COM_QUANTUMMANAGER_CONFIG_IMAGE_OVERLAY_PADDING_LABEL="Watermark Margins"
COM_QUANTUMMANAGER_CONFIG_IMAGE_OVERLAY_PADDING_DESC="The margins of the watermark from the edges of the image in pixels."
COM_QUANTUMMANAGER_CONFIG_IMAGE_EXIFSAVE_LABEL="Save EXIF meta tags"
COM_QUANTUMMANAGER_CONFIG_IMAGE_EXIFSAVE_DESC="EXIF is a standard that specifies the formats for images, audio and media and adds meta-data recorded by digital cameras: authorship, coordinates of a place where the shoot was taken, date, license and etc."
COM_QUANTUMMANAGER_CONFIG_IMAGE_ROTATEEXIF_LABEL="Rotate according to EXIF"
COM_QUANTUMMANAGER_CONFIG_IMAGE_ROTATEEXIF_DESC="If enabled, images will be rotated automatically using data taken from EXIF"
COM_QUANTUMMANAGER_CONFIG_IMAGE_SPACER_RESIZE_FOLDERS="<h4>Resize images in folders</h4>"
COM_QUANTUMMANAGER_CONFIG_IMAGE_RESIZE_FOLDERS="Resize images in folders"
COM_QUANTUMMANAGER_CONFIG_IMAGE_RESIZE_FOLDERS_FOLDER="Folder"
COM_QUANTUMMANAGER_CONFIG_IMAGE_RESIZE_FOLDERS_SUBFOLDER="Include subfolders"
COM_QUANTUMMANAGER_CONFIG_IMAGE_RESIZE_FOLDERS_MAX_WIDTH="Width"
COM_QUANTUMMANAGER_CONFIG_IMAGE_RESIZE_FOLDERS_MAX_HEIGHT="Height"
COM_QUANTUMMANAGER_CONFIG_IMAGE_RESIZE_FOLDERS_ALGORITHM="Resizing method (crop)"
COM_QUANTUMMANAGER_CONFIG_IMAGE_RESIZE_FOLDERS_ALGORITHM_FIT="Resize and crop image to fit to the specified sizes"
COM_QUANTUMMANAGER_CONFIG_IMAGE_RESIZE_FOLDERS_ALGORITHM_BEST_FIT="Resize to the specified sizes"
COM_QUANTUMMANAGER_CONFIG_IMAGE_RESIZE_FOLDERS_ALGORITHM_RESIZE="Resize and fill blank areas with background to specified sizes"
COM_QUANTUMMANAGER_CONFIG_IMAGE_SPACER_IMAGE_EDITOR="<h4>Image Editor</h4>"
COM_QUANTUMMANAGER_CONFIG_IMAGE_COMPRESSION_LABEL="Compression (%)"
COM_QUANTUMMANAGER_CONFIG_IMAGE_COMPRESSION_DESC="Set the default image compression level as a percentage."
COM_QUANTUMMANAGER_CONFIG_IMAGE_SHARPEN_LABEL="Sharpness (%)"
COM_QUANTUMMANAGER_CONFIG_IMAGE_SHARPEN_DESC="Set the default image sharpness level as a percentage."
COM_QUANTUMMANAGER_CONFIG_IMAGE_BRIGHTNESS_LABEL="Brightness"
COM_QUANTUMMANAGER_CONFIG_IMAGE_BRIGHTNESS_DESC="Set the default image brightness level from 0 to 100."
COM_QUANTUMMANAGER_CONFIG_IMAGE_BLUR_LABEL="Blur (px)"
COM_QUANTUMMANAGER_CONFIG_IMAGE_BLUR_DESC="Set the default image blur level in pixels."
COM_QUANTUMMANAGER_CONFIG_IMAGE_CUSTOMPRESETCROP="Custom Cropping Ratio"
COM_QUANTUMMANAGER_CONFIG_IMAGE_CUSTOMPRESETCROP_NAME="Ratio Name"
COM_QUANTUMMANAGER_CONFIG_IMAGE_CUSTOMPRESETCROP_RATIO="Ratio Value (it should be a number like 1.3056 or 2.4)"
COM_QUANTUMMANAGER_CONFIG_IMAGE_SPACER_PREVIEWS="<h4> Thumbnails </h4>"
COM_QUANTUMMANAGER_CONFIG_IMAGE_PREVIEWSFOLDER_LABEL="Generate _thumb folder"
COM_QUANTUMMANAGER_CONFIG_IMAGE_PREVIEWSFOLDER_DESC="Generate _thumb folder - if this param is enabled, a _thumb subfolder is being created in the folder where original images are located and thumbnail(s) will be saved in a new subfolder."
COM_QUANTUMMANAGER_CONFIG_IMAGE_PREVIEWSFOLDEROPEN_LABEL="Go to _thumb folder automatically"
COM_QUANTUMMANAGER_CONFIG_IMAGE_PREVIEWSFOLDEROPEN_DESC="You will be redirected to _thumb folder automatically after the thumbnails are being generated."
COM_QUANTUMMANAGER_CONFIG_IMAGE_PREVIEWSLLIST_LABEL="Thumbnail List"
COM_QUANTUMMANAGER_CONFIG_IMAGE_PREVIEWSLLIST_DESC="An option to generate thumbnails for images"
COM_QUANTUMMANAGER_CONFIG_IMAGE_PREVIEWSLLIST_NAME="Item name"
COM_QUANTUMMANAGER_CONFIG_IMAGE_PREVIEWSLLIST_WIDTH="Width in pixels"
COM_QUANTUMMANAGER_CONFIG_IMAGE_PREVIEWSLLIST_HEIGHT="Height in pixels"
COM_QUANTUMMANAGER_CONFIG_IMAGE_PREVIEWSLLIST_ALGORITHM="Algorithm"
COM_QUANTUMMANAGER_CONFIG_IMAGE_PREVIEWSLLIST_ALGORITHM_FIT="Resize and crop image"
COM_QUANTUMMANAGER_CONFIG_IMAGE_PREVIEWSLLIST_ALGORITHM_RESIZE="Resize image and skip cropping"
; Config colors
COM_QUANTUMMANAGER_CONFIG_COLORS="Colors"
COM_QUANTUMMANAGER_CONFIG_COLORS_DESC="You can change color palettes here."
COM_QUANTUMMANAGER_CONFIG_COLORS_COLORSFILES_LABEL="Files colors"
COM_QUANTUMMANAGER_CONFIG_COLORS_COLORSFILES_DESC=""
COM_QUANTUMMANAGER_CONFIG_COLORS_COLORSFILES_EXT_LABEL="Extension file (without dot)"
COM_QUANTUMMANAGER_CONFIG_COLORS_COLORSFILES_FOLD_LABEL="Margin color"
COM_QUANTUMMANAGER_CONFIG_COLORS_COLORSFILES_MAIN_LABEL="Primary color"
; Config profiles
COM_QUANTUMMANAGER_CONFIG_PROFILES="Profiles"
COM_QUANTUMMANAGER_CONFIG_PROFILES_DESC="The list of settings that override the manager settings for the specified user group."
COM_QUANTUMMANAGER_CONFIG_PROFILES_VARIABLES="The List of Overrides"
COM_QUANTUMMANAGER_CONFIG_PROFILES_GROUP="User Group"
COM_QUANTUMMANAGER_CONFIG_PROFILES_CONFIG="Config Name"
COM_QUANTUMMANAGER_CONFIG_PROFILES_VALUE="Override"
; Errors
COM_QUANTUMMANAGER_ERROR_FILE_TO_LARGE_THAN_PHP_INI_ALLOWS="The size of uploaded file exceeds the maximum allowed by the server."
COM_QUANTUMMANAGER_ERROR_FILE_TO_LARGE_THAN_HTML_FORM_ALLOWS="The size of uploaded file exceeds the maximum allowed by the component settings."
COM_QUANTUMMANAGER_ERROR_PARTIAL_UPLOAD="File upload error."
COM_QUANTUMMANAGER_ERROR_UPLOAD_ACCESS="This file type is not allowed."
COM_QUANTUMMANAGER_ERROR_CONNECTION="Unable to connect to server."
COM_QUANTUMMANAGER_ERROR_FILE_NOTFOUND="Failed to upload file. The file may be larger than allowed uploading size on the server. Check PHP parameter values <pre>upload_max_filesize</pre> and <pre>post_max_size</pre>"
; Scopes
COM_QUANTUMMANAGER_SCOPE_IMAGES="Images"
COM_QUANTUMMANAGER_SCOPE_DOCS="Docs"
COM_QUANTUMMANAGER_SCOPE_MUSIC="Music"
COM_QUANTUMMANAGER_SCOPE_VIDEOS="Videos"
COM_QUANTUMMANAGER_SCOPE_FOLDER="Field folder"
; Actions
COM_QUANTUMMANAGER_ACTION_ENABLE="Enable"
COM_QUANTUMMANAGER_ACTION_DISABLE="Disable"
COM_QUANTUMMANAGER_ACTION_HIDE="Hide"
COM_QUANTUMMANAGER_ACTION_SHOW="Show"
COM_QUANTUMMANAGER_ACTION_BACK="Back"
COM_QUANTUMMANAGER_ACTION_UP="Up"
COM_QUANTUMMANAGER_ACTION_UPLOADING="Upload"
COM_QUANTUMMANAGER_ACTION_LOADING="Loading"
COM_QUANTUMMANAGER_ACTION_CREATE="Create"
COM_QUANTUMMANAGER_ACTION_WATERMARK="Watermark"
COM_QUANTUMMANAGER_ACTION_PASTE="Paste"
COM_QUANTUMMANAGER_ACTION_SELECT="Select"
COM_QUANTUMMANAGER_ACTION_COPY="Copy"
COM_QUANTUMMANAGER_ACTION_CUT="Cut"
COM_QUANTUMMANAGER_ACTION_DUPLICATE="Make copy"
COM_QUANTUMMANAGER_ACTION_SELECT_ALL="Select All"
COM_QUANTUMMANAGER_ACTION_SOME_DELETE="Delete Selected"
COM_QUANTUMMANAGER_ACTION_DELETE="Delete"
COM_QUANTUMMANAGER_ACTION_EDIT="Edit"
COM_QUANTUMMANAGER_ACTION_TABLE="Table"
COM_QUANTUMMANAGER_ACTION_GRID="Grid"
COM_QUANTUMMANAGER_ACTION_SAVEAREA="Saving"
COM_QUANTUMMANAGER_ACTION_SAVE="Save"
COM_QUANTUMMANAGER_ACTION_CANCEL="Cancel"
COM_QUANTUMMANAGER_ACTION_RELOAD="Reload"
COM_QUANTUMMANAGER_ACTION_FOLDER_CREATE="Create Folder"
COM_QUANTUMMANAGER_ACTION_RENAME="Rename"
COM_QUANTUMMANAGER_ACTION_COPY_LINK="Copy URL"
COM_QUANTUMMANAGER_ACTION_COPIED="Copied"
COM_QUANTUMMANAGER_ACTION_PREVIEW_FILE="View"
COM_QUANTUMMANAGER_ACTION_LOAD="Load More"
COM_QUANTUMMANAGER_ACTION_ALL="All"
COM_QUANTUMMANAGER_ACTION_OPTIMIZATION="Optimization"
COM_QUANTUMMANAGER_ACTION_EJECT="Unarchive"
COM_QUANTUMMANAGER_ACTION_EJECT_IN_FOLDER="Unarchive to Subfolder"
COM_QUANTUMMANAGER_ACTION_TO_ARCHIVE="To Archive"
COM_QUANTUMMANAGER_ACTION_PHOTOSTOCKS="Stock photos"
COM_QUANTUMMANAGER_ACTION_PREVIEWS="Thumbnails"
COM_QUANTUMMANAGER_ACTION_SETTINGS="Settings"
COM_QUANTUMMANAGER_ACTION_OPTIONS="Options"
COM_QUANTUMMANAGER_ACTION_SORT_NONE="not selected"
COM_QUANTUMMANAGER_ACTION_SORT_NAME="name"
COM_QUANTUMMANAGER_ACTION_SORT_SIZE="size"
COM_QUANTUMMANAGER_ACTION_SORT_CREATED="date"
COM_QUANTUMMANAGER_ACTION_SORT_UPDATED="date modified"
COM_QUANTUMMANAGER_ACTION_SORT_ASC="ascending"
COM_QUANTUMMANAGER_ACTION_SORT_DESC="descending"
; Hotkeys
COM_QUANTUMMANAGER_HOTKEYS="Hotkeys"
COM_QUANTUMMANAGER_HOTKEYS_COPY="copy"
COM_QUANTUMMANAGER_HOTKEYS_CUT="cut"
COM_QUANTUMMANAGER_HOTKEYS_PASTE="paste"
COM_QUANTUMMANAGER_HOTKEYS_RENAME="rename"
COM_QUANTUMMANAGER_HOTKEYS_DELETE="delete"
COM_QUANTUMMANAGER_HOTKEYS_REFRESH="refresh folder"
COM_QUANTUMMANAGER_HOTKEYS_BACK="go back"
; Tooltips
COM_QUANTUMMANAGER_TOOLTIP_CHANGE_GRID_VIEWS="Double click to switch to another grid type"
COM_QUANTUMMANAGER_TOOLTIP_MOVE="Move"
COM_QUANTUMMANAGER_TOOLTIP_MOVE_LEFT="Move left"
COM_QUANTUMMANAGER_TOOLTIP_MOVE_RIGHT="Move right"
COM_QUANTUMMANAGER_TOOLTIP_MOVE_UP="Move up"
COM_QUANTUMMANAGER_TOOLTIP_MOVE_DOWN="Move down"
COM_QUANTUMMANAGER_TOOLTIP_CROP="Area crop"
COM_QUANTUMMANAGER_TOOLTIP_ZOOM_IN="Zoom in"
COM_QUANTUMMANAGER_TOOLTIP_ZOOM_OUT="Zoom out"
COM_QUANTUMMANAGER_TOOLTIP_ROTATE_LEFT="Rotate left"
COM_QUANTUMMANAGER_TOOLTIP_ROTATE_RIGHT="Rotate right"
COM_QUANTUMMANAGER_TOOLTIP_FLIP_HORIZONTAL="Flip horizontal"
COM_QUANTUMMANAGER_TOOLTIP_FLIP_VERTICAL="Flip vertical"
COM_QUANTUMMANAGER_TOOLTIP_CLEAR="Clear"
COM_QUANTUMMANAGER_TOOLTIP_DISABLE="Disable"
COM_QUANTUMMANAGER_TOOLTIP_ENABLE="Enable"
COM_QUANTUMMANAGER_TOOLTIP_FREE="Free mode"
; Fields
COM_QUANTUMMANAGER_FIELD_LABEL_FILTER_NAME="Filter by name"
COM_QUANTUMMANAGER_FIELD_LABEL_FILE="Filename"
COM_QUANTUMMANAGER_FIELD_LABEL_RATIO="Ratio"
COM_QUANTUMMANAGER_FIELD_LABEL_SAVE_RATIO="Save ratio"
COM_QUANTUMMANAGER_FIELD_LABEL_WIDTH="Width"
COM_QUANTUMMANAGER_FIELD_LABEL_HEIGHT="Height"
COM_QUANTUMMANAGER_FIELD_LABEL_IMAGE="Image size"
COM_QUANTUMMANAGER_FIELD_LABEL_COMPRESSION="Compression ratio (%)"
COM_QUANTUMMANAGER_FIELD_LABEL_SHARPEN="Sharpness (%)"
COM_QUANTUMMANAGER_FIELD_LABEL_BLUR="Blur (px)"
COM_QUANTUMMANAGER_FIELD_LABEL_BRIGHTNESS="Brightness"
COM_QUANTUMMANAGER_FIELD_LABEL_CROP="Crop area"
COM_QUANTUMMANAGER_FIELD_LABEL_SEARCH="Enter search query …"
COM_QUANTUMMANAGER_FIELD_LABEL_SEARCH_HELPER=""
; Alerts
COM_QUANTUMMANAGER_ALERT_DIRECTORY_NAME="Enter folder name"
COM_QUANTUMMANAGER_ALERT_DIRECTORY_NAME_REQUIRED="Folder name required!"
COM_QUANTUMMANAGER_ALERT_FILE_NAME="Enter filename"
COM_QUANTUMMANAGER_ALERT_CONFIRM_DELETE="You're going to delete the folder:"
COM_QUANTUMMANAGER_ALERT_NOTFOUND="Nothing found, try another search request."
COM_QUANTUMMANAGER_ALERT_BIG_IMAGE="It is recommended to increase PHP params <b>max_execution_time</b> and <b>memory_limit</b> for large images uploading via the back-end"
; Window
COM_QUANTUMMANAGER_WINDOW_CLOSE="Close"
COM_QUANTUMMANAGER_WINDOW_CANCEL="Cancel"
COM_QUANTUMMANAGER_WINDOW_OK="Ok"
COM_QUANTUMMANAGER_WINDOW_INSERT="Embed"
;
; List modules Quantum manager
;
; Quantum upload
COM_QUANTUMMANAGER_QUANTUMUPLOAD_DRAG_DROP="Drag'n'drop files to the upload area"
COM_QUANTUMMANAGER_QUANTUMUPLOAD_UPLOAD_DROP="Drag'n'drop files to upload or"
COM_QUANTUMMANAGER_QUANTUMUPLOAD_UPLOAD_SELECT="select on your device."
COM_QUANTUMMANAGER_QUANTUMUPLOAD_UPLOAD_ERROR_FILE="File "
COM_QUANTUMMANAGER_QUANTUMUPLOAD_UPLOAD_ERROR_MEGABITE=" megabytes"
COM_QUANTUMMANAGER_QUANTUMUPLOAD_UPLOAD_ERROR_MAXSIZE=" should not exceed "
COM_QUANTUMMANAGER_QUANTUMUPLOAD_UPLOAD_ERROR_EXS=" should have file format"
; Quantum view files
COM_QUANTUMMANAGER_QUANTUMVIEWFILES_EMPTY="No files."
COM_QUANTUMMANAGER_QUANTUMVIEWFILES_ERROR="Unable to load the structure of a folder. <br/><br/> <a href='https://github.com/Quantum-Manager/tracker/issues' class='qm-btn' target='_blank'>Support</a>"
COM_QUANTUMMANAGER_QUANTUMVIEWFILES_DUPLICATE="- copy %s"
; Meta info
COM_QUANTUMMANAGER_METAINFO_DIRECTORYNAME="Folder name"
COM_QUANTUMMANAGER_METAINFO_COUNTDORECTORIES="Folders total"
COM_QUANTUMMANAGER_METAINFO_COUNTDORECTORIES_CURRENT="Number of subfolders in the folder"
COM_QUANTUMMANAGER_METAINFO_COUNTFILES="Files total"
COM_QUANTUMMANAGER_METAINFO_COUNTFILES_CURRENT="Files in folder"
COM_QUANTUMMANAGER_METAINFO_FILESSIZE="Folder size"
COM_QUANTUMMANAGER_METAINFO_FILESSIZE_CURRENT="Size of files in folder"
COM_QUANTUMMANAGER_METAINFO_FILENAME="Filename"
COM_QUANTUMMANAGER_METAINFO_EXS="File type"
COM_QUANTUMMANAGER_METAINFO_FILEDATETIME="Modified"
COM_QUANTUMMANAGER_METAINFO_FILESIZE="File size"
COM_QUANTUMMANAGER_METAINFO_FILETYPE="Type"
COM_QUANTUMMANAGER_METAINFO_RESOLUTION="Resolution"
COM_QUANTUMMANAGER_METAINFO_WIDTH="Width"
COM_QUANTUMMANAGER_METAINFO_HEIGHT="Height"
COM_QUANTUMMANAGER_METAINFO_MIMETYPE="MIME type"
COM_QUANTUMMANAGER_METAINFO_SECTIONSFOUND="Section found"
COM_QUANTUMMANAGER_METAINFO_SHOW="View all Metadata"
COM_QUANTUMMANAGER_METAINFO_HIDE="Hide Metadata"
COM_QUANTUMMANAGER_METAINFO_SELECT_COUNT="Selected files"
COM_QUANTUMMANAGER_METAINFO_SELECT_OBJECT_COUNT="Selected objects"
COM_QUANTUMMANAGER_METAINFO_SELECT_SIZE="File size"
; Quantum Unsplash
COM_QUANTUMMANAGER_QUANTUMUNSPLASH_BUTTON="Unsplash"
COM_QUANTUMMANAGER_QUANTUMUNSPLASH_LICENSE="The images are distributed under <a href='https://unsplash.com/license' target='_blank'>Unsplash license</a>."
; Quantum Pixabay
COM_QUANTUMMANAGER_QUANTUMPIXABAY_BUTTON="Pixabay"
COM_QUANTUMMANAGER_QUANTUMPIXABAY_LICENSE="The images are distributed under <a href='https://pixabay.com/service/license/' target='_blank'>Pixabay license</a>."
COM_QUANTUMMANAGER_QUANTUMPIXABAY_FILTERS_IMAGE_TYPE="Type"
COM_QUANTUMMANAGER_QUANTUMPIXABAY_FILTERS_IMAGE_TYPE_PHOTO="Photos"
COM_QUANTUMMANAGER_QUANTUMPIXABAY_FILTERS_IMAGE_TYPE_ILLUSTRATION="Artwork"
COM_QUANTUMMANAGER_QUANTUMPIXABAY_FILTERS_IMAGE_TYPE_VECTOR="Vector"
COM_QUANTUMMANAGER_QUANTUMPIXABAY_FILTERS_COLORS="Color"
COM_QUANTUMMANAGER_QUANTUMPIXABAY_FILTERS_ORIENTATION="Orientation"
COM_QUANTUMMANAGER_QUANTUMPIXABAY_FILTERS_ORIENTATION_HORIZONTAL="Horizontal"
COM_QUANTUMMANAGER_QUANTUMPIXABAY_FILTERS_ORIENTATION_VERTICAL="Vertical"
COM_QUANTUMMANAGER_QUANTUMPIXABAY_FILTERS_SIZE="Size"
COM_QUANTUMMANAGER_QUANTUMPIXABAY_FILTERS_SIZE_SMALL="Small (640x400px)"
COM_QUANTUMMANAGER_QUANTUMPIXABAY_FILTERS_SIZE_MEDIUM="Medium (1280x800px)"
COM_QUANTUMMANAGER_QUANTUMPIXABAY_FILTERS_SIZE_LARGE="Large (1920x1200px)"
COM_QUANTUMMANAGER_QUANTUMPIXABAY_FILTERS_SIZE_ORIGINAL="Original"
; Quantum Pexels
COM_QUANTUMMANAGER_QUANTUMPEXELS_BUTTON="Pexels"
COM_QUANTUMMANAGER_QUANTUMPEXELS_LICENSE="The images are distributed under <a href='https://pexels.com/license' target='_blank'>Pexels license</a>."
COM_QUANTUMMANAGER_QUANTUMPEXELS_FILTERS_LOCAL="Locale"
COM_QUANTUMMANAGER_QUANTUMPEXELS_FILTERS_SIZE="Download size"
COM_QUANTUMMANAGER_QUANTUMPEXELS_FILTERS_SIZE_TINY="Preview (280×200px)"
COM_QUANTUMMANAGER_QUANTUMPEXELS_FILTERS_SIZE_LANDSCAPE="Landscape (1200×627px)"
COM_QUANTUMMANAGER_QUANTUMPEXELS_FILTERS_SIZE_PORTRAIT="Portrait (800×1200px)"
COM_QUANTUMMANAGER_QUANTUMPEXELS_FILTERS_SIZE_SMALL="Small (adaptable×130px)"
COM_QUANTUMMANAGER_QUANTUMPEXELS_FILTERS_SIZE_MEDIUM="Medium (adaptable×350px)"
COM_QUANTUMMANAGER_QUANTUMPEXELS_FILTERS_SIZE_LARGE="Large (940×650px)"
COM_QUANTUMMANAGER_QUANTUMPEXELS_FILTERS_SIZE_LARGE2X="Very Large (1880×1300px)"
COM_QUANTUMMANAGER_QUANTUMPEXELS_FILTERS_SIZE_OPTIMAL="Optimal (2500px×adaptable)"
COM_QUANTUMMANAGER_QUANTUMPEXELS_FILTERS_SIZE_ORIGINAL="Original"
; JED Review
COM_QUANTUMMANAGER_JEDREIVIEW="If you like Quantum, please support the product by leaving a review at the JED."
COM_QUANTUMMANAGER_JEDREIVIEW_REIVEW="Review at the JED"
; Help
COM_QUANTUMMANAGER_HELP="Help"
COM_QUANTUMMANAGER_HELP_TEXT="- a file & media manager to make your work with Joomla! easier."
COM_QUANTUMMANAGER_HELP_COPYRIGHT="Copyright © 2020 <a href='https://delo-design.ru' target='_blank'>Delo Design</a> & <a href='https://www.norrnext.com/' target='_blank'>NorrNext</a>"
COM_QUANTUMMANAGER_HELP_LOVE="Made with love"
COM_QUANTUMMANAGER_HELP_COPYRIGHT_IMAGES="Actions, file types: E. Belyakov | <a href='https://www.flaticon.com/authors/google' target='_blank'>Material Design Icon Pack</a> (<a href='https://creativecommons.org/licenses/by/3.0/' target='_blank'>CC 3.0 BY</a>)"
COM_QUANTUMMANAGER_HELP_BUTTON_PRODUCT_PAGE="Product page"
COM_QUANTUMMANAGER_HELP_BUTTON_DOCUMENTATION="Documentation"
COM_QUANTUMMANAGER_HELP_BUTTON_LOCALIZATIONS="Localizations"
COM_QUANTUMMANAGER_HELP_BUTTON_SUPPORT="Support"
COM_QUANTUMMANAGER_HELP_BUTTON_REVIEW="Reviews on the JED"
; Menus
COM_QUANTUMMANAGER_MENUS_FILES="Files"

View File

@@ -0,0 +1,15 @@
; @package quantummanager
; @author Dmitry Tsymbal <cymbal@delo-design.ru>
; @copyright Copyright © 2019 Delo Design & NorrNext. All rights reserved.
; @license GNU General Public License version 3 or later; see license.txt
; @link https://www.norrnext.com
COM_QUANTUMMANAGER="Quantum Manager"
COM_QUANTUMMANAGER_XML_DESCRIPTION="Quantum - file & media manager for Joomla!"
COM_QUANTUMMANAGER_ERROR_COMPATIBLE_PHP="Required PHP version %s"
COM_QUANTUMMANAGER_ERROR_WRONG_JOOMLA="Required version of Joomla! %s"
COM_QUANTUMMANAGER_ERROR_EXTENSIONS="PHP libraries required: <b>%s</b> <br /> Please contact your hosting provider to enable the library."
; Menus
COM_QUANTUMMANAGER_MENU="Page with file manager"
COM_QUANTUMMANAGER_MENU_DESC="A full interface of Quantum Manager will be fully loaded on the page. The component did not pass security testing at the front-end. Use this mode at your own risk!"

View File

@@ -0,0 +1,382 @@
; @package quantummanager
; @author Dmitry Tsymbal <cymbal@delo-design.ru>
; @copyright Copyright © 2019 Delo Design & NorrNext. All rights reserved.
; @license GNU General Public License version 3 or later; see license.txt
; @link https://www.norrnext.com
COM_QUANTUMMANAGER="Quantum Manager"
COM_QUANTUMMANAGER_XML_DESCRIPTION="Файловый менеджер для Joomla!"
COM_QUANTUMMANAGER_CONFIGURATION="Quantum Manager конфигурация"
COM_QUANTUMMANAGER_CLEAN_WINDOW="Открыть в новом окне"
COM_QUANTUMMANAGER_EMPTY_MIMETYPE="Неизвестный MIME тип"
; Config general
COM_QUANTUMMANAGER_CONFIG_GENERAL="Общие"
COM_QUANTUMMANAGER_CONFIG_GENERAL_DESC="Общие настройки для всего файлового менеджера."
COM_QUANTUMMANAGER_CONFIG_GENERAL_DOCS_LABEL="Документация"
COM_QUANTUMMANAGER_CONFIG_GENERAL_DOCS_DESC="Если у вас возникли сложности с настройкой менеджера, обратитесь к <a href='https://www.norrnext.com/docs/ru/joomla-extensions/quantum-manager/component-options' target='_blank'>документации</a>.<br /> <a href='https://github.com/Quantum-Manager/tracker' target='_blank'>Поддержка</a> | <a href='https://www.norrnext.com/quantum-manager' target='_blank'>Страница продукта</a> | <a href='https://extensions.joomla.org/extension/quantum-manager' target='_blank'>Отзыв на JED</a>"
COM_QUANTUMMANAGER_CONFIG_GENERAL_API_KEY_LABEL="Сервисный ключ"
COM_QUANTUMMANAGER_CONFIG_GENERAL_API_KEY_DESC="Сервисный ключ нужен для подключения серверу, например для оптимизации картинок."
COM_QUANTUMMANAGER_CONFIG_GENERAL_SPACER_SCOPES="<h4>Области</h4>"
COM_QUANTUMMANAGER_CONFIG_GENERAL_SCOPES_LABEL="Стандартные области"
COM_QUANTUMMANAGER_CONFIG_GENERAL_SCOPES_NAME_LABEL="Название"
COM_QUANTUMMANAGER_CONFIG_GENERAL_SCOPES_ENABLE_LABEL="Включить"
COM_QUANTUMMANAGER_CONFIG_GENERAL_SCOPES_PATH_LABEL="Папка"
COM_QUANTUMMANAGER_CONFIG_GENERAL_SCOPES_CUSTOM_LABEL="Свои области"
COM_QUANTUMMANAGER_CONFIG_GENERAL_PATH_LABEL="Папка по умолчанию"
COM_QUANTUMMANAGER_CONFIG_GENERAL_PATH_VARIABLES_LABEL="Переменные для путей"
COM_QUANTUMMANAGER_CONFIG_GENERAL_PATH_DESC="Для полей путей областей доступны переменные: <br /><b>{user_id}</b> - ID текущего пользователя<br /><b>{year}</b> - текущий год<br /><b>{month}</b> - текущий месяц<br/><b>{week_year}</b> - номер недели в году<br/><b>{week_day}</b> - порядковый номер дня недели(начиная с 0)<br/><b>{day_year}</b> - порядковый номер дня в году (начиная с 0)<br/><b>{day}</b> - текущий день<br/><b>{hours}</b> - часы в 12-часовом формате с ведущим нулём<br/><b>{hours_24}</b> - часы в 24-часовом формате с ведущим нулём<br/><b>{minutes}</b> - минуты<br/><b>{seconds}</b> - секунды<br/><b>{unix}</b> - время UNIX в секундах <br/><br/>Пример использования:<br/>images/{user_id}/{year}-{month}-{day}"
COM_QUANTUMMANAGER_CONFIG_GENERAL_SPACER_FILES="<h4>Файлы</h4>"
COM_QUANTUMMANAGER_CONFIG_GENERAL_MAXSIZE_LABEL="Максимальный размер файла"
COM_QUANTUMMANAGER_CONFIG_GENERAL_MAXSIZE_DESC="Максимальный размер файла для загрузки в мегабайтах."
COM_QUANTUMMANAGER_CONFIG_GENERAL_MAXSIZEFILENAME_LABEL="Максимальное кол-во символов"
COM_QUANTUMMANAGER_CONFIG_GENERAL_MAXSIZEFILENAME_DESC="Максимальное кол-во символов в названии папок и файлов. Если название файла/папки превышает указанное кол-во символов, то название обрезается и добавляется хеш из цифр ('_pxxxxxx', где x - цифры)."
COM_QUANTUMMANAGER_CONFIG_GENERAL_POSTFIX_LABEL="Постфикс"
COM_QUANTUMMANAGER_CONFIG_GENERAL_POSTFIX_DESC="Если включено, то после загрузки файла в конце названия добавляется хеш из цифр ('_pxxxxxx', где x - цифры)."
COM_QUANTUMMANAGER_CONFIG_GENERAL_TRANSLIT_LABEL="Названия в Unicode"
COM_QUANTUMMANAGER_CONFIG_GENERAL_TRANSLIT_DESC="Использовать Unicode в названиях папок и файлов."
COM_QUANTUMMANAGER_CONFIG_GENERAL_HASHNAME_LABEL="Названия файлов при загрузке в md5"
COM_QUANTUMMANAGER_CONFIG_GENERAL_HASHNAME_DESC="Меняет названия файлов после всех преобразований в хеш md5"
COM_QUANTUMMANAGER_CONFIG_GENERAL_SPACER_METADATA="<h4>Метаданные</h4>"
COM_QUANTUMMANAGER_CONFIG_GENERAL_METAFILE_LABEL="Метаданные"
COM_QUANTUMMANAGER_CONFIG_GENERAL_METAFILE_DESC="Если включено, то в менеджере справа будут показаны данные для папок и файлов (размер, количество, метаданные файлов)."
COM_QUANTUMMANAGER_CONFIG_GENERAL_METAFILE_EXTENDED_LABEL="Подробные метаданные"
COM_QUANTUMMANAGER_CONFIG_GENERAL_METAFILE_EXTENDED_DESC="Если включено, то справа в менеджере будем показана дополнительная информация о папке: размер папок и файлов рекурсивно, кол-во файлов рекурсивно и т.д."
COM_QUANTUMMANAGER_CONFIG_GENERAL_METAFILE_SHOWPATH_LABEL="Полные пути папок"
COM_QUANTUMMANAGER_CONFIG_GENERAL_METAFILE_SHOWPATH_DESC="Показать или скрыть полный путь папки в метаданных."
COM_QUANTUMMANAGER_CONFIG_GENERAL_FOLDERDBLCLICK_LABEL="Открывать папки по двойному клику"
COM_QUANTUMMANAGER_CONFIG_GENERAL_FOLDERDBLCLICK_DESC="Если эта опция включена, то вы можете выбрать папку для дальнейших действий одним щелчком мыши, а двойной щелчок позволит перейти внутрь папки."
COM_QUANTUMMANAGER_CONFIG_GENERAL_FRONT_LABEL="Разрешить работу на пользовательской части (фронт-энд)"
COM_QUANTUMMANAGER_CONFIG_GENERAL_FRONT_DESC="Менеджер еще не проходил никаких исследований по безопасности и используются только известные способы защиты. <b>Включайте только если вам действительно необходимо.</b>"
COM_QUANTUMMANAGER_CONFIG_GENERAL_BUFFERPASTE_LABEL="Разрешить создание файла из изображения, находящегося в буфере обмена"
COM_QUANTUMMANAGER_CONFIG_GENERAL_BUFFERPASTE_DESC="Если есть картинка в буфере обмена, то при вставке через горячие клавиши она загрузится с именем clipboard_<рандомное число>.png"
COM_QUANTUMMANAGER_CONFIG_GENERAL_DROPAREAHIDDEN_LABEL="Область загрузки"
COM_QUANTUMMANAGER_CONFIG_GENERAL_DROPAREAHIDDEN_DESC="Чтобы добавить больше пространства для просмотра файлов и папок, вы можете скрыть область загрузки. На панели появится кнопка <b>Загрузка</b>.<br /><br />При этом весь менеджер является областью для загрузки, поэтому вы можете бросать файлы прямо в менеджер для их загрузки."
COM_QUANTUMMANAGER_CONFIG_GENERAL_ITEMMENUMOVE_LABEL="Перенести пункт меню в главное меню"
COM_QUANTUMMANAGER_CONFIG_GENERAL_ITEMMENUMOVE_DESC="Позволяет вынести пункт меню Quantum Manager из раздела «Компоненты» в главное меню"
COM_QUANTUMMANAGER_CONFIG_GENERAL_ITEMMENUMOVEFILES_LABEL="Сменить название пункта меню на «Файлы»"
COM_QUANTUMMANAGER_CONFIG_GENERAL_ITEMMENUMOVEFILES_DESC="Сменить название «Quantum Manager» на «Файлы»"
COM_QUANTUMMANAGER_CONFIG_GENERAL_SPACER_GENERAL="<h4>Общие</h4>"
COM_QUANTUMMANAGER_CONFIG_GENERAL_HELP_LABEL="Кнопка помощи"
COM_QUANTUMMANAGER_CONFIG_GENERAL_HELP_DESC="Показывать или нет кнопку помощи."
COM_QUANTUMMANAGER_CONFIG_GENERAL_REVIEW_LABEL="Панель JED"
COM_QUANTUMMANAGER_CONFIG_GENERAL_ARHIVEUPLOAD_LABEL="Загрузка архивов"
COM_QUANTUMMANAGER_CONFIG_GENERAL_ARHIVEUPLOAD_DESC="Разрешить или нет загрузку архивов. Потребуется также добавить типы архивов в список MIME-типов."
COM_QUANTUMMANAGER_CONFIG_GENERAL_CHECK_LABEL="Проверять архив"
COM_QUANTUMMANAGER_CONFIG_GENERAL_CHECK_DESC="Если эта опция включена, компонент проверяет загружаемый файл (zip, rar, targ.gz форматы) и если архив содержит php файл(ы), процесс загрузки отменяется и архив не будет загружен."
COM_QUANTUMMANAGER_CONFIG_GENERAL_REVIEW_DESC="Показывать или нет нижнюю панель для отзыва на JED."
COM_QUANTUMMANAGER_CONFIG_GENERAL_MIMETYPE_LABEL="Разрешенные MIME типы файлов"
COM_QUANTUMMANAGER_CONFIG_GENERAL_MIMETYPE_DESC="Менеджер ограничивает загрузки по MIME типам. Если вы пытаетесь загрузить файлы и менеджер показывает ошибку о недопустимом MIME типе, то занесите его в это поле и сохраните настройки (имейте ввиду, что разные браузеры посылают разные MIME типы).<br /><br />Обратите внимание, что при начальной настройке список MIME типов пустой. После того, как вы загрузите хотя бы один файл, то настройка обновится и список будет автоматически заполнен стандартными типами."
; Config image
COM_QUANTUMMANAGER_CONFIG_IMAGE="Изображения"
COM_QUANTUMMANAGER_CONFIG_IMAGE_DESC="Настройки автоматического изменения размера изображений, наложения водяного знака и обрезки изображений."
COM_QUANTUMMANAGER_CONFIG_IMAGE_UNSPLASH_LABEL="Поиск в Unplash"
COM_QUANTUMMANAGER_CONFIG_IMAGE_UNSPLASH_DESC="Unsplash - фотосток бесплатных изображений. Кнопка добавляется на панель менеджера. Файл скачивается в текущую открытую папку."
COM_QUANTUMMANAGER_CONFIG_IMAGE_PIXABAY_LABEL="Поиск в Pixabay"
COM_QUANTUMMANAGER_CONFIG_IMAGE_PIXABAY_DESC="Pixabay - фотосток бесплатных изображений. Кнопка добавляется на панель менеджера. Файл скачивается в текущую открытую папку."
COM_QUANTUMMANAGER_CONFIG_IMAGE_PEXELS_LABEL="Поиск в Pexels"
COM_QUANTUMMANAGER_CONFIG_IMAGE_PEXELS_DESC="Pexels - фотосток бесплатных изображений. Кнопка добавляется на панель менеджера. Файл скачивается в текущую открытую папку."
COM_QUANTUMMANAGER_CONFIG_IMAGE_OPTIMIZATION_LABEL="Оптимизация картинок"
COM_QUANTUMMANAGER_CONFIG_IMAGE_OPTIMIZATION_DESC="Для этого нужен сервисный ключ. Это позволит сжимать изображения."
COM_QUANTUMMANAGER_CONFIG_IMAGE_ORIGINAL_LABEL="Сохранять оригиналы"
COM_QUANTUMMANAGER_CONFIG_IMAGE_ORIGINAL_DESC="Если необходимо сохранять оригиналы загружаемых изображений (без автоматического изменения размера, без водяного знака), то включите эту настройку. Оригиналы сохраняются в папку <b>_original</b> относительно текущей папки."
COM_QUANTUMMANAGER_CONFIG_IMAGE_ORIGINALRESIZE_LABEL="Оригиналы для изменение размера"
COM_QUANTUMMANAGER_CONFIG_IMAGE_ORIGINALRESIZE_DESC="Использовать оригиналы изображений для изменения размера."
COM_QUANTUMMANAGER_CONFIG_IMAGE_RESIZE_LABEL="Автоматическое изменение размера"
COM_QUANTUMMANAGER_CONFIG_IMAGE_RESIZE_DESC="Если необходимо, чтобы изображение не превышало каких-то значений по ширине и высоте, то включите эту настройку и задайте количество максимальных пикселей по ширине и высоте."
COM_QUANTUMMANAGER_CONFIG_IMAGE_RESIZE_MAXWIDTH_LABEL="Максимальная ширина"
COM_QUANTUMMANAGER_CONFIG_IMAGE_RESIZE_MAXWIDTH_DESC="Установите максимальную ширину в пикселях."
COM_QUANTUMMANAGER_CONFIG_IMAGE_RESIZE_MAXHEIGHT_LABEL="Максимальная высота"
COM_QUANTUMMANAGER_CONFIG_IMAGE_RESIZE_MAXHEIGHT_DESC="Установите максимальную высоту в пикселях."
COM_QUANTUMMANAGER_CONFIG_IMAGE_OVERLAY_LABEL="Водяной знак"
COM_QUANTUMMANAGER_CONFIG_IMAGE_OVERLAY_DESC="Опция для режима наложения водяного знака.<br /><b>Авто</b> - при загрузке файла водяной знак накладывается автоматически;<br /><b>Кнопка</b> - чтобы применить водяной знак, выберите изображение и нажмите на кнопку <b>Водяной знак</b> на панели менеджера. Кнопка так же появляется при выборе изображения в режиме <b>Авто</b>."
COM_QUANTUMMANAGER_CONFIG_IMAGE_OVERLAY_AUTO_LABEL="Авто"
COM_QUANTUMMANAGER_CONFIG_IMAGE_OVERLAY_BUTTON_LABEL="Кнопка"
COM_QUANTUMMANAGER_CONFIG_IMAGE_OVERLAY_FILE_LABEL="Изображение водяного знака"
COM_QUANTUMMANAGER_CONFIG_IMAGE_OVERLAY_FILE_DESC="Выбор изображения для водяного знака."
COM_QUANTUMMANAGER_CONFIG_IMAGE_OVERLAY_PERCENT_LABEL="Водяной знак в процентах"
COM_QUANTUMMANAGER_CONFIG_IMAGE_OVERLAY_PERCENT_DESC="Если вам необходимо, чтобы водяной знак смотрелся одинаково на изображениях, то включите эту настройку. Вы можете выбрать водяной знак любых размеров - он автоматически подстроится под текущее изображение."
COM_QUANTUMMANAGER_CONFIG_IMAGE_OVERLAY_PERCENT_VALUE_LABEL="Процент водяного знака"
COM_QUANTUMMANAGER_CONFIG_IMAGE_OVERLAY_PERCENT_VALUE_DESC="Какой процент от изображения должен занимать водяной знак."
COM_QUANTUMMANAGER_CONFIG_IMAGE_OVERLAY_POS_LABEL="Позиция водяного знака"
COM_QUANTUMMANAGER_CONFIG_IMAGE_OVERLAY_POS_DESC="Выбор позиции на изображении, в которой будет находится водяной знак."
COM_QUANTUMMANAGER_CONFIG_IMAGE_OVERLAY_PADDING_LABEL="Отступы водяного знака"
COM_QUANTUMMANAGER_CONFIG_IMAGE_OVERLAY_PADDING_DESC="Отступы водяного знака от краев изображения в пикселях."
COM_QUANTUMMANAGER_CONFIG_IMAGE_EXIFSAVE_LABEL="Сохранять EXIF метатеги"
COM_QUANTUMMANAGER_CONFIG_IMAGE_EXIFSAVE_DESC="EXIF — стандарт, позволяющий добавлять к изображениям метаданные, описывающие авторство, координаты места съёмки, дату, лицензию и пр. условия. Фотоаппараты добавляют некоторые данные к изображениям."
COM_QUANTUMMANAGER_CONFIG_IMAGE_ROTATEEXIF_LABEL="Поворачивать по EXIF"
COM_QUANTUMMANAGER_CONFIG_IMAGE_ROTATEEXIF_DESC="Если включено, то изображения будут автоматически поворачиваться из данных EXIF"
COM_QUANTUMMANAGER_CONFIG_IMAGE_SPACER_RESIZE_FOLDERS="<h4>Изменение размеров изображений в папках</h4>"
COM_QUANTUMMANAGER_CONFIG_IMAGE_RESIZE_FOLDERS="Изменения размеров для папок"
COM_QUANTUMMANAGER_CONFIG_IMAGE_RESIZE_FOLDERS_FOLDER="Папка"
COM_QUANTUMMANAGER_CONFIG_IMAGE_RESIZE_FOLDERS_SUBFOLDER="Включать подпапки"
COM_QUANTUMMANAGER_CONFIG_IMAGE_RESIZE_FOLDERS_MAX_WIDTH="Ширина"
COM_QUANTUMMANAGER_CONFIG_IMAGE_RESIZE_FOLDERS_MAX_HEIGHT="Высота"
COM_QUANTUMMANAGER_CONFIG_IMAGE_RESIZE_FOLDERS_ALGORITHM="Способ кадрирования (обрезки)"
COM_QUANTUMMANAGER_CONFIG_IMAGE_RESIZE_FOLDERS_ALGORITHM_FIT="Уменьшить и обрезать лишнее до указанных размеров"
COM_QUANTUMMANAGER_CONFIG_IMAGE_RESIZE_FOLDERS_ALGORITHM_BEST_FIT="Уменьшить до указанных размеров"
COM_QUANTUMMANAGER_CONFIG_IMAGE_RESIZE_FOLDERS_ALGORITHM_RESIZE="Уменьшить и заполнить пустые участки фоном до указанных размеров"
COM_QUANTUMMANAGER_CONFIG_IMAGE_SPACER_IMAGE_EDITOR="<h4>Редактор изображений</h4>"
COM_QUANTUMMANAGER_CONFIG_IMAGE_COMPRESSION_LABEL="Сжатие (%)"
COM_QUANTUMMANAGER_CONFIG_IMAGE_COMPRESSION_DESC="Установите уровень сжатия изображения по умолчанию в процентах."
COM_QUANTUMMANAGER_CONFIG_IMAGE_SHARPEN_LABEL="Резкость (%)"
COM_QUANTUMMANAGER_CONFIG_IMAGE_SHARPEN_DESC="Установите уровень резкости изображения по умолчанию в процентах."
COM_QUANTUMMANAGER_CONFIG_IMAGE_BRIGHTNESS_LABEL="Яркость"
COM_QUANTUMMANAGER_CONFIG_IMAGE_BRIGHTNESS_DESC="Установите уровень яркости изображения по умолчанию от 0 до 100."
COM_QUANTUMMANAGER_CONFIG_IMAGE_BLUR_LABEL="Размытие (px)"
COM_QUANTUMMANAGER_CONFIG_IMAGE_BLUR_DESC="Установите уровень размытия изображения по умолчанию в пикселях."
COM_QUANTUMMANAGER_CONFIG_IMAGE_CUSTOMPRESETCROP="Свои пропорции обрезки"
COM_QUANTUMMANAGER_CONFIG_IMAGE_CUSTOMPRESETCROP_NAME="Название пропорции"
COM_QUANTUMMANAGER_CONFIG_IMAGE_CUSTOMPRESETCROP_RATIO="Значение пропорции (это число, например: 1.3056 или 2.4)"
COM_QUANTUMMANAGER_CONFIG_IMAGE_SPACER_PREVIEWS="<h4>Миниатюры</h4>"
COM_QUANTUMMANAGER_CONFIG_IMAGE_PREVIEWSFOLDER_LABEL="Создать _thumb папку"
COM_QUANTUMMANAGER_CONFIG_IMAGE_PREVIEWSFOLDER_DESC="Если этот параметр включен, подпапка _thumb будет создана внутри папки, где размещены оригинальные изображения и мини-эскизы будут сохранены в новую подпапку."
COM_QUANTUMMANAGER_CONFIG_IMAGE_PREVIEWSFOLDEROPEN_LABEL="Автоматический переход в папку _thumb"
COM_QUANTUMMANAGER_CONFIG_IMAGE_PREVIEWSFOLDEROPEN_DESC="Автоматический переход в созданную папку _thumb после создания эскиза"
COM_QUANTUMMANAGER_CONFIG_IMAGE_PREVIEWSLLIST_LABEL="Список миниатюр"
COM_QUANTUMMANAGER_CONFIG_IMAGE_PREVIEWSLLIST_DESC="Добавляется при изображениях выбор создания миниатюр"
COM_QUANTUMMANAGER_CONFIG_IMAGE_PREVIEWSLLIST_NAME="Название"
COM_QUANTUMMANAGER_CONFIG_IMAGE_PREVIEWSLLIST_WIDTH="Ширина в пикселях"
COM_QUANTUMMANAGER_CONFIG_IMAGE_PREVIEWSLLIST_HEIGHT="Высота в пикселях"
COM_QUANTUMMANAGER_CONFIG_IMAGE_PREVIEWSLLIST_ALGORITHM="Способ кадрирования (обрезки)"
COM_QUANTUMMANAGER_CONFIG_IMAGE_PREVIEWSLLIST_ALGORITHM_FIT="Уменьшить и обрезать лишнее"
COM_QUANTUMMANAGER_CONFIG_IMAGE_PREVIEWSLLIST_ALGORITHM_RESIZE="Уменьшить и не обрезать лишнее"
; Config colors
COM_QUANTUMMANAGER_CONFIG_COLORS="Цвета"
COM_QUANTUMMANAGER_CONFIG_COLORS_DESC="Здесь вы можете изменить цветовые палитры."
COM_QUANTUMMANAGER_CONFIG_COLORS_COLORSFILES_LABEL="Цвета файлов"
COM_QUANTUMMANAGER_CONFIG_COLORS_COLORSFILES_DESC=""
COM_QUANTUMMANAGER_CONFIG_COLORS_COLORSFILES_EXT_LABEL="Расширение файла (без точки)"
COM_QUANTUMMANAGER_CONFIG_COLORS_COLORSFILES_FOLD_LABEL="Цвет складки"
COM_QUANTUMMANAGER_CONFIG_COLORS_COLORSFILES_MAIN_LABEL="Основной цвет"
; Config profiles
COM_QUANTUMMANAGER_CONFIG_PROFILES="Профили"
COM_QUANTUMMANAGER_CONFIG_PROFILES_DESC="Список настроек, который переопределяет настройки менеджера для указанной группы пользователей."
COM_QUANTUMMANAGER_CONFIG_PROFILES_VARIABLES="Список переопределений"
COM_QUANTUMMANAGER_CONFIG_PROFILES_GROUP="Группа пользователей"
COM_QUANTUMMANAGER_CONFIG_PROFILES_CONFIG="Название конфигурации"
COM_QUANTUMMANAGER_CONFIG_PROFILES_VALUE="Переопределение"
; Errors
COM_QUANTUMMANAGER_ERROR_FILE_TO_LARGE_THAN_PHP_INI_ALLOWS="Размер файла больше, чем разрешено сервером"
COM_QUANTUMMANAGER_ERROR_FILE_TO_LARGE_THAN_HTML_FORM_ALLOWS="Размер файла больше, чем позволяют настройки менеджера"
COM_QUANTUMMANAGER_ERROR_PARTIAL_UPLOAD="Ошибка при загрузке файла"
COM_QUANTUMMANAGER_ERROR_UPLOAD_ACCESS="Неразрешенный тип файла"
COM_QUANTUMMANAGER_ERROR_CONNECTION="Не удается подключиться к серверу"
COM_QUANTUMMANAGER_ERROR_FILE_NOTFOUND="Не удалось загрузить файл. Возможно файл больше, чем разрешено загружать на сервер. Проверьте значения PHP параметров <pre>upload_max_filesize</pre> и <pre>post_max_size</pre>"
; Scopes
COM_QUANTUMMANAGER_SCOPE_IMAGES="Изображения"
COM_QUANTUMMANAGER_SCOPE_DOCS="Документы"
COM_QUANTUMMANAGER_SCOPE_MUSIC="Музыка"
COM_QUANTUMMANAGER_SCOPE_VIDEOS="Видео"
COM_QUANTUMMANAGER_SCOPE_FOLDER="Директория поля"
; Actions
COM_QUANTUMMANAGER_ACTION_ENABLE="Включить"
COM_QUANTUMMANAGER_ACTION_DISABLE="Выключить"
COM_QUANTUMMANAGER_ACTION_HIDE="Скрыть"
COM_QUANTUMMANAGER_ACTION_SHOW="Показать"
COM_QUANTUMMANAGER_ACTION_BACK="Назад"
COM_QUANTUMMANAGER_ACTION_UP="Вверх"
COM_QUANTUMMANAGER_ACTION_UPLOADING="Загрузка"
COM_QUANTUMMANAGER_ACTION_LOADING="Загрузка"
COM_QUANTUMMANAGER_ACTION_CREATE="Создать"
COM_QUANTUMMANAGER_ACTION_SELECT="Выбрать"
COM_QUANTUMMANAGER_ACTION_WATERMARK="Водяной знак"
COM_QUANTUMMANAGER_ACTION_PASTE="Вставить из буфера"
COM_QUANTUMMANAGER_ACTION_COPY="Копировать"
COM_QUANTUMMANAGER_ACTION_CUT="Вырезать"
COM_QUANTUMMANAGER_ACTION_DUPLICATE="Создать копию"
COM_QUANTUMMANAGER_ACTION_SELECT_ALL="Выделить все"
COM_QUANTUMMANAGER_ACTION_SOME_DELETE="Удалить выделенное"
COM_QUANTUMMANAGER_ACTION_DELETE="Удалить"
COM_QUANTUMMANAGER_ACTION_EDIT="Редактировать"
COM_QUANTUMMANAGER_ACTION_TABLE="Таблица"
COM_QUANTUMMANAGER_ACTION_GRID="Сетка"
COM_QUANTUMMANAGER_ACTION_SAVEAREA="Сохранение"
COM_QUANTUMMANAGER_ACTION_SAVE="Сохранить"
COM_QUANTUMMANAGER_ACTION_CANCEL="Отменить"
COM_QUANTUMMANAGER_ACTION_RELOAD="Обновить"
COM_QUANTUMMANAGER_ACTION_FOLDER_CREATE="Создать папку"
COM_QUANTUMMANAGER_ACTION_RENAME="Переименовать"
COM_QUANTUMMANAGER_ACTION_COPY_LINK="Скопировать ссылку"
COM_QUANTUMMANAGER_ACTION_COPIED="Скопировано"
COM_QUANTUMMANAGER_ACTION_PREVIEW_FILE="Просмотреть"
COM_QUANTUMMANAGER_ACTION_LOAD="Загрузить ещё"
COM_QUANTUMMANAGER_ACTION_ALL="Все"
COM_QUANTUMMANAGER_ACTION_OPTIMIZATION="Оптимизация"
COM_QUANTUMMANAGER_ACTION_EJECT="Распаковать"
COM_QUANTUMMANAGER_ACTION_EJECT_IN_FOLDER="Распаковать в подпапку"
COM_QUANTUMMANAGER_ACTION_TO_ARCHIVE="В архив"
COM_QUANTUMMANAGER_ACTION_PHOTOSTOCKS="Фотостоки"
COM_QUANTUMMANAGER_ACTION_PREVIEWS="Миниатюры"
COM_QUANTUMMANAGER_ACTION_SETTINGS="Настройки"
COM_QUANTUMMANAGER_ACTION_OPTIONS="Настройки"
COM_QUANTUMMANAGER_ACTION_SORT_NONE="не выбрано"
COM_QUANTUMMANAGER_ACTION_SORT_NAME="по названию"
COM_QUANTUMMANAGER_ACTION_SORT_SIZE="по размеру"
COM_QUANTUMMANAGER_ACTION_SORT_CREATED="по времени создания"
COM_QUANTUMMANAGER_ACTION_SORT_UPDATED="по времени изменения"
COM_QUANTUMMANAGER_ACTION_SORT_ASC="по возрастанию"
COM_QUANTUMMANAGER_ACTION_SORT_DESC="по убыванию"
; Hotkeys
COM_QUANTUMMANAGER_HOTKEYS="Горячие клавиши"
COM_QUANTUMMANAGER_HOTKEYS_COPY="копировать"
COM_QUANTUMMANAGER_HOTKEYS_CUT="вырезать"
COM_QUANTUMMANAGER_HOTKEYS_PASTE="вставить"
COM_QUANTUMMANAGER_HOTKEYS_RENAME="переименовать"
COM_QUANTUMMANAGER_HOTKEYS_DELETE="удалить"
COM_QUANTUMMANAGER_HOTKEYS_REFRESH="обновление папки"
COM_QUANTUMMANAGER_HOTKEYS_BACK="вернуться назад"
; Tooltips
COM_QUANTUMMANAGER_TOOLTIP_CHANGE_GRID_VIEWS="Нажмите ещё раз, чтобы переключить сетку на другую"
COM_QUANTUMMANAGER_TOOLTIP_MOVE="Переместить"
COM_QUANTUMMANAGER_TOOLTIP_MOVE_LEFT="Переместить влево"
COM_QUANTUMMANAGER_TOOLTIP_MOVE_RIGHT="Переместить влево"
COM_QUANTUMMANAGER_TOOLTIP_MOVE_UP="Переместить вверх"
COM_QUANTUMMANAGER_TOOLTIP_MOVE_DOWN="Переместить вниз"
COM_QUANTUMMANAGER_TOOLTIP_CROP="Область обрезки"
COM_QUANTUMMANAGER_TOOLTIP_ZOOM_IN="Приблизить"
COM_QUANTUMMANAGER_TOOLTIP_ZOOM_OUT="Отдалить"
COM_QUANTUMMANAGER_TOOLTIP_ROTATE_LEFT="Повернуть влево"
COM_QUANTUMMANAGER_TOOLTIP_ROTATE_RIGHT="Повернуть вправо"
COM_QUANTUMMANAGER_TOOLTIP_FLIP_HORIZONTAL="Отразить по горизонтали"
COM_QUANTUMMANAGER_TOOLTIP_FLIP_VERTICAL="Отразить по вертикали"
COM_QUANTUMMANAGER_TOOLTIP_CLEAR="Очистить"
COM_QUANTUMMANAGER_TOOLTIP_DISABLE="Заблокировать"
COM_QUANTUMMANAGER_TOOLTIP_ENABLE="Разблокировать"
COM_QUANTUMMANAGER_TOOLTIP_FREE="Свободный режим"
; Fields
COM_QUANTUMMANAGER_FIELD_LABEL_FILTER_NAME="Фильтр по названию"
COM_QUANTUMMANAGER_FIELD_LABEL_FILE="Название файла"
COM_QUANTUMMANAGER_FIELD_LABEL_RATIO="Пропорции"
COM_QUANTUMMANAGER_FIELD_LABEL_SAVE_RATIO="Сохранять пропорции"
COM_QUANTUMMANAGER_FIELD_LABEL_WIDTH="Ширина"
COM_QUANTUMMANAGER_FIELD_LABEL_HEIGHT="Высота"
COM_QUANTUMMANAGER_FIELD_LABEL_IMAGE="Размер изображения"
COM_QUANTUMMANAGER_FIELD_LABEL_COMPRESSION="Степень сжатия (%)"
COM_QUANTUMMANAGER_FIELD_LABEL_SHARPEN="Резкость (%)"
COM_QUANTUMMANAGER_FIELD_LABEL_BLUR="Размытие (px)"
COM_QUANTUMMANAGER_FIELD_LABEL_BRIGHTNESS="Яркость"
COM_QUANTUMMANAGER_FIELD_LABEL_CROP="Область обрезки"
COM_QUANTUMMANAGER_FIELD_LABEL_SEARCH="Введите запрос…"
COM_QUANTUMMANAGER_FIELD_LABEL_SEARCH_HELPER=""
; Alerts
COM_QUANTUMMANAGER_ALERT_DIRECTORY_NAME="Введите название папки"
COM_QUANTUMMANAGER_ALERT_DIRECTORY_NAME_REQUIRED="Требуется имя папки!"
COM_QUANTUMMANAGER_ALERT_FILE_NAME="Введите название файла"
COM_QUANTUMMANAGER_ALERT_CONFIRM_DELETE="Вы хотите удалить папку:"
COM_QUANTUMMANAGER_ALERT_NOTFOUND="Ничего не найдено, попробуйте задать по другому запрос."
COM_QUANTUMMANAGER_ALERT_BIG_IMAGE="Рекомендуем увеличить PHP параметры <b>max_execution_time</b> и <b>memory_limit</b> для загрузки изображений большого размера через административную часть."
; Window
COM_QUANTUMMANAGER_WINDOW_CLOSE="Закрыть"
COM_QUANTUMMANAGER_WINDOW_CANCEL="Отмена"
COM_QUANTUMMANAGER_WINDOW_OK="Ок"
COM_QUANTUMMANAGER_WINDOW_INSERT="Встроить"
;
; List modules Quantum manager
;
; Quantum upload
COM_QUANTUMMANAGER_QUANTUMUPLOAD_DRAG_DROP="Перетащите файлы в область загрузки"
COM_QUANTUMMANAGER_QUANTUMUPLOAD_UPLOAD_DROP="Для загрузки перетащите файлы или"
COM_QUANTUMMANAGER_QUANTUMUPLOAD_UPLOAD_SELECT="выберите на своём устройстве."
COM_QUANTUMMANAGER_QUANTUMUPLOAD_UPLOAD_ERROR_FILE="Файл "
COM_QUANTUMMANAGER_QUANTUMUPLOAD_UPLOAD_ERROR_MEGABITE=" мегабайт"
COM_QUANTUMMANAGER_QUANTUMUPLOAD_UPLOAD_ERROR_MAXSIZE=" не должен превышать "
COM_QUANTUMMANAGER_QUANTUMUPLOAD_UPLOAD_ERROR_EXS=" должен иметь расширение."
; Quantum view files
COM_QUANTUMMANAGER_QUANTUMVIEWFILES_EMPTY="Файлов нет."
COM_QUANTUMMANAGER_QUANTUMVIEWFILES_ERROR="Произошла ошибка загрузки структуры папки. <br/><br/> <a href=\"https://github.com/Quantum-Manager/tracker/issues\" class=\"qm-btn\" target=\"_blank\">Поддержка</a>"
COM_QUANTUMMANAGER_QUANTUMVIEWFILES_DUPLICATE="- копия %s"
; Meta info
COM_QUANTUMMANAGER_METAINFO_DIRECTORYNAME="Название папки"
COM_QUANTUMMANAGER_METAINFO_COUNTDORECTORIES="Всего папок"
COM_QUANTUMMANAGER_METAINFO_COUNTDORECTORIES_CURRENT="Подпапок в папке"
COM_QUANTUMMANAGER_METAINFO_COUNTFILES="Всего файлов"
COM_QUANTUMMANAGER_METAINFO_COUNTFILES_CURRENT="Файлов в папке"
COM_QUANTUMMANAGER_METAINFO_FILESSIZE="Размер папки"
COM_QUANTUMMANAGER_METAINFO_FILESSIZE_CURRENT="Размер файлов в папке"
COM_QUANTUMMANAGER_METAINFO_FILENAME="Название файла"
COM_QUANTUMMANAGER_METAINFO_EXS="Расширение файла"
COM_QUANTUMMANAGER_METAINFO_FILEDATETIME="Время изменения"
COM_QUANTUMMANAGER_METAINFO_FILESIZE="Размер файла"
COM_QUANTUMMANAGER_METAINFO_FILETYPE="Тип"
COM_QUANTUMMANAGER_METAINFO_RESOLUTION="Разрешение"
COM_QUANTUMMANAGER_METAINFO_WIDTH="Ширина"
COM_QUANTUMMANAGER_METAINFO_HEIGHT="Высота"
COM_QUANTUMMANAGER_METAINFO_MIMETYPE="MIME тип"
COM_QUANTUMMANAGER_METAINFO_SECTIONSFOUND="Найдена секция"
COM_QUANTUMMANAGER_METAINFO_SHOW="Просмотреть все метаданные"
COM_QUANTUMMANAGER_METAINFO_HIDE="Скрыть метаданные"
COM_QUANTUMMANAGER_METAINFO_SELECT_COUNT="Выделенных файлов"
COM_QUANTUMMANAGER_METAINFO_SELECT_OBJECT_COUNT="Выделенных объектов"
COM_QUANTUMMANAGER_METAINFO_SELECT_SIZE="Размер файлов"
; Quantum Unsplash
COM_QUANTUMMANAGER_QUANTUMUNSPLASH_BUTTON="Unsplash"
COM_QUANTUMMANAGER_QUANTUMUNSPLASH_LICENSE="Изображения распространяются по <a href='https://unsplash.com/license' target='_blank'>лицензии Unsplash</a>."
; Quantum Pixabay
COM_QUANTUMMANAGER_QUANTUMPIXABAY_BUTTON="Pixabay"
COM_QUANTUMMANAGER_QUANTUMPIXABAY_LICENSE="Изображения распространяются по <a href='https://pixabay.com/ru/service/license/' target='_blank'>лицензии Pixabay</a>."
COM_QUANTUMMANAGER_QUANTUMPIXABAY_FILTERS_IMAGE_TYPE="Тип"
COM_QUANTUMMANAGER_QUANTUMPIXABAY_FILTERS_IMAGE_TYPE_PHOTO="Фотографии"
COM_QUANTUMMANAGER_QUANTUMPIXABAY_FILTERS_IMAGE_TYPE_ILLUSTRATION="Иллюстрации"
COM_QUANTUMMANAGER_QUANTUMPIXABAY_FILTERS_IMAGE_TYPE_VECTOR="Вектор"
COM_QUANTUMMANAGER_QUANTUMPIXABAY_FILTERS_COLORS="Цвет"
COM_QUANTUMMANAGER_QUANTUMPIXABAY_FILTERS_ORIENTATION="Ориентация"
COM_QUANTUMMANAGER_QUANTUMPIXABAY_FILTERS_ORIENTATION_HORIZONTAL="Горизонтальные"
COM_QUANTUMMANAGER_QUANTUMPIXABAY_FILTERS_ORIENTATION_VERTICAL="Вертикальные"
COM_QUANTUMMANAGER_QUANTUMPIXABAY_FILTERS_SIZE="Скачиваемый размер"
COM_QUANTUMMANAGER_QUANTUMPIXABAY_FILTERS_SIZE_SMALL="Маленький (640×400px)"
COM_QUANTUMMANAGER_QUANTUMPIXABAY_FILTERS_SIZE_MEDIUM="Средний (1280×800px)"
COM_QUANTUMMANAGER_QUANTUMPIXABAY_FILTERS_SIZE_LARGE="Большой (1920×1200px)"
COM_QUANTUMMANAGER_QUANTUMPIXABAY_FILTERS_SIZE_ORIGINAL="Оригинал"
; Quantum Pexels
COM_QUANTUMMANAGER_QUANTUMPEXELS_BUTTON="Pexels"
COM_QUANTUMMANAGER_QUANTUMPEXELS_LICENSE="Изображения распространяются по <a href='https://pexels.com/license' target='_blank'>лицензии Pexels</a>."
COM_QUANTUMMANAGER_QUANTUMPEXELS_FILTERS_LOCAL="Локаль"
COM_QUANTUMMANAGER_QUANTUMPEXELS_FILTERS_SIZE="Скачиваемый размер"
COM_QUANTUMMANAGER_QUANTUMPEXELS_FILTERS_SIZE_TINY="Превью (280×200px)"
COM_QUANTUMMANAGER_QUANTUMPEXELS_FILTERS_SIZE_LANDSCAPE="Альбомная (1200×627px)"
COM_QUANTUMMANAGER_QUANTUMPEXELS_FILTERS_SIZE_PORTRAIT="Портрет (800×1200px)"
COM_QUANTUMMANAGER_QUANTUMPEXELS_FILTERS_SIZE_SMALL="Маленький (адаптируется×130px)"
COM_QUANTUMMANAGER_QUANTUMPEXELS_FILTERS_SIZE_MEDIUM="Средний (адаптируется×350px)"
COM_QUANTUMMANAGER_QUANTUMPEXELS_FILTERS_SIZE_LARGE="Большой (940×650px)"
COM_QUANTUMMANAGER_QUANTUMPEXELS_FILTERS_SIZE_LARGE2X="Очень большой (1880×1300px)"
COM_QUANTUMMANAGER_QUANTUMPEXELS_FILTERS_SIZE_OPTIMAL="Оптимальный (2500px×адаптируется)"
COM_QUANTUMMANAGER_QUANTUMPEXELS_FILTERS_SIZE_ORIGINAL="Оригинал"
; JED Review
COM_QUANTUMMANAGER_JEDREIVIEW="Если вам нравится Quantum - пожалуйста, поддержите проект, оставив отзыв на JED."
COM_QUANTUMMANAGER_JEDREIVIEW_REIVEW="Написать отзыв"
; Help
COM_QUANTUMMANAGER_HELP="Помощь"
COM_QUANTUMMANAGER_HELP_TEXT="- файловый и медиа менеджер, который делает вашу работу с Joomla удобнее."
COM_QUANTUMMANAGER_HELP_COPYRIGHT="Copyright © 2020 <a href="https://delo-design.ru" target="_blank">Деловой Дизайн</a> & <a href="https://www.norrnext.com/" target="_blank">NorrNext</a>"
COM_QUANTUMMANAGER_HELP_LOVE="Сделано с"
COM_QUANTUMMANAGER_HELP_COPYRIGHT_IMAGES="Действия, Файловые типы: Е. Беляков | <a href="https://www.flaticon.com/authors/google" target="_blank">Material Design Icon Pack</a> (<a href="https://creativecommons.org/licenses/by/3.0/" target="_blank">CC 3.0 BY</a>)"
COM_QUANTUMMANAGER_HELP_BUTTON_PRODUCT_PAGE="Страница продукта"
COM_QUANTUMMANAGER_HELP_BUTTON_DOCUMENTATION="Документация"
COM_QUANTUMMANAGER_HELP_BUTTON_LOCALIZATIONS="Локализация"
COM_QUANTUMMANAGER_HELP_BUTTON_SUPPORT="Поддержка"
COM_QUANTUMMANAGER_HELP_BUTTON_REVIEW="Отзыв на JED"
; Menus
COM_QUANTUMMANAGER_MENUS_FILES="Файлы"

View File

@@ -0,0 +1,15 @@
; @package quantummanager
; @author Dmitry Tsymbal <cymbal@delo-design.ru>
; @copyright Copyright © 2019 Delo Design & NorrNext. All rights reserved.
; @license GNU General Public License version 3 or later; see license.txt
; @link https://www.norrnext.com
COM_QUANTUMMANAGER="Quantum Manager"
COM_QUANTUMMANAGER_XML_DESCRIPTION="Файловый менеджер для Joomla!"
COM_QUANTUMMANAGER_ERROR_COMPATIBLE_PHP="Необходимая версия PHP %s"
COM_QUANTUMMANAGER_ERROR_WRONG_JOOMLA="Необходимая версия Joomla! %s"
COM_QUANTUMMANAGER_ERROR_EXTENSIONS="Необходимые библиотеки PHP: <b>%s</b> <br />Пожалуйста, обратитесь к Вашему хостинг провайдеру для активации библиотеки."
; Menus
COM_QUANTUMMANAGER_MENU="Страница с файловым менеджером"
COM_QUANTUMMANAGER_MENU_DESC="На странице будет выгружен полный интерфейс файлового менеджера. Компонент не проходил испытания безопасности на фронте. Используйте данный режим на свой страх и риск!"

View File

@@ -0,0 +1,22 @@
<?php
/**
* @package quantummanager
* @author Dmitry Tsymbal <cymbal@delo-design.ru>
* @copyright Copyright © 2019 Delo Design & NorrNext. All rights reserved.
* @license GNU General Public License version 3 or later; see license.txt
* @link https://www.norrnext.com
*/
defined('_JEXEC') or die;
extract($displayData);
?>
<div class="quantummanager-module quantumcodemirror-module" data-type="Quantumcodemirror" data-options="">
<div class="toolbar">
<div>
<button class="qm-btn qm-btn-save">Сохранить</button>
<button class="qm-btn qm-btn-close">Отменить</button>
</div>
</div>
<div class="editor"></div>
</div>

View File

@@ -0,0 +1,223 @@
<?php
/**
* @package quantummanager
* @author Dmitry Tsymbal <cymbal@delo-design.ru>
* @copyright Copyright © 2019 Delo Design & NorrNext. All rights reserved.
* @license GNU General Public License version 3 or later; see license.txt
* @link https://www.norrnext.com
*/
defined('_JEXEC') or die;
use Joomla\CMS\Language\Text;
extract($displayData);
$presets = $paramsComponents->get('custompresetscrop');
?>
<div class="quantummanager-module quantumcropperjs-module" data-type="Quantumcropperjs" data-options="driver:<?php echo $driver ?>;defaults:<?php echo str_replace(':', '&split', htmlspecialchars(json_encode($values_default), ENT_QUOTES)) ?>">
<input type="hidden" name="driver" value="<?php echo $driver ?>">
<div class="cropper-save">
<div class="loader"><?php echo Text::_('COM_QUANTUMMANAGER_ACTION_SAVEAREA'); ?><span></span><span></span><span></span><span></span></div>
</div>
<div class="toolbar">
<div class="fields-list">
<div class="qm-input-group qm-name-file-wrap" data-type="input-select">
<label><?php echo Text::_('COM_QUANTUMMANAGER_FIELD_LABEL_FILE'); ?></label>
<div class="qm-width-1-1 qm-flex qm-flex-nowrap">
<div class="qm-input-wrapper">
<input type="text" placeholder="" class="qm-input quantumcropperjs-name-file" name="name">
<span class="bottom"></span>
<span class="right"></span>
<span class="top"></span>
<span class="left"></span>
</div>
<select class="qm-select quantumcropperjs-name-exs" name="exs">
<option value="jpg">jpg</option>
<option value="jpeg">jpeg</option>
<option value="png">png</option>
<option value="webp">webp</option>
</select>
</div>
</div>
<div class="qm-input-group change-ratio-wrap" data-type="select">
<label><?php echo Text::_('COM_QUANTUMMANAGER_FIELD_LABEL_RATIO'); ?></label>
<label>
<select class="qm-select change-ratio" name="change-ratio">
<option value="NaN" selected="selected"><?php echo Text::_('COM_QUANTUMMANAGER_TOOLTIP_FREE'); ?></option>
<?php if(!empty($presets)) : ?>
<?php foreach ($presets as $preset) : ?>
<option value="<?php echo $preset->ratio ?>"><?php echo $preset->label ?></option>
<?php endforeach; ?>
<?php endif; ?>
<option value="1">1:1</option>
<option value="1.7">16:9</option>
<option value="2">18:9</option>
<option value="1.3">4:3</option>
<option value="0.6">2:3</option>
</select>
</label>
</div>
<div class="qm-input-group qm-input-width-height-wrap" data-type="between">
<label><?php echo Text::_('COM_QUANTUMMANAGER_FIELD_LABEL_IMAGE'); ?></label>
<div>
<label><?php echo Text::_('COM_QUANTUMMANAGER_FIELD_LABEL_WIDTH'); ?> (px)</label>
<div>
<label>
<div class="qm-input-wrapper">
<input type="text" class="qm-input qm-image-width-value">
<span class="bottom"></span>
<span class="right"></span>
<span class="top"></span>
<span class="left"></span>
</div>
</label>
</div>
</div>
<div>
<label><?php echo Text::_('COM_QUANTUMMANAGER_FIELD_LABEL_HEIGHT'); ?> (px)</label>
<div>
<label>
<div class="qm-input-wrapper">
<input type="text" class="qm-input qm-image-height-value">
<span class="bottom"></span>
<span class="right"></span>
<span class="top"></span>
<span class="left"></span>
</div>
</label>
</div>
</div>
<label class="qm-image-width-height-ratio-checkbox"><input type="checkbox" class="qm-checkbox qm-image-width-height-ratio" checked="checked"> <?php echo Text::_('COM_QUANTUMMANAGER_FIELD_LABEL_SAVE_RATIO'); ?></label>
</div>
<div class="qm-input-group qm-input-range-wrap" data-type="range" data-depend="exs:jpg,jpeg">
<label><?php echo Text::_('COM_QUANTUMMANAGER_FIELD_LABEL_COMPRESSION'); ?></label>
<div>
<input type="range" name="range-compression" min="1" max="100" step="1" value="80">
<div class="input-wrapper">
<input type="number" class="qm-input" name="compression" value="90" data-input-send>
<span class="bottom"></span>
<span class="right"></span>
<span class="top"></span>
<span class="left"></span>
</div>
</div>
</div>
<div class="qm-input-group qm-input-range-wrap" data-type="range" data-depend="exs:jpg,jpeg">
<label><?php echo Text::_('COM_QUANTUMMANAGER_FIELD_LABEL_SHARPEN'); ?></label>
<div>
<input type="range" class="qm-range" name="range-sharpen" min="0" max="100" step="1" value="0">
<div class="input-wrapper">
<input type="number" class="qm-input" name="sharpen" value="0" data-input-send>
<span class="bottom"></span>
<span class="right"></span>
<span class="top"></span>
<span class="left"></span>
</div>
</div>
</div>
<div class="qm-input-group qm-input-range-wrap" data-type="range" data-depend="exs:jpg,jpeg,png">
<label><?php echo Text::_('COM_QUANTUMMANAGER_FIELD_LABEL_BRIGHTNESS'); ?></label>
<div>
<input type="range" class="qm-range" name="range-brightness" min="-100" max="100" step="1" value="0">
<div class="input-wrapper">
<input type="number" class="qm-input" name="brightness" value="0" data-input-send>
<span class="bottom"></span>
<span class="right"></span>
<span class="top"></span>
<span class="left"></span>
</div>
</div>
</div>
<div class="qm-input-group qm-input-range-wrap" data-type="range" data-depend="exs:jpg,jpeg,png;driver:imagick">
<label><?php echo Text::_('COM_QUANTUMMANAGER_FIELD_LABEL_BLUR'); ?></label>
<div>
<input type="range" class="qm-range" name="range-blur" min="0" max="100" step="1" value="0">
<div class="input-wrapper">
<input type="number" class="qm-input" name="blur" value="0" data-input-send>
<span class="bottom"></span>
<span class="right"></span>
<span class="top"></span>
<span class="left"></span>
</div>
</div>
</div>
</div>
<div class="qm-button-wrap">
<button class="qm-btn qm-btn-close">
<span><?php echo Text::_('COM_QUANTUMMANAGER_ACTION_CANCEL'); ?></span>
</button>
<button class="qm-btn qm-btn-save qm-btn-primary">
<span><?php echo Text::_('COM_QUANTUMMANAGER_ACTION_SAVE'); ?></span>
</button>
</div>
<div class="qm-input-width-height-wrap qm-input-width-height-wrap-rows qm-input-width-height-wrap-bottom">
<label><?php echo Text::_('COM_QUANTUMMANAGER_FIELD_LABEL_CROP'); ?></label>
<div>
<label><?php echo Text::_('COM_QUANTUMMANAGER_FIELD_LABEL_WIDTH'); ?>:</label>
<div>
<label>
<!--<input type="number" class="crop-width-value" disabled>-->
<span class="qm-crop-width-value"></span>
<span>PX</span>
</label>
</div>
</div>
<div>
<label><?php echo Text::_('COM_QUANTUMMANAGER_FIELD_LABEL_HEIGHT'); ?>:</label>
<div>
<label>
<!--<input type="number" class="crop-height-value" disabled>-->
<span class="qm-crop-height-value"></span>
<span>PX</span>
</label>
</div>
</div>
</div>
</div>
<div class="editor">
<div class="cropperjs"></div>
<div class="toolbar-footer">
<div class="buttons-methods">
<div class="qm-btn-group">
<button type="button" class="qm-btn quantummanager-tooltip" data-method="rotate" data-option="-90" data-tooltip="<?php echo Text::_('COM_QUANTUMMANAGER_TOOLTIP_ROTATE_LEFT'); ?>">
<span class="docs-tooltip" data-toggle="tooltip" title="" data-original-title="cropper.rotate(-90)">
<span class="quantummanager-icon quantummanager-icon-rotate-left"></span>
</span>
</button>
<button type="button" class="qm-btn quantummanager-tooltip" data-method="rotate" data-option="90" data-tooltip="<?php echo Text::_('COM_QUANTUMMANAGER_TOOLTIP_ROTATE_RIGHT'); ?>">
<span class="docs-tooltip" data-toggle="tooltip" title="" data-original-title="cropper.rotate(90)">
<span class="quantummanager-icon quantummanager-icon-rotate-right"></span>
</span>
</button>
</div>
<div class="qm-btn-group">
<button type="button" class="qm-btn quantummanager-tooltip" data-method="scaleX" data-option="-1" data-tooltip="<?php echo Text::_('COM_QUANTUMMANAGER_TOOLTIP_FLIP_VERTICAL'); ?>">
<span class="docs-tooltip" data-toggle="tooltip" title="" data-original-title="cropper.scaleX(-1)">
<span class="quantummanager-icon quantummanager-icon-flip-horizontal"></span>
</span>
</button>
<button type="button" class="qm-btn quantummanager-tooltip" data-method="scaleY" data-option="-1" data-tooltip="<?php echo Text::_('COM_QUANTUMMANAGER_TOOLTIP_FLIP_HORIZONTAL'); ?>">
<span class="docs-tooltip" data-toggle="tooltip" title="" data-original-title="cropper.scaleY(-1)">
<span class="quantummanager-icon quantummanager-icon-flip-vertical"></span>
</span>
</button>
</div>
</div>
</div>
</div>
</div>

View File

@@ -0,0 +1,134 @@
<?php
/**
* @package quantummanager
* @author Dmitry Tsymbal <cymbal@delo-design.ru>
* @copyright Copyright © 2019 Delo Design & NorrNext. All rights reserved.
* @license GNU General Public License version 3 or later; see license.txt
* @link https://www.norrnext.com
*/
defined('_JEXEC') or die;
use Joomla\CMS\Language\Text;
extract($displayData);
?>
<div class="quantummanager-module quantumpexels-module" data-type="Quantumpexels" data-options="">
<div class="quantumpexels-save">
<div class="loader"><?php echo Text::_('COM_QUANTUMMANAGER_ACTION_SAVEAREA'); ?><span></span><span></span><span></span><span></span></div>
</div>
<div class="quantumpexels-module-container">
<div class="quantumpexels-module-header">
<div>
<label>
<input name="q" type="text" placeholder="<?php echo Text::_('COM_QUANTUMMANAGER_FIELD_LABEL_SEARCH'); ?>">
</label>
</div>
<div class="header-filters">
<div class="fields">
<?php
$locals = [
'en-US',
'pt-BR',
'es-ES',
'ca-ES',
'de-DE',
'it-IT',
'fr-FR',
'sv-SE',
'id-ID',
'pl-PL',
'ja-JP',
'zh-TW',
'zh-CN',
'ko-KR',
'th-TH',
'nl-NL',
'hu-HU',
'vi-VN',
'cs-CZ',
'da-DK',
'fi-FI',
'uk-UA',
'el-GR',
'ro-RO',
'nb-NO',
'sk-SK',
'tr-TR',
'ru-RU'
];
$lang = \Joomla\CMS\Factory::getLanguage();
$current_locale = 'en-US';
if(in_array($lang->getTag(), $locals))
{
$current_locale = $lang->getTag();
}
?>
<div class="quantummanager-dropdown filter-field" data-name="locale" data-value="<?php echo $current_locale ?>">
<div class="quantummanager-dropdown-title"><?php echo Text::_('COM_QUANTUMMANAGER_QUANTUMPEXELS_FILTERS_LOCAL') ?></div>
<div class="quantummanager-dropdown-content">
<ul>
<?php foreach ($locals as $local) : ?>
<li data-value="<?php echo $local ?>"><?php echo $local ?></li>
<?php endforeach; ?>
</ul>
</div>
</div>
<div class="quantummanager-dropdown filter-field" data-name="size" data-value="optimal" data-disabled>
<div class="quantummanager-dropdown-title"><?php echo Text::_('COM_QUANTUMMANAGER_QUANTUMPEXELS_FILTERS_SIZE') ?></div>
<div class="quantummanager-dropdown-content">
<ul>
<li data-value="tiny"><?php echo Text::_('COM_QUANTUMMANAGER_QUANTUMPEXELS_FILTERS_SIZE_TINY') ?></li>
<li data-value="landscape"><?php echo Text::_('COM_QUANTUMMANAGER_QUANTUMPEXELS_FILTERS_SIZE_LANDSCAPE') ?></li>
<li data-value="portrait"><?php echo Text::_('COM_QUANTUMMANAGER_QUANTUMPEXELS_FILTERS_SIZE_PORTRAIT') ?></li>
<li data-value="small"><?php echo Text::_('COM_QUANTUMMANAGER_QUANTUMPEXELS_FILTERS_SIZE_SMALL') ?></li>
<li data-value="medium"><?php echo Text::_('COM_QUANTUMMANAGER_QUANTUMPEXELS_FILTERS_SIZE_MEDIUM') ?></li>
<li data-value="large"><?php echo Text::_('COM_QUANTUMMANAGER_QUANTUMPEXELS_FILTERS_SIZE_LARGE') ?></li>
<li data-value="large2x"><?php echo Text::_('COM_QUANTUMMANAGER_QUANTUMPEXELS_FILTERS_SIZE_LARGE2X') ?></li>
<li data-value="optimal"><?php echo Text::_('COM_QUANTUMMANAGER_QUANTUMPEXELS_FILTERS_SIZE_OPTIMAL') ?></li>
<li data-value="original"><?php echo Text::_('COM_QUANTUMMANAGER_QUANTUMPEXELS_FILTERS_SIZE_ORIGINAL') ?></li>
</ul>
</div>
</div>
</div>
<div class="source">
<span><?php echo Text::_('COM_QUANTUMMANAGER_QUANTUMPEXELS_LICENSE') ?></span> <a href="https://pexels.com" target="_blank"><span class="quantummanager-icon quantummanager-icon-pexels"></span></a>
</div>
</div>
</div>
<div class="quantumpexels-module-container-search-wrap">
<div class="quantumpexels-module-container-search">
<div class="quantumpexels-module-search grid"></div>
<div class="quantumpexels-module-load-page">
<button class="qm-btn"><?php echo Text::_('COM_QUANTUMMANAGER_ACTION_LOAD'); ?></button>
</div>
</div>
</div>
<button class="quantumpexels-module-close qm-btn"><span class="quantummanager-icon quantummanager-icon-close"></span> <?php echo Text::_('COM_QUANTUMMANAGER_WINDOW_CLOSE'); ?></button>
</div>
</div>
<?php
$langs = json_encode([
'notFound' => htmlspecialchars(Text::_('COM_QUANTUMMANAGER_ALERT_NOTFOUND'), ENT_QUOTES),
'button' => htmlspecialchars(Text::_('COM_QUANTUMMANAGER_QUANTUMPEXELS_BUTTON'), ENT_QUOTES),
'buttonLoad' => htmlspecialchars(Text::_('COM_QUANTUMMANAGER_ACTION_LOAD'), ENT_QUOTES),
'save' => htmlspecialchars(Text::_('COM_QUANTUMMANAGER_ACTION_SAVE'), ENT_QUOTES),
'close' => htmlspecialchars(Text::_('COM_QUANTUMMANAGER_WINDOW_CLOSE'), ENT_QUOTES),
'search' => htmlspecialchars(Text::_('COM_QUANTUMMANAGER_FIELD_LABEL_SEARCH'), ENT_QUOTES),
'photostock' => htmlspecialchars(Text::_('COM_QUANTUMMANAGER_ACTION_PHOTOSTOCKS'), ENT_QUOTES),
'searchHelper' => htmlspecialchars(Text::_('COM_QUANTUMMANAGER_FIELD_LABEL_SEARCH_HELPER'), ENT_QUOTES),
]);
QuantummanagerHelper::scriptInsertOnPage('quantumPexels', <<<EOF
window.QuantumpexelsLang = {$langs};
EOF
);

View File

@@ -0,0 +1,121 @@
<?php
/**
* @package quantummanager
* @author Dmitry Tsymbal <cymbal@delo-design.ru>
* @copyright Copyright © 2019 Delo Design & NorrNext. All rights reserved.
* @license GNU General Public License version 3 or later; see license.txt
* @link https://www.norrnext.com
*/
defined('_JEXEC') or die;
use Joomla\CMS\Language\Text;
extract($displayData);
?>
<div class="quantummanager-module quantumpixabay-module" data-type="Quantumpixabay" data-options="">
<div class="quantumpixabay-save">
<div class="loader"><?php echo Text::_('COM_QUANTUMMANAGER_ACTION_SAVEAREA'); ?><span></span><span></span><span></span><span></span></div>
</div>
<div class="quantumpixabay-module-container">
<div class="quantumpixabay-module-header">
<div>
<label>
<input name="q" type="text" placeholder="<?php echo Text::_('COM_QUANTUMMANAGER_FIELD_LABEL_SEARCH'); ?>">
</label>
</div>
<div class="header-filters">
<div class="fields">
<div class="quantummanager-dropdown filter-field" data-name="image_type" data-value="all">
<div class="quantummanager-dropdown-title"><?php echo Text::_('COM_QUANTUMMANAGER_QUANTUMPIXABAY_FILTERS_IMAGE_TYPE') ?></div>
<div class="quantummanager-dropdown-content">
<ul>
<li data-value="all"><?php echo Text::_('COM_QUANTUMMANAGER_ACTION_ALL') ?></li>
<li data-value="photo"><?php echo Text::_('COM_QUANTUMMANAGER_QUANTUMPIXABAY_FILTERS_IMAGE_TYPE_PHOTO') ?></li>
<li data-value="illustration"><?php echo Text::_('COM_QUANTUMMANAGER_QUANTUMPIXABAY_FILTERS_IMAGE_TYPE_ILLUSTRATION') ?></li>
<li data-value="vector"><?php echo Text::_('COM_QUANTUMMANAGER_QUANTUMPIXABAY_FILTERS_IMAGE_TYPE_VECTOR') ?></li>
</ul>
</div>
</div>
<div class="quantummanager-dropdown filter-field" data-name="colors" data-value="">
<div class="quantummanager-dropdown-title"><?php echo Text::_('COM_QUANTUMMANAGER_QUANTUMPIXABAY_FILTERS_COLORS') ?></div>
<div class="quantummanager-dropdown-content">
<ul>
<li class="color-all" data-value=""><span class="color-all"></span></li>
<li class="color-grayscale" data-value="grayscale" style="background-color: #808080"><span style="background: #808080"></span></li>
<li class="color-transparent" data-value="transparent" style="border: solid 1px #000"><span style="border: solid 1px #000"></span></li>
<li class="color-red" data-value="red" style="background: red"><span style="background: red"></span></li>
<li class="color-orange" data-value="orange" style="background: orange"><span style="background: orange"></span></li>
<li class="color-yellow" data-value="yellow" style="background: yellow"><span style="background: yellow"></span></li>
<li class="color-green" data-value="green" style="background: green"><span style="background: green"></span></li>
<li class="color-turquoise" data-value="turquoise" style="background: turquoise"><span style="background: turquoise"></span></li>
<li class="color-blue" data-value="blue" style="background: blue"><span style="background: blue"></span></li>
<li class="color-lilac" data-value="lilac" style="background: #c8a2c8"><span style="background: #c8a2c8"></span></li>
<li class="color-pink" data-value="pink" style="background: pink"><span style="background: pink"></span></li>
<li class="color-white" data-value="white" style="background: white"><span style="background: white"></span></li>
<li class="color-gray" data-value="gray" style="background: gray"><span style="background: gray"></span></li>
<li class="color-black" data-value="black" style="background: black"><span style="background: black"></span></li>
<li class="color-brown" data-value="brown" style="background: brown"><span style="background: brown"></span></li>
</ul>
</div>
</div>
<div class="quantummanager-dropdown filter-field" data-name="orientation" data-value="all">
<div class="quantummanager-dropdown-title"><?php echo Text::_('COM_QUANTUMMANAGER_QUANTUMPIXABAY_FILTERS_ORIENTATION') ?></div>
<div class="quantummanager-dropdown-content">
<ul>
<li data-value="all"><?php echo Text::_('COM_QUANTUMMANAGER_ACTION_ALL') ?></li>
<li data-value="horizontal"><?php echo Text::_('COM_QUANTUMMANAGER_QUANTUMPIXABAY_FILTERS_ORIENTATION_HORIZONTAL') ?></li>
<li data-value="vertical"><?php echo Text::_('COM_QUANTUMMANAGER_QUANTUMPIXABAY_FILTERS_ORIENTATION_VERTICAL') ?></li>
</ul>
</div>
</div>
<div class="quantummanager-dropdown filter-field" data-name="size" data-value="original" data-disabled>
<div class="quantummanager-dropdown-title"><?php echo Text::_('COM_QUANTUMMANAGER_QUANTUMPIXABAY_FILTERS_SIZE') ?></div>
<div class="quantummanager-dropdown-content">
<ul>
<li data-value="small"><?php echo Text::_('COM_QUANTUMMANAGER_QUANTUMPIXABAY_FILTERS_SIZE_SMALL') ?></li>
<li data-value="medium"><?php echo Text::_('COM_QUANTUMMANAGER_QUANTUMPIXABAY_FILTERS_SIZE_MEDIUM') ?></li>
<li data-value="large"><?php echo Text::_('COM_QUANTUMMANAGER_QUANTUMPIXABAY_FILTERS_SIZE_LARGE') ?></li>
<li data-value="original"><?php echo Text::_('COM_QUANTUMMANAGER_QUANTUMPIXABAY_FILTERS_SIZE_ORIGINAL') ?></li>
</ul>
</div>
</div>
</div>
<div class="source">
<span><?php echo Text::_('COM_QUANTUMMANAGER_QUANTUMPIXABAY_LICENSE') ?></span> <a href="https://pixabay.com" target="_blank"><span class="quantummanager-icon quantummanager-icon-pixabay"></span></a>
</div>
</div>
</div>
<div class="quantumpixabay-module-container-search-wrap">
<div class="quantumpixabay-module-container-search">
<div class="quantumpixabay-module-search grid"></div>
<div class="quantumpixabay-module-load-page">
<button class="qm-btn"><?php echo Text::_('COM_QUANTUMMANAGER_ACTION_LOAD'); ?></button>
</div>
</div>
</div>
<button class="quantumpixabay-module-close qm-btn"><span class="quantummanager-icon quantummanager-icon-close"></span> <?php echo Text::_('COM_QUANTUMMANAGER_WINDOW_CLOSE'); ?></button>
</div>
</div>
<?php
$langs = json_encode([
'notFound' => htmlspecialchars(Text::_('COM_QUANTUMMANAGER_ALERT_NOTFOUND'), ENT_QUOTES),
'button' => htmlspecialchars(Text::_('COM_QUANTUMMANAGER_QUANTUMPIXABAY_BUTTON'), ENT_QUOTES),
'buttonLoad' => htmlspecialchars(Text::_('COM_QUANTUMMANAGER_ACTION_LOAD'), ENT_QUOTES),
'save' => htmlspecialchars(Text::_('COM_QUANTUMMANAGER_ACTION_SAVE'), ENT_QUOTES),
'close' => htmlspecialchars(Text::_('COM_QUANTUMMANAGER_WINDOW_CLOSE'), ENT_QUOTES),
'search' => htmlspecialchars(Text::_('COM_QUANTUMMANAGER_FIELD_LABEL_SEARCH'), ENT_QUOTES),
'photostock' => htmlspecialchars(Text::_('COM_QUANTUMMANAGER_ACTION_PHOTOSTOCKS'), ENT_QUOTES),
'searchHelper' => htmlspecialchars(Text::_('COM_QUANTUMMANAGER_FIELD_LABEL_SEARCH_HELPER'), ENT_QUOTES),
]);
QuantummanagerHelper::scriptInsertOnPage('quantumPixabay', <<<EOF
window.QuantumpixabayLang = {$langs};
EOF
);

View File

@@ -0,0 +1,45 @@
<?php
/**
* @package quantummanager
* @author Dmitry Tsymbal <cymbal@delo-design.ru>
* @copyright Copyright © 2019 Delo Design & NorrNext. All rights reserved.
* @license GNU General Public License version 3 or later; see license.txt
* @link https://www.norrnext.com
*/
use Joomla\CMS\Language\Text;
defined('_JEXEC') or die;
extract($displayData);
$buttons = $displayData['buttons'];
$buttonsBun = $displayData['buttonsBun'];
$cssClass = $displayData['cssClass'];
if(!is_array($buttons))
{
$buttons = [];
}
if(!is_array($buttonsBun))
{
$buttonsBun = [];
}
?>
<div class="quantummanager-module quantummanager-backgrounds-muted quantumtoolbar-module <?php echo $cssClass ?>" data-type="Quantumtoolbar" data-options="buttons:<?php echo implode(',', $buttons) ?>;buttonsBun:<?php echo implode(',', $buttonsBun) ?>;">
<div class="left"></div>
<div class="center"></div>
<div class="right"></div>
</div>
<?php
$langs = json_encode([
'buttonOptions' => htmlspecialchars(Text::_('COM_QUANTUMMANAGER_ACTION_OPTIONS'), ENT_QUOTES),
]);
QuantummanagerHelper::scriptInsertOnPage('quantumToolbar', <<<EOF
window.QuantumtoolbarLang = $langs;
EOF
);

View File

@@ -0,0 +1,32 @@
<?php
/**
* @package quantummanager
* @author Dmitry Tsymbal <cymbal@delo-design.ru>
* @copyright Copyright © 2019 Delo Design & NorrNext. All rights reserved.
* @license GNU General Public License version 3 or later; see license.txt
* @link https://www.norrnext.com
*/
defined('_JEXEC') or die;
use Joomla\CMS\Language\Text;
extract($displayData);
$cssClass = $displayData['cssClass'];
?>
<div class="quantummanager-module quantummanager-backgrounds-muted quantumtreecatalogs-module <?php echo $cssClass ?>" data-type="Quantumtreecatalogs" data-options="directory:<?php echo $displayData['directory'] ?>">
<div class="tree-scroll"></div>
</div>
<?php
$langs = json_encode([
'fileName' => htmlspecialchars(Text::_('COM_QUANTUMMANAGER_ALERT_FILE_NAME'), ENT_QUOTES),
'directoryName' => htmlspecialchars(Text::_('COM_QUANTUMMANAGER_ALERT_DIRECTORY_NAME'), ENT_QUOTES),
'confirmDelete' => htmlspecialchars(Text::_('COM_QUANTUMMANAGER_ALERT_CONFIRM_DELETE'), ENT_QUOTES),
]);
QuantummanagerHelper::scriptInsertOnPage('quantumTreecatalogs', <<<EOF
window.QuantumtreecatalogsLang = {$langs};
EOF
);

View File

@@ -0,0 +1,66 @@
<?php
/**
* @package quantummanager
* @author Dmitry Tsymbal <cymbal@delo-design.ru>
* @copyright Copyright © 2019 Delo Design & NorrNext. All rights reserved.
* @license GNU General Public License version 3 or later; see license.txt
* @link https://www.norrnext.com
*/
defined('_JEXEC') or die;
use Joomla\CMS\Language\Text;
extract($displayData);
?>
<div class="quantummanager-module quantumunsplash-module" data-type="Quantumunsplash" data-options="">
<div class="quantumunsplash-save">
<div class="loader"><?php echo Text::_('COM_QUANTUMMANAGER_ACTION_SAVEAREA'); ?><span></span><span></span><span></span><span></span></div>
</div>
<div class="quantumunsplash-module-container">
<div class="quantumunsplash-module-header">
<div>
<label>
<input name="q" type="text" placeholder="<?php echo Text::_('COM_QUANTUMMANAGER_FIELD_LABEL_SEARCH'); ?>">
</label>
</div>
<div class="header-filters">
<div class="fields"></div>
<div class="source">
<span><?php echo Text::_('COM_QUANTUMMANAGER_QUANTUMUNSPLASH_LICENSE') ?></span> <a href="https://unsplash.com" target="_blank"><span class="quantummanager-icon quantummanager-icon-unsplash"></span></a>
</div>
</div>
</div>
<div class="quantumunsplash-module-container-search-wrap">
<div class="quantumunsplash-module-container-search">
<div class="quantumunsplash-module-search grid"></div>
<div class="quantumunsplash-module-load-page">
<button class="qm-btn"><?php echo Text::_('COM_QUANTUMMANAGER_ACTION_LOAD'); ?></button>
</div>
</div>
</div>
<button class="quantumunsplash-module-close qm-btn"><span class="quantummanager-icon quantummanager-icon-close"></span> <?php echo Text::_('COM_QUANTUMMANAGER_WINDOW_CLOSE'); ?></button>
</div>
</div>
<?php
$langs = json_encode([
'notFound' => htmlspecialchars(Text::_('COM_QUANTUMMANAGER_ALERT_NOTFOUND'), ENT_QUOTES),
'button' => htmlspecialchars(Text::_('COM_QUANTUMMANAGER_QUANTUMUNSPLASH_BUTTON'), ENT_QUOTES),
'buttonLoad' => htmlspecialchars(Text::_('COM_QUANTUMMANAGER_ACTION_LOAD'), ENT_QUOTES),
'save' => htmlspecialchars(Text::_('COM_QUANTUMMANAGER_ACTION_SAVE'), ENT_QUOTES),
'close' => htmlspecialchars(Text::_('COM_QUANTUMMANAGER_WINDOW_CLOSE'), ENT_QUOTES),
'search' => htmlspecialchars(Text::_('COM_QUANTUMMANAGER_FIELD_LABEL_SEARCH'), ENT_QUOTES),
'photostock' => htmlspecialchars(Text::_('COM_QUANTUMMANAGER_ACTION_PHOTOSTOCKS'), ENT_QUOTES),
'searchHelper' => htmlspecialchars(Text::_('COM_QUANTUMMANAGER_FIELD_LABEL_SEARCH_HELPER'), ENT_QUOTES),
]);
QuantummanagerHelper::scriptInsertOnPage('quantumUnsplash', <<<EOF
window.QuantumunsplashLang = {$langs};
EOF
);

View File

@@ -0,0 +1,50 @@
<?php
/**
* @package quantummanager
* @author Dmitry Tsymbal <cymbal@delo-design.ru>
* @copyright Copyright © 2019 Delo Design & NorrNext. All rights reserved.
* @license GNU General Public License version 3 or later; see license.txt
* @link https://www.norrnext.com
*/
defined('_JEXEC') or die;
use Joomla\CMS\Language\Text;
$cssClass = $displayData['cssClass'];
?>
<div class="quantummanager-module quantummanager-backgrounds-muted quantumupload-module <?php echo $cssClass ?> <?php if($displayData['dropAreaHidden'] === '1') : ?> qm-padding-none <?php endif; ?>" data-type="Qantumupload" data-options="maxsize:<?php echo $displayData['maxsize'] ?>;maxsizeServer:<?php echo $displayData['maxsizeServer'] ?>;scope:<?php echo $displayData['scope'] ?>;directory:<?php echo $displayData['directory'] ?>;dropAreaHidden:<?php echo $displayData['dropAreaHidden'] ?>">
<?php $id = mt_rand(11111, 99999); ?>
<div class="drop-area <?php if($displayData['dropAreaHidden'] === '1') : ?> qm-hide <?php endif; ?>">
<div class="form-upload">
<input type="hidden" class="pathElem" name="path">
<span class="quantummanager-icon quantummanager-icon-upload"></span>
<p><?php echo Text::_('COM_QUANTUMMANAGER_QUANTUMUPLOAD_UPLOAD_DROP') ?></p>
<label class="button" for="fileElem-<?= $id ?>"><?php echo Text::_('COM_QUANTUMMANAGER_QUANTUMUPLOAD_UPLOAD_SELECT') ?></label>
<input type="file" id="fileElem-<?= $id ?>" class="fileElem" multiple accept="*">
</div>
</div>
<progress class="progress-bar" max="100" value="0"></progress>
<div class="upload-errors">
<div></div>
<a class="uk-alert-close uk-close uk-icon upload-errors-close"><svg width="14" height="14" viewBox="0 0 14 14" xmlns="http://www.w3.org/2000/svg"><line fill="none" stroke="#000" stroke-width="1.1" x1="1" y1="1" x2="13" y2="13"></line><line fill="none" stroke="#000" stroke-width="1.1" x1="13" y1="1" x2="1" y2="13"></line></svg></a>
</div>
</div>
<?php
$langs = json_encode([
'dragDrop' => htmlspecialchars(Text::_('COM_QUANTUMMANAGER_QUANTUMUPLOAD_DRAG_DROP'), ENT_QUOTES),
'file' => htmlspecialchars(Text::_('COM_QUANTUMMANAGER_QUANTUMUPLOAD_UPLOAD_ERROR_FILE'), ENT_QUOTES),
'megabyte' => htmlspecialchars(Text::_('COM_QUANTUMMANAGER_QUANTUMUPLOAD_UPLOAD_ERROR_MEGABITE'), ENT_QUOTES),
'maxsize' => htmlspecialchars(Text::_('COM_QUANTUMMANAGER_QUANTUMUPLOAD_UPLOAD_ERROR_MAXSIZE'), ENT_QUOTES),
'exs' => htmlspecialchars(Text::_('COM_QUANTUMMANAGER_QUANTUMUPLOAD_UPLOAD_ERROR_EXS'), ENT_QUOTES),
]);
QuantummanagerHelper::scriptInsertOnPage('quantumUpload', <<<EOF
window.QuantumuploadLang = {$langs};
EOF
);

View File

@@ -0,0 +1,154 @@
<?php
/**
* @package quantummanager
* @author Dmitry Tsymbal <cymbal@delo-design.ru>
* @copyright Copyright © 2019 Delo Design & NorrNext. All rights reserved.
* @license GNU General Public License version 3 or later; see license.txt
* @link https://www.norrnext.com
*/
defined('_JEXEC') or die;
use Joomla\CMS\Language\Text;
extract($displayData);
$id = mt_rand(111111, 999999);
$document = \Joomla\CMS\Factory::getDocument();
$options = [
'hash:' . $hash,
'directory:' . $directory,
'onlyfiles:' . $onlyfiles,
'metafile:' . $metafile,
'watermark:' . $watermark,
'help:' . $help,
'previewsfolder:' . $previewsfolder,
'previewsfolderopen:' . $previewsfolderopen,
'folderdblclick:' . $folderdblclick,
];
?>
<div class="quantummanager-module quantumviewfiles-module" data-type="Quantumviewfiles" data-options="<?php echo implode(';', $options)?>">
<div class="quantumviewfiles-module-heading quantummanager-backgrounds-muted ">
<ul class="breadcumbs"></ul>
<div class="filter-search">
<div class="input-wrapper">
<label for="filter-search-<?php echo $id ?>" class="uk-form-icon uk-icon" uk-icon="icon: pencil">
<svg width="20" height="20" viewBox="0 0 20 20" xmlns="http://www.w3.org/2000/svg" data-svg="search"><circle fill="none" stroke="#000" stroke-width="1.1" cx="9" cy="9" r="7"></circle><path fill="none" stroke="#000" stroke-width="1.1" d="M14,14 L18,18 L14,14 Z"></path></svg></label>
<input id="filter-search-<?php echo $id ?>" type="text" name="searchqunatumamanger" placeholder="<?php echo Text::_('COM_QUANTUMMANAGER_FIELD_LABEL_FILTER_NAME'); ?>">
<span class="bottom"></span>
<span class="right"></span>
<span class="top"></span>
<span class="left"></span>
</div>
</div>
</div>
<div class="view-wrap">
<div class="view"></div>
<?php if($displayData['metafile'] === '1') :?>
<div class="meta-file quantummanager-backgrounds-muted" draggable="false">
<div class="meta-file-list"></div>
</div>
<?php endif; ?>
</div>
</div>
<div style="display: none">
<?php echo file_get_contents(JPATH_ROOT . DIRECTORY_SEPARATOR . '/media/com_quantummanager/images/icons/file.svg') ?>
</div>
<?php
$mapFileColors = include implode(DIRECTORY_SEPARATOR, [JPATH_ROOT, 'administrator', 'components', 'com_quantummanager', 'layouts', 'mapfilescolors.php']);
$mapFileColorsReplace = QuantummanagerHelper::getParamsComponentValue('colorsfiles', []);
foreach ($mapFileColorsReplace as $value)
{
$mapFileColors[$value->ext] = [$value->main, $value->fold];
}
?>
<?php
$css = '';
$colorDefault = $mapFileColors['default'];
$css .= 'svg.svg-icon use.main { fill: ' . $colorDefault[0] . ';} ';
$css .= 'svg.svg-icon use.tail { fill: ' . $colorDefault[1] . ';} ';
foreach ($mapFileColors as $exs => $color)
{
$css .= 'svg.svg-icon.'.$exs.' use.main { fill: ' . $color[0] . ';} ';
$css .= 'svg.svg-icon.'.$exs.' use.tail { fill: ' . $color[1] . ';} ';
}
$document->addStyleDeclaration($css);
$previewslist = json_encode($previewslist);
$langs = json_encode([
'ok' => htmlspecialchars(Text::_('COM_QUANTUMMANAGER_WINDOW_OK'), ENT_QUOTES),
'close' => htmlspecialchars(Text::_('COM_QUANTUMMANAGER_WINDOW_CLOSE'), ENT_QUOTES),
'copied' => htmlspecialchars(Text::_('COM_QUANTUMMANAGER_ACTION_COPIED'), ENT_QUOTES),
'cancel' => htmlspecialchars(Text::_('COM_QUANTUMMANAGER_WINDOW_CANCEL'), ENT_QUOTES),
'loading' => htmlspecialchars(Text::_('COM_QUANTUMMANAGER_ACTION_LOADING'), ENT_QUOTES),
'empty' => htmlspecialchars(Text::_('COM_QUANTUMMANAGER_QUANTUMVIEWFILES_EMPTY'), ENT_QUOTES),
'error' => htmlspecialchars(Text::_('COM_QUANTUMMANAGER_QUANTUMVIEWFILES_ERROR'), ENT_QUOTES),
'buttonBack'=> htmlspecialchars(Text::_('COM_QUANTUMMANAGER_ACTION_BACK'), ENT_QUOTES),
'buttonUp' => htmlspecialchars(Text::_('COM_QUANTUMMANAGER_ACTION_UP'), ENT_QUOTES),
'buttonUpload' => htmlspecialchars(Text::_('COM_QUANTUMMANAGER_ACTION_UPLOADING'), ENT_QUOTES),
'buttonCreateDirectory' => htmlspecialchars(Text::_('COM_QUANTUMMANAGER_ACTION_CREATE'), ENT_QUOTES),
'buttonEdit' => htmlspecialchars(Text::_('COM_QUANTUMMANAGER_ACTION_EDIT'), ENT_QUOTES),
'buttonWatermark' => htmlspecialchars(Text::_('COM_QUANTUMMANAGER_ACTION_WATERMARK'), ENT_QUOTES),
'buttonPaste' => htmlspecialchars(Text::_('COM_QUANTUMMANAGER_ACTION_PASTE'), ENT_QUOTES),
'buttonCopy' => htmlspecialchars(Text::_('COM_QUANTUMMANAGER_ACTION_COPY'), ENT_QUOTES),
'buttonSelectAll' => htmlspecialchars(Text::_('COM_QUANTUMMANAGER_ACTION_SELECT_ALL'), ENT_QUOTES),
'buttonCut' => htmlspecialchars(Text::_('COM_QUANTUMMANAGER_ACTION_CUT'), ENT_QUOTES),
'buttonDuplicate' => htmlspecialchars(Text::_('COM_QUANTUMMANAGER_ACTION_DUPLICATE'), ENT_QUOTES),
'buttonDelete' => htmlspecialchars(Text::_('COM_QUANTUMMANAGER_ACTION_DELETE'), ENT_QUOTES),
'buttonSortNone' => htmlspecialchars(Text::_('COM_QUANTUMMANAGER_ACTION_SORT_NONE'), ENT_QUOTES),
'buttonSortName' => htmlspecialchars(Text::_('COM_QUANTUMMANAGER_ACTION_SORT_NAME'), ENT_QUOTES),
'buttonSortSize' => htmlspecialchars(Text::_('COM_QUANTUMMANAGER_ACTION_SORT_SIZE'), ENT_QUOTES),
'buttonSortCreated' => htmlspecialchars(Text::_('COM_QUANTUMMANAGER_ACTION_SORT_CREATED'), ENT_QUOTES),
'buttonSortUpdated' => htmlspecialchars(Text::_('COM_QUANTUMMANAGER_ACTION_SORT_UPDATED'), ENT_QUOTES),
'buttonSortAsc' => htmlspecialchars(Text::_('COM_QUANTUMMANAGER_ACTION_SORT_ASC'), ENT_QUOTES),
'buttonSortDesc' => htmlspecialchars(Text::_('COM_QUANTUMMANAGER_ACTION_SORT_DESC'), ENT_QUOTES),
'buttonTable' => htmlspecialchars(Text::_('COM_QUANTUMMANAGER_ACTION_TABLE'), ENT_QUOTES),
'buttonGrid' => htmlspecialchars(Text::_('COM_QUANTUMMANAGER_ACTION_GRID'), ENT_QUOTES),
'buttonPreviews' => htmlspecialchars(Text::_('COM_QUANTUMMANAGER_ACTION_PREVIEWS'), ENT_QUOTES),
'directoryName' => htmlspecialchars(Text::_('COM_QUANTUMMANAGER_ALERT_DIRECTORY_NAME'), ENT_QUOTES),
'directoryNameRequired' => htmlspecialchars(Text::_('COM_QUANTUMMANAGER_ALERT_DIRECTORY_NAME_REQUIRED'), ENT_QUOTES),
'fileName' => htmlspecialchars(Text::_('COM_QUANTUMMANAGER_ALERT_FILE_NAME'), ENT_QUOTES),
'changeGridViews' => htmlspecialchars(Text::_('COM_QUANTUMMANAGER_TOOLTIP_CHANGE_GRID_VIEWS'), ENT_QUOTES),
'metaFileShow' => htmlspecialchars(Text::_('COM_QUANTUMMANAGER_METAINFO_SHOW'), ENT_QUOTES),
'metaFileHide' => htmlspecialchars(Text::_('COM_QUANTUMMANAGER_METAINFO_HIDE'), ENT_QUOTES),
'metaSelectCount' => htmlspecialchars(Text::_('COM_QUANTUMMANAGER_METAINFO_SELECT_COUNT'), ENT_QUOTES),
'metaSelectObjectCount' => htmlspecialchars(Text::_('COM_QUANTUMMANAGER_METAINFO_SELECT_OBJECT_COUNT'), ENT_QUOTES),
'metaSelectSize' => htmlspecialchars(Text::_('COM_QUANTUMMANAGER_METAINFO_SELECT_SIZE'), ENT_QUOTES),
'contextReload' => htmlspecialchars(Text::_('COM_QUANTUMMANAGER_ACTION_RELOAD'), ENT_QUOTES),
'contextFolderCreate' => htmlspecialchars(Text::_('COM_QUANTUMMANAGER_ACTION_FOLDER_CREATE'), ENT_QUOTES),
'contextPaste' => htmlspecialchars(Text::_('COM_QUANTUMMANAGER_ACTION_PASTE'), ENT_QUOTES),
'contextRename' => htmlspecialchars(Text::_('COM_QUANTUMMANAGER_ACTION_RENAME'), ENT_QUOTES),
'contextCopyLink' => htmlspecialchars(Text::_('COM_QUANTUMMANAGER_ACTION_COPY_LINK'), ENT_QUOTES),
'contextPreviewFile' => htmlspecialchars(Text::_('COM_QUANTUMMANAGER_ACTION_PREVIEW_FILE'), ENT_QUOTES),
'contextSomeDelete' => htmlspecialchars(Text::_('COM_QUANTUMMANAGER_ACTION_SOME_DELETE'), ENT_QUOTES),
'contextDelete' => htmlspecialchars(Text::_('COM_QUANTUMMANAGER_ACTION_DELETE'), ENT_QUOTES),
'help' => htmlspecialchars(Text::_('COM_QUANTUMMANAGER_HELP'), ENT_QUOTES),
'helpText' => htmlspecialchars(Text::_('COM_QUANTUMMANAGER_HELP_TEXT'), ENT_QUOTES),
'helpCopyright' => htmlspecialchars(Text::_('COM_QUANTUMMANAGER_HELP_COPYRIGHT'), ENT_QUOTES),
'helpCopyrightImages' => htmlspecialchars(Text::_('COM_QUANTUMMANAGER_HELP_COPYRIGHT_IMAGES'), ENT_QUOTES),
'helpLove' => htmlspecialchars(Text::_('COM_QUANTUMMANAGER_HELP_LOVE'), ENT_QUOTES),
'helpButtonProductPage' => htmlspecialchars(Text::_('COM_QUANTUMMANAGER_HELP_BUTTON_PRODUCT_PAGE'), ENT_QUOTES),
'helpButtonDocumentation' => htmlspecialchars(Text::_('COM_QUANTUMMANAGER_HELP_BUTTON_DOCUMENTATION'), ENT_QUOTES),
'helpButtonLocalizations' => htmlspecialchars(Text::_('COM_QUANTUMMANAGER_HELP_BUTTON_LOCALIZATIONS'), ENT_QUOTES),
'helpButtonSupport' => htmlspecialchars(Text::_('COM_QUANTUMMANAGER_HELP_BUTTON_SUPPORT'), ENT_QUOTES),
'helpButtonReview' => htmlspecialchars(Text::_('COM_QUANTUMMANAGER_HELP_BUTTON_REVIEW'), ENT_QUOTES),
'helpHotkeys' => htmlspecialchars(Text::_('COM_QUANTUMMANAGER_HOTKEYS'), ENT_QUOTES),
'helpHotkeysCopy' => htmlspecialchars(Text::_('COM_QUANTUMMANAGER_HOTKEYS_COPY'), ENT_QUOTES),
'helpHotkeysCut' => htmlspecialchars(Text::_('COM_QUANTUMMANAGER_HOTKEYS_CUT'), ENT_QUOTES),
'helpHotkeysPaste' => htmlspecialchars(Text::_('COM_QUANTUMMANAGER_HOTKEYS_PASTE'), ENT_QUOTES),
'helpHotkeysRename' => htmlspecialchars(Text::_('COM_QUANTUMMANAGER_HOTKEYS_RENAME'), ENT_QUOTES),
'helpHotkeysDelete' => htmlspecialchars(Text::_('COM_QUANTUMMANAGER_HOTKEYS_DELETE'), ENT_QUOTES),
'helpHotkeysRefresh' => htmlspecialchars(Text::_('COM_QUANTUMMANAGER_HOTKEYS_REFRESH'), ENT_QUOTES),
'helpHotkeysBack' => htmlspecialchars(Text::_('COM_QUANTUMMANAGER_HOTKEYS_BACK'), ENT_QUOTES),
]);
QuantummanagerHelper::scriptInsertOnPage('quantumViewfiles', <<<EOF
window.QuantumviewfilesVerison = '{$quantumVersion}';
window.QuantumviewfilesPreviews = {$previewslist};
window.QuantumviewfilesLang = $langs;
EOF
);

View File

@@ -0,0 +1,36 @@
<?php
/**
* @package quantummanager
* @author Dmitry Tsymbal <cymbal@delo-design.ru>
* @copyright Copyright © 2019 Delo Design & NorrNext. All rights reserved.
* @license GNU General Public License version 3 or later; see license.txt
* @link https://www.norrnext.com
*/
defined('_JEXEC') or die;
use Joomla\CMS\Language\Text;
extract($displayData);
$cssClass = $displayData['cssClass'];
?>
<div class="quantumtreecatalogs-module-select">
<div class="quantummanager-module quantumtreecatalogs-module <?php echo $cssClass ?>" data-type="Quantumtreecatalogs" data-options="directory:<?php echo $displayData['directory'] ?>">
<input type="text" name="<?php echo $name ?>" value="<?php echo $value ?>" class="inputbox quantumtreecatalogs-path-to">
<div class="tree-scroll"></div>
</div>
</div>
<?php
$langs = json_encode([
'fileName' => htmlspecialchars(Text::_('COM_QUANTUMMANAGER_ALERT_FILE_NAME'), ENT_QUOTES),
'directoryName' => htmlspecialchars(Text::_('COM_QUANTUMMANAGER_ALERT_DIRECTORY_NAME'), ENT_QUOTES),
'confirmDelete' => htmlspecialchars(Text::_('COM_QUANTUMMANAGER_ALERT_CONFIRM_DELETE'), ENT_QUOTES),
]);
QuantummanagerHelper::scriptInsertOnPage('quantumTreecatalogs', <<<EOF
window.QuantumtreecatalogsLang = {$langs};
EOF
);

View File

@@ -0,0 +1,68 @@
<?php
/**
* @package quantummanager
* @author Dmitry Tsymbal <cymbal@delo-design.ru>
* @copyright Copyright © 2019 Delo Design & NorrNext. All rights reserved.
* @license GNU General Public License version 3 or later; see license.txt
* @link https://www.norrnext.com
*/
use Joomla\CMS\Language\Text;
defined('_JEXEC') or die;
extract($displayData);
$scopeEnabled = [];
$scopeEnabled[] = $scope;
?>
<div class="quantummanager quantummanager-fieldstandalone <?php echo $cssClass ?>">
<?php echo $displayData['field'] ?>
<?php echo $displayData['other'] ?>
</div>
<?php
$options = [
'isUserAdmin' => QuantummanagerHelper::isUserAdmin() ? 'true' : 'false',
'urlFull' => $urlFull,
'urlBase' => $urlBase,
'urlRoot' => $urlRoot,
'urlMedia' => $urlMedia,
'isJoomla4' => QuantummanagerHelper::isJoomla4() ? '1' : '0',
'bufferPaste' => (string) QuantummanagerHelper::getParamsComponentValue('bufferpaste', 0),
'scopeEnabled' => implode(',', $scopeEnabled),
'alertBigData' => htmlspecialchars(Text::_('COM_QUANTUMMANAGER_ALERT_BIG_IMAGE'), ENT_QUOTES),
'ok' => htmlspecialchars(Text::_('COM_QUANTUMMANAGER_WINDOW_OK'), ENT_QUOTES),
'close' => htmlspecialchars(Text::_('COM_QUANTUMMANAGER_WINDOW_CLOSE'), ENT_QUOTES),
'copied' => htmlspecialchars(Text::_('COM_QUANTUMMANAGER_ACTION_COPIED'), ENT_QUOTES),
'cancel' => htmlspecialchars(Text::_('COM_QUANTUMMANAGER_WINDOW_CANCEL'), ENT_QUOTES),
];
$optionsOutput = static function ($name) use (&$options) {
return $options[$name];
};
QuantummanagerHelper::scriptInsertOnPage('quantumSettings', <<<EOF
window.QuantumSettings = {
isUserAdmin: {$optionsOutput('isUserAdmin')},
urlFull: '{$optionsOutput('urlFull')}',
urlBase: '{$optionsOutput('urlBase')}',
urlRoot: '{$optionsOutput('urlRoot')}',
urlMedia: '{$optionsOutput('urlMedia')}',
scopeEnabled: '{$optionsOutput('scopeEnabled')}',
isJoomla4: '{$optionsOutput('isJoomla4')}',
bufferPaste: '{$optionsOutput('bufferPaste')}'
};
window.QuantumLang = {
'alertBigData': "{$optionsOutput('alertBigData')}",
'ok': "{$optionsOutput('ok')}",
'close': "{$optionsOutput('close')}",
'copied': "{$optionsOutput('copied')}",
'cancel': "{$optionsOutput('cancel')}"
};
EOF
);
?>

View File

@@ -0,0 +1,37 @@
<?php
/**
* @package quantummanager
* @author Dmitry Tsymbal <cymbal@delo-design.ru>
* @copyright Copyright © 2019 Delo Design & NorrNext. All rights reserved.
* @license GNU General Public License version 3 or later; see license.txt
* @link https://www.norrnext.com
*/
defined('_JEXEC') or die;
use Joomla\CMS\Language\Text;
use Joomla\CMS\Uri\Uri;
$linkStar = Uri::root(true) . '/media/com_quantummanager/images/icons/action/rate-star-button.svg';
?>
<div class="quantummanager-jedreview">
<div class="quantummanager-jedreview-content">
<div>
<span><?php echo Text::_('COM_QUANTUMMANAGER_JEDREIVIEW'); ?></span>
</div>
<div>
<a class="stars" href="https://extensions.joomla.org/extension/quantum-manager/">
<img class="svg" src="<?php echo $linkStar ?>" />
<img class="svg" src="<?php echo $linkStar ?>" />
<img class="svg" src="<?php echo $linkStar ?>" />
<img class="svg" src="<?php echo $linkStar ?>" />
<img class="svg" src="<?php echo $linkStar ?>" />
</a>
<a href="https://extensions.joomla.org/extension/quantum-manager/" class="qm-btn" target="_blank"><?php echo Text::_('COM_QUANTUMMANAGER_JEDREIVIEW_REIVEW'); ?></a>
</div>
<div>
<button class="qm-btn qm-btn-close"><?php echo Text::_('COM_QUANTUMMANAGER_ACTION_HIDE'); ?></button>
</div>
</div>
</div>

View File

@@ -0,0 +1,179 @@
<?php
return [
'default' => [
'#444',
'#5b5b5b',
],
'doc' => [
'#235d9b',
'#3f89cb',
],
'docx' => [
'#2a81ba',
'#499fd6',
],
'log' => [
'#aacff3',
'#e0f2ff',
],
'txt' => [
'#8cc6d7',
'#b4dee7',
],
'wps' => [
'#287ffc',
'#74a5ff',
],
'csv' => [
'#579704',
'#77d702',
],
'dat' => [
'#0364e9',
'#2c87ff',
],
'ppt' => [
'#ce4123',
'#e56c52',
],
'pptx' => [
'#ce4123',
'#e56c52',
],
'xml' => [
'#0e896b',
'#12c292',
],
'mp3' => [
'#146be9',
'#5b92f4',
],
'wav' => [
'#36af14',
'#4ee422',
],
'avi' => [
'#40c0e7',
'#74d8f6',
],
'mov' => [
'#ff5737',
'#ff9373',
],
'mp4' => [
'#4063b5',
'#6786c4',
],
'3ds' => [
'#015151',
'#00888e',
],
'max' => [
'#02b4b5',
'#00f7f5',
],
'gif' => [
'#aaaaaa',
'#cbcbcb',
],
'ai' => [
'#f77602',
'#ff9434',
],
'svg' => [
'#e7a621',
'#efc463',
],
'pdf' => [
'#4b1e1b',
'#5d3633',
],
'xls' => [
'#87d64e',
'#a6e088',
],
'xlsx' => [
'#6dbf2f',
'#97dd66',
],
'sql' => [
'#147ffd',
'#53a8f4',
],
'json' => [
'#3c6a9b',
'#5b86b3',
],
'php' => [
'#858fb9',
'#9ca4c5',
],
'exe' => [
'#0d63aa',
'#1581da',
],
'js' => [
'#f0dc4e',
'#f7e88d',
],
'html' => [
'#e44c20',
'#ec7f5f',
],
'xhtml' => [
'#56aaef',
'#8cc8f8',
],
'css' => [
'#264ee2',
'#6481e4',
],
'asp' => [
'#5d2d92',
'#783eb6',
],
'ttf' => [
'#14454b',
'#1d747b',
],
'ddl' => [
'#960a49',
'#c81765',
],
'7z' => [
'#ff6633',
'#ff9d68',
],
'zip' => [
'#ffb228',
'#ffca6f',
],
'c' => [
'#3747a6',
'#5b68c3',
],
'cs' => [
'#02346a',
'#0a58a6',
],
'java' => [
'#e86f00',
'#e19e61',
],
'swift' => [
'#f32b1f',
'#e96b5d',
],
'torrent' => [
'#53ad43',
'#84cb78',
],
'any' => [
'#007cff',
'#61b4ff',
],
'psd' => [
'#170f44',
'#383356'
]
];

View File

@@ -0,0 +1,6 @@
<?php
return [
'default' => [
'rgb(165, 199, 233)',
],
];

View File

@@ -0,0 +1,133 @@
<?php
/**
* @package quantummanager
* @author Dmitry Tsymbal <cymbal@delo-design.ru>
* @copyright Copyright © 2019 Delo Design & NorrNext. All rights reserved.
* @license GNU General Public License version 3 or later; see license.txt
* @link https://www.norrnext.com
*/
use Joomla\CMS\Language\Text;
defined('_JEXEC') or die;
extract($displayData);
$scopeEnabled = [];
foreach ($scopes as $scope)
{
$scopeEnabled[] = $scope->id;
}
?>
<div class="quantummanager <?php echo $cssClass ?>">
<?php if (!empty($displayData['top'])) : ?>
<div class="quantummanager-top">
<?php echo $displayData['top'] ?>
</div>
<?php endif; ?>
<div class="quantummanager-container">
<?php if (!empty($displayData['container-top'])) : ?>
<div class="quantummanager-container-top">
<?php echo $displayData['container-top'] ?>
</div>
<?php endif; ?>
<?php if (!empty($displayData['container-left'])) : ?>
<div class="quantummanager-left">
<?php echo $displayData['container-left'] ?>
<div class="quantummanager-left-toggle"></div>
</div>
<?php endif; ?>
<div class="quantummanager-center">
<div class="quantummanager-center-top">
<?php if (!empty($displayData['container-center-top'])) : ?>
<?php echo $displayData['container-center-top'] ?>
<?php endif; ?>
</div>
<div class="quantummanager-center-center">
<?php if (!empty($displayData['container-center-center'])) : ?>
<?php echo $displayData['container-center-center'] ?>
<?php endif; ?>
</div>
</div>
<?php if (!empty($displayData['container-right'])) : ?>
<div class="quantummanager-right">
<?php echo $displayData['container-right'] ?>
<div class="quantummanager-right-toggle"></div>
</div>
<?php endif; ?>
<?php if (!empty($displayData['container-bottom'])) : ?>
<div class="quantummanager-container-bottom">
<?php echo $displayData['container-bottom'] ?>
</div>
<?php endif; ?>
</div>
<?php if (!empty($displayData['bottom'])) : ?>
<div class="quantummanager-bottom">
<?php echo $displayData['bottom'] ?>
</div>
<?php endif; ?>
<?php if (!empty($displayData['container-bottom-fixed'])) : ?>
<div class="quantummanager-container-bottom-fixed">
<?php echo $displayData['container-bottom-fixed'] ?>
</div>
<?php endif; ?>
</div>
<?php
$options = [
'isUserAdmin' => QuantummanagerHelper::isUserAdmin() ? 'true' : 'false',
'urlFull' => $urlFull,
'urlBase' => $urlBase,
'urlRoot' => $urlRoot,
'urlMedia' => $urlMedia,
'isJoomla4' => $isJoomla4,
'bufferPaste' => (string) QuantummanagerHelper::getParamsComponentValue('bufferpaste', 0),
'scopeEnabled' => implode(',', $scopeEnabled),
'alertBigData' => htmlspecialchars(Text::_('COM_QUANTUMMANAGER_ALERT_BIG_IMAGE'), ENT_QUOTES),
'ok' => htmlspecialchars(Text::_('COM_QUANTUMMANAGER_WINDOW_OK'), ENT_QUOTES),
'close' => htmlspecialchars(Text::_('COM_QUANTUMMANAGER_WINDOW_CLOSE'), ENT_QUOTES),
'copied' => htmlspecialchars(Text::_('COM_QUANTUMMANAGER_ACTION_COPIED'), ENT_QUOTES),
'cancel' => htmlspecialchars(Text::_('COM_QUANTUMMANAGER_WINDOW_CANCEL'), ENT_QUOTES),
];
$optionsOutput = static function ($name) use (&$options) {
return $options[$name];
};
QuantummanagerHelper::scriptInsertOnPage('quantumSettings', <<<EOF
window.QuantumSettings = {
isUserAdmin: {$optionsOutput('isUserAdmin')},
urlFull: '{$optionsOutput('urlFull')}',
urlBase: '{$optionsOutput('urlBase')}',
urlRoot: '{$optionsOutput('urlRoot')}',
urlMedia: '{$optionsOutput('urlMedia')}',
scopeEnabled: '{$optionsOutput('scopeEnabled')}',
isJoomla4: '{$optionsOutput('isJoomla4')}',
bufferPaste: '{$optionsOutput('bufferPaste')}'
};
window.QuantumLang = {
'alertBigData': "{$optionsOutput('alertBigData')}",
'ok': "{$optionsOutput('ok')}",
'close': "{$optionsOutput('close')}",
'copied': "{$optionsOutput('copied')}",
'cancel': "{$optionsOutput('cancel')}"
};
EOF
);
?>

View File

@@ -0,0 +1,32 @@
<?php
/**
* @package quantummanager
* @author Dmitry Tsymbal <cymbal@delo-design.ru>
* @copyright Copyright © 2019 Delo Design & NorrNext. All rights reserved.
* @license GNU General Public License version 3 or later; see license.txt
* @link https://www.norrnext.com
*/
use Joomla\CMS\Language\Text;
use Joomla\CMS\Layout\FileLayout;
defined('_JEXEC') or die;
extract($displayData);
?>
<div class="quantumcombineselectfile">
<input class="input-file <?php echo $displayData['class'] ?>" type="hidden"
name="<?php echo $displayData['name'] ?>" id="<?php echo $displayData['id'] ?>"
value="<?php echo $displayData['value'] ?>">
<div class="preview-file" data-value="<?php echo $displayData['value'] ?>">
<div class="image"></div>
<button><?php echo Text::_('COM_QUANTUMMANAGER_ACTION_EDIT') ?></button>
</div>
<?php
$template = new FileLayout('quantumcombine', JPATH_ROOT . '/administrator/components/com_quantummanager/layouts');
echo $template->render($displayData);
?>
</div>

View File

@@ -0,0 +1,140 @@
#image
image/vnd.dxf
image/jpeg
image/x-citrix-jpeg
image/pjpeg
image/png
image/x-citrix-png
image/x-png
image/gif
image/svg+xml
image/webp
image/vnd.wap.wbmp
image/bmp
image/prs.btif
image/x-cmu-raster
image/cgm
image/x-cmx
image/vnd.dece.graphic
image/vnd.djvu
image/vnd.dwg
image/vnd.fujixerox.edmics-mmr
image/vnd.fujixerox.edmics-rlc
image/vnd.xiff
image/vnd.fst
image/vnd.fastbidsheet
image/vnd.fpx
image/vnd.net-fpx
image/g3fax
image/x-icon
image/ief
image/vnd.ms-modi
image/ktx
image/x-pcx
image/vnd.adobe.photoshop
image/x-pict
image/x-portable-anymap
image/x-portable-bitmap
image/x-portable-graymap
image/x-portable-pixmap
image/x-rgb
image/tiff
image/vnd.wap.wbmp
image/x-xbitmap
image/x-xpixmap
image/x-xwindowdump
#audio
audio/basic
audio/x-aac
audio/x-aiff
audio/vnd.dece.audio
audio/vnd.digital-winds
audio/vnd.dra
audio/vnd.dts
audio/vnd.dts.hd
audio/vnd.rip
audio/x-mpegurl
audio/vnd.lucent.voice
audio/vnd.ms-playready.media.pya
audio/x-ms-wma
audio/x-ms-wax
audio/midi
audio/mpeg
audio/mp4
audio/ogg
audio/vnd.nuera.ecelp9600
audio/vnd.nuera.ecelp7470
audio/vnd.nuera.ecelp4800
audio/webm
audio/x-pn-realaudio
audio/x-pn-realaudio-plugin
audio/x-wav
#doc
application/pdf
application/vnd.kde.kword
application/vnd.openxmlformats-officedocument.wordprocessingml.document
application/vnd.openxmlformats-officedocument.wordprocessingml.template
application/vnd.openxmlformats-officedocument.spreadsheetml.sheet
application/msword
application/vnd.ms-word.document.macroenabled.12
application/vnd.ms-word.template.macroenabled.12
application/x-mswrite
application/vnd.ms-excel
application/vnd.ms-excel.addin.macroenabled.12
application/vnd.ms-excel.sheet.binary.macroenabled.12
application/vnd.ms-excel.template.macroenabled.12
application/vnd.ms-excel.sheet.macroenabled.12
application/vnd.ms-powerpoint
application/vnd.ms-powerpoint.addin.macroenabled.12
application/vnd.ms-powerpoint.slide.macroenabled.12
application/vnd.ms-powerpoint.presentation.macroenabled.12
application/vnd.ms-powerpoint.slideshow.macroenabled.12
application/vnd.ms-powerpoint.template.macroenabled.12
#text
text/xml
#video
video/3gpp
video/3gpp2
video/x-msvideo
video/vnd.dece.hd
video/vnd.dece.mobile
video/vnd.uvvu.mp4
video/vnd.dece.pd
video/vnd.dece.sd
video/vnd.dece.video
video/vnd.fvt
video/x-f4v
video/x-flv
video/x-fli
video/h261
video/h263
video/h264
video/jpm
video/jpeg
video/x-m4v
video/x-ms-asf
video/vnd.ms-playready.media.pyv
video/x-ms-wm
video/x-ms-wmx
video/x-ms-wmv
video/x-ms-wvx
video/mj2
video/vnd.mpegurl
video/mpeg
video/mp4
video/ogg
video/webm
video/quicktime
video/quicktime
video/vnd.vivo
#archive
application/x-rar-compressed
application/octet-stream
application/zip
application/x-zip-compressed
multipart/x-zip

View File

@@ -0,0 +1,28 @@
<?php
/**
* @package quantummanager
* @author Dmitry Tsymbal <cymbal@delo-design.ru>
* @copyright Copyright © 2019 Delo Design & NorrNext. All rights reserved.
* @license GNU General Public License version 3 or later; see license.txt
* @link https://www.norrnext.com
*/
defined('_JEXEC') or die;
use Joomla\CMS\Factory;
use Joomla\CMS\Language\Text;
use Joomla\CMS\MVC\Controller\BaseController;
// Access check.
if (!Factory::getUser()->authorise('core.manage', 'com_quantummanager'))
{
throw new InvalidArgumentException(Text::_('JERROR_ALERTNOAUTHOR'), 404);
}
// Require the helper
require_once JPATH_COMPONENT_ADMINISTRATOR . '/helpers/quantummanager.php';
// Execute the task
$controller = BaseController::getInstance('quantummanager');
$controller->execute(Factory::getApplication()->input->get('task'));
$controller->redirect();

View File

@@ -0,0 +1,56 @@
<?xml version="1.0" encoding="utf-8" ?>
<extension type="component" version="3.8" method="upgrade">
<name>COM_QUANTUMMANAGER</name>
<creationDate>21.12.2018</creationDate>
<author>Tsymbal</author>
<authorEmail>cymbal@delo-design.ru</authorEmail>
<authorUrl>https://www.norrnext.com</authorUrl>
<copyright>Copyright © 2019 Delo Design &amp; NorrNext. All rights reserved.</copyright>
<license>GNU General Public License version 3 or later; see license.txt</license>
<version>2.0.2</version>
<description>COM_QUANTUMMANAGER_XML_DESCRIPTION</description>
<scriptfile>script.php</scriptfile>
<media folder="media/com_quantummanager" destination="com_quantummanager">
<folder>css</folder>
<folder>images</folder>
<folder>js</folder>
</media>
<files folder="components/com_quantummanager">
<filename>quantummanager.php</filename>
<filename>controller.php</filename>
<folder>language</folder>
<folder>views</folder>
</files>
<administration>
<menu view="quantummanager">COM_QUANTUMMANAGER</menu>
<files folder="administrator/components/com_quantummanager">
<filename>quantummanager.php</filename>
<filename>access.xml</filename>
<filename>config.xml</filename>
<filename>controller.php</filename>
<filename>LICENSE.txt</filename>
<filename>mimetype.txt</filename>
<folder>controllers</folder>
<folder>fields</folder>
<folder>filesystem</folder>
<folder>helpers</folder>
<folder>layouts</folder>
<folder>language</folder>
<folder>views</folder>
</files>
<languages folder="administrator/components/com_quantummanager/language">
<language tag="en-GB">en-GB/en-GB.com_quantummanager.ini</language>
<language tag="en-GB">en-GB/en-GB.com_quantummanager.sys.ini</language>
<language tag="ru-RU">ru-RU/ru-RU.com_quantummanager.ini</language>
<language tag="ru-RU">ru-RU/ru-RU.com_quantummanager.sys.ini</language>
</languages>
</administration>
</extension>

View File

@@ -0,0 +1,140 @@
<?php
/**
* @package quantummanager
* @author Dmitry Tsymbal <cymbal@delo-design.ru>
* @copyright Copyright © 2019 Delo Design & NorrNext. All rights reserved.
* @license GNU General Public License version 3 or later; see license.txt
* @link https://www.norrnext.com
*/
use Joomla\CMS\Factory;
use Joomla\CMS\Language\Text;
use Joomla\CMS\Version;
defined('_JEXEC') or die;
/**
* Quantummanager script file.
*
* @package A package name
* @since 1.0
*/
class com_quantummanagerInstallerScript
{
/**
* Minimum PHP version required to install the extension.
*
* @var string
*
* @since 0.0.1
*/
protected $minimumPhp = '7.1';
/**
* Minimum Joomla version required to install the extension.
*
* @var string
*
* @since 0.0.1
*/
protected $minimumJoomla = '3.9.0';
/**
* @var string
*/
protected $helpURL = 'https://norrnext.com/docs/joomla-extensions/quantum-manager';
/**
* Extensions for php
* @var array
*/
protected $extensions = [
'fileinfo',
'curl',
'mbstring'
];
/**
* Called before any type of action
*
* @param string $route Which action is happening (install|uninstall|discover_install|update)
* @param JAdapterInstance $adapter The object responsible for running this script
*
* @return boolean True on success
*/
public function preflight($route, $adapter)
{
$app = Factory::getApplication();
if (!(version_compare(PHP_VERSION, '7.1.0') >= 0))
{
$app->enqueueMessage(Text::sprintf('COM_QUANTUMMANAGER_ERROR_COMPATIBLE_PHP', $this->minimumPhp),
'error');
return false;
}
jimport('joomla.version');
$jversion = new Version();
if (!$jversion->isCompatible('3.7'))
{
$app->enqueueMessage(Text::sprintf('COM_QUANTUMMANAGER_ERROR_COMPATIBLE_PHP', $this->minimumJoomla),
'error');
return false;
}
//Check extension
$extensionsNotLoaded = [];
foreach ($this->extensions as $extension)
{
if (!extension_loaded($extension))
{
$extensionsNotLoaded[] = $extension;
}
}
if (count($extensionsNotLoaded))
{
$app->enqueueMessage(Text::sprintf('COM_QUANTUMMANAGER_ERROR_EXTENSIONS', implode(',', $extensionsNotLoaded)),
'error');
return false;
}
}
/**
* This method is called after a component is updated.
*
* @param \stdClass $parent - Parent object calling object.
*
* @return void
*/
public function update($parent)
{
JLoader::register('QuantummanagerHelper', JPATH_ROOT . '/administrator/components/com_quantummanager/helpers/quantummanager.php');
QuantummanagerHelper::setComponentsParams('helpURL', $this->helpURL);
}
/**
* Called after any type of action
*
* @param string $route Which action is happening (install|uninstall|discover_install|update)
* @param JAdapterInstance $adapter The object responsible for running this script
*
* @return boolean True on success
*/
public function postflight($route, $adapter)
{
if ($route === 'install')
{
JLoader::register('QuantummanagerHelper', JPATH_ROOT . '/administrator/components/com_quantummanager/helpers/quantummanager.php');
QuantummanagerHelper::setComponentsParams('helpURL', $this->helpURL);
}
}
}

View File

@@ -0,0 +1,128 @@
<?php
/**
* @package quantummanager
* @author Dmitry Tsymbal <cymbal@delo-design.ru>
* @copyright Copyright © 2019 Delo Design & NorrNext. All rights reserved.
* @license GNU General Public License version 3 or later; see license.txt
* @link https://www.norrnext.com
*/
defined('_JEXEC') or die;
use Joomla\CMS\Component\ComponentHelper;
use Joomla\CMS\Factory;
use Joomla\CMS\HTML\HTMLHelper;
$app = Factory::getApplication();
$app->getSession()->clear('quantummanagerroot');
$app->getSession()->clear('quantummanagerrootcheck');
$app->getSession()->clear('quantummanageraddscripts');
try {
JLoader::register('JFormFieldQuantumCombine', JPATH_ROOT . '/administrator/components/com_quantummanager/fields/quantumcombine.php');
JLoader::register('QuantummanagerHelper', JPATH_SITE . '/administrator/components/com_quantummanager/helpers/quantummanager.php');
$folderRoot = 'root';
$buttonsBun = [];
$fields = [
'quantumtreecatalogs' => [
'label' => '',
'directory' => $folderRoot,
'position' => 'container-left',
],
'quantumtoolbar' => [
'label' => '',
'position' => 'container-center-top',
'buttons' => 'all',
'buttonsBun' => '',
'cssClass' => 'qm-padding-small-left qm-padding-small-right qm-padding-small-top qm-padding-small-bottom',
],
'quantumupload' => [
'label' => '',
'position' => 'container-center-top',
'maxsize' => QuantummanagerHelper::getParamsComponentValue('maxsize', '10'),
'dropAreaHidden' => QuantummanagerHelper::getParamsComponentValue('dropareahidden', '0'),
'directory' => $folderRoot,
'cssClass' => 'qm-padding-small-left qm-padding-small-right qm-padding-small-bottom',
],
'quantumviewfiles' => [
'label' => '',
'position' => 'container-center-center',
'directory' => $folderRoot,
'view' => 'list-grid',
'onlyfiles' => '0',
'watermark' => QuantummanagerHelper::getParamsComponentValue('overlay' , 0) > 0 ? '1' : '0',
'help' => QuantummanagerHelper::getParamsComponentValue('help' , '1'),
'metafile' => QuantummanagerHelper::getParamsComponentValue('metafile' , '1'),
],
'quantumcropperjs' => [
'label' => '',
'position' => 'bottom'
],
];
if((int)QuantummanagerHelper::getParamsComponentValue('unsplash', '1'))
{
$fields['quantumunsplash'] = [
'label' => '',
'position' => 'bottom'
];
}
/*
if((int)QuantummanagerHelper::getParamsComponentValue('pexels', '1'))
{
$fields['quantumpexels'] = [
'label' => '',
'position' => 'bottom'
];
}
*/
/*
if((int)QuantummanagerHelper::getParamsComponentValue('pixabay', '1'))
{
$fields['quantumpixabay'] = [
'label' => '',
'position' => 'bottom'
];
}
*/
$actions = QuantummanagerHelper::getActions();
if (!$actions->get('core.create'))
{
$buttonsBun[] = 'viewfilesCreateDirectory';
unset($fields['quantumupload']);
}
if (!$actions->get('core.delete'))
{
unset($fields['quantumcropperjs']);
}
if (!$actions->get('core.delete'))
{
$buttonsBun[] = 'viewfilesDelete';
}
$optionsForField = [
'name' => 'filemanager',
'label' => '',
'cssClass' => 'quantummanager-full-component-wrap',
'fields' => json_encode($fields)
];
$field = new JFormFieldQuantumCombine();
foreach ($optionsForField as $name => $value)
{
$field->__set($name, $value);
}
echo $field->getInput();
}
catch (Exception $e) {
echo $e->getMessage();
}

View File

@@ -0,0 +1,172 @@
<?php
/**
* @package quantummanager
* @author Dmitry Tsymbal <cymbal@delo-design.ru>
* @copyright Copyright © 2019 Delo Design & NorrNext. All rights reserved.
* @license GNU General Public License version 3 or later; see license.txt
* @link https://www.norrnext.com
*/
defined('_JEXEC') or die;
use Joomla\CMS\Factory;
use Joomla\CMS\HTML\HTMLHelper;
use Joomla\CMS\Language\Text;
$app = Factory::getApplication();
$folder = $app->input->get('folder', '', 'string');
if (!empty($folder))
{
$app->getSession()->set('quantummanagerroot', 'images/' . $folder);
}
else
{
$app->getSession()->clear('quantummanagerroot');
$app->getSession()->clear('quantummanagerrootcheck');
}
HTMLHelper::_('stylesheet', 'plg_system_quantummanagermedia/modal.css', [
'version' => filemtime(__FILE__),
'relative' => true
]);
$namespace = $app->input->get('namespace', 'default');
$scripts = $app->getSession()->get('quantummanageraddscripts', '', $namespace);
if (!empty($scripts))
{
$scripts = json_decode($scripts, JSON_OBJECT_AS_ARRAY);
if (is_array($scripts))
{
foreach ($scripts as $script)
{
HTMLHelper::_('script', $script, [
'version' => filemtime(__FILE__),
'relative' => true
]);
}
}
}
?>
<?php
try
{
JLoader::register('JFormFieldQuantumCombine', JPATH_ROOT . '/administrator/components/com_quantummanager/fields/quantumcombine.php');
JLoader::register('QuantummanagerHelper', JPATH_SITE . '/administrator/components/com_quantummanager/helpers/quantummanager.php');
$folderRoot = 'root';
$buttonsBun = [];
$fields = [
'quantumtreecatalogs' => [
'label' => '',
'directory' => $folderRoot,
'position' => 'container-left',
],
'quantumtoolbar' => [
'label' => '',
'position' => 'container-center-top',
'buttons' => 'all',
'buttonsBun' => '',
'cssClass' => 'qm-padding-small-left qm-padding-small-right qm-padding-small-top qm-padding-small-bottom',
],
'quantumupload' => [
'label' => '',
'position' => 'container-center-top',
'maxsize' => QuantummanagerHelper::getParamsComponentValue('maxsize', '10'),
'dropAreaHidden' => QuantummanagerHelper::getParamsComponentValue('dropareahidden', '0'),
'directory' => $folderRoot,
'cssClass' => 'qm-padding-small-left qm-padding-small-right qm-padding-small-bottom',
],
'quantumviewfiles' => [
'label' => '',
'position' => 'container-center-center',
'directory' => $folderRoot,
'view' => 'list-grid',
'onlyfiles' => '0',
'watermark' => QuantummanagerHelper::getParamsComponentValue('overlay' , 0) > 0 ? '1' : '0',
'help' => QuantummanagerHelper::getParamsComponentValue('help' , '1'),
'metafile' => QuantummanagerHelper::getParamsComponentValue('metafile' , '1'),
],
'quantumcropperjs' => [
'label' => '',
'position' => 'bottom'
],
];
if ((int) QuantummanagerHelper::getParamsComponentValue('unsplash', '1'))
{
$fields['quantumunsplash'] = [
'label' => '',
'position' => 'bottom'
];
}
/*
if ((int) QuantummanagerHelper::getParamsComponentValue('pexels', '1'))
{
$fields['quantumpexels'] = [
'label' => '',
'position' => 'bottom'
];
}
*/
/*
if ((int) QuantummanagerHelper::getParamsComponentValue('pixabay', '1'))
{
$fields['quantumpixabay'] = [
'label' => '',
'position' => 'bottom'
];
}
*/
$actions = QuantummanagerHelper::getActions();
if (!$actions->get('core.create'))
{
$buttonsBun[] = 'viewfilesCreateDirectory';
unset($fields['quantumupload']);
}
if (!$actions->get('core.delete'))
{
unset($fields['quantumcropperjs']);
}
if (!$actions->get('core.delete'))
{
$buttonsBun[] = 'viewfilesDelete';
}
$optionsForField = [
'name' => 'filemanager',
'label' => '',
'fields' => json_encode($fields)
];
$field = new JFormFieldQuantumCombine();
foreach ($optionsForField as $name => $value)
{
$field->__set($name, $value);
}
echo $field->getInput();
}
catch (Exception $e)
{
echo $e->getMessage();
}
?>
<script type="text/javascript">
window.QuantumwindowLang = {
'buttonInsert': '<?php echo Text::_('COM_QUANTUMMANAGER_ACTION_SELECT'); ?>'
};
</script>

View File

@@ -0,0 +1,145 @@
<?php
/**
* @package quantummanager
* @author Dmitry Tsymbal <cymbal@delo-design.ru>
* @copyright Copyright © 2019 Delo Design & NorrNext. All rights reserved.
* @license GNU General Public License version 3 or later; see license.txt
* @link https://www.norrnext.com
*/
defined('_JEXEC') or die;
use Joomla\CMS\Factory;
use Joomla\CMS\HTML\HTMLHelper;
use Joomla\CMS\Language\Text;
HTMLHelper::_('stylesheet', 'com_quantummanager/window.css', [
'version' => filemtime(__FILE__),
'relative' => true
]);
HTMLHelper::_('script', 'com_quantummanager/window.js', [
'version' => filemtime(__FILE__),
'relative' => true
]);
$app = Factory::getApplication();
$app->getSession()->clear('quantummanagerroot');
$app->getSession()->clear('quantummanagerrootcheck');
$app->getSession()->clear('quantummanageraddscripts');
try {
JLoader::register('JFormFieldQuantumCombine', JPATH_ROOT . '/administrator/components/com_quantummanager/fields/quantumcombine.php');
JLoader::register('QuantummanagerHelper', JPATH_SITE . '/administrator/components/com_quantummanager/helpers/quantummanager.php');
//$folderRoot = QuantummanagerHelper::getFolderRoot();
$folderRoot = 'root';
$buttonsBun = [];
$fields = [
'quantumtreecatalogs' => [
'label' => '',
'directory' => $folderRoot,
'position' => 'container-left',
],
'quantumtoolbar' => [
'label' => '',
'position' => 'container-center-top',
'buttons' => 'all',
'buttonsBun' => '',
'cssClass' => 'qm-padding-small-left qm-padding-small-right qm-padding-small-top qm-padding-small-bottom',
],
'quantumupload' => [
'label' => '',
'position' => 'container-center-top',
'maxsize' => QuantummanagerHelper::getParamsComponentValue('maxsize', '10'),
'dropAreaHidden' => QuantummanagerHelper::getParamsComponentValue('dropareahidden', '0'),
'directory' => $folderRoot,
'cssClass' => 'qm-padding-small-left qm-padding-small-right qm-padding-small-bottom',
],
'quantumviewfiles' => [
'label' => '',
'position' => 'container-center-center',
'directory' => $folderRoot,
'view' => 'list-grid',
'onlyfiles' => '0',
'watermark' => QuantummanagerHelper::getParamsComponentValue('overlay' , 0) > 0 ? '1' : '0',
'help' => QuantummanagerHelper::getParamsComponentValue('help' , '1'),
'metafile' => QuantummanagerHelper::getParamsComponentValue('metafile' , '1'),
],
'quantumcropperjs' => [
'label' => '',
'position' => 'bottom'
],
];
if((int)QuantummanagerHelper::getParamsComponentValue('unsplash', '1'))
{
$fields['quantumunsplash'] = [
'label' => '',
'position' => 'bottom'
];
}
/*
if((int)QuantummanagerHelper::getParamsComponentValue('pexels', '1'))
{
$fields['quantumpexels'] = [
'label' => '',
'position' => 'bottom'
];
}
*/
/*
if((int)QuantummanagerHelper::getParamsComponentValue('pixabay', '1'))
{
$fields['quantumpixabay'] = [
'label' => '',
'position' => 'bottom'
];
}
*/
$actions = QuantummanagerHelper::getActions();
if (!$actions->get('core.create'))
{
$buttonsBun[] = 'viewfilesCreateDirectory';
unset($fields['quantumupload']);
}
if (!$actions->get('core.delete'))
{
unset($fields['quantumcropperjs']);
}
if (!$actions->get('core.delete'))
{
$buttonsBun[] = 'viewfilesDelete';
}
$optionsForField = [
'name' => 'filemanager',
'label' => '',
'cssClass' => 'quantummanager-full-wrap',
'fields' => json_encode($fields)
];
$field = new JFormFieldQuantumCombine();
foreach ($optionsForField as $name => $value)
{
$field->__set($name, $value);
}
echo $field->getInput();
}
catch (Exception $e) {
echo $e->getMessage();
}
?>
<script type="text/javascript">
window.QuantumwindowLang = {
'buttonClose': '<?php echo Text::_('COM_QUANTUMMANAGER_WINDOW_CLOSE'); ?>'
};
</script>

View File

@@ -0,0 +1,110 @@
<?php
/**
* @package quantummanager
* @author Dmitry Tsymbal <cymbal@delo-design.ru>
* @copyright Copyright © 2019 Delo Design & NorrNext. All rights reserved.
* @license GNU General Public License version 3 or later; see license.txt
* @link https://www.norrnext.com
*/
defined('_JEXEC') or die;
use Joomla\CMS\Factory;
use Joomla\CMS\HTML\HTMLHelper;
use Joomla\CMS\Language\Text;
use Joomla\CMS\MVC\View\HtmlView;
use Joomla\CMS\Toolbar\Toolbar;
use Joomla\CMS\Uri\Uri;
/**
* Quantummanager view.
*
* @package quantummanager
* @since 1.0
*/
class QuantummanagerViewQuantummanager extends HtmlView
{
/**
* Quantummanager helper
*
* @var QuantummanagerHelper
* @since 1.0
*/
protected $helper;
/**
* The sidebar to show
*
* @var string
* @since 1.0
*/
protected $sidebar = '';
/**
* Execute and display a template script.
*
* @param string $tpl The name of the template file to parse; automatically searches through the template paths.
*
* @return mixed A string if successful, otherwise a JError object.
*
* @see fetch()
* @since 1.0
*/
public function display($tpl = null)
{
// Show the toolbar
$this->toolbar();
// Show the sidebar
$this->helper = new QuantummanagerHelper;
// Display it all
return parent::display($tpl);
}
/**
* Displays a toolbar for a specific page.
*
* @return void.
*
* @since 1.0
*/
private function toolbar()
{
// Options button.
if (QuantummanagerHelper::isJoomla4())
{
if (Factory::getUser()->authorise('core.admin', 'com_quantummanager'))
{
HTMLHelper::_('script', 'com_quantummanager/configuration.js', [
'version' => filemtime(__FILE__),
'relative' => true
]);
}
HTMLHelper::_('stylesheet', 'com_quantummanager/joomla4hidetoolbar.css', [
'version' => filemtime(__FILE__),
'relative' => true
]);
}
else
{
JToolBarHelper::title(Text::_('COM_QUANTUMMANAGER'), '');
// Options button.
if (Factory::getUser()->authorise('core.admin', 'com_quantummanager'))
{
JToolBarHelper::preferences('com_quantummanager');
}
$toolbar = Toolbar::getInstance('toolbar');
$url = Uri::root(true) . '/administrator/index.php?option=com_quantummanager&layout=window&tmpl=component';
$button = '<a href="' . $url . '" class="btn btn-small" target="_blank">'
. '<span class="icon-new-tab" aria-hidden="true"></span>'
. Text::_('COM_QUANTUMMANAGER_CLEAN_WINDOW') . '</a>';
$toolbar->appendButton('Custom', $button, 'generate');
}
}
}