From d304d50762c1639fa3861acf47f3e20408b9bb25 Mon Sep 17 00:00:00 2001 From: Mathias Markl Date: Mon, 10 Jul 2017 15:46:43 +0200 Subject: [PATCH] MuK Preview Image (muk_web_preview_image) 10.0.1.0.0 --- muk_web_preview_image/LICENSE | 619 ++++++++++++++ muk_web_preview_image/README.md | 24 + muk_web_preview_image/__init__.py | 20 + muk_web_preview_image/__manifest__.py | 78 ++ .../static/description/banner.png | Bin 0 -> 108968 bytes .../static/description/icon.png | Bin 0 -> 25320 bytes .../static/description/index.html | 67 ++ .../static/description/logo.png | Bin 0 -> 38064 bytes .../static/description/screenshot.png | Bin 0 -> 54217 bytes .../static/lib/imageviewer/imageviewer.css | 226 +++++ .../static/lib/imageviewer/imageviewer.js | 788 ++++++++++++++++++ .../static/src/js/preview_generator.js | 64 ++ .../static/src/less/preview_content.less | 34 + .../static/src/xml/preview_content.xml | 24 + muk_web_preview_image/template/assets.xml | 30 + 15 files changed, 1974 insertions(+) create mode 100644 muk_web_preview_image/LICENSE create mode 100644 muk_web_preview_image/README.md create mode 100644 muk_web_preview_image/__init__.py create mode 100644 muk_web_preview_image/__manifest__.py create mode 100644 muk_web_preview_image/static/description/banner.png create mode 100644 muk_web_preview_image/static/description/icon.png create mode 100644 muk_web_preview_image/static/description/index.html create mode 100644 muk_web_preview_image/static/description/logo.png create mode 100644 muk_web_preview_image/static/description/screenshot.png create mode 100644 muk_web_preview_image/static/lib/imageviewer/imageviewer.css create mode 100644 muk_web_preview_image/static/lib/imageviewer/imageviewer.js create mode 100644 muk_web_preview_image/static/src/js/preview_generator.js create mode 100644 muk_web_preview_image/static/src/less/preview_content.less create mode 100644 muk_web_preview_image/static/src/xml/preview_content.xml create mode 100644 muk_web_preview_image/template/assets.xml diff --git a/muk_web_preview_image/LICENSE b/muk_web_preview_image/LICENSE new file mode 100644 index 0000000..faf7bf4 --- /dev/null +++ b/muk_web_preview_image/LICENSE @@ -0,0 +1,619 @@ + GNU AFFERO GENERAL PUBLIC LICENSE + Version 3, 19 November 2007 + + Copyright (C) 2007 Free Software Foundation, Inc. + Everyone is permitted to copy and distribute verbatim copies + of this license document, but changing it is not allowed. + + Preamble + + The GNU Affero General Public License is a free, copyleft license for +software and other kinds of works, specifically designed to ensure +cooperation with the community in the case of network server software. + + The licenses for most software and other practical works are designed +to take away your freedom to share and change the works. By contrast, +our General Public Licenses are intended to guarantee your freedom to +share and change all versions of a program--to make sure it remains free +software for all its users. + + 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 +them 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. + + Developers that use our General Public Licenses protect your rights +with two steps: (1) assert copyright on the software, and (2) offer +you this License which gives you legal permission to copy, distribute +and/or modify the software. + + A secondary benefit of defending all users' freedom is that +improvements made in alternate versions of the program, if they +receive widespread use, become available for other developers to +incorporate. Many developers of free software are heartened and +encouraged by the resulting cooperation. However, in the case of +software used on network servers, this result may fail to come about. +The GNU General Public License permits making a modified version and +letting the public access it on a server without ever releasing its +source code to the public. + + The GNU Affero General Public License is designed specifically to +ensure that, in such cases, the modified source code becomes available +to the community. It requires the operator of a network server to +provide the source code of the modified version running there to the +users of that server. Therefore, public use of a modified version, on +a publicly accessible server, gives the public access to the source +code of the modified version. + + An older license, called the Affero General Public License and +published by Affero, was designed to accomplish similar goals. This is +a different license, not a version of the Affero GPL, but Affero has +released a new version of the Affero GPL which permits relicensing under +this license. + + The precise terms and conditions for copying, distribution and +modification follow. + + TERMS AND CONDITIONS + + 0. Definitions. + + "This License" refers to version 3 of the GNU Affero General Public License. + + "Copyright" also means copyright-like laws that apply to other kinds of +works, such as semiconductor masks. + + "The Program" refers to any copyrightable work licensed under this +License. Each licensee is addressed as "you". "Licensees" and +"recipients" may be individuals or organizations. + + To "modify" a work means to copy from or adapt all or part of the work +in a fashion requiring copyright permission, other than the making of an +exact copy. The resulting work is called a "modified version" of the +earlier work or a work "based on" the earlier work. + + A "covered work" means either the unmodified Program or a work based +on the Program. + + To "propagate" a work means to do anything with it that, without +permission, would make you directly or secondarily liable for +infringement under applicable copyright law, except executing it on a +computer or modifying a private copy. Propagation includes copying, +distribution (with or without modification), making available to the +public, and in some countries other activities as well. + + To "convey" a work means any kind of propagation that enables other +parties to make or receive copies. Mere interaction with a user through +a computer network, with no transfer of a copy, is not conveying. + + An interactive user interface displays "Appropriate Legal Notices" +to the extent that it includes a convenient and prominently visible +feature that (1) displays an appropriate copyright notice, and (2) +tells the user that there is no warranty for the work (except to the +extent that warranties are provided), that licensees may convey the +work under this License, and how to view a copy of this License. If +the interface presents a list of user commands or options, such as a +menu, a prominent item in the list meets this criterion. + + 1. Source Code. + + The "source code" for a work means the preferred form of the work +for making modifications to it. "Object code" means any non-source +form of a work. + + A "Standard Interface" means an interface that either is an official +standard defined by a recognized standards body, or, in the case of +interfaces specified for a particular programming language, one that +is widely used among developers working in that language. + + The "System Libraries" of an executable work include anything, other +than the work as a whole, that (a) is included in the normal form of +packaging a Major Component, but which is not part of that Major +Component, and (b) serves only to enable use of the work with that +Major Component, or to implement a Standard Interface for which an +implementation is available to the public in source code form. A +"Major Component", in this context, means a major essential component +(kernel, window system, and so on) of the specific operating system +(if any) on which the executable work runs, or a compiler used to +produce the work, or an object code interpreter used to run it. + + The "Corresponding Source" for a work in object code form means all +the source code needed to generate, install, and (for an executable +work) run the object code and to modify the work, including scripts to +control those activities. However, it does not include the work's +System Libraries, or general-purpose tools or generally available free +programs which are used unmodified in performing those activities but +which are not part of the work. For example, Corresponding Source +includes interface definition files associated with source files for +the work, and the source code for shared libraries and dynamically +linked subprograms that the work is specifically designed to require, +such as by intimate data communication or control flow between those +subprograms and other parts of the work. + + The Corresponding Source need not include anything that users +can regenerate automatically from other parts of the Corresponding +Source. + + The Corresponding Source for a work in source code form is that +same work. + + 2. Basic Permissions. + + All rights granted under this License are granted for the term of +copyright on the Program, and are irrevocable provided the stated +conditions are met. This License explicitly affirms your unlimited +permission to run the unmodified Program. The output from running a +covered work is covered by this License only if the output, given its +content, constitutes a covered work. This License acknowledges your +rights of fair use or other equivalent, as provided by copyright law. + + You may make, run and propagate covered works that you do not +convey, without conditions so long as your license otherwise remains +in force. You may convey covered works to others for the sole purpose +of having them make modifications exclusively for you, or provide you +with facilities for running those works, provided that you comply with +the terms of this License in conveying all material for which you do +not control copyright. Those thus making or running the covered works +for you must do so exclusively on your behalf, under your direction +and control, on terms that prohibit them from making any copies of +your copyrighted material outside their relationship with you. + + Conveying under any other circumstances is permitted solely under +the conditions stated below. Sublicensing is not allowed; section 10 +makes it unnecessary. + + 3. Protecting Users' Legal Rights From Anti-Circumvention Law. + + No covered work shall be deemed part of an effective technological +measure under any applicable law fulfilling obligations under article +11 of the WIPO copyright treaty adopted on 20 December 1996, or +similar laws prohibiting or restricting circumvention of such +measures. + + When you convey a covered work, you waive any legal power to forbid +circumvention of technological measures to the extent such circumvention +is effected by exercising rights under this License with respect to +the covered work, and you disclaim any intention to limit operation or +modification of the work as a means of enforcing, against the work's +users, your or third parties' legal rights to forbid circumvention of +technological measures. + + 4. Conveying Verbatim Copies. + + You may convey 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; +keep intact all notices stating that this License and any +non-permissive terms added in accord with section 7 apply to the code; +keep intact all notices of the absence of any warranty; and give all +recipients a copy of this License along with the Program. + + You may charge any price or no price for each copy that you convey, +and you may offer support or warranty protection for a fee. + + 5. Conveying Modified Source Versions. + + You may convey a work based on the Program, or the modifications to +produce it from the Program, in the form of source code under the +terms of section 4, provided that you also meet all of these conditions: + + a) The work must carry prominent notices stating that you modified + it, and giving a relevant date. + + b) The work must carry prominent notices stating that it is + released under this License and any conditions added under section + 7. This requirement modifies the requirement in section 4 to + "keep intact all notices". + + c) You must license the entire work, as a whole, under this + License to anyone who comes into possession of a copy. This + License will therefore apply, along with any applicable section 7 + additional terms, to the whole of the work, and all its parts, + regardless of how they are packaged. This License gives no + permission to license the work in any other way, but it does not + invalidate such permission if you have separately received it. + + d) If the work has interactive user interfaces, each must display + Appropriate Legal Notices; however, if the Program has interactive + interfaces that do not display Appropriate Legal Notices, your + work need not make them do so. + + A compilation of a covered work with other separate and independent +works, which are not by their nature extensions of the covered work, +and which are not combined with it such as to form a larger program, +in or on a volume of a storage or distribution medium, is called an +"aggregate" if the compilation and its resulting copyright are not +used to limit the access or legal rights of the compilation's users +beyond what the individual works permit. Inclusion of a covered work +in an aggregate does not cause this License to apply to the other +parts of the aggregate. + + 6. Conveying Non-Source Forms. + + You may convey a covered work in object code form under the terms +of sections 4 and 5, provided that you also convey the +machine-readable Corresponding Source under the terms of this License, +in one of these ways: + + a) Convey the object code in, or embodied in, a physical product + (including a physical distribution medium), accompanied by the + Corresponding Source fixed on a durable physical medium + customarily used for software interchange. + + b) Convey the object code in, or embodied in, a physical product + (including a physical distribution medium), accompanied by a + written offer, valid for at least three years and valid for as + long as you offer spare parts or customer support for that product + model, to give anyone who possesses the object code either (1) a + copy of the Corresponding Source for all the software in the + product that is covered by this License, on a durable physical + medium customarily used for software interchange, for a price no + more than your reasonable cost of physically performing this + conveying of source, or (2) access to copy the + Corresponding Source from a network server at no charge. + + c) Convey individual copies of the object code with a copy of the + written offer to provide the Corresponding Source. This + alternative is allowed only occasionally and noncommercially, and + only if you received the object code with such an offer, in accord + with subsection 6b. + + d) Convey the object code by offering access from a designated + place (gratis or for a charge), and offer equivalent access to the + Corresponding Source in the same way through the same place at no + further charge. You need not require recipients to copy the + Corresponding Source along with the object code. If the place to + copy the object code is a network server, the Corresponding Source + may be on a different server (operated by you or a third party) + that supports equivalent copying facilities, provided you maintain + clear directions next to the object code saying where to find the + Corresponding Source. Regardless of what server hosts the + Corresponding Source, you remain obligated to ensure that it is + available for as long as needed to satisfy these requirements. + + e) Convey the object code using peer-to-peer transmission, provided + you inform other peers where the object code and Corresponding + Source of the work are being offered to the general public at no + charge under subsection 6d. + + A separable portion of the object code, whose source code is excluded +from the Corresponding Source as a System Library, need not be +included in conveying the object code work. + + A "User Product" is either (1) a "consumer product", which means any +tangible personal property which is normally used for personal, family, +or household purposes, or (2) anything designed or sold for incorporation +into a dwelling. In determining whether a product is a consumer product, +doubtful cases shall be resolved in favor of coverage. For a particular +product received by a particular user, "normally used" refers to a +typical or common use of that class of product, regardless of the status +of the particular user or of the way in which the particular user +actually uses, or expects or is expected to use, the product. A product +is a consumer product regardless of whether the product has substantial +commercial, industrial or non-consumer uses, unless such uses represent +the only significant mode of use of the product. + + "Installation Information" for a User Product means any methods, +procedures, authorization keys, or other information required to install +and execute modified versions of a covered work in that User Product from +a modified version of its Corresponding Source. The information must +suffice to ensure that the continued functioning of the modified object +code is in no case prevented or interfered with solely because +modification has been made. + + If you convey an object code work under this section in, or with, or +specifically for use in, a User Product, and the conveying occurs as +part of a transaction in which the right of possession and use of the +User Product is transferred to the recipient in perpetuity or for a +fixed term (regardless of how the transaction is characterized), the +Corresponding Source conveyed under this section must be accompanied +by the Installation Information. But this requirement does not apply +if neither you nor any third party retains the ability to install +modified object code on the User Product (for example, the work has +been installed in ROM). + + The requirement to provide Installation Information does not include a +requirement to continue to provide support service, warranty, or updates +for a work that has been modified or installed by the recipient, or for +the User Product in which it has been modified or installed. Access to a +network may be denied when the modification itself materially and +adversely affects the operation of the network or violates the rules and +protocols for communication across the network. + + Corresponding Source conveyed, and Installation Information provided, +in accord with this section must be in a format that is publicly +documented (and with an implementation available to the public in +source code form), and must require no special password or key for +unpacking, reading or copying. + + 7. Additional Terms. + + "Additional permissions" are terms that supplement the terms of this +License by making exceptions from one or more of its conditions. +Additional permissions that are applicable to the entire Program shall +be treated as though they were included in this License, to the extent +that they are valid under applicable law. If additional permissions +apply only to part of the Program, that part may be used separately +under those permissions, but the entire Program remains governed by +this License without regard to the additional permissions. + + When you convey a copy of a covered work, you may at your option +remove any additional permissions from that copy, or from any part of +it. (Additional permissions may be written to require their own +removal in certain cases when you modify the work.) You may place +additional permissions on material, added by you to a covered work, +for which you have or can give appropriate copyright permission. + + Notwithstanding any other provision of this License, for material you +add to a covered work, you may (if authorized by the copyright holders of +that material) supplement the terms of this License with terms: + + a) Disclaiming warranty or limiting liability differently from the + terms of sections 15 and 16 of this License; or + + b) Requiring preservation of specified reasonable legal notices or + author attributions in that material or in the Appropriate Legal + Notices displayed by works containing it; or + + c) Prohibiting misrepresentation of the origin of that material, or + requiring that modified versions of such material be marked in + reasonable ways as different from the original version; or + + d) Limiting the use for publicity purposes of names of licensors or + authors of the material; or + + e) Declining to grant rights under trademark law for use of some + trade names, trademarks, or service marks; or + + f) Requiring indemnification of licensors and authors of that + material by anyone who conveys the material (or modified versions of + it) with contractual assumptions of liability to the recipient, for + any liability that these contractual assumptions directly impose on + those licensors and authors. + + All other non-permissive additional terms are considered "further +restrictions" within the meaning of section 10. If the Program as you +received it, or any part of it, contains a notice stating that it is +governed by this License along with a term that is a further +restriction, you may remove that term. If a license document contains +a further restriction but permits relicensing or conveying under this +License, you may add to a covered work material governed by the terms +of that license document, provided that the further restriction does +not survive such relicensing or conveying. + + If you add terms to a covered work in accord with this section, you +must place, in the relevant source files, a statement of the +additional terms that apply to those files, or a notice indicating +where to find the applicable terms. + + Additional terms, permissive or non-permissive, may be stated in the +form of a separately written license, or stated as exceptions; +the above requirements apply either way. + + 8. Termination. + + You may not propagate or modify a covered work except as expressly +provided under this License. Any attempt otherwise to propagate or +modify it is void, and will automatically terminate your rights under +this License (including any patent licenses granted under the third +paragraph of section 11). + + However, if you cease all violation of this License, then your +license from a particular copyright holder is reinstated (a) +provisionally, unless and until the copyright holder explicitly and +finally terminates your license, and (b) permanently, if the copyright +holder fails to notify you of the violation by some reasonable means +prior to 60 days after the cessation. + + Moreover, your license from a particular copyright holder is +reinstated permanently if the copyright holder notifies you of the +violation by some reasonable means, this is the first time you have +received notice of violation of this License (for any work) from that +copyright holder, and you cure the violation prior to 30 days after +your receipt of the notice. + + Termination of your rights under this section does not terminate the +licenses of parties who have received copies or rights from you under +this License. If your rights have been terminated and not permanently +reinstated, you do not qualify to receive new licenses for the same +material under section 10. + + 9. Acceptance Not Required for Having Copies. + + You are not required to accept this License in order to receive or +run a copy of the Program. Ancillary propagation of a covered work +occurring solely as a consequence of using peer-to-peer transmission +to receive a copy likewise does not require acceptance. However, +nothing other than this License grants you permission to propagate or +modify any covered work. These actions infringe copyright if you do +not accept this License. Therefore, by modifying or propagating a +covered work, you indicate your acceptance of this License to do so. + + 10. Automatic Licensing of Downstream Recipients. + + Each time you convey a covered work, the recipient automatically +receives a license from the original licensors, to run, modify and +propagate that work, subject to this License. You are not responsible +for enforcing compliance by third parties with this License. + + An "entity transaction" is a transaction transferring control of an +organization, or substantially all assets of one, or subdividing an +organization, or merging organizations. If propagation of a covered +work results from an entity transaction, each party to that +transaction who receives a copy of the work also receives whatever +licenses to the work the party's predecessor in interest had or could +give under the previous paragraph, plus a right to possession of the +Corresponding Source of the work from the predecessor in interest, if +the predecessor has it or can get it with reasonable efforts. + + You may not impose any further restrictions on the exercise of the +rights granted or affirmed under this License. For example, you may +not impose a license fee, royalty, or other charge for exercise of +rights granted under this License, and you may not initiate litigation +(including a cross-claim or counterclaim in a lawsuit) alleging that +any patent claim is infringed by making, using, selling, offering for +sale, or importing the Program or any portion of it. + + 11. Patents. + + A "contributor" is a copyright holder who authorizes use under this +License of the Program or a work on which the Program is based. The +work thus licensed is called the contributor's "contributor version". + + A contributor's "essential patent claims" are all patent claims +owned or controlled by the contributor, whether already acquired or +hereafter acquired, that would be infringed by some manner, permitted +by this License, of making, using, or selling its contributor version, +but do not include claims that would be infringed only as a +consequence of further modification of the contributor version. For +purposes of this definition, "control" includes the right to grant +patent sublicenses in a manner consistent with the requirements of +this License. + + Each contributor grants you a non-exclusive, worldwide, royalty-free +patent license under the contributor's essential patent claims, to +make, use, sell, offer for sale, import and otherwise run, modify and +propagate the contents of its contributor version. + + In the following three paragraphs, a "patent license" is any express +agreement or commitment, however denominated, not to enforce a patent +(such as an express permission to practice a patent or covenant not to +sue for patent infringement). To "grant" such a patent license to a +party means to make such an agreement or commitment not to enforce a +patent against the party. + + If you convey a covered work, knowingly relying on a patent license, +and the Corresponding Source of the work is not available for anyone +to copy, free of charge and under the terms of this License, through a +publicly available network server or other readily accessible means, +then you must either (1) cause the Corresponding Source to be so +available, or (2) arrange to deprive yourself of the benefit of the +patent license for this particular work, or (3) arrange, in a manner +consistent with the requirements of this License, to extend the patent +license to downstream recipients. "Knowingly relying" means you have +actual knowledge that, but for the patent license, your conveying the +covered work in a country, or your recipient's use of the covered work +in a country, would infringe one or more identifiable patents in that +country that you have reason to believe are valid. + + If, pursuant to or in connection with a single transaction or +arrangement, you convey, or propagate by procuring conveyance of, a +covered work, and grant a patent license to some of the parties +receiving the covered work authorizing them to use, propagate, modify +or convey a specific copy of the covered work, then the patent license +you grant is automatically extended to all recipients of the covered +work and works based on it. + + A patent license is "discriminatory" if it does not include within +the scope of its coverage, prohibits the exercise of, or is +conditioned on the non-exercise of one or more of the rights that are +specifically granted under this License. You may not convey a covered +work if you are a party to an arrangement with a third party that is +in the business of distributing software, under which you make payment +to the third party based on the extent of your activity of conveying +the work, and under which the third party grants, to any of the +parties who would receive the covered work from you, a discriminatory +patent license (a) in connection with copies of the covered work +conveyed by you (or copies made from those copies), or (b) primarily +for and in connection with specific products or compilations that +contain the covered work, unless you entered into that arrangement, +or that patent license was granted, prior to 28 March 2007. + + Nothing in this License shall be construed as excluding or limiting +any implied license or other defenses to infringement that may +otherwise be available to you under applicable patent law. + + 12. No Surrender of Others' Freedom. + + If 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 convey a +covered work so as to satisfy simultaneously your obligations under this +License and any other pertinent obligations, then as a consequence you may +not convey it at all. For example, if you agree to terms that obligate you +to collect a royalty for further conveying from those to whom you convey +the Program, the only way you could satisfy both those terms and this +License would be to refrain entirely from conveying the Program. + + 13. Remote Network Interaction; Use with the GNU General Public License. + + Notwithstanding any other provision of this License, if you modify the +Program, your modified version must prominently offer all users +interacting with it remotely through a computer network (if your version +supports such interaction) an opportunity to receive the Corresponding +Source of your version by providing access to the Corresponding Source +from a network server at no charge, through some standard or customary +means of facilitating copying of software. This Corresponding Source +shall include the Corresponding Source for any work covered by version 3 +of the GNU General Public License that is incorporated pursuant to the +following paragraph. + + Notwithstanding any other provision of this License, you have +permission to link or combine any covered work with a work licensed +under version 3 of the GNU General Public License into a single +combined work, and to convey the resulting work. The terms of this +License will continue to apply to the part which is the covered work, +but the work with which it is combined will remain governed by version +3 of the GNU General Public License. + + 14. Revised Versions of this License. + + The Free Software Foundation may publish revised and/or new versions of +the GNU Affero 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 that a certain numbered version of the GNU Affero General +Public License "or any later version" applies to it, you have the +option of following the terms and conditions either of that numbered +version or of any later version published by the Free Software +Foundation. If the Program does not specify a version number of the +GNU Affero General Public License, you may choose any version ever published +by the Free Software Foundation. + + If the Program specifies that a proxy can decide which future +versions of the GNU Affero General Public License can be used, that proxy's +public statement of acceptance of a version permanently authorizes you +to choose that version for the Program. + + Later license versions may give you additional or different +permissions. However, no additional obligations are imposed on any +author or copyright holder as a result of your choosing to follow a +later version. + + 15. Disclaimer of Warranty. + + 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. + + 16. Limitation of Liability. + + IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING +WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MODIFIES AND/OR CONVEYS +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. + + 17. Interpretation of Sections 15 and 16. + + If the disclaimer of warranty and limitation of liability provided +above cannot be given local legal effect according to their terms, +reviewing courts shall apply local law that most closely approximates +an absolute waiver of all civil liability in connection with the +Program, unless a warranty or assumption of liability accompanies a +copy of the Program in return for a fee. + + END OF TERMS AND CONDITIONS \ No newline at end of file diff --git a/muk_web_preview_image/README.md b/muk_web_preview_image/README.md new file mode 100644 index 0000000..5c771a3 --- /dev/null +++ b/muk_web_preview_image/README.md @@ -0,0 +1,24 @@ +# MuK Preview Image + +Extendes the Preview Dialog to support images. Currently the following image extensions are supported: + +* CIS-Cod-Dateien (*.cod, image/cis-cod) +* CMU-Raster-Dateien (*.ras, image/cmu-raster) +* FIF-Dateien (*.fif, image/fif) +* GIF-Dateien (*.gif, image/gif) +* IEF-Dateien (*.ief, image/ief) +* JPEG-Dateien (*.jpeg *.jpg *.jpe, image/jpeg) +* PNG-Dateien (*.png, image/png) +* TIFF-Dateien (*.tiff *.tif, image/tiff) +* Vasa-Dateien (*.mcf, image/vasa) +* Bitmap-Dateien (WAP) (*.wbmp, image/vnd.wap.wbmp) +* Freehand-Dateien (*.fh4 *.fh5 *.fhc, image/x-freehand) +* Icon-Dateien (*.ico, image/x-icon) +* PBM Anymap Dateien (*.pnm, image/x-portable-anymap) +* PBM Bitmap Dateien (*.pbm, image/x-portable-bitmap) +* PBM Graymap Dateien (*.pgm, image/x-portable-graymap) +* PBM Pixmap Dateien (*.ppm, image/x-portable-pixmap) +* RGB-Dateien (*.rgb, image/x-rgb) +* X-Windows Dump (*.xwd, image/x-windowdump) +* XBM-Dateien (*.xbm, image/x-xbitmap) +* XPM-Dateien (*.xpm, image/x-xpixmap) \ No newline at end of file diff --git a/muk_web_preview_image/__init__.py b/muk_web_preview_image/__init__.py new file mode 100644 index 0000000..48ccf85 --- /dev/null +++ b/muk_web_preview_image/__init__.py @@ -0,0 +1,20 @@ +# -*- coding: utf-8 -*- + +################################################################################### +# +# Copyright (C) 2017 MuK IT GmbH +# +# This program is free software: you can redistribute it and/or modify +# it under the terms of the GNU Affero General Public License as +# published by the Free Software Foundation, either version 3 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 Affero General Public License for more details. +# +# You should have received a copy of the GNU Affero General Public License +# along with this program. If not, see . +# +################################################################################### diff --git a/muk_web_preview_image/__manifest__.py b/muk_web_preview_image/__manifest__.py new file mode 100644 index 0000000..cb9e784 --- /dev/null +++ b/muk_web_preview_image/__manifest__.py @@ -0,0 +1,78 @@ +# -*- coding: utf-8 -*- + +################################################################################### +# +# Copyright (C) 2017 MuK IT GmbH +# +# This program is free software: you can redistribute it and/or modify +# it under the terms of the GNU Affero General Public License as +# published by the Free Software Foundation, either version 3 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 Affero General Public License for more details. +# +# You should have received a copy of the GNU Affero General Public License +# along with this program. If not, see . +# +################################################################################### + +{ + "name": "MuK Preview Image", + "summary": """Image Preview""", + "description": """ + Extendes the Preview Dialog to support images. + Currently the following image extensions are supported: + - CIS-Cod-Dateien (*.cod, image/cis-cod) + - CMU-Raster-Dateien (*.ras, image/cmu-raster) + - FIF-Dateien (*.fif, image/fif) + - GIF-Dateien (*.gif, image/gif) + - IEF-Dateien (*.ief, image/ief) + - JPEG-Dateien (*.jpeg *.jpg *.jpe, image/jpeg) + - PNG-Dateien (*.png, image/png) + - TIFF-Dateien (*.tiff *.tif, image/tiff) + - Vasa-Dateien (*.mcf, image/vasa) + - Bitmap-Dateien (WAP) (*.wbmp, image/vnd.wap.wbmp) + - Freehand-Dateien (*.fh4 *.fh5 *.fhc, image/x-freehand) + - Icon-Dateien (*.ico, image/x-icon) + - PBM Anymap Dateien (*.pnm, image/x-portable-anymap) + - PBM Bitmap Dateien (*.pbm, image/x-portable-bitmap) + - PBM Graymap Dateien (*.pgm, image/x-portable-graymap) + - PBM Pixmap Dateien (*.ppm, image/x-portable-pixmap) + - RGB-Dateien (*.rgb, image/x-rgb) + - X-Windows Dump (*.xwd, image/x-windowdump) + - XBM-Dateien (*.xbm, image/x-xbitmap) + - XPM-Dateien (*.xpm, image/x-xpixmap) + """, + "version": "10.0.1.0.0", + "category": "Extra Tools", + "license": "AGPL-3", + "website": "http://www.mukit.at", + "author": "MuK IT", + "contributors": [ + "Mathias Markl ", + ], + "depends": [ + "muk_web_preview", + ], + "data": [ + "template/assets.xml", + ], + "demo": [ + ], + "qweb": [ + "static/src/xml/*.xml", + ], + "images": [ + 'static/description/banner.png' + ], + "external_dependencies": { + "python": [], + "bin": [], + }, + "application": False, + "installable": True, + +} \ No newline at end of file diff --git a/muk_web_preview_image/static/description/banner.png b/muk_web_preview_image/static/description/banner.png new file mode 100644 index 0000000000000000000000000000000000000000..86ff1eba0c3dc4d451a8360b0cfbd189597b06be GIT binary patch literal 108968 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

Qf#tQH~Q1fB)Q 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 mz^q8QPvG?cI2CT@{3DW6j=zVGK&i&S01< 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 hCH=p?e^ +

+ + +
+
+
+

Overview

+

Extendes the Preview Dialog to support images. + Currently the following image extensions are supported:

+

+ CIS-Cod-Dateien (*.cod, + image/cis-cod)
+ CMU-Raster-Dateien (*.ras, image/cmu-raster)
FIF-Dateien (*.fif, + image/fif)
+ GIF-Dateien (*.gif, image/gif)
+ ☑ IEF-Dateien (*.ief, image/ief)
JPEG-Dateien (*.jpeg *.jpg + *.jpe, image/jpeg)
+ ☑ PNG-Dateien (*.png, image/png)
TIFF-Dateien (*.tiff *.tif, + image/tiff)
+ Vasa-Dateien (*.mcf, image/vasa)
+ ☑ Bitmap-Dateien (WAP) (*.wbmp, image/vnd.wap.wbmp)
+ Freehand-Dateien (*.fh4 + *.fh5 *.fhc, image/x-freehand)
+ ☑ Icon-Dateien (*.ico, image/x-icon)
PBM Anymap Dateien (*.pnm, + image/x-portable-anymap)
+ ☑ PBM Bitmap Dateien (*.pbm, image/x-portable-bitmap)
+ PBM Graymap Dateien + (*.pgm, image/x-portable-graymap)
PBM Pixmap Dateien (*.ppm, + image/x-portable-pixmap)
+ ☑ RGB-Dateien (*.rgb, image/x-rgb)
X-Windows Dump (*.xwd, + image/x-windowdump)
+ ☑ XBM-Dateien (*.xbm, image/x-xbitmap)
XPM-Dateien (*.xpm, + image/x-xpixmap)
+

+
+
+
+ +
+

Help and Support

+
+ +
\ No newline at end of file diff --git a/muk_web_preview_image/static/description/logo.png b/muk_web_preview_image/static/description/logo.png new file mode 100644 index 0000000000000000000000000000000000000000..9427ce33ea36c2ec961356d01d612bae02d48ce2 GIT binary patch literal 38064 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 literal 0 HcmV?d00001 diff --git a/muk_web_preview_image/static/description/screenshot.png b/muk_web_preview_image/static/description/screenshot.png new file mode 100644 index 0000000000000000000000000000000000000000..b9fc3a253961a34af97b8991b4755d1e1046d6ac GIT binary patch literal 54217 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
    h#&G<>$ z-1B>W;#6g02^{*&3EEfN{rz}MXH`2e-?5gcoU>3nze+?AD4GjY zzs_J$PxYAVojV`Y-29XMnlLo0IlG&L$6Gz`tf_-V7OT9A0ap0mNvc%4dFtRmRFt~& z($tprwuu$|s*%5$L%cj*9d`70G4>8l?YvPjUkZ%*Y)9V;%4TeJ;N=$j+~}!f(FSju zK|w=fo9aRP?>=P+1NA~cPN-8SG&Z0<-M1v8z>|ErwdJX3pGhu4KNg>Wzc&9t?=GJE z6NxvR`RD6z?#ZSVov*Jxl4gA_oBu{BcK}$k=SpwPIemD4zKZ&qU+Z!;+@8Beki41= zyPb5;1%;82{>!4d<1pn+=crzHs$yn#k+~g1?V9%?UUtXFNmr*632u8CQiCTY7D9VJ z!S8r?u`dDTKfGvZYb!M_uH9wt__RgMM3}_N6M|ri8Uepkl6k8l@9z0=#Bb;4II<+? zKJ}qil)YQsbp5&T8)2gH537&sci+LLp;i0j89LzcvysJq?eG#8!RXt9oWk#B26fII z&D!P|15OdUZ7lcp*y>pB9^lmqRv3eGj@P+jp=isKx%7dfhf^3sS4qmB^=Dvee9f3F z^k4VS4^;ACu9BLxLqtmTmp5#sOc$_1Ft5&(Pr?!xn6G?Wi*IOKhc5H`Qgn`=-q*I; z-nYF%_%sj*Kndo?Q69#SO3KqWF_n|@m*}~JHw@e7+bf!k%W-m7rmr^N1hj3tnQe3+ z@7*94l^4Y9-F%euWNH(D?5k-Do0)JWyM)A6bAA=~K@ok3!}usc(anW!`hT}}{VKoR z-EsF*ASCW`^78QkfAB~!G3&l0^zZebENx&ka({V>KDR+Rk`nz12luts_;#Pq#jk|E zkI}S6xn`CK^-@lo-gMDF73V*E|J7CEprljEQ)cMy;L&gwW#Qo@%>L+fbaBvyX+fA2 z*A<~!&-{B_tK*mkJ?i|}w@g$ZDzR>6xY2cN++vAvOaVufn~T`TX|oS6H*moMfD81saBXffVxce9Tno97Y#G4p^6i_%I-c$B&u1Y4C&^4!z_xL+ zH=fLzloW0%{px-GVRrN865=!r5w?|_L)5$CV$C>KUEI+;8MdP!!yv%38`0<`Pmb&3 zR^3ox(ebC{PIr>)os&FVu|-Dot@X9bNgbUn1nK8YIc0R;k2p#+1s0ZD>WvMi;6o{O zj6I8bL1ydXl6`%@^>uZ+h1Y66B%%^vrvgIye$!gGpP?C_X>to`=0!E^{kjC!zdVOU z8oODv{=EbpR`IxS^c~AF&g>ub@_*4}(nB&dMC|9$UOo7NKDc{WNhsI12 z1A6#Kgta$)-w*zhw|BeRx;hloFp1k!V$IIt!tcy8zlRKZButC|m(^c&I$d>d1(7hn zXateI#yQyDMn^~A-romfAEtyE9J?TqPT5YnZ#}ipn(nxXUpU&A&ZpMV9c<4tc7tzt=G5^^O z)q!+AFN(&igGQ)6wXN3$s5Y1r8A36wYcX7<=YH-g7z73eU7erSI(1of#|bw+1&YD_ ztZ?ch?t-z^M3o&R-IRK@o#6vAOQbKoypOkk1!)eDx&a}rAe>dBAG-DMui3RUPp?=N ztl^+pba2?~=s*u=^GU-+nzl@+bS%CeYf8c$HL&cRu&4o+mjiy=G{C5;Z;arF=_&^M;^~yMU39u+`Du z*rN57kE&;hNj~}N^hwJq|M>=|pBMRQF zTJEO^F)aglN!KAIyWDS6)?`MSN84@@mg8ld9Booq!{ZBo3Jc2SS`M76-}f*`gn3<3 zMO-xwYZqCVmv_s4bHe_heKOiF-G}!puwAg0dJtbGR4~c&KJPQu@7zzlHJ=|YiKpu1 z#iolgLW}>*>()}nE#^mOrm~;`jsj

    yb18%w6thyGV1*>3s&3cv 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 literal 0 HcmV?d00001 diff --git a/muk_web_preview_image/static/lib/imageviewer/imageviewer.css b/muk_web_preview_image/static/lib/imageviewer/imageviewer.css new file mode 100644 index 0000000..1ec21d6 --- /dev/null +++ b/muk_web_preview_image/static/lib/imageviewer/imageviewer.css @@ -0,0 +1,226 @@ +/* + ImageViewer v 1.1.0 + Author: Sudhanshu Yadav + Copyright (c) 2015 to Sudhanshu Yadav - ignitersworld.com , released under the MIT license. + Demo on: http://ignitersworld.com/lab/imageViewer.html +*/ + +/***** image viewer css *****/ +#iv-container { + position: fixed; + background: #0d0d0d; + width: 100%; + height: 100%; + top: 0; + left: 0; + display: none; + z-index: 1000; +} + +.iv-container { + overflow: hidden; +} + +.iv-close { + width: 32px; + height: 32px; + position: absolute; + right: 20px; + top: 20px; + cursor: pointer; + text-align: center; + overflow: hidden; + text-shadow: 0px 0px 3px #6d6d6d; + -webkit-transition: all ease 200ms; + -moz-transition: all ease 200ms; + -o-transition: all ease 200ms; + transition: all ease 200ms; +} +.iv-close:after, +.iv-close:before { + content: ""; + height: 4px; + width: 32px; + background: #FFF; + position: absolute; + left: 0; + top: 50%; + margin-top: -2px; +} +.iv-close:before { + -webkit-transform: rotate(45deg); + -moz-transform: rotate(45deg); + -ms-transform: rotate(45deg); + -o-transform: rotate(45deg); + transform: rotate(45deg); +} +.iv-close:after { + -webkit-transform: rotate(-45deg); + -moz-transform: rotate(-45deg); + -ms-transform: rotate(-45deg); + -o-transform: rotate(-45deg); + transform: rotate(-45deg); +} +.iv-close:hover { + -webkit-transform: rotate(90deg); + -moz-transform: rotate(90deg); + -ms-transform: rotate(90deg); + -o-transform: rotate(90deg); + transform: rotate(90deg); +} +/***** snap view css *****/ +.iv-snap-view { + width: 150px; + height: 150px; + position: absolute; + top: 20px; + left: 20px; + border: 1px solid #666; + background: black; + z-index: 100; + -webkit-box-sizing: content-box; + -moz-box-sizing: content-box; + box-sizing: content-box; + -webkit-transition: all ease 400ms; + -moz-transition: all ease 400ms; + -o-transition: all ease 400ms; + transition: all ease 400ms; + opacity: 0; +} + +.iv-snap-image-wrap { + display: inline-block; + position: absolute; + max-width: 150px; + max-height: 150px; + top: 50%; + left: 50%; + -webkit-transform: translate(-50%, -50%); + -moz-transform: translate(-50%, -50%); + -ms-transform: translate(-50%, -50%); + -o-transform: translate(-50%, -50%); + transform: translate(-50%, -50%); + overflow: hidden; +} + +.iv-snap-image { + position: relative; +} + +.iv-snap-handle { + position: absolute; + border: 1px solid #ccc; + -webkit-transform: translate3d(0, 0, 0); + -moz-transform: translate3d(0, 0, 0); + -ms-transform: translate3d(0, 0, 0); + -o-transform: translate3d(0, 0, 0); + transform: translate3d(0, 0, 0); + -webkit-box-shadow: 0px 0px 0px 200px rgba(0, 0, 0, 0.5); + -moz-box-shadow: 0px 0px 0px 200px rgba(0, 0, 0, 0.5); + box-shadow: 0px 0px 0px 200px rgba(0, 0, 0, 0.5); +} + +/*** zoom slider ***/ +.iv-zoom-slider { + width: 100%; + -webkit-box-sizing: content-box; + -moz-box-sizing: content-box; + box-sizing: content-box; + border: 1px solid #666; + border-top: 0; + background: rgba(204, 204, 204, 0.1); + height: 15px; + position: absolute; + top: 150px; + left: -1px; +} + +.iv-zoom-handle { + width: 20px; + height: 15px; + background: #ccc; + position: absolute; +} + +/**** snap view css end *****/ +.iv-image-view { + position: absolute; + height: 100%; + width: 100%; +} + +.iv-image-wrap { + display: inline-block; +} + +.iv-image-wrap:active { + cursor: move; +} + +.iv-large-image { + max-width: 100%; + max-height: 100%; + position: absolute; + -webkit-transform: translate3d(0, 0, 0); + -moz-transform: translate3d(0, 0, 0); + -ms-transform: translate3d(0, 0, 0); + -o-transform: translate3d(0, 0, 0); + transform: translate3d(0, 0, 0); +} + +/****** CSS loader by http://projects.lukehaas.me/css-loaders/ *****/ +.iv-loader { + top: 50%; + left: 50%; + border-radius: 50%; + width: 32px; + height: 32px; + z-index: 100; + margin-top: -16px; + margin-left: -16px; + font-size: 5px; + position: absolute; + text-indent: -9999em; + border-top: 1.1em solid rgba(255, 255, 255, 0.2); + border-right: 1.1em solid rgba(255, 255, 255, 0.2); + border-bottom: 1.1em solid rgba(255, 255, 255, 0.2); + border-left: 1.1em solid #ffffff; + -webkit-transform: translateZ(0); + -ms-transform: translateZ(0); + transform: translateZ(0); + -webkit-animation: load8 1.1s infinite linear; + animation: load8 1.1s infinite linear; +} +.iv-loader:after { + width: 10em; + height: 10em; + border-radius: 50%; +} +@-webkit-keyframes load8 { + 0% { + -webkit-transform: rotate(0deg); + transform: rotate(0deg); + } + 100% { + -webkit-transform: rotate(360deg); + transform: rotate(360deg); + } +} +@keyframes load8 { + 0% { + -webkit-transform: rotate(0deg); + transform: rotate(0deg); + } + 100% { + -webkit-transform: rotate(360deg); + transform: rotate(360deg); + } +} + + +@media screen and (max-width: 767px) { + .iv-snap-view { + z-index: -1; + visibility: hidden; + } +} \ No newline at end of file diff --git a/muk_web_preview_image/static/lib/imageviewer/imageviewer.js b/muk_web_preview_image/static/lib/imageviewer/imageviewer.js new file mode 100644 index 0000000..cca84e2 --- /dev/null +++ b/muk_web_preview_image/static/lib/imageviewer/imageviewer.js @@ -0,0 +1,788 @@ +/* + ImageViewer v 1.1.3 + Author: Sudhanshu Yadav + Copyright (c) 2015-2016 to Sudhanshu Yadav - ignitersworld.com , released under the MIT license. + Demo on: http://ignitersworld.com/lab/imageViewer.html +*/ + +/*** picture view plugin ****/ +(function ($, window, document, undefined) { + "use strict"; + + //an empty function + var noop = function () {}; + + var $body = $('body'), + $window = $(window), + $document = $(document); + + + //constants + var ZOOM_CONSTANT = 15; //increase or decrease value for zoom on mouse wheel + var MOUSE_WHEEL_COUNT = 5; //A mouse delta after which it should stop preventing default behaviour of mouse wheel + + //ease out method + /* + t : current time, + b : intial value, + c : changed value, + d : duration + */ + function easeOutQuart(t, b, c, d) { + t /= d; + t--; + return -c * (t * t * t * t - 1) + b; + }; + + + // http://paulirish.com/2011/requestanimationframe-for-smart-animating/ + // http://my.opera.com/emoller/blog/2011/12/20/requestanimationframe-for-smart-er-animating + + // requestAnimationFrame polyfill by Erik Möller + // fixes from Paul Irish and Tino Zijdel + + (function () { + var lastTime = 0; + var vendors = ['ms', 'moz', 'webkit', 'o']; + for (var x = 0; x < vendors.length && !window.requestAnimationFrame; ++x) { + window.requestAnimationFrame = window[vendors[x] + 'RequestAnimationFrame']; + window.cancelAnimationFrame = window[vendors[x] + 'CancelAnimationFrame'] || window[vendors[x] + 'CancelRequestAnimationFrame']; + } + + if (!window.requestAnimationFrame) + window.requestAnimationFrame = function (callback, element) { + var currTime = new Date().getTime(); + var timeToCall = Math.max(0, 16 - (currTime - lastTime)); + var id = window.setTimeout(function () { + callback(currTime + timeToCall); + }, + timeToCall); + lastTime = currTime + timeToCall; + return id; + }; + + if (!window.cancelAnimationFrame) + window.cancelAnimationFrame = function (id) { + clearTimeout(id); + }; + }()); + + //function to check if image is loaded + function imageLoaded(img) { + return img.complete && (typeof img.naturalWidth === 'undefined' || img.naturalWidth !== 0); + } + + var imageViewHtml = '

    ' + '
    ' + '
    ' + '
    ' + '
    ' + '
    '; + + //add a full screen view + $(function () { + if(!$body.length) $body = $('body'); + $body.append('
    ' + imageViewHtml + '
    '); + }); + + function Slider(container, options) { + this.container = container; + this.onStart = options.onStart || noop; + this.onMove = options.onMove || noop; + this.onEnd = options.onEnd || noop; + this.sliderId = options.sliderId || 'slider' + Math.ceil(Math.random() * 1000000); + } + + Slider.prototype.init = function () { + var self = this, + container = this.container, + eventSuffix = '.' + this.sliderId; + + //assign event on snap image wrap + this.container.on('touchstart' + eventSuffix + ' mousedown' + eventSuffix, function (estart) { + estart.preventDefault(); + var touchMove = (estart.type == "touchstart" ? "touchmove" : "mousemove") + eventSuffix, + touchEnd = (estart.type == "touchstart" ? "touchend" : "mouseup") + eventSuffix, + eOrginal = estart.originalEvent, + sx = eOrginal.clientX || eOrginal.touches[0].clientX, + sy = eOrginal.clientY || eOrginal.touches[0].clientY; + + var start = self.onStart(estart, { + x: sx, + y: sy + }); + + if (start === false) return; + + var moveListener = function (emove) { + emove.preventDefault(); + + eOrginal = emove.originalEvent; + + //get the cordinates + var mx = eOrginal.clientX || eOrginal.touches[0].clientX, + my = eOrginal.clientY || eOrginal.touches[0].clientY; + + self.onMove(emove, { + dx: mx - sx, + dy: my - sy, + mx: mx, + my: my + }); + + }; + + var endListener = function () { + $document.off(touchMove, moveListener); + $document.off(touchEnd, endListener); + self.onEnd(); + }; + + $document.on(touchMove, moveListener); + $document.on(touchEnd, endListener); + }); + + return this; + } + + + function ImageViewer(container, options) { + var self = this; + + if (container.is('#iv-container')) { + self._fullPage = true; + } + + self.container = container; + options = self.options = $.extend({}, ImageViewer.defaults, options); + + self.zoomValue = 100; + + if (!container.find('.snap-view').length) { + container.prepend(imageViewHtml); + } + + container.addClass('iv-container'); + + if (container.css('position') == 'static') container.css('position', 'relative'); + + self.snapView = container.find('.iv-snap-view'); + self.snapImageWrap = container.find('.iv-snap-image-wrap'); + self.imageWrap = container.find('.iv-image-wrap'); + self.snapHandle = container.find('.iv-snap-handle'); + self.zoomHandle = container.find('.iv-zoom-handle'); + self._viewerId = 'iv' + Math.floor(Math.random() * 1000000); + } + + + ImageViewer.prototype = { + constructor: ImageViewer, + _init: function () { + var viewer = this, + options = viewer.options, + zooming = false, // tell weather we are zooming trough touch + container = this.container; + + var eventSuffix = '.' + viewer._viewerId; + + //cache dom refrence + var snapHandle = this.snapHandle; + var snapImgWrap = this.snapImageWrap; + var imageWrap = this.imageWrap; + + var snapSlider = new Slider(snapImgWrap, { + sliderId: viewer._viewerId, + onStart: function () { + + if (!viewer.loaded) return false; + + var handleStyle = snapHandle[0].style; + + this.curHandleTop = parseFloat(handleStyle.top); + this.curHandleLeft = parseFloat(handleStyle.left); + this.handleWidth = parseFloat(handleStyle.width); + this.handleHeight = parseFloat(handleStyle.height); + this.width = snapImgWrap.width(); + this.height = snapImgWrap.height(); + + //stop momentum on image + clearInterval(imageSlider.slideMomentumCheck); + cancelAnimationFrame(imageSlider.sliderMomentumFrame); + }, + onMove: function (e, position) { + var xPerc = this.curHandleLeft + position.dx * 100 / this.width, + yPerc = this.curHandleTop + position.dy * 100 / this.height; + + xPerc = Math.max(0, xPerc); + xPerc = Math.min(100 - this.handleWidth, xPerc); + + yPerc = Math.max(0, yPerc); + yPerc = Math.min(100 - this.handleHeight, yPerc); + + + var containerDim = viewer.containerDim, + imgWidth = viewer.imageDim.w * (viewer.zoomValue / 100), + imgHeight = viewer.imageDim.h * (viewer.zoomValue / 100), + imgLeft = imgWidth < containerDim.w ? (containerDim.w - imgWidth) / 2 : -imgWidth * xPerc / 100, + imgTop = imgHeight < containerDim.h ? (containerDim.h - imgHeight) / 2 : -imgHeight * yPerc / 100; + + snapHandle.css({ + top: yPerc + '%', + left: xPerc + '%' + }) + + viewer.currentImg.css({ + left: imgLeft, + top: imgTop + }) + } + }).init(); + + + /*Add slide interaction to image*/ + var imageSlider = viewer._imageSlider = new Slider(imageWrap, { + sliderId: viewer._viewerId, + onStart: function (e, position) { + if (!viewer.loaded) return false; + if (zooming) return; + var self = this; + snapSlider.onStart(); + self.imgWidth = viewer.imageDim.w * viewer.zoomValue / 100; + self.imgHeight = viewer.imageDim.h * viewer.zoomValue / 100; + + self.positions = [position, position]; + + self.startPosition = position; + + //clear all animation frame and interval + viewer._clearFrames(); + + self.slideMomentumCheck = setInterval(function () { + if (!self.currentPos) return; + self.positions.shift(); + self.positions.push({ + x: self.currentPos.mx, + y: self.currentPos.my + }) + }, 50); + }, + onMove: function (e, position) { + if (zooming) return; + this.currentPos = position; + + snapSlider.onMove(e, { + dx: -position.dx * snapSlider.width / this.imgWidth, + dy: -position.dy * snapSlider.height / this.imgHeight + }); + }, + onEnd: function () { + if (zooming) return; + var self = this; + + var xDiff = this.positions[1].x - this.positions[0].x, + yDiff = this.positions[1].y - this.positions[0].y; + + function momentum() { + if (step <= 60) { + self.sliderMomentumFrame = requestAnimationFrame(momentum); + } + + positionX = positionX + easeOutQuart(step, xDiff / 3, -xDiff / 3, 60); + positionY = positionY + easeOutQuart(step, yDiff / 3, -yDiff / 3, 60) + + + snapSlider.onMove(null, { + dx: -((positionX) * snapSlider.width / self.imgWidth), + dy: -((positionY) * snapSlider.height / self.imgHeight) + }); + step++; + } + + if (Math.abs(xDiff) > 30 || Math.abs(yDiff) > 30) { + var step = 1, + positionX = self.currentPos.dx, + positionY = self.currentPos.dy; + + momentum(); + } + } + }).init(); + + + /*Add zoom interation in mouse wheel*/ + var changedDelta = 0; + imageWrap.on("mousewheel" + eventSuffix + " DOMMouseScroll" + eventSuffix, function (e) { + if(!options.zoomOnMouseWheel) return; + + if (!viewer.loaded) return; + + + //clear all animation frame and interval + viewer._clearFrames(); + + // cross-browser wheel delta + var delta = Math.max(-1, Math.min(1, (e.originalEvent.wheelDelta || -e.originalEvent.detail))), + zoomValue = viewer.zoomValue * (100 + delta * ZOOM_CONSTANT) / 100; + + if(!(zoomValue >= 100 && zoomValue <= options.maxZoom)){ + changedDelta += Math.abs(delta); + } + else{ + changedDelta = 0; + } + + if(changedDelta > MOUSE_WHEEL_COUNT) return; + + e.preventDefault(); + + var contOffset = container.offset(), + x = (e.pageX || e.originalEvent.pageX) - contOffset.left, + y = (e.pageY || e.originalEvent.pageY) - contOffset.top; + + + + viewer.zoom(zoomValue, { + x: x, + y: y + }); + + //show the snap viewer + showSnapView(); + }); + + + //apply pinch and zoom feature + imageWrap.on('touchstart' + eventSuffix, function (estart) { + if (!viewer.loaded) return; + var touch0 = estart.originalEvent.touches[0], + touch1 = estart.originalEvent.touches[1]; + + if (!(touch0 && touch1)) { + return; + } + + + zooming = true; + + var contOffset = container.offset(); + + var startdist = Math.sqrt(Math.pow(touch1.pageX - touch0.pageX, 2) + Math.pow(touch1.pageY - touch0.pageY, 2)), + startZoom = viewer.zoomValue, + center = { + x: ((touch1.pageX + touch0.pageX) / 2) - contOffset.left, + y: ((touch1.pageY + touch0.pageY) / 2) - contOffset.top + } + + var moveListener = function (emove) { + emove.preventDefault(); + + var touch0 = emove.originalEvent.touches[0], + touch1 = emove.originalEvent.touches[1], + newDist = Math.sqrt(Math.pow(touch1.pageX - touch0.pageX, 2) + Math.pow(touch1.pageY - touch0.pageY, 2)), + zoomValue = startZoom + (newDist - startdist) / 2; + + viewer.zoom(zoomValue, center); + }; + + var endListener = function () { + $document.off('touchmove', moveListener); + $document.off('touchend', endListener); + zooming = false; + }; + + $document.on('touchmove', moveListener); + $document.on('touchend', endListener); + + }); + + + //handle double tap for zoom in and zoom out + var touchtime = 0, + point; + imageWrap.on('click' + eventSuffix, function (e) { + if (touchtime == 0) { + touchtime = Date.now(); + point = { + x: e.pageX, + y: e.pageY + }; + } else { + if ((Date.now() - touchtime) < 500 && Math.abs(e.pageX - point.x) < 50 && Math.abs(e.pageY - point.y) < 50) { + if (viewer.zoomValue == options.zoomValue) { + viewer.zoom(200) + } else { + viewer.resetZoom() + } + touchtime = 0; + } else { + touchtime = 0; + } + } + }); + + //zoom in zoom out using zoom handle + var slider = viewer.snapView.find('.iv-zoom-slider'); + var zoomSlider = new Slider(slider, { + sliderId: viewer._viewerId, + onStart: function (eStart) { + + if (!viewer.loaded) return false; + + this.leftOffset = slider.offset().left; + this.handleWidth = viewer.zoomHandle.width(); + this.onMove(eStart); + + }, + onMove: function (e, position) { + var newLeft = (e.pageX || e.originalEvent.touches[0].pageX) - this.leftOffset - this.handleWidth / 2; + + newLeft = Math.max(0, newLeft); + newLeft = Math.min(viewer._zoomSliderLength, newLeft); + + var zoomValue = 100 + (options.maxZoom - 100) * newLeft / viewer._zoomSliderLength; + + viewer.zoom(zoomValue); + } + }).init(); + + + //display snapView on interaction + var snapViewTimeout, snapViewVisible; + + function showSnapView(noTimeout) { + if(!options.snapView) return; + + if (snapViewVisible || viewer.zoomValue <= 100 || !viewer.loaded) return; + clearTimeout(snapViewTimeout); + snapViewVisible = true; + viewer.snapView.css('opacity', 1); + if (!noTimeout) { + snapViewTimeout = setTimeout(function () { + viewer.snapView.css('opacity', 0); + snapViewVisible = false; + }, 4000); + } + } + + imageWrap.on('touchmove' + eventSuffix + ' mousemove' + eventSuffix, function () { + showSnapView(); + }); + + var snapEventsCallback = {}; + snapEventsCallback['mouseenter' + eventSuffix + ' touchstart' + eventSuffix] = function () { + snapViewVisible = false; + showSnapView(true); + }; + + snapEventsCallback['mouseleave' + eventSuffix + ' touchend' + eventSuffix] = function () { + snapViewVisible = false; + showSnapView(); + }; + + viewer.snapView.on(snapEventsCallback); + + + //calculate elments size on window resize + if (options.refreshOnResize) $window.on('resize' + eventSuffix, function () { + viewer.refresh() + }); + + if (viewer._fullPage) { + //prevent scrolling the backside if container if fixed positioned + container.on('touchmove' + eventSuffix + ' mousewheel' + eventSuffix + ' DOMMouseScroll' + eventSuffix, function (e) { + e.preventDefault(); + }); + + //assign event on close button + container.find('.iv-close').on('click' + eventSuffix, function () { + viewer.hide(); + }); + } + }, + + //method to zoom images + zoom: function (perc, point) { + perc = Math.round(Math.max(100, perc)); + perc = Math.min(this.options.maxZoom, perc); + + point = point || { + x: this.containerDim.w / 2, + y: this.containerDim.h / 2 + }; + + var self = this, + maxZoom = this.options.maxZoom, + curPerc = this.zoomValue, + curImg = this.currentImg, + containerDim = this.containerDim, + curLeft = parseFloat(curImg.css('left')), + curTop = parseFloat(curImg.css('top')); + + self._clearFrames(); + + var step = 0; + + //calculate base top,left,bottom,right + var containerDim = self.containerDim, + imageDim = self.imageDim; + var baseLeft = (containerDim.w - imageDim.w) / 2, + baseTop = (containerDim.h - imageDim.h) / 2, + baseRight = containerDim.w - baseLeft, + baseBottom = containerDim.h - baseTop; + + function zoom() { + step++; + + if (step < 20) { + self._zoomFrame = requestAnimationFrame(zoom); + } + + var tickZoom = easeOutQuart(step, curPerc, perc - curPerc, 20); + + + var ratio = tickZoom / curPerc, + imgWidth = self.imageDim.w * tickZoom / 100, + imgHeight = self.imageDim.h * tickZoom / 100, + newLeft = -((point.x - curLeft) * ratio - point.x), + newTop = -((point.y - curTop) * ratio - point.y); + + //fix for left and top + newLeft = Math.min(newLeft, baseLeft); + newTop = Math.min(newTop, baseTop); + + //fix for right and bottom + if((newLeft + imgWidth) < baseRight){ + newLeft = baseRight - imgWidth; //newLeft - (newLeft + imgWidth - baseRight) + } + + if((newTop + imgHeight) < baseBottom){ + newTop = baseBottom - imgHeight; //newTop + (newTop + imgHeight - baseBottom) + } + + + curImg.css({ + height: imgHeight + 'px', + width: imgWidth + 'px', + left: newLeft + 'px', + top: newTop + 'px' + }); + + self.zoomValue = tickZoom; + + self._resizeHandle(imgWidth, imgHeight, newLeft, newTop); + + //update zoom handle position + self.zoomHandle.css('left', ((tickZoom - 100) * self._zoomSliderLength) / (maxZoom - 100) + 'px'); + } + + zoom(); + }, + _clearFrames: function () { + clearInterval(this._imageSlider.slideMomentumCheck); + cancelAnimationFrame(this._imageSlider.sliderMomentumFrame); + cancelAnimationFrame(this._zoomFrame) + }, + resetZoom: function () { + this.zoom(this.options.zoomValue); + }, + //calculate dimensions of image, container and reset the image + _calculateDimensions: function () { + //calculate content width of image and snap image + var self = this, + curImg = self.currentImg, + container = self.container, + snapView = self.snapView, + imageWidth = curImg.width(), + imageHeight = curImg.height(), + contWidth = container.width(), + contHeight = container.height(), + snapViewWidth = snapView.innerWidth(), + snapViewHeight = snapView.innerHeight(); + + //set the container dimension + self.containerDim = { + w: contWidth, + h: contHeight + } + + //set the image dimension + var imgWidth, imgHeight, ratio = imageWidth / imageHeight; + + imgWidth = (imageWidth > imageHeight && contHeight >= contWidth) || ratio * contHeight > contWidth ? contWidth : ratio * contHeight; + + imgHeight = imgWidth / ratio; + + self.imageDim = { + w: imgWidth, + h: imgHeight + } + + //reset image position and zoom + curImg.css({ + width: imgWidth + 'px', + height: imgHeight + 'px', + left: (contWidth - imgWidth) / 2 + 'px', + top: (contHeight - imgHeight) / 2 + 'px', + 'max-width': 'none', + 'max-height': 'none' + }); + + //set the snap Image dimension + var snapWidth = imgWidth > imgHeight ? snapViewWidth : imgWidth * snapViewHeight / imgHeight, + snapHeight = imgHeight > imgWidth ? snapViewHeight : imgHeight * snapViewWidth / imgWidth; + + self.snapImageDim = { + w: snapWidth, + h: snapHeight + } + + self.snapImg.css({ + width: snapWidth, + height: snapHeight + }); + + //calculate zoom slider area + self._zoomSliderLength = snapViewWidth - self.zoomHandle.outerWidth(); + + }, + refresh: function () { + if (!this.loaded) return; + this._calculateDimensions(); + this.resetZoom(); + }, + _resizeHandle: function (imgWidth, imgHeight, imgLeft, imgTop) { + var curImg = this.currentImg, + imageWidth = imgWidth || this.imageDim.w * this.zoomValue / 100, + imageHeight = imgHeight || this.imageDim.h * this.zoomValue / 100, + left = Math.max(-(imgLeft || parseFloat(curImg.css('left'))) * 100 / imageWidth, 0), + top = Math.max(-(imgTop || parseFloat(curImg.css('top'))) * 100 / imageHeight, 0), + handleWidth = Math.min(this.containerDim.w * 100 / imageWidth, 100), + handleHeight = Math.min(this.containerDim.h * 100 / imageHeight, 100); + + + this.snapHandle.css({ + top: top + '%', + left: left + '%', + width: handleWidth + '%', + height: handleHeight + '%' + }); + }, + show: function (image, hiResImg) { + if (this._fullPage) { + this.container.show(); + if (image) this.load(image, hiResImg); + } + }, + hide: function () { + if (this._fullPage) { + this.container.hide(); + } + }, + options: function (key, value) { + if (!value) return this.options[key]; + + this.options[key] = value; + }, + destroy: function (key, value) { + var eventSuffix = '.' + this._viewerId; + if (this._fullPage) { + container.off(eventSuffix); + container.find('[class^="iv"]').off(eventSuffix); + } else { + this.container.remove('[class^="iv"]'); + } + $window.off(eventSuffix); + return null; + }, + load: function (image, hiResImg) { + var self = this, + container = this.container; + + container.find('.iv-snap-image,.iv-large-image').remove(); + var snapImageWrap = this.container.find('.iv-snap-image-wrap'); + snapImageWrap.prepend(''); + this.imageWrap.prepend(''); + + if (hiResImg) { + this.imageWrap.append('') + } + + var currentImg = this.currentImg = this.container.find('.iv-large-image'); + this.snapImg = this.container.find('.iv-snap-image'); + self.loaded = false; + + //show loader + container.find('.iv-loader').show(); + currentImg.hide(); + self.snapImg.hide(); + + //refresh the view + function refreshView() { + self.loaded = true; + self.zoomValue = 100; + + //reset zoom of images + currentImg.show(); + self.snapImg.show(); + self.refresh(); + self.resetZoom(); + + //hide loader + container.find('.iv-loader').hide(); + } + + if (imageLoaded(currentImg[0])) { + refreshView(); + } else { + $(currentImg[0]).on('load', refreshView); + } + + } + } + + ImageViewer.defaults = { + zoomValue: 100, + snapView: true, + maxZoom: 500, + refreshOnResize: true, + zoomOnMouseWheel : true + } + + window.ImageViewer = function (container, options) { + var imgElm, imgSrc, hiResImg; + if (!(container && (typeof container == "string" || container instanceof Element || container[0] instanceof Element))) { + options = container; + container = $('#iv-container'); + } + + container = $(container); + + if (container.is('img')) { + imgElm = container; + imgSrc = imgElm[0].src; + hiResImg = imgElm.attr('high-res-src') || imgElm.attr('data-high-res-src'); + container = imgElm.wrap('
    ').parent(); + imgElm.css({ + opacity: 0, + position: 'relative', + zIndex: -1 + }); + } else { + imgSrc = container.attr('src') || container.attr('data-src'); + hiResImg = container.attr('high-res-src') || container.attr('data-high-res-src'); + } + + + var viewer = new ImageViewer(container, options); + viewer._init(); + + if (imgSrc) viewer.load(imgSrc, hiResImg); + + return viewer; + }; + + + $.fn.ImageViewer = function (options) { + return this.each(function () { + var $this = $(this); + var viewer = window.ImageViewer($this, options); + $this.data('ImageViewer', viewer); + }); + } + +}((window.jQuery), window, document)); \ No newline at end of file diff --git a/muk_web_preview_image/static/src/js/preview_generator.js b/muk_web_preview_image/static/src/js/preview_generator.js new file mode 100644 index 0000000..cf33bad --- /dev/null +++ b/muk_web_preview_image/static/src/js/preview_generator.js @@ -0,0 +1,64 @@ +/********************************************************************************** +* +* Copyright (C) 2017 MuK IT GmbH +* +* This program is free software: you can redistribute it and/or modify +* it under the terms of the GNU Affero General Public License as +* published by the Free Software Foundation, either version 3 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 Affero General Public License for more details. +* +* You should have received a copy of the GNU Affero General Public License +* along with this program. If not, see . +* +**********************************************************************************/ + +odoo.define('muk_preview_image.PreviewGenerator', function (require) { +"use strict"; + +var core = require('web.core'); + +var PreviewHandler = require('muk_preview.PreviewHandler'); +var PreviewGenerator = require('muk_preview.PreviewGenerator'); + +var QWeb = core.qweb; +var _t = core._t; + +var ImageHandler = PreviewHandler.extend({ + checkExtension: function(extension) { + return ['.cod', '.ras', '.fif', '.gif', '.ief', '.jpeg', '.jpg', '.jpe', '.png', '.tiff', + '.tif', '.mcf', '.wbmp', '.fh4', '.fh5', '.fhc', '.ico', '.pnm', '.pbm', '.pgm', + '.ppm', '.rgb', '.xwd', '.xbm', '.xpm'].includes(extension); + }, + checkType: function(mimetype) { + return ['image/cis-cod', 'image/cmu-raster', 'image/fif', 'image/gif', 'image/ief', 'image/jpeg', + 'image/png', 'image/tiff', 'image/vasa', 'image/vnd.wap.wbmp', 'image/x-freehand', 'image/x-icon', + 'image/x-portable-anymap', 'image/x-portable-bitmap', 'image/x-portable-graymap', 'image/x-portable-pixmap', + 'image/x-rgb', 'image/x-windowdump', 'image/x-xbitmap', 'image/x-xpixmap'].includes(mimetype); + }, + createHtml: function(url, mimetype, extension, title) { + var result = $.Deferred(); + var $content = $(QWeb.render('ImageHTMLContent', {url: url, alt: title})); + $content.find('img').click(function (e) { + ImageViewer().show(this.src, this.src); + }); + result.resolve($content); + return $.when(result); + }, +}); + +PreviewGenerator.include({ + imageHandler: { + "ImageHandler": new ImageHandler(), + }, + init: function(additional_handler) { + additional_handler = _.extend(this.imageHandler, additional_handler); + this._super(additional_handler); + }, +}); + +}); \ No newline at end of file diff --git a/muk_web_preview_image/static/src/less/preview_content.less b/muk_web_preview_image/static/src/less/preview_content.less new file mode 100644 index 0000000..1c004b7 --- /dev/null +++ b/muk_web_preview_image/static/src/less/preview_content.less @@ -0,0 +1,34 @@ +/********************************************************************************** +* +* Copyright (C) 2017 MuK IT GmbH +* +* This program is free software: you can redistribute it and/or modify +* it under the terms of the GNU Affero General Public License as +* published by the Free Software Foundation, either version 3 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 Affero General Public License for more details. +* +* You should have received a copy of the GNU Affero General Public License +* along with this program. If not, see . +* +**********************************************************************************/ + +.o_preview_image img { + position: absolute; + height: 100%; + width: auto; + margin: auto; + top: 0; + bottom:0; + left: 0; + right:0; +} + +.iv-container { + z-index: 9999 ! important; +} + diff --git a/muk_web_preview_image/static/src/xml/preview_content.xml b/muk_web_preview_image/static/src/xml/preview_content.xml new file mode 100644 index 0000000..29f2ae7 --- /dev/null +++ b/muk_web_preview_image/static/src/xml/preview_content.xml @@ -0,0 +1,24 @@ + + + + + +
    + +
    +
    \ No newline at end of file diff --git a/muk_web_preview_image/template/assets.xml b/muk_web_preview_image/template/assets.xml new file mode 100644 index 0000000..752b812 --- /dev/null +++ b/muk_web_preview_image/template/assets.xml @@ -0,0 +1,30 @@ + + + + + +