From 4d8e05b869ed93cb4116af6be55544f59040609d Mon Sep 17 00:00:00 2001 From: vdigital Date: Mon, 13 Oct 2008 19:55:44 +0000 Subject: Remove of Swift Theme Creator from the branch (kept in trunk currently). All functions were not available. git-svn-id: http://piwigo.org/svn/branches/2.0@2732 68402e56-0260-453c-a942-63ccdbb3a9ee --- .../SwiftThemeCreator/farbtastic/CHANGELOG.html | 26 - plugins/SwiftThemeCreator/farbtastic/LICENSE.txt | 341 ------------- plugins/SwiftThemeCreator/farbtastic/README.html | 71 --- plugins/SwiftThemeCreator/farbtastic/demo1.html | 28 -- plugins/SwiftThemeCreator/farbtastic/demo2.html | 57 --- .../SwiftThemeCreator/farbtastic/farbtastic.css | 33 -- plugins/SwiftThemeCreator/farbtastic/farbtastic.js | 329 ------------- plugins/SwiftThemeCreator/farbtastic/marker.png | Bin 652 -> 0 bytes plugins/SwiftThemeCreator/farbtastic/mask.png | Bin 2020 -> 0 bytes plugins/SwiftThemeCreator/farbtastic/wheel.png | Bin 11733 -> 0 bytes plugins/SwiftThemeCreator/index.php | 30 -- plugins/SwiftThemeCreator/mail-css.tpl2 | 18 - plugins/SwiftThemeCreator/main.inc.php | 33 -- plugins/SwiftThemeCreator/sample.jpg | Bin 47132 -> 0 bytes plugins/SwiftThemeCreator/simul/index.php | 30 -- .../SwiftThemeCreator/swift_theme_creator.inc.php | 88 ---- plugins/SwiftThemeCreator/theme.tpl | 36 -- plugins/SwiftThemeCreator/theme_creator.php | 538 --------------------- plugins/SwiftThemeCreator/theme_creator.tpl | 216 --------- plugins/SwiftThemeCreator/themeconf.inc.tpl | 39 -- plugins/SwiftThemeCreator/titrePage-bg.png | Bin 179 -> 0 bytes 21 files changed, 1913 deletions(-) delete mode 100644 plugins/SwiftThemeCreator/farbtastic/CHANGELOG.html delete mode 100644 plugins/SwiftThemeCreator/farbtastic/LICENSE.txt delete mode 100644 plugins/SwiftThemeCreator/farbtastic/README.html delete mode 100644 plugins/SwiftThemeCreator/farbtastic/demo1.html delete mode 100644 plugins/SwiftThemeCreator/farbtastic/demo2.html delete mode 100644 plugins/SwiftThemeCreator/farbtastic/farbtastic.css delete mode 100644 plugins/SwiftThemeCreator/farbtastic/farbtastic.js delete mode 100644 plugins/SwiftThemeCreator/farbtastic/marker.png delete mode 100644 plugins/SwiftThemeCreator/farbtastic/mask.png delete mode 100644 plugins/SwiftThemeCreator/farbtastic/wheel.png delete mode 100644 plugins/SwiftThemeCreator/index.php delete mode 100644 plugins/SwiftThemeCreator/mail-css.tpl2 delete mode 100644 plugins/SwiftThemeCreator/main.inc.php delete mode 100644 plugins/SwiftThemeCreator/sample.jpg delete mode 100644 plugins/SwiftThemeCreator/simul/index.php delete mode 100644 plugins/SwiftThemeCreator/swift_theme_creator.inc.php delete mode 100644 plugins/SwiftThemeCreator/theme.tpl delete mode 100644 plugins/SwiftThemeCreator/theme_creator.php delete mode 100644 plugins/SwiftThemeCreator/theme_creator.tpl delete mode 100644 plugins/SwiftThemeCreator/themeconf.inc.tpl delete mode 100644 plugins/SwiftThemeCreator/titrePage-bg.png (limited to 'plugins') diff --git a/plugins/SwiftThemeCreator/farbtastic/CHANGELOG.html b/plugins/SwiftThemeCreator/farbtastic/CHANGELOG.html deleted file mode 100644 index 23e7f5b84..000000000 --- a/plugins/SwiftThemeCreator/farbtastic/CHANGELOG.html +++ /dev/null @@ -1,26 +0,0 @@ - - -Farbtastic: Changelog - -

Farbtastic: Changelog

- -

1.2 - 2007/01/08

- -

1.1 - 2006/10/27

- -

1.0 - 2006/07/14

- - -

More info on Acko.net.

-

Created by Steven Wittens.

- - - \ No newline at end of file diff --git a/plugins/SwiftThemeCreator/farbtastic/LICENSE.txt b/plugins/SwiftThemeCreator/farbtastic/LICENSE.txt deleted file mode 100644 index 5a3cc209a..000000000 --- a/plugins/SwiftThemeCreator/farbtastic/LICENSE.txt +++ /dev/null @@ -1,341 +0,0 @@ - - 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. - - - Copyright (C) - - 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. - - , 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. diff --git a/plugins/SwiftThemeCreator/farbtastic/README.html b/plugins/SwiftThemeCreator/farbtastic/README.html deleted file mode 100644 index e52747239..000000000 --- a/plugins/SwiftThemeCreator/farbtastic/README.html +++ /dev/null @@ -1,71 +0,0 @@ - - -Farbtastic: jQuery color picker plug-in - -

Farbtastic: jQuery color picker plug-in

-

Farbtastic is a jQuery plug-in that can add one or more color picker widgets into a page. Each widget is then linked to an existing element (e.g. a text field) and will update the element's value when a color is selected.

- -

Farbtastic uses layered transparent PNGs to render a saturation/luminance gradient inside of a hue circle. No Flash or pixel-sized divs are used.

- -

Farbtastic was written by Steven Wittens and is licensed under the GPL.

- -

Basic Usage

-
    -
  1. Include farbtastic.js and farbtastic.css in your HTML:
    -
    <script type="text/javascript" src="farbtastic.js"></script>
    <link rel="stylesheet" href="farbtastic.css" type="text/css" />
    -
  2. -
  3. Add a placeholder div and a text field to your HTML, and give each an ID:
    -
    <form><input type="text" id="color" name="color" value="#123456" /></form>
    <div id="colorpicker"></div>
    -
  4. -
  5. Add a ready() handler to the document which initializes the color picker and link it to the text field with the following syntax:
    -
    <script type="text/javascript">
      $(document).ready(function() {
        $('#colorpicker').farbtastic('#color');
      });
    </script>
    -
  6. -
-

See demo1.html and demo2.html for an example (jquery.js is not included!).

-

Styling

-

The color picker is a block-level element and is 195x195 pixels large. You can control the position by styling your placeholder (e.g. floating it).

-

Note that the black/white gradients inside wheel.png and mask.png were generated programmatically and cannot be recreated easily in an image editing program.

-

Advanced Usage

-

jQuery Method

-
-
$(...).farbtastic()
-$(...).farbtastic(callback)
-
This creates color pickers in the selected objects. callback is optional and can be a:

-
    -
  • DOM Node, jQuery object or jQuery selector: the color picker will be linked to the selected element(s) by syncing the value (for form elements) and color (all elements).
  • -
  • Function: this function will be called whenever the user chooses a different color.
-
-

Object

-
-
$.farbtastic(placeholder)
-$.farbtastic(placeholder, callback)
-
-
Invoking $.farbtastic(placeholder) is the same as using $(placeholder).farbtastic() except that the Farbtastic object is returned instead of the jQuery object. This allows you to use the Farbtastic methods and properties below.

-

Note that there is only one Farbtastic object per placeholder. If you call $.farbtastic(placeholder) twice with the same placeholder, you will get the same object back each time.

-

The optional callback argument behaves exactly as for the jQuery method.
-

-
- - -

Methods

-
-
.linkTo(callback)
-
Allows you to set a new callback. Any existing callbacks are removed. See above for the meaning of callback.
-
.setColor(string)
-
Sets the picker color to the given color in hex representation.
-
.setColor([h, s, l])
-
Sets the picker color to the given color in normalized HSL (0..1 scale).
-
-

Properties

-
-
.linked
-
The elements (jQuery object) or callback function this picker is linked to.
-
.color
-
Current color in hex representation.
-
.hsl
-
Current color in normalized HSL.
-
-
- - \ No newline at end of file diff --git a/plugins/SwiftThemeCreator/farbtastic/demo1.html b/plugins/SwiftThemeCreator/farbtastic/demo1.html deleted file mode 100644 index 876d9cfef..000000000 --- a/plugins/SwiftThemeCreator/farbtastic/demo1.html +++ /dev/null @@ -1,28 +0,0 @@ - - - - Farbtastic - - - - - - -

jQuery Color Picker: Farbtastic

- -
jQuery.js is not present. You must install jQuery in this folder for the demo to work.
- -
-
-
- -

More info on Acko.net.

-

Created by Steven Wittens.

- - diff --git a/plugins/SwiftThemeCreator/farbtastic/demo2.html b/plugins/SwiftThemeCreator/farbtastic/demo2.html deleted file mode 100644 index 59a93257a..000000000 --- a/plugins/SwiftThemeCreator/farbtastic/demo2.html +++ /dev/null @@ -1,57 +0,0 @@ - - - - Farbtastic - - - - - - - - -

jQuery Color Picker: Farbtastic

- -
jQuery.js is not present. You must install jQuery in this folder for the demo to work.
- -
-
-
-
-
- -
- -

More info on Acko.net.

-

Created by Steven Wittens.

- - diff --git a/plugins/SwiftThemeCreator/farbtastic/farbtastic.css b/plugins/SwiftThemeCreator/farbtastic/farbtastic.css deleted file mode 100644 index 07d953f2d..000000000 --- a/plugins/SwiftThemeCreator/farbtastic/farbtastic.css +++ /dev/null @@ -1,33 +0,0 @@ -.farbtastic { - position: relative; -} -.farbtastic * { - position: absolute; - cursor: crosshair; -} -.farbtastic, .farbtastic .wheel { - width: 195px; - height: 195px; -} -.farbtastic .color, .farbtastic .overlay { - top: 47px; - left: 47px; - width: 101px; - height: 101px; -} -.farbtastic .wheel { - background: url(wheel.png) no-repeat; - width: 195px; - height: 195px; -} -.farbtastic .overlay { - background: url(mask.png) no-repeat; -} -.farbtastic .marker { - width: 17px; - height: 17px; - margin: -8px 0 0 -8px; - overflow: hidden; - background: url(marker.png) no-repeat; -} - diff --git a/plugins/SwiftThemeCreator/farbtastic/farbtastic.js b/plugins/SwiftThemeCreator/farbtastic/farbtastic.js deleted file mode 100644 index f37df7d72..000000000 --- a/plugins/SwiftThemeCreator/farbtastic/farbtastic.js +++ /dev/null @@ -1,329 +0,0 @@ -// $Id$ -// Farbtastic 1.2 - -jQuery.fn.farbtastic = function (callback) { - $.farbtastic(this, callback); - return this; -}; - -jQuery.farbtastic = function (container, callback) { - var container = $(container).get(0); - return container.farbtastic || (container.farbtastic = new jQuery._farbtastic(container, callback)); -} - -jQuery._farbtastic = function (container, callback) { - // Store farbtastic object - var fb = this; - - // Insert markup - $(container).html('
'); - var e = $('.farbtastic', container); - fb.wheel = $('.wheel', container).get(0); - // Dimensions - fb.radius = 84; - fb.square = 100; - fb.width = 194; - - // Fix background PNGs in IE6 - if (navigator.appVersion.match(/MSIE [0-6]\./)) { - $('*', e).each(function () { - if (this.currentStyle.backgroundImage != 'none') { - var image = this.currentStyle.backgroundImage; - image = this.currentStyle.backgroundImage.substring(5, image.length - 2); - $(this).css({ - 'backgroundImage': 'none', - 'filter': "progid:DXImageTransform.Microsoft.AlphaImageLoader(enabled=true, sizingMethod=crop, src='" + image + "')" - }); - } - }); - } - - /** - * Link to the given element(s) or callback. - */ - fb.linkTo = function (callback) { - // Unbind previous nodes - if (typeof fb.callback == 'object') { - $(fb.callback).unbind('keyup', fb.updateValue); - } - - // Reset color - fb.color = null; - - // Bind callback or elements - if (typeof callback == 'function') { - fb.callback = callback; - } - else if (typeof callback == 'object' || typeof callback == 'string') { - fb.callback = $(callback); - fb.callback.bind('keyup', fb.updateValue); - if (fb.callback.get(0).value) { - fb.setColor(fb.callback.get(0).value); - } - } - return this; - } - fb.updateValue = function (event) { - if (this.value && this.value != fb.color) { - fb.setColor(this.value); - } - } - - /** - * Change color with HTML syntax #123456 - */ - fb.setColor = function (color) { - var unpack = fb.unpack(color); - if (fb.color != color && unpack) { - fb.color = color; - fb.rgb = unpack; - fb.hsl = fb.RGBToHSL(fb.rgb); - fb.updateDisplay(); - } - return this; - } - - /** - * Change color with HSL triplet [0..1, 0..1, 0..1] - */ - fb.setHSL = function (hsl) { - fb.hsl = hsl; - fb.rgb = fb.HSLToRGB(hsl); - fb.color = fb.pack(fb.rgb); - fb.updateDisplay(); - return this; - } - - ///////////////////////////////////////////////////// - - /** - * Retrieve the coordinates of the given event relative to the center - * of the widget. - */ - fb.widgetCoords = function (event) { - var x, y; - var el = event.target || event.srcElement; - var reference = fb.wheel; - - if (typeof event.offsetX != 'undefined') { - // Use offset coordinates and find common offsetParent - var pos = { x: event.offsetX, y: event.offsetY }; - - // Send the coordinates upwards through the offsetParent chain. - var e = el; - while (e) { - e.mouseX = pos.x; - e.mouseY = pos.y; - pos.x += e.offsetLeft; - pos.y += e.offsetTop; - e = e.offsetParent; - } - - // Look for the coordinates starting from the wheel widget. - var e = reference; - var offset = { x: 0, y: 0 } - while (e) { - if (typeof e.mouseX != 'undefined') { - x = e.mouseX - offset.x; - y = e.mouseY - offset.y; - break; - } - offset.x += e.offsetLeft; - offset.y += e.offsetTop; - e = e.offsetParent; - } - - // Reset stored coordinates - e = el; - while (e) { - e.mouseX = undefined; - e.mouseY = undefined; - e = e.offsetParent; - } - } - else { - // Use absolute coordinates - var pos = fb.absolutePosition(reference); - x = (event.pageX || 0*(event.clientX + $('html').get(0).scrollLeft)) - pos.x; - y = (event.pageY || 0*(event.clientY + $('html').get(0).scrollTop)) - pos.y; - } - // Subtract distance to middle - return { x: x - fb.width / 2, y: y - fb.width / 2 }; - } - - /** - * Mousedown handler - */ - fb.mousedown = function (event) { - // Capture mouse - if (!document.dragging) { - $(document).bind('mousemove', fb.mousemove).bind('mouseup', fb.mouseup); - document.dragging = true; - } - - // Check which area is being dragged - var pos = fb.widgetCoords(event); - fb.circleDrag = Math.max(Math.abs(pos.x), Math.abs(pos.y)) * 2 > fb.square; - - // Process - fb.mousemove(event); - return false; - } - - /** - * Mousemove handler - */ - fb.mousemove = function (event) { - // Get coordinates relative to color picker center - var pos = fb.widgetCoords(event); - - // Set new HSL parameters - if (fb.circleDrag) { - var hue = Math.atan2(pos.x, -pos.y) / 6.28; - if (hue < 0) hue += 1; - fb.setHSL([hue, fb.hsl[1], fb.hsl[2]]); - } - else { - var sat = Math.max(0, Math.min(1, -(pos.x / fb.square) + .5)); - var lum = Math.max(0, Math.min(1, -(pos.y / fb.square) + .5)); - fb.setHSL([fb.hsl[0], sat, lum]); - } - return false; - } - - /** - * Mouseup handler - */ - fb.mouseup = function () { - // Uncapture mouse - $(document).unbind('mousemove', fb.mousemove); - $(document).unbind('mouseup', fb.mouseup); - document.dragging = false; - } - - /** - * Update the markers and styles - */ - fb.updateDisplay = function () { - // Markers - var angle = fb.hsl[0] * 6.28; - $('.h-marker', e).css({ - left: Math.round(Math.sin(angle) * fb.radius + fb.width / 2) + 'px', - top: Math.round(-Math.cos(angle) * fb.radius + fb.width / 2) + 'px' - }); - - $('.sl-marker', e).css({ - left: Math.round(fb.square * (.5 - fb.hsl[1]) + fb.width / 2) + 'px', - top: Math.round(fb.square * (.5 - fb.hsl[2]) + fb.width / 2) + 'px' - }); - - // Saturation/Luminance gradient - $('.color', e).css('backgroundColor', fb.pack(fb.HSLToRGB([fb.hsl[0], 1, 0.5]))); - - // Linked elements or callback - if (typeof fb.callback == 'object') { - // Set background/foreground color - $(fb.callback).css({ - backgroundColor: fb.color, - color: fb.hsl[2] > 0.5 ? '#000' : '#fff' - }); - - // Change linked value - $(fb.callback).each(function() { - if (this.value && this.value != fb.color) { - this.value = fb.color; - } - }); - } - else if (typeof fb.callback == 'function') { - fb.callback.call(fb, fb.color); - } - } - - /** - * Get absolute position of element - */ - fb.absolutePosition = function (el) { - var r = { x: el.offsetLeft, y: el.offsetTop }; - // Resolve relative to offsetParent - if (el.offsetParent) { - var tmp = fb.absolutePosition(el.offsetParent); - r.x += tmp.x; - r.y += tmp.y; - } - return r; - }; - - /* Various color utility functions */ - fb.pack = function (rgb) { - var r = Math.round(rgb[0] * 255); - var g = Math.round(rgb[1] * 255); - var b = Math.round(rgb[2] * 255); - return '#' + (r < 16 ? '0' : '') + r.toString(16) + - (g < 16 ? '0' : '') + g.toString(16) + - (b < 16 ? '0' : '') + b.toString(16); - } - - fb.unpack = function (color) { - if (color.length == 7) { - return [parseInt('0x' + color.substring(1, 3)) / 255, - parseInt('0x' + color.substring(3, 5)) / 255, - parseInt('0x' + color.substring(5, 7)) / 255]; - } - else if (color.length == 4) { - return [parseInt('0x' + color.substring(1, 2)) / 15, - parseInt('0x' + color.substring(2, 3)) / 15, - parseInt('0x' + color.substring(3, 4)) / 15]; - } - } - - fb.HSLToRGB = function (hsl) { - var m1, m2, r, g, b; - var h = hsl[0], s = hsl[1], l = hsl[2]; - m2 = (l <= 0.5) ? l * (s + 1) : l + s - l*s; - m1 = l * 2 - m2; - return [this.hueToRGB(m1, m2, h+0.33333), - this.hueToRGB(m1, m2, h), - this.hueToRGB(m1, m2, h-0.33333)]; - } - - fb.hueToRGB = function (m1, m2, h) { - h = (h < 0) ? h + 1 : ((h > 1) ? h - 1 : h); - if (h * 6 < 1) return m1 + (m2 - m1) * h * 6; - if (h * 2 < 1) return m2; - if (h * 3 < 2) return m1 + (m2 - m1) * (0.66666 - h) * 6; - return m1; - } - - fb.RGBToHSL = function (rgb) { - var min, max, delta, h, s, l; - var r = rgb[0], g = rgb[1], b = rgb[2]; - min = Math.min(r, Math.min(g, b)); - max = Math.max(r, Math.max(g, b)); - delta = max - min; - l = (min + max) / 2; - s = 0; - if (l > 0 && l < 1) { - s = delta / (l < 0.5 ? (2 * l) : (2 - 2 * l)); - } - h = 0; - if (delta > 0) { - if (max == r && max != g) h += (g - b) / delta; - if (max == g && max != b) h += (2 + (b - r) / delta); - if (max == b && max != r) h += (4 + (r - g) / delta); - h /= 6; - } - return [h, s, l]; - } - - // Install mousedown handler (the others are set on the document on-demand) - $('*', e).mousedown(fb.mousedown); - - // Init color - fb.setColor('#000000'); - - // Set linked elements/callback - if (callback) { - fb.linkTo(callback); - } -} \ No newline at end of file diff --git a/plugins/SwiftThemeCreator/farbtastic/marker.png b/plugins/SwiftThemeCreator/farbtastic/marker.png deleted file mode 100644 index 3929bbb51..000000000 Binary files a/plugins/SwiftThemeCreator/farbtastic/marker.png and /dev/null differ diff --git a/plugins/SwiftThemeCreator/farbtastic/mask.png b/plugins/SwiftThemeCreator/farbtastic/mask.png deleted file mode 100644 index b0a4d406f..000000000 Binary files a/plugins/SwiftThemeCreator/farbtastic/mask.png and /dev/null differ diff --git a/plugins/SwiftThemeCreator/farbtastic/wheel.png b/plugins/SwiftThemeCreator/farbtastic/wheel.png deleted file mode 100644 index 97b343d98..000000000 Binary files a/plugins/SwiftThemeCreator/farbtastic/wheel.png and /dev/null differ diff --git a/plugins/SwiftThemeCreator/index.php b/plugins/SwiftThemeCreator/index.php deleted file mode 100644 index c15b15795..000000000 --- a/plugins/SwiftThemeCreator/index.php +++ /dev/null @@ -1,30 +0,0 @@ - diff --git a/plugins/SwiftThemeCreator/mail-css.tpl2 b/plugins/SwiftThemeCreator/mail-css.tpl2 deleted file mode 100644 index ee9d1a836..000000000 --- a/plugins/SwiftThemeCreator/mail-css.tpl2 +++ /dev/null @@ -1,18 +0,0 @@ -/* Theme {$main.newtheme} mail css */ - -body {$main.ldelim} background-color:{$main.color1}; color:{$main.color2};} -#the_page {$main.ldelim} background: {$main.color1} url({ldelim}$ROOT_URL}template/{ldelim}$themeconf.template}/mail/text/html/images/mailbody-bg.png) repeat-y scroll left top;} -#content {$main.ldelim} background: transparent url({ldelim}$ROOT_URL}template/{ldelim}$themeconf.template}/mail/text/html/images/header-bg.png) no-repeat scroll left top;} -#copyright {$main.ldelim} background: transparent url({ldelim}$ROOT_URL}template/{ldelim}$themeconf.template}/mail/text/html/images/footer-bg.png) no-repeat scroll left bottom; -color: {$main.color2};} -h2 {$main.ldelim} background-color: {$main.color7};color:#eee;background-image: url({ldelim}$ROOT_URL}template/{ldelim}$themeconf.template}/theme/{ldelim}$themeconf.theme}/images/tableh1_bg.png);} -img {$main.ldelim} margin: 16px; padding:15px;border:1px solid #eee; -moz-border-radius: 4px; border-radius: 4px 4px; } -img:hover {$main.ldelim} border:1px solid {$main.color2}; -moz-border-radius: 4px; border-radius: 4px 4px; } -a {$main.ldelim} color: {$main.color2}; background: transparent; } -a:hover {$main.ldelim} color: {$main.color3}; } -a.PWG {$main.ldelim} border: 0px; } -a.PWG .P {$main.ldelim} color : {$main.color3}; } -a.PWG .W {$main.ldelim} color : {$main.color5}; } -a.PWG .G {$main.ldelim} color : {$main.color2}; } -a.PWG:hover .P {$main.ldelim} color : {$main.color2}; } -a.PWG:hover .G {$main.ldelim} color : {$main.color3}; } \ No newline at end of file diff --git a/plugins/SwiftThemeCreator/main.inc.php b/plugins/SwiftThemeCreator/main.inc.php deleted file mode 100644 index 50b708f24..000000000 --- a/plugins/SwiftThemeCreator/main.inc.php +++ /dev/null @@ -1,33 +0,0 @@ - \ No newline at end of file diff --git a/plugins/SwiftThemeCreator/sample.jpg b/plugins/SwiftThemeCreator/sample.jpg deleted file mode 100644 index e5686d9b7..000000000 Binary files a/plugins/SwiftThemeCreator/sample.jpg and /dev/null differ diff --git a/plugins/SwiftThemeCreator/simul/index.php b/plugins/SwiftThemeCreator/simul/index.php deleted file mode 100644 index c15b15795..000000000 --- a/plugins/SwiftThemeCreator/simul/index.php +++ /dev/null @@ -1,30 +0,0 @@ - diff --git a/plugins/SwiftThemeCreator/swift_theme_creator.inc.php b/plugins/SwiftThemeCreator/swift_theme_creator.inc.php deleted file mode 100644 index c74e82504..000000000 --- a/plugins/SwiftThemeCreator/swift_theme_creator.inc.php +++ /dev/null @@ -1,88 +0,0 @@ -theme_config = array(); - } - function get_config_file_dir() - { - global $conf; - return $conf['local_data_dir'].'/plugins/'; - } - function get_config_file_name() - { - return basename(dirname(__FILE__)).'.dat'; - } - function reload() - { - $x = @file_get_contents( $this->get_config_file_dir().$this->get_config_file_name() ); - if ($x!==false) - { - $y = unserialize($x); - $this->theme_config = $y; - } - } - function save_theme_config() - { - $dir = $this->get_config_file_dir(); - @mkdir($dir); - $file = fopen( $dir.$this->get_config_file_name(), 'w' ); - fwrite($file, serialize($this->theme_config) ); - fclose( $file ); - } - function plugin_admin_menu($menu) - { - array_push($menu, - array( - 'NAME' => 'Swift Theme Creator', - 'URL' => get_admin_plugin_menu_link(dirname(__FILE__).'/theme_creator.php') - ) - ); - return $menu; - } - /** - * returns available template/theme - */ - function get_pwg_templates() - { - $templates = array(); - $template_dir = PHPWG_ROOT_PATH.'template'; - foreach (get_dirs($template_dir) as $template) - { - array_push($templates, $template); - } - return $templates; - } -} -$swift_theme_creator = new ThemeCreator(); -$swift_theme_creator->reload(); -add_event_handler('get_admin_plugin_menu_links', - array(&$swift_theme_creator, 'plugin_admin_menu') ); -set_plugin_data($plugin['id'], $swift_theme_creator); -?> \ No newline at end of file diff --git a/plugins/SwiftThemeCreator/theme.tpl b/plugins/SwiftThemeCreator/theme.tpl deleted file mode 100644 index 09511ba38..000000000 --- a/plugins/SwiftThemeCreator/theme.tpl +++ /dev/null @@ -1,36 +0,0 @@ -BODY, H3, #imageHeaderBar, #imageToolBar A:hover, -.row1, UL.tabsheet LI.normal_tab {ldelim} background-color: {$main.color1}; } - -BODY, H1, H3, DT, -INPUT.rateButtonSelected /* <= why IE doesn't inherit this ? */ {ldelim} - color:{$main.color2}; } -#theImage IMG {ldelim} border: 3px ridge {$main.color2}; } - -H2, #menubar DT, .throw, -A, INPUT.rateButton {ldelim} color: {$main.color3}; } - -UL.tabsheet LI.normal_tab:hover {ldelim} border: 1px solid {$main.color3}; } -A:hover {ldelim} color: {$main.color4}; } - -.content UL.thumbnails SPAN.wrap2:hover, -.content UL.thumbnailCategories DIV.thumbnailCategory:hover, -.content UL.thumbnailCategories DIV.thumbnailCategory:hover A {ldelim} - color: {$main.color4}; border: 1px solid {$main.color4}; background-color: {$main.color6}; } - -#menubar DL, .content, #comments DIV.comment BLOCKQUOTE, -#imageHeaderBar, H2, #menubar DT, #imageToolBar {ldelim} border: 1px solid {$main.color4}; } - -#menubar DL, .content, #imageToolBar, .header_notes, UL.tabsheet LI.selected_tab {ldelim} - background-color: {$main.color6}; } - -FIELDSET, INPUT, SELECT, TEXTAREA, .content DIV.comment A.illustration IMG, -.content DIV.thumbnailCategory, .content UL.thumbnails SPAN.wrap2 {ldelim} - border: 1px solid {$main.color6}; } - -#comments DIV.comment BLOCKQUOTE {ldelim} border-left: 1px solid {$main.color7}; } - -H2, #menubar DT, .throw {ldelim} background-image: url(stc.png); } -#imageHeaderBar H2 {ldelim} background-image: none; background-color: transparent; border: none; } - -#imageHeaderBar {ldelim} - background: transparent url(stc.png) scroll repeat-x center top; } \ No newline at end of file diff --git a/plugins/SwiftThemeCreator/theme_creator.php b/plugins/SwiftThemeCreator/theme_creator.php deleted file mode 100644 index 9d7028640..000000000 --- a/plugins/SwiftThemeCreator/theme_creator.php +++ /dev/null @@ -1,538 +0,0 @@ - true, /* $main version */ - 'template_sel' => 0, - 'newtpl' => 'yoga', - 'newtheme' => '', - 'simulate' => true, - 'colorize' => false, - 'brightness' => false, - 'contrast' => false, - 'new_theme' => '', - 'color1' => '#111111', - 'color' => array('#111111', '#EEEEEE', '#FF7700', '#FF3333', '#FF3363', ), - 'templatedir' => PHPWG_ROOT_PATH . 'plugins/SwiftThemeCreator/simul', - 'color1' => '#111111', - 'color2' => '#EEEEEE', - 'color3' => '#FF7700', - 'color4' => '#FF3333', - 'color5' => '#FF3363', - 'background' => 'fixed', - 'picture_url' => PHPWG_ROOT_PATH . 'plugins/SwiftThemeCreator/sample.jpg', - 'picture_width' => 2048, - 'picture_height' => 100, - 'background_mode' => 'as', - 'src_category' => 0, - 'category' => 'header', - 'phase' => 'Kernel init', - 'subphase' => 'New version', - ); -} - -$errors = array(); -$infos = array(); - -// +-----------------------------------------------------------------------+ -// | Kernel init | -// +-----------------------------------------------------------------------+ -if (!isset($swift_theme_creator)) $swift_theme_creator = new ThemeCreator(); -$swift_theme_creator->reload(); -$main = $swift_theme_creator->theme_config; - -/* - * Find templates - */ -$available_templates = array(); -$template_dir = PHPWG_ROOT_PATH.'template'; -foreach (get_dirs($template_dir) as $dir) -{ array_push($available_templates, $dir); -} -/* - * $main is reloaded but does template still exist? - * Does the fixed background still exist? Category? ... - */ -if (!isset($main[STC_INTERNAL_VERSION])) init_main($main); -$flip = array_flip($available_templates); -$main['template_sel'] = (isset($flip[$main['newtpl']])) ? - $flip[$main['newtpl']] : 0; /* Deleted ? First available */ -$main['subphase'] = 'Find category'; -$query = 'SELECT id,name,uppercats,global_rank - FROM ' . CATEGORIES_TABLE . ';'; -display_select_cat_wrapper($query,array(),'src_category'); -$available_cat = $template->get_template_vars('src_category'); -$flip = array_flip($available_cat); -$main['src_category'] = (isset($flip[$main['category']])) ? - $flip[$main['category']] : max($flip); /* Deleted ? Most recent */ - - -// +-----------------------------------------------------------------------+ -// | $_POST controls | -// +-----------------------------------------------------------------------+ -$main['phase'] = 'POST controls'; -if (!isset($_POST['reset'])) -{ - $main['simulate'] = isset($_POST['simulate']); - if (!isset($_POST['submit'])) $main['simulate'] = true; - /* - * Template controls - */ - $main['subphase'] = 'template controls'; - if (isset($_POST['template'])) $main['template_sel'] = $_POST['template']; - $main['newtpl'] = $available_templates[$main['template_sel']]; - if ($main['newtpl'] != 'yoga') - array_push($infos, l10n('Unpredictable results could be observed with ' - . 'this template. Preview is based on yoga template only.')); - - /* - * Theme controls - */ - $main['subphase'] = 'theme controls'; - if (isset($_POST['new_theme'])) $main['newtheme'] = strip_tags($_POST['new_theme']); - if ($main['newtheme'] == '') $main['simulate'] = true; /* Empty = Simulate */ - $cleaning = true; /* Delete files on failure */ - if ( !$main['simulate'] and !preg_match('/^[a-z0-9-_]{1,8}$/', $main['newtheme']) ) - array_push($errors, l10n('Invalid theme name: 1 to 8 lowercase' - . ' alphanumeric characters including "-" and "_".')); - if ($main['simulate']) { /* $main['templatedir'] != $template_dir (Smarty) */ - $main['templatedir'] = PHPWG_ROOT_PATH . 'plugins/SwiftThemeCreator/simul'; - $themedir = $main['templatedir']; - $cleaning = false; /* No delete with simulate */ - } else { - $main['templatedir'] = PHPWG_ROOT_PATH . 'template/' . $main['newtpl']; - $themedir = $main['templatedir'] . '/theme/' . $main['newtheme']; - } - - /* - * Directories controls - */ - $main['subphase'] = 'directories controls'; - if (is_dir( $themedir ) and !$main['simulate']) { - array_push($errors, '['.$themedir.'] : '.l10n('Invalid theme: This' - . ' theme exists already (no override available).')); - $cleaning = false; /* No delete on existing theme */ - } elseif ( !is_writable($main['templatedir']) ) - array_push($errors, '['.$main['templatedir'].'] : '.l10n('no_write_access')); - - /* - * Colors controls - */ - $main['subphase'] = 'colors controls'; - if (isset($_POST['color1'])) - $main['color'] = array( - $_POST['color1'], $_POST['color2'], $_POST['color3'], $_POST['color4'], - $_POST['color5']); - $main['color1'] = $main['color'][0]; - $main['color2'] = $main['color'][1]; - $main['color3'] = $main['color'][2]; - $main['color4'] = $main['color'][3]; - $main['color5'] = $main['color'][4]; - $colors = $main['color1'] . $main['color2'] - . $main['color3'] . $main['color4'] . $main['color5']; - if ( !preg_match('/^(#?([A-Fa-f0-9]{3}|[A-Fa-f0-9]{6})){5}$/', $colors) ) - array_push($errors, l10n('Invalid color code: 3 or 6 hexadecimal characters,' - . ' preceded or not by "#"')); - - /* - * Background and text difference control - */ - $main['subphase'] = 'text difference controls'; - list($r,$g,$b) = stc_hex2rgb($main['color'][0]); - list($r2,$g2,$b2) = stc_hex2rgb($main['color'][1]); - $dif = abs( ( (($r*299)+($g*587)+($b*114)) / 1000 ) - - ( (( $r2*299)+($g2*587)+($b2*114)) / 1000 ) ); - if ( $dif < 65 ) - array_push($errors, l10n('Insufficient brightness difference between ' - . 'text and background. dif=') . $dif); - $dif = (max($r, $r2) - min($r, $r2)) - + (max($g, $g2) - min($g, $g2)) + (max($b, $b2) - min($b, $b2)); - if ( $dif < 200 ) - array_push($errors, l10n('Insufficient colour difference between ' - . 'text and background. dif=') . $dif); - - /* - * Background and Internal links difference control - */ - $main['subphase'] = 'links difference controls'; - if (false) - { - list($r,$g,$b) = stc_hex2rgb($main['color'][0]); - list($r2,$g2,$b2) = stc_hex2rgb($main['color'][2]); - $dif = abs( ( (($r*299)+($g*587)+($b*114)) / 1000 ) - - ( (($r2*299)+($g2*587)+($b2*114)) / 1000 )); - if ( $dif < 65 ) - array_push($errors, l10n('Insufficient brightness difference between ' - . 'Internal links and background. dif=') . $dif); - $dif = (max($r, $r2) - min($r, $r2)) - + (max($g, $g2) - min($g, $g2)) + (max($b, $b2) - min($b, $b2)); - if ( $dif < 200 ) - array_push($errors, l10n('Insufficient colour difference between ' - . 'Internal links and background. dif=') . $dif); - } - - /* - * Header background controls - */ - $main['subphase'] = 'fixed background controls'; - if (isset($_POST['picture_url'])) $main['picture_url'] = $_POST['picture_url']; - if (isset($_POST['background_mode'])) - $main['background_mode'] = $_POST['background_mode']; - if (isset($_POST['background'])) $main['background'] = $_POST['background']; - // Fixed - if ( $main['background'] == 'fixed') { - if ( is_dir($main['picture_url']) - or !is_file($main['picture_url']) ) - array_push($errors, l10n('Header picture is not found, check its path and name.')); - $extension = substr($main['picture_url'],strrpos($main['picture_url'],'.')+1); - if (!in_array($extension, array('jpg','jpeg','png'))) - array_push($errors, l10n('Compliant extensions are .jpg, .jpeg or .png.')); - } - $main['subphase'] = 'random background controls'; - if (isset($_POST['src_category'])) - $main['src_category'] = (int) $_POST['src_category']; - $main['category'] = $available_cat[$main['src_category']]; - - /* - * Width and Height limits control - */ - $main['subphase'] = 'width and height controls'; - if ($main['background'] != 'off' - and isset($_POST['picture_width']) - and isset($_POST['picture_height'])) - { - if( !(ctype_digit($_POST['picture_width']) - and $_POST['picture_width'] > 11 - and $_POST['picture_width'] < 4097 ) ) - array_push($errors, '['.$_POST['picture_width'].'] : ' - . l10n('incorrect width value [12-4096].')); - else $main['picture_width'] = $_POST['picture_width']; - if ( !(ctype_digit($_POST['picture_height']) - and $_POST['picture_height'] > 11 - and $_POST['picture_height'] < 201 ) ) - array_push($errors, '['.$_POST['picture_height'].'] : ' - . l10n('incorrect width value [12-200].')); - else $main['picture_height'] = $_POST['picture_height']; - } - - /* - * Generate missing colors values - */ - $main['subphase'] = 'complementary colors'; - list($r,$g,$b) = stc_hex2rgb($main['color'][0]); - if ((( (($r+1)/256)*(($g+1)/256)*(($b+1)/256) ) * 1000 ) < 125 ) - $main['color6'] = lighten( $r, $g, $b, 10); - else $main['color6'] = darken( $r, $g, $b, 10); - list($r,$g,$b) = stc_hex2rgb($main['color'][4]); - if ((( (($r+1)/256)*(($g+1)/256)*(($b+1)/256) ) * 1000 ) < 125 ) - $main['color7'] = lighten( $r, $g, $b, 10); - else $main['color7'] = darken( $r, $g, $b, 10); - $main['colorize'] = isset($_POST['colorize']) ? true : false; - $main['brightness'] = isset($_POST['brightness']) ? true : false; - $main['contrast'] = isset($_POST['contrast']) ? true : false; -} - -// +-----------------------------------------------------------------------+ -// | Build files | -// +-----------------------------------------------------------------------+ -$main['phase'] = 'Files building'; -if (!function_exists('imagecreatetruecolor') or !function_exists('imagefilter')) { - array_push($errors, l10n('Some Php Graphic resources are missing.' - . ' Sorry for the inconvenience, but Swift Theme Creator couldn\'t work in such case.')); - array_push($infos, l10n('This plugin requires PHP 5.2.5 or later' - . ' and compiled against graphic library GD 2.0.1 or later.')); - array_push($infos, l10n('On this server, PHP is:'). phpversion()); - if (function_exists('gd_info')) { - $GD = gd_info(); - array_push($infos, l10n('and graphic library is:').$GD['GD Version']); - } - else array_push($infos, l10n('graphic library version is not available.')); - $main['background'] = 'off'; -} -if ((isset($_POST['submit']) or $main['simulate'] ) and (!is_adviser())) -{ - /* - * Go ahead - */ - $main['subphase'] = 'Mkdir control'; - if (count($errors) == 0) { - umask(0000); - @mkdir($themedir, 0705); - if (!is_dir( $themedir )) - array_push($errors, - l10n('Theme directory creation failure: ' - . 'it can\'t be created (for now en attendant la suite 8-) ).')); - else { - $main['ldelim'] = '{ldelim}'; - /* - * Build themeconf.inc.php - **/ - $main['subphase'] = 'Build themeconf'; - $plugin_tpl = new Template(); - $plugin_tpl->set_filenames(array('themeconf'=> - STC_PATH . 'themeconf.inc.tpl')); - $plugin_tpl->assign('main',$main); - $main['themeconf_inc_php'] = $plugin_tpl->parse('themeconf', true); - $rfs = stc_newfile( $themedir . '/themeconf.inc.php', - $main['themeconf_inc_php'] ); - /* - * Build mail-css.tpl - **/ - $main['subphase'] = 'Build mail-css'; - $plugin_tpl->set_filenames(array('mailcss'=> - STC_PATH . 'mail-css.tpl2')); - $plugin_tpl->assign('main',$main); - $main['mail-css.tpl'] = $plugin_tpl->parse('mailcss', true); - $rfs = $rfs && stc_newfile( $themedir . '/mail-css.tpl', - $main['mail-css.tpl'] ); - /* - * Build theme.css - **/ - $main['subphase'] = 'Build theme'; - $plugin_tpl->set_filenames(array('theme'=> STC_PATH . 'theme.tpl')); - $plugin_tpl->assign('main',$main); - $main['theme.css'] = $plugin_tpl->parse('theme', true); - $rfs = $rfs && stc_newfile( $themedir . '/theme.css', $main['theme.css'] ); - $internal = stc_hex2rgb($main['color'][2]); - list($r,$g,$b) = $internal; - $background = stc_hex2rgb($main['color'][0]); - list($r2,$g2,$b2) = $background; - $delta = floor(((array_sum($internal)/3) - (array_sum($background)/3))/5.1); - /* Brightness is half of difference between colors of internal lnks and bkground */ - /* but if color range is 0-255, resulting brightness range is between -50 and 50 */ - if ($delta > 0) { /* Colorize need a darker color on a dark background */ - $r = floor($r / 5); - $g = floor($g / 5); - $b = floor($b / 5); - } - if (isset($_POST['background']) and $_POST['background'] == 'random') - { - $main['subphase'] = 'Pick random for a pic'; - $main['random'] = mt_rand(12, 4096); - $result = pwg_query(' - SELECT i.path - FROM '.CATEGORIES_TABLE.' c, - '.IMAGES_TABLE.' i, - '.IMAGE_CATEGORY_TABLE.' ic - WHERE c.status=\'public\' - AND c.id = ic.category_id - AND c.id = ' . $main['src_category'] . ' - AND ic.category_id = ' . $main['src_category'] . ' - AND ic.image_id = i.id - ORDER BY RAND(' . $main['random'] . ') - LIMIT 0,1'); - if($result) list($main['pic_path']) = mysql_fetch_array($result); - else $main['pic_path'] = - PHPWG_ROOT_PATH . 'plugins/SwiftThemeCreator/simul/header.jpg'; - $main['pic_ext'] = substr($main['pic_path'],strrpos($main['pic_path'],'.')+1); - if ($main['pic_ext']=='png') - $img = imagecreatefrompng($main['pic_path']); - elseif (in_array($main['pic_ext'],array('jpg','jpeg'))) - $img = imagecreatefromjpeg($main['pic_path']); - else $img = imagecreatefromjpeg(PHPWG_ROOT_PATH - . 'plugins/SwiftThemeCreator/simul/header.jpg'); - imagejpeg( $img, $themedir . '/header.jpg', 90 ); - imagedestroy ($img); - } - if (isset($_POST['background']) and $_POST['background'] == 'fixed') - { - $main['subphase'] = 'Fixed background'; - $hdr = imagecreatetruecolor ($main['picture_width'], $main['picture_height']); - imagecolorset ( $hdr, 0, $r2, $g2, $b2 ); - if ($extension == 'png') $img = imagecreatefrompng($main['picture_url']); - else $img = imagecreatefromjpeg($main['picture_url']); - imagecopymerge ( $hdr, $img, 0, 0, 0, 0, $main['picture_width'], $main['picture_height'], 60 ); - imagedestroy ($img); - if ($main['colorize']) imagefilter($hdr, IMG_FILTER_COLORIZE, $r, $g, $b); - if ($main['brightness']) imagefilter($hdr, IMG_FILTER_BRIGHTNESS, $delta); - if ($main['contrast']) imagefilter($hdr, IMG_FILTER_CONTRAST, 20); - imagejpeg( $hdr, $themedir . '/header.jpg', 90 ); - imagedestroy ($hdr); - } - /* - * Build background image for titrePage or definition list (in #menubar) - **/ - $main['subphase'] = 'Headbars background'; - $hdr = imagecreatetruecolor (1, 38); - imagecolorset ( $hdr, 0, $r2, $g2, $b2 ); - $img = imagecreatefrompng(STC_PATH . '/titrePage-bg.png'); - imagecopymerge ( $hdr, $img, 0, 0, 0, 0, 1, 38, 60 ); - imagedestroy ($img); - if ($main['colorize']) imagefilter($hdr, IMG_FILTER_COLORIZE, $r, $g, $b); - if ($main['brightness']) imagefilter($hdr, IMG_FILTER_BRIGHTNESS, $delta); - if ($main['contrast']) imagefilter($hdr, IMG_FILTER_CONTRAST, 20); - imagepng( $hdr, $themedir . '/stc.png', 9 ); - imagedestroy ($hdr); - - /* - * Errors and cleaning or Congratulations - **/ - $main['phase'] = 'Congratulation'; - $main['subphase'] = 'cleaning'; - if ($rfs == false) { - array_push($errors, - l10n('Theme files creation failure: theme should be deleted.')); - if ($cleaning) { - @unlink( $themedir . '/header.jpg' ); - @unlink( $themedir . '/stc.png' ); - @unlink( $themedir . '/themeconf.inc.php' ); - @unlink( $themedir . '/mail-css.tpl' ); - @unlink( $themedir . '/theme.css' ); - @rmdir( $themedir ); - } - } - elseif (!$main['simulate']) { - array_push($infos, - '['.$main['newtpl'] . '/' . $main['newtheme'].'] : ' - .l10n('Congratulation! You have got(/ten) a new available theme.')); - @copy( $themedir . '/header.jpg', PHPWG_ROOT_PATH . 'plugins/SwiftThemeCreator/simul/header.jpg'); - @copy( $themedir . '/stc.png', PHPWG_ROOT_PATH . 'plugins/SwiftThemeCreator/simul/stc.png'); - @copy( $themedir . '/themeconf.inc.php', PHPWG_ROOT_PATH . 'plugins/SwiftThemeCreator/simul/themeconf.inc.php'); - @copy( $themedir . '/mail-css.tpl', PHPWG_ROOT_PATH . 'plugins/SwiftThemeCreator/simul/mail-css.tpl'); - @copy( $themedir . '/theme.css', PHPWG_ROOT_PATH . 'plugins/SwiftThemeCreator/simul/theme.css'); - } - } - } - - // TODO ******** theSwiftHeader itself ********* - - $swift_theme_creator->save_theme_config(); -} - -// +-----------------------------------------------------------------------+ -// | reset values -// +-----------------------------------------------------------------------+ -if (isset($_POST['reset']) and (!is_adviser())) { - $main = array(); - init_main($main); - $swift_theme_creator->theme_config = $main; - $swift_theme_creator->save_theme_config(); - redirect( get_admin_plugin_menu_link(dirname(__FILE__).'/theme_creator.php')); -} - -// Don't forget to re-read because some statements are superfluous - -// +-----------------------------------------------------------------------+ -// | template initialization -// +-----------------------------------------------------------------------+ -$template->set_filenames(array( - 'plugin_admin_content' => dirname(__FILE__) . '/theme_creator.tpl')); -$template->append('head_elements', - ' - -' - ); -$template->assign('radio_options', - array( - 'true' => l10n('Yes'), - 'false' => l10n('No'))); -$template->assign('template_options', $available_templates); -$template->assign('background_options', - array( - 'off' => l10n('No'), - 'random' => l10n('24H Random'), - 'fixed' => l10n('Fixed URL'), - )); -$template->assign('background_mode_options', - array( - 'as' => l10n('As is'), - 'crop' => l10n('Truncated'), - 'sized' => l10n('Resized'), - )); -if (count($errors) != 0) $template->assign('errors', $errors); -if (count($infos) != 0) $template->assign('infos', $infos); -/* Restore Main values */ -$template->assign('main', $main); -$template->assign_var_from_handle('ADMIN_CONTENT', 'plugin_admin_content'); -$swift_theme_creator->theme_config = $main; -$swift_theme_creator->save_theme_config(); -?> \ No newline at end of file diff --git a/plugins/SwiftThemeCreator/theme_creator.tpl b/plugins/SwiftThemeCreator/theme_creator.tpl deleted file mode 100644 index 14bbd26ec..000000000 --- a/plugins/SwiftThemeCreator/theme_creator.tpl +++ /dev/null @@ -1,216 +0,0 @@ -{* $Id$ *} -
-

{'Swift Theme Creator'|@translate}

-
- -

-{'The Swift Theme Creator is powerful webmaster tool to create a new theme in few seconds. -You can update later the result as you need.'|@translate} -

-
- -
- {'Template selection '|@translate} - - -
- {'Template'|@translate} - - {html_options name=template options=$template_options selected=$main.template_sel} -
- {'New theme to be created'|@translate} - - -
-
- - - -
- {'Colours selection '|@translate} - - - -
- {'Main background'|@translate} - - - -
-
- {'Default text'|@translate} - - -
- {'Internal links'|@translate} - - -
- {'Hover links'|@translate} - - -
- {'External links'|@translate} - - -
-
- -
- {'Header background selection '|@translate} - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- {* No / 24H Random public picture / Fixed URL *} -
- - - {html_options style="margin: 0 0 0 10px;" name=src_category options=$src_category selected=$main.src_category} -
- - - -
-   - - - - -
- {'Width limit in pixels'|@translate} - - - x - - {'(Height limit in pixels)'|@translate} -
- {'Display mode'|@translate} {* As is / truncated / resized *} - - {html_radios name='background_mode' class="radio" options=$background_mode_options selected=$main.background_mode} -
-
- -

-   -   - -

-
-
- {'Just a yoga preview... '|@translate} -
- {* Preview header *}
- {if ($main.background=='fixed')} - -

{'"Fixed header" preview'|@translate}

- {/if} - {if ($main.background=='random')} - -

{'"Random header" preview'|@translate}

- {/if} - {if ($main.background=='off')} -

{'"No header" preview'|@translate}

- {/if} -
- {* Preview menubar *}
-
-
{'Preview'|@translate}
-
- -

{'Preview'|@translate}

-
-
-
- {* Preview content *}
-

{'home'|@translate}

- -
-
- -{'...to get an idea of the expected result. Preview is based on yoga-like template only.'|@translate} -
\ No newline at end of file diff --git a/plugins/SwiftThemeCreator/themeconf.inc.tpl b/plugins/SwiftThemeCreator/themeconf.inc.tpl deleted file mode 100644 index 138516ef7..000000000 --- a/plugins/SwiftThemeCreator/themeconf.inc.tpl +++ /dev/null @@ -1,39 +0,0 @@ - '{$main.newtpl}', - 'theme' => '{$main.newtheme}', - 'template_dir' => 'template/{$main.newtpl}', - 'icon_dir' => 'template/{$main.newtpl}/icon', - 'admin_icon_dir' => 'template/{$main.newtpl}/icon/admin', - 'mime_icon_dir' => 'template/{$main.newtpl}/icon/mimetypes/', - 'local_head' => '', - /* Swift Theme Creator parameters */ - 'stc_category' => {$main.src_category}, - 'stc_background' => '{$main.background}', - 'stc_background_mode' => '{$main.background_mode}', - 'stc_width' => '{$main.picture_width}', - 'stc_height' => '{$main.picture_height}', -); -if ( !isset($lang['Theme: {$main.newtheme}']) ) - - /* LocalFiles Editor can help you for translation in local.lang.php - After next "=", following text could be translated. - 4 lines below could copied in local.lang.php for local translation */ - {* - Not these ones but those produced by "Swift Theme Creator" - *} - - $lang['Theme: {$main.newtheme}'] = - 'Current page are displayed via {$main.newtheme} theme based on ' . - '{$main.newtpl} template, a theme generated by the ' . - '"Swift Theme Creator" plugin.'; - -{* END of themeconf.inc.tpl.php *} -?> \ No newline at end of file diff --git a/plugins/SwiftThemeCreator/titrePage-bg.png b/plugins/SwiftThemeCreator/titrePage-bg.png deleted file mode 100644 index 65a718024..000000000 Binary files a/plugins/SwiftThemeCreator/titrePage-bg.png and /dev/null differ -- cgit v1.2.3