diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 18bfddf0f93619a4233f19a70845796ef37501e1..65c7a962bd9809e06f52737ff843f24dd857d90f 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -1,3 +1,26 @@ +# +# The MIT License (MIT) +# Copyright (c) 2025 The STRASS Authors +# +# Permission is hereby granted, free of charge, to any person obtaining a copy +# of this software and associated documentation files (the "Software"), to deal +# in the Software without restriction, including without limitation the rights +# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +# copies of the Software, and to permit persons to whom the Software is +# furnished to do so, subject to the following conditions: +# +# The above copyright notice and this permission notice shall be included in all +# copies or substantial portions of the Software. +# +# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, +# EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +# MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. +# IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, +# DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR +# OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE +# OR OTHER DEALINGS IN THE SOFTWARE. +# + image: docker:24 diff --git a/CONTRIBUTORS.md b/CONTRIBUTORS.md new file mode 100644 index 0000000000000000000000000000000000000000..ab993519b4082173ce835d8e5c3e2b1682d0960e --- /dev/null +++ b/CONTRIBUTORS.md @@ -0,0 +1,21 @@ +CONTRIBUTORS +============ + +This is a list of people who have made contributions to STRASS. + + +| Emoji | Represents | Comments | +|------------|---------------|----------------------------------------------------------------------| +| :computer: | Code | Linked to whoever commits on source code by the user on this project | +| :pencil2: | Documentation | Linked to whoever commits on Wiki, or other source of documenta | +| :rocket: | Deployment | Linked to whoever commits on deployment recipes and related | +| :bulb: | Ideas | Linked to whoever brings ideas | +| :bug: | Bug reports | Linked to whoever report issues | +| :umbrella: | User Testing | Linked to whoever does, user tests | + + + * Bryan Brancotte :computer: :rocket: :bulb: :pencil2: :bug: + * Christophe Malabat :bulb: :umbrella: :bug: :computer: + * Hervé MENAGER :bulb: :umbrella: + * Elodie Chapeaublanc :umbrella: :pencil2: :bug: + * Rachel Legendre :bulb: :umbrella: \ No newline at end of file diff --git a/LICENSE b/LICENSE new file mode 100644 index 0000000000000000000000000000000000000000..d377eb92147b74d68ab5baa5a7818477c0e985d5 --- /dev/null +++ b/LICENSE @@ -0,0 +1,664 @@ + + GNU AFFERO GENERAL PUBLIC LICENSE + Version 3, 19 November 2007 + + Copyright (C) 2007 Free Software Foundation, Inc. <http://fsf.org/> + 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 + + 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 + state the exclusion of warranty; and each file should have at least + the "copyright" line and a pointer to where the full notice is found. + + <one line to give the program's name and a brief idea of what it does.> + + Copyright (C) 2025 The STRASS Authors + + 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 <http://www.gnu.org/licenses/>. + + Also add information on how to contact you by electronic and paper mail. + + If your software can interact with users remotely through a computer + network, you should also make sure that it provides a way for users to + get its source. For example, if your program is a web application, its + interface could display a "Source" link that leads users to an archive + of the code. There are many ways you could offer source, and different + solutions will be better for different programs; see section 13 for the + specific requirements. + + You should also get your employer (if you work as a programmer) or school, + if any, to sign a "copyright disclaimer" for the program, if necessary. + For more information on this, and how to apply and follow the GNU AGPL, see + <http://www.gnu.org/licenses/>. + diff --git a/chart/Chart.yaml b/chart/Chart.yaml index 9a4c1f13ecfae43dc22ef3d8805b919e876621d7..1079e4d94231e4d759eeaefc6f3538acff1c1a68 100644 --- a/chart/Chart.yaml +++ b/chart/Chart.yaml @@ -1,3 +1,26 @@ +# +# The MIT License (MIT) +# Copyright (c) 2025 The STRASS Authors +# +# Permission is hereby granted, free of charge, to any person obtaining a copy +# of this software and associated documentation files (the "Software"), to deal +# in the Software without restriction, including without limitation the rights +# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +# copies of the Software, and to permit persons to whom the Software is +# furnished to do so, subject to the following conditions: +# +# The above copyright notice and this permission notice shall be included in all +# copies or substantial portions of the Software. +# +# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, +# EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +# MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. +# IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, +# DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR +# OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE +# OR OTHER DEALINGS IN THE SOFTWARE. +# + apiVersion: v2 name: strass description: A Helm chart for Kubernetes diff --git a/chart/templates/config-map-app.yaml b/chart/templates/config-map-app.yaml index 0ba631d191c6d9f1aaf6632f313f4de8ab7f72be..e8799a6b01c5b9f9c9807a8420f4abbdbe2a0af7 100644 --- a/chart/templates/config-map-app.yaml +++ b/chart/templates/config-map-app.yaml @@ -1,3 +1,26 @@ +# +# The MIT License (MIT) +# Copyright (c) 2025 The STRASS Authors +# +# Permission is hereby granted, free of charge, to any person obtaining a copy +# of this software and associated documentation files (the "Software"), to deal +# in the Software without restriction, including without limitation the rights +# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +# copies of the Software, and to permit persons to whom the Software is +# furnished to do so, subject to the following conditions: +# +# The above copyright notice and this permission notice shall be included in all +# copies or substantial portions of the Software. +# +# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, +# EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +# MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. +# IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, +# DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR +# OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE +# OR OTHER DEALINGS IN THE SOFTWARE. +# + apiVersion: v1 kind: ConfigMap metadata: diff --git a/chart/templates/config-map-nginx.yaml b/chart/templates/config-map-nginx.yaml index 885a68b7e517df1d6c9c28cc5d776dbcbc828bb1..efc5a3ce34d623e82ab6bccf562626854295e3be 100644 --- a/chart/templates/config-map-nginx.yaml +++ b/chart/templates/config-map-nginx.yaml @@ -1,3 +1,26 @@ +# +# The MIT License (MIT) +# Copyright (c) 2025 The STRASS Authors +# +# Permission is hereby granted, free of charge, to any person obtaining a copy +# of this software and associated documentation files (the "Software"), to deal +# in the Software without restriction, including without limitation the rights +# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +# copies of the Software, and to permit persons to whom the Software is +# furnished to do so, subject to the following conditions: +# +# The above copyright notice and this permission notice shall be included in all +# copies or substantial portions of the Software. +# +# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, +# EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +# MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. +# IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, +# DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR +# OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE +# OR OTHER DEALINGS IN THE SOFTWARE. +# + apiVersion: v1 kind: ConfigMap metadata: diff --git a/chart/templates/deploy-app-and-service.yaml b/chart/templates/deploy-app-and-service.yaml index fe439c9e9420880c1106900b8a5994f0f307b115..de19304bf90ee72ddd90f9e6bd318faf3f10a91f 100644 --- a/chart/templates/deploy-app-and-service.yaml +++ b/chart/templates/deploy-app-and-service.yaml @@ -1,3 +1,26 @@ +# +# The MIT License (MIT) +# Copyright (c) 2025 The STRASS Authors +# +# Permission is hereby granted, free of charge, to any person obtaining a copy +# of this software and associated documentation files (the "Software"), to deal +# in the Software without restriction, including without limitation the rights +# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +# copies of the Software, and to permit persons to whom the Software is +# furnished to do so, subject to the following conditions: +# +# The above copyright notice and this permission notice shall be included in all +# copies or substantial portions of the Software. +# +# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, +# EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +# MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. +# IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, +# DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR +# OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE +# OR OTHER DEALINGS IN THE SOFTWARE. +# + --- apiVersion: apps/v1 kind: Deployment diff --git a/chart/templates/deploy-doc-and-service.yaml b/chart/templates/deploy-doc-and-service.yaml index a02bb75586ac1c52bc3a56214e89fc9052769ddc..3816891b9897e5df62892e6a8eeeb75dccdcfa7c 100644 --- a/chart/templates/deploy-doc-and-service.yaml +++ b/chart/templates/deploy-doc-and-service.yaml @@ -1,3 +1,26 @@ +# +# The MIT License (MIT) +# Copyright (c) 2025 The STRASS Authors +# +# Permission is hereby granted, free of charge, to any person obtaining a copy +# of this software and associated documentation files (the "Software"), to deal +# in the Software without restriction, including without limitation the rights +# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +# copies of the Software, and to permit persons to whom the Software is +# furnished to do so, subject to the following conditions: +# +# The above copyright notice and this permission notice shall be included in all +# copies or substantial portions of the Software. +# +# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, +# EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +# MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. +# IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, +# DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR +# OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE +# OR OTHER DEALINGS IN THE SOFTWARE. +# + apiVersion: v1 kind: Pod metadata: diff --git a/chart/templates/django-secret.yaml b/chart/templates/django-secret.yaml index 138737cd48df6fd0ebe4950b7a0ed49128eaf9d1..e13552e0cde764715bcf3f5086d058b5f0457416 100644 --- a/chart/templates/django-secret.yaml +++ b/chart/templates/django-secret.yaml @@ -1,3 +1,26 @@ +# +# The MIT License (MIT) +# Copyright (c) 2025 The STRASS Authors +# +# Permission is hereby granted, free of charge, to any person obtaining a copy +# of this software and associated documentation files (the "Software"), to deal +# in the Software without restriction, including without limitation the rights +# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +# copies of the Software, and to permit persons to whom the Software is +# furnished to do so, subject to the following conditions: +# +# The above copyright notice and this permission notice shall be included in all +# copies or substantial portions of the Software. +# +# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, +# EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +# MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. +# IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, +# DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR +# OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE +# OR OTHER DEALINGS IN THE SOFTWARE. +# + apiVersion: v1 kind: Secret metadata: diff --git a/chart/templates/ingress.yaml b/chart/templates/ingress.yaml index 5f9b1a59be653ca34e65b74d207f85c7aa9fd780..e982d1525c604d86cd0adc10d28b3d4f26dc72ca 100644 --- a/chart/templates/ingress.yaml +++ b/chart/templates/ingress.yaml @@ -1,3 +1,26 @@ +# +# The MIT License (MIT) +# Copyright (c) 2025 The STRASS Authors +# +# Permission is hereby granted, free of charge, to any person obtaining a copy +# of this software and associated documentation files (the "Software"), to deal +# in the Software without restriction, including without limitation the rights +# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +# copies of the Software, and to permit persons to whom the Software is +# furnished to do so, subject to the following conditions: +# +# The above copyright notice and this permission notice shall be included in all +# copies or substantial portions of the Software. +# +# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, +# EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +# MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. +# IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, +# DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR +# OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE +# OR OTHER DEALINGS IN THE SOFTWARE. +# + {{- if and $.Values.publiclyOpen (not $.Values.isProd) }} {{- required "You cannot ask for a dev instance publicly open (publiclyOpen == true and isProd == false )" "" }} {{- end}} diff --git a/chart/templates/storage.yaml b/chart/templates/storage.yaml index a3c23ca4e1966d0d174cac0113654c6582397fa8..898b45390e690e5d1d0fe12c28431347e0c5126b 100644 --- a/chart/templates/storage.yaml +++ b/chart/templates/storage.yaml @@ -1,3 +1,26 @@ +# +# The MIT License (MIT) +# Copyright (c) 2025 The STRASS Authors +# +# Permission is hereby granted, free of charge, to any person obtaining a copy +# of this software and associated documentation files (the "Software"), to deal +# in the Software without restriction, including without limitation the rights +# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +# copies of the Software, and to permit persons to whom the Software is +# furnished to do so, subject to the following conditions: +# +# The above copyright notice and this permission notice shall be included in all +# copies or substantial portions of the Software. +# +# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, +# EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +# MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. +# IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, +# DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR +# OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE +# OR OTHER DEALINGS IN THE SOFTWARE. +# + --- apiVersion: v1 kind: PersistentVolumeClaim diff --git a/chart/values.prod.yaml b/chart/values.prod.yaml index 76f9a7697b86669334394b9a7bb2f8dea756013d..48af95b333b4e30c471eed4514f06582a4418b14 100644 --- a/chart/values.prod.yaml +++ b/chart/values.prod.yaml @@ -1,3 +1,26 @@ +# +# The MIT License (MIT) +# Copyright (c) 2025 The STRASS Authors +# +# Permission is hereby granted, free of charge, to any person obtaining a copy +# of this software and associated documentation files (the "Software"), to deal +# in the Software without restriction, including without limitation the rights +# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +# copies of the Software, and to permit persons to whom the Software is +# furnished to do so, subject to the following conditions: +# +# The above copyright notice and this permission notice shall be included in all +# copies or substantial portions of the Software. +# +# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, +# EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +# MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. +# IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, +# DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR +# OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE +# OR OTHER DEALINGS IN THE SOFTWARE. +# + resources: limits: memory: "2Gi" diff --git a/chart/values.yaml b/chart/values.yaml index 017a5dfa82a36178c73ac523c41076e3036234a6..bd5d32e2de82cd781a18b22fe4abde58fd6b4725 100644 --- a/chart/values.yaml +++ b/chart/values.yaml @@ -1,3 +1,26 @@ +# +# The MIT License (MIT) +# Copyright (c) 2025 The STRASS Authors +# +# Permission is hereby granted, free of charge, to any person obtaining a copy +# of this software and associated documentation files (the "Software"), to deal +# in the Software without restriction, including without limitation the rights +# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +# copies of the Software, and to permit persons to whom the Software is +# furnished to do so, subject to the following conditions: +# +# The above copyright notice and this permission notice shall be included in all +# copies or substantial portions of the Software. +# +# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, +# EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +# MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. +# IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, +# DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR +# OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE +# OR OTHER DEALINGS IN THE SOFTWARE. +# + resources: requests: memory: "256Mi" diff --git a/dohelm.sh b/dohelm.sh index ac1fec9ea6a35e2f7a6654ea13bc0176aa3f0e30..814014a6326c06fc597dd78b240580fd54e5ca58 100755 --- a/dohelm.sh +++ b/dohelm.sh @@ -1,4 +1,28 @@ #!/usr/bin/env bash +# +# The MIT License (MIT) +# Copyright (c) 2025 The STRASS Authors +# +# Permission is hereby granted, free of charge, to any person obtaining a copy +# of this software and associated documentation files (the "Software"), to deal +# in the Software without restriction, including without limitation the rights +# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +# copies of the Software, and to permit persons to whom the Software is +# furnished to do so, subject to the following conditions: +# +# The above copyright notice and this permission notice shall be included in all +# copies or substantial portions of the Software. +# +# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, +# EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +# MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. +# IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, +# DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR +# OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE +# OR OTHER DEALINGS IN THE SOFTWARE. +# + + touch tokens.sh source ./tokens.sh # put `export SECRET_KEY="..."` in this file diff --git a/src/strass/Dockerfile b/src/strass/Dockerfile index 82313de89911cccae34279a88b054d3b983b600d..16af12ee571bd851d6ba75541326cbe70181c726 100644 --- a/src/strass/Dockerfile +++ b/src/strass/Dockerfile @@ -1,3 +1,20 @@ +# +# STRASS +# Copyright (C) 2025 The STRASS Authors +# +# 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 <http://www.gnu.org/licenses/>. +# FROM python:3.11-slim ENV PYTHONUNBUFFERED 1 ENV PROJECT_NAME strass diff --git a/src/strass/language_override/__init__.py b/src/strass/language_override/__init__.py index e69de29bb2d1d6434b8b29ae775ad8c2e48c5391..6792ce05b5242bdf422b45df1f5b12d121490352 100644 --- a/src/strass/language_override/__init__.py +++ b/src/strass/language_override/__init__.py @@ -0,0 +1,17 @@ +# +# STRASS +# Copyright (C) 2025 The STRASS Authors +# +# 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 <http://www.gnu.org/licenses/>. +# diff --git a/src/strass/language_override/admin.py b/src/strass/language_override/admin.py index 6e1bc79979c18fdb2e19e22191399a6440bd9012..9d1d4aa7d27b6e1f7805126f2de4833d345bf375 100644 --- a/src/strass/language_override/admin.py +++ b/src/strass/language_override/admin.py @@ -1,3 +1,21 @@ +# +# STRASS +# Copyright (C) 2025 The STRASS Authors +# +# 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 <http://www.gnu.org/licenses/>. +# + from django.contrib import admin from language_override import models diff --git a/src/strass/language_override/apps.py b/src/strass/language_override/apps.py index 1c5adb3d0d48594a3ab9f1eea04ae9c7f9430706..9b65b29b2c3a921ef76790e87cd6ff985ff15dc2 100644 --- a/src/strass/language_override/apps.py +++ b/src/strass/language_override/apps.py @@ -1,3 +1,21 @@ +# +# STRASS +# Copyright (C) 2025 The STRASS Authors +# +# 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 <http://www.gnu.org/licenses/>. +# + from django.apps import AppConfig diff --git a/src/strass/language_override/forms.py b/src/strass/language_override/forms.py index 63ae8de106c955b7fb35eb3def003537cdb056f6..eb448f73159dac4f9dc42017f0b2e9b18532e313 100644 --- a/src/strass/language_override/forms.py +++ b/src/strass/language_override/forms.py @@ -1,3 +1,21 @@ +# +# STRASS +# Copyright (C) 2025 The STRASS Authors +# +# 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 <http://www.gnu.org/licenses/>. +# + from django import forms from django.utils.translation import gettext_lazy as _ diff --git a/src/strass/language_override/migrations/0001_initial.py b/src/strass/language_override/migrations/0001_initial.py index 712202702460802390ad60591b1d061f8254f83e..6107d9965f2843f1e18c000d0a28ddc72bc33c8a 100644 --- a/src/strass/language_override/migrations/0001_initial.py +++ b/src/strass/language_override/migrations/0001_initial.py @@ -1,3 +1,21 @@ +# +# STRASS +# Copyright (C) 2025 The STRASS Authors +# +# 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 <http://www.gnu.org/licenses/>. +# + # Generated by Django 3.2.21 on 2023-12-13 10:45 from django.db import migrations, models diff --git a/src/strass/language_override/migrations/__init__.py b/src/strass/language_override/migrations/__init__.py index e69de29bb2d1d6434b8b29ae775ad8c2e48c5391..596267674969f0d7622c9f00c2431e4cd07b25dd 100644 --- a/src/strass/language_override/migrations/__init__.py +++ b/src/strass/language_override/migrations/__init__.py @@ -0,0 +1,18 @@ +# +# STRASS +# Copyright (C) 2025 The STRASS Authors +# +# 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 <http://www.gnu.org/licenses/>. +# + diff --git a/src/strass/language_override/models.py b/src/strass/language_override/models.py index 9aeff80b1cb69a577cf435473832350287063d55..62a1e77407b5f23b5dc005dcc11bc849dc980f4b 100644 --- a/src/strass/language_override/models.py +++ b/src/strass/language_override/models.py @@ -1,3 +1,21 @@ +# +# STRASS +# Copyright (C) 2025 The STRASS Authors +# +# 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 <http://www.gnu.org/licenses/>. +# + from __future__ import unicode_literals from django.core.cache import cache diff --git a/src/strass/language_override/templatetags/language_override_tags.py b/src/strass/language_override/templatetags/language_override_tags.py index 8ffe2546031ea68ec8b7dbcb0143c899684dbd07..12576860e756331f862d141bb80e536ceef79859 100644 --- a/src/strass/language_override/templatetags/language_override_tags.py +++ b/src/strass/language_override/templatetags/language_override_tags.py @@ -1,3 +1,21 @@ +# +# STRASS +# Copyright (C) 2025 The STRASS Authors +# +# 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 <http://www.gnu.org/licenses/>. +# + import logging from django import template diff --git a/src/strass/language_override/tests/__init__.py b/src/strass/language_override/tests/__init__.py index e69de29bb2d1d6434b8b29ae775ad8c2e48c5391..6792ce05b5242bdf422b45df1f5b12d121490352 100644 --- a/src/strass/language_override/tests/__init__.py +++ b/src/strass/language_override/tests/__init__.py @@ -0,0 +1,17 @@ +# +# STRASS +# Copyright (C) 2025 The STRASS Authors +# +# 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 <http://www.gnu.org/licenses/>. +# diff --git a/src/strass/language_override/tests/test_views.py b/src/strass/language_override/tests/test_views.py index cbcc84ab862729ba3b76d917abc8d7259f506abf..118f966139b8dea346a1a3f94a71444c8c19c19d 100644 --- a/src/strass/language_override/tests/test_views.py +++ b/src/strass/language_override/tests/test_views.py @@ -1,3 +1,21 @@ +# +# STRASS +# Copyright (C) 2025 The STRASS Authors +# +# 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 <http://www.gnu.org/licenses/>. +# + import logging from django.contrib.auth.models import AnonymousUser diff --git a/src/strass/language_override/tests/tests.py b/src/strass/language_override/tests/tests.py index 5e800fa8bdc6ba4726bbfc0ff529b885be69cb0e..58286ff81be7ba00a348ba0bd87e9ee66a83be60 100644 --- a/src/strass/language_override/tests/tests.py +++ b/src/strass/language_override/tests/tests.py @@ -1,3 +1,21 @@ +# +# STRASS +# Copyright (C) 2025 The STRASS Authors +# +# 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 <http://www.gnu.org/licenses/>. +# + import logging from django.contrib.auth import get_user_model diff --git a/src/strass/language_override/translation.py b/src/strass/language_override/translation.py index 62c67c7ceda97349c16cc320e90458928b5f10a0..cb2ef6e9ca65bbbe715b86fb0971a064924e66e8 100644 --- a/src/strass/language_override/translation.py +++ b/src/strass/language_override/translation.py @@ -1,3 +1,21 @@ +# +# STRASS +# Copyright (C) 2025 The STRASS Authors +# +# 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 <http://www.gnu.org/licenses/>. +# + import urllib.parse from django.contrib import messages diff --git a/src/strass/language_override/views.py b/src/strass/language_override/views.py index 6a54905b39bd00a4d9cfb32b332de70891a5c73a..8cda2c59306717500cfc5c2c30eb21fa921ec8b4 100644 --- a/src/strass/language_override/views.py +++ b/src/strass/language_override/views.py @@ -1,3 +1,21 @@ +# +# STRASS +# Copyright (C) 2025 The STRASS Authors +# +# 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 <http://www.gnu.org/licenses/>. +# + from django.utils import translation as dj_translation from django.views.generic import FormView diff --git a/src/strass/strass/__init__.py b/src/strass/strass/__init__.py index e69de29bb2d1d6434b8b29ae775ad8c2e48c5391..6792ce05b5242bdf422b45df1f5b12d121490352 100644 --- a/src/strass/strass/__init__.py +++ b/src/strass/strass/__init__.py @@ -0,0 +1,17 @@ +# +# STRASS +# Copyright (C) 2025 The STRASS Authors +# +# 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 <http://www.gnu.org/licenses/>. +# diff --git a/src/strass/strass/asgi.py b/src/strass/strass/asgi.py index 5ca2412f81adc4dc3adf150baa186d38d9b2f642..7c8b6c925516ad323886f2a47879cb3b7933d4d7 100644 --- a/src/strass/strass/asgi.py +++ b/src/strass/strass/asgi.py @@ -1,3 +1,21 @@ +# +# STRASS +# Copyright (C) 2025 The STRASS Authors +# +# 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 <http://www.gnu.org/licenses/>. +# + """ ASGI config for strass project. diff --git a/src/strass/strass/settings.py b/src/strass/strass/settings.py index 09aee2d735191a89dce5bc5f0fda2a520e98585c..d6f93636d3cd2148c334d2358f19b862627c5fbb 100644 --- a/src/strass/strass/settings.py +++ b/src/strass/strass/settings.py @@ -1,3 +1,21 @@ +# +# STRASS +# Copyright (C) 2025 The STRASS Authors +# +# 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 <http://www.gnu.org/licenses/>. +# + """ Django settings for strass project. diff --git a/src/strass/strass/urls.py b/src/strass/strass/urls.py index cd7386ffbab35f377c748c665cdd35f3e25ce583..cdce52766d0ed806c6b58f6b28bec4e248742f28 100644 --- a/src/strass/strass/urls.py +++ b/src/strass/strass/urls.py @@ -1,3 +1,21 @@ +# +# STRASS +# Copyright (C) 2025 The STRASS Authors +# +# 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 <http://www.gnu.org/licenses/>. +# + """strass URL Configuration The `urlpatterns` list routes URLs to views. For more information please see: diff --git a/src/strass/strass/wsgi.py b/src/strass/strass/wsgi.py index 67c70991e93abac9c1ab7fb287214250c4403755..531d68f9bf4f9ff3ef195bbbb0587014db65d726 100644 --- a/src/strass/strass/wsgi.py +++ b/src/strass/strass/wsgi.py @@ -1,3 +1,21 @@ +# +# STRASS +# Copyright (C) 2025 The STRASS Authors +# +# 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 <http://www.gnu.org/licenses/>. +# + """ WSGI config for strass project. diff --git a/src/strass/strass_app/__init__.py b/src/strass/strass_app/__init__.py index e69de29bb2d1d6434b8b29ae775ad8c2e48c5391..6792ce05b5242bdf422b45df1f5b12d121490352 100644 --- a/src/strass/strass_app/__init__.py +++ b/src/strass/strass_app/__init__.py @@ -0,0 +1,17 @@ +# +# STRASS +# Copyright (C) 2025 The STRASS Authors +# +# 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 <http://www.gnu.org/licenses/>. +# diff --git a/src/strass/strass_app/admin.py b/src/strass/strass_app/admin.py index 0ea42d9a3ddbc134ff8198704fad84c35f7efc59..ff0b31c98d8d24cdf50309d7adf68bd37a3e671a 100644 --- a/src/strass/strass_app/admin.py +++ b/src/strass/strass_app/admin.py @@ -1,3 +1,21 @@ +# +# STRASS +# Copyright (C) 2025 The STRASS Authors +# +# 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 <http://www.gnu.org/licenses/>. +# + import re from tempfile import NamedTemporaryFile diff --git a/src/strass/strass_app/apps.py b/src/strass/strass_app/apps.py index f0f54e9bee4ad3ba7b602009d2c9a9009de550da..5c96083195afd81cc77182b6fc06c57f06ed1e9c 100644 --- a/src/strass/strass_app/apps.py +++ b/src/strass/strass_app/apps.py @@ -1,3 +1,21 @@ +# +# STRASS +# Copyright (C) 2025 The STRASS Authors +# +# 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 <http://www.gnu.org/licenses/>. +# + from django.apps import AppConfig diff --git a/src/strass/strass_app/business_logic.py b/src/strass/strass_app/business_logic.py index 591b3eb8e8db5095beb772ae0e636350ddf11feb..e11270bd1a2c1689ecf0ea6332cd3807a8441a00 100644 --- a/src/strass/strass_app/business_logic.py +++ b/src/strass/strass_app/business_logic.py @@ -1,3 +1,21 @@ +# +# STRASS +# Copyright (C) 2025 The STRASS Authors +# +# 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 <http://www.gnu.org/licenses/>. +# + import errno import os from datetime import datetime diff --git a/src/strass/strass_app/context_processors.py b/src/strass/strass_app/context_processors.py index fe528facb2f8dbd33ed81d29f070c7f8ff1368a0..1eff98f5128998dcd57a24966c4384f52e22d972 100644 --- a/src/strass/strass_app/context_processors.py +++ b/src/strass/strass_app/context_processors.py @@ -1,3 +1,21 @@ +# +# STRASS +# Copyright (C) 2025 The STRASS Authors +# +# 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 <http://www.gnu.org/licenses/>. +# + import logging from live_settings import live_settings diff --git a/src/strass/strass_app/custom_layout_object.py b/src/strass/strass_app/custom_layout_object.py index 6deab25e8f7a24c3f1b22758d135f27c2c7bf063..88cb4e747ad97242f2eaddf46558f8ff8cb64f14 100644 --- a/src/strass/strass_app/custom_layout_object.py +++ b/src/strass/strass_app/custom_layout_object.py @@ -1,3 +1,21 @@ +# +# STRASS +# Copyright (C) 2025 The STRASS Authors +# +# 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 <http://www.gnu.org/licenses/>. +# + from crispy_forms.layout import LayoutObject, TEMPLATE_PACK from django.shortcuts import render from django.template.loader import render_to_string diff --git a/src/strass/strass_app/data_io.py b/src/strass/strass_app/data_io.py index 02c10a23e3ad5d1318088b14120c3a1ea8ba62f8..7c6378455d3a26eee95b70fceba7511d918b03a3 100644 --- a/src/strass/strass_app/data_io.py +++ b/src/strass/strass_app/data_io.py @@ -1,3 +1,21 @@ +# +# STRASS +# Copyright (C) 2025 The STRASS Authors +# +# 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 <http://www.gnu.org/licenses/>. +# + import json from io import StringIO from tempfile import NamedTemporaryFile diff --git a/src/strass/strass_app/exports.py b/src/strass/strass_app/exports.py index 3797a91cae443a021fec48c42e85c86e7d604405..61c7a6359f41e7695982a39810cf90acf87d7fbc 100644 --- a/src/strass/strass_app/exports.py +++ b/src/strass/strass_app/exports.py @@ -1,3 +1,21 @@ +# +# STRASS +# Copyright (C) 2025 The STRASS Authors +# +# 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 <http://www.gnu.org/licenses/>. +# + import csv import itertools import logging diff --git a/src/strass/strass_app/forms.py b/src/strass/strass_app/forms.py index 1a0436e4fcecf79728c27e751ceea28687fb4a81..6e922d16e9155f222eda0e2219458d5bf8fd4e6f 100644 --- a/src/strass/strass_app/forms.py +++ b/src/strass/strass_app/forms.py @@ -1,3 +1,21 @@ +# +# STRASS +# Copyright (C) 2025 The STRASS Authors +# +# 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 <http://www.gnu.org/licenses/>. +# + import datetime import json import smtplib diff --git a/src/strass/strass_app/management/commands/export_data.py b/src/strass/strass_app/management/commands/export_data.py index a7e40d601f9e89e88552a6a873757b8f5231b83c..01d28c23d6ab5727f25c4af50de0e364b32059aa 100644 --- a/src/strass/strass_app/management/commands/export_data.py +++ b/src/strass/strass_app/management/commands/export_data.py @@ -1,3 +1,21 @@ +# +# STRASS +# Copyright (C) 2025 The STRASS Authors +# +# 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 <http://www.gnu.org/licenses/>. +# + import argparse import json diff --git a/src/strass/strass_app/management/commands/load_demo.py b/src/strass/strass_app/management/commands/load_demo.py index 57bdea5ed28db8928eabc33bc569e7f930658a29..7c8b2bed75684de79c8a9043b4d90c2a91b4bb82 100644 --- a/src/strass/strass_app/management/commands/load_demo.py +++ b/src/strass/strass_app/management/commands/load_demo.py @@ -1,3 +1,21 @@ +# +# STRASS +# Copyright (C) 2025 The STRASS Authors +# +# 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 <http://www.gnu.org/licenses/>. +# + import itertools import json import random diff --git a/src/strass/strass_app/management/commands/pdf_export_cache.py b/src/strass/strass_app/management/commands/pdf_export_cache.py index 7d15c61e0787fd4a073b41ea851762f8bfe56182..c15275459a9bf5bf46fc889be0f879923db9b884 100644 --- a/src/strass/strass_app/management/commands/pdf_export_cache.py +++ b/src/strass/strass_app/management/commands/pdf_export_cache.py @@ -1,3 +1,21 @@ +# +# STRASS +# Copyright (C) 2025 The STRASS Authors +# +# 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 <http://www.gnu.org/licenses/>. +# + import logging from django.contrib.auth.models import AnonymousUser diff --git a/src/strass/strass_app/migrations/0001_initial.py b/src/strass/strass_app/migrations/0001_initial.py index f8bd4353ebbde5b40b80210ee713eec3a515e28f..59cedb7b2e57b23bb101e1de667dc8514ffe4f86 100644 --- a/src/strass/strass_app/migrations/0001_initial.py +++ b/src/strass/strass_app/migrations/0001_initial.py @@ -1,3 +1,21 @@ +# +# STRASS +# Copyright (C) 2025 The STRASS Authors +# +# 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 <http://www.gnu.org/licenses/>. +# + # Generated by Django 3.1.1 on 2020-10-01 10:23 import django.core.validators diff --git a/src/strass/strass_app/migrations/0002_create_groups.py b/src/strass/strass_app/migrations/0002_create_groups.py index 698c549fb1af42354b3807db074ca74b22ca7f05..f921ff110d3b66c9de3f79d389f1bfba215f7c5e 100644 --- a/src/strass/strass_app/migrations/0002_create_groups.py +++ b/src/strass/strass_app/migrations/0002_create_groups.py @@ -1,3 +1,21 @@ +# +# STRASS +# Copyright (C) 2025 The STRASS Authors +# +# 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 <http://www.gnu.org/licenses/>. +# + # -*- coding: utf-8 -*- from __future__ import unicode_literals diff --git a/src/strass/strass_app/migrations/0003_auto_20201028_1803.py b/src/strass/strass_app/migrations/0003_auto_20201028_1803.py index d5745444c90c285625623dd6b3f6aa3517eb6f7c..7acecf406ea6040f2fbe996d94faeea9c97fb91b 100644 --- a/src/strass/strass_app/migrations/0003_auto_20201028_1803.py +++ b/src/strass/strass_app/migrations/0003_auto_20201028_1803.py @@ -1,3 +1,21 @@ +# +# STRASS +# Copyright (C) 2025 The STRASS Authors +# +# 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 <http://www.gnu.org/licenses/>. +# + # Generated by Django 3.1.1 on 2020-10-28 17:03 from django.conf import settings diff --git a/src/strass/strass_app/migrations/0004_jury.py b/src/strass/strass_app/migrations/0004_jury.py index bdde7704fc3ee3dd5a9d8e30d2106b4ec975442f..da74fa1ec1c9713b4edf2009dc4a98b23f1160ab 100644 --- a/src/strass/strass_app/migrations/0004_jury.py +++ b/src/strass/strass_app/migrations/0004_jury.py @@ -1,3 +1,21 @@ +# +# STRASS +# Copyright (C) 2025 The STRASS Authors +# +# 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 <http://www.gnu.org/licenses/>. +# + # Generated by Django 3.1.1 on 2020-11-06 15:57 from django.conf import settings diff --git a/src/strass/strass_app/migrations/0005_create_jury_manager.py b/src/strass/strass_app/migrations/0005_create_jury_manager.py index 9dbe36af55f918f5d1c9b24acf22239fa9554769..1802f35f4a10e4a5923e2c9d3567c4a35c7a4739 100644 --- a/src/strass/strass_app/migrations/0005_create_jury_manager.py +++ b/src/strass/strass_app/migrations/0005_create_jury_manager.py @@ -1,3 +1,21 @@ +# +# STRASS +# Copyright (C) 2025 The STRASS Authors +# +# 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 <http://www.gnu.org/licenses/>. +# + # -*- coding: utf-8 -*- from __future__ import unicode_literals diff --git a/src/strass/strass_app/migrations/0006_auto_20201117_1651.py b/src/strass/strass_app/migrations/0006_auto_20201117_1651.py index 2c5a4bb6b428e323094ade295dcff90f60b89303..ba1935ef48536850584a93e23475183004557833 100644 --- a/src/strass/strass_app/migrations/0006_auto_20201117_1651.py +++ b/src/strass/strass_app/migrations/0006_auto_20201117_1651.py @@ -1,3 +1,21 @@ +# +# STRASS +# Copyright (C) 2025 The STRASS Authors +# +# 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 <http://www.gnu.org/licenses/>. +# + # Generated by Django 3.1.1 on 2020-11-17 15:51 from django.db import migrations diff --git a/src/strass/strass_app/migrations/0007_interviewsession.py b/src/strass/strass_app/migrations/0007_interviewsession.py index c2b019300a59e4a2cf2a47cb296313450fd2af1f..12045841611e628d5400619cba1859ee788491bf 100644 --- a/src/strass/strass_app/migrations/0007_interviewsession.py +++ b/src/strass/strass_app/migrations/0007_interviewsession.py @@ -1,3 +1,21 @@ +# +# STRASS +# Copyright (C) 2025 The STRASS Authors +# +# 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 <http://www.gnu.org/licenses/>. +# + # Generated by Django 3.1.1 on 2020-12-01 13:20 from django.db import migrations, models diff --git a/src/strass/strass_app/migrations/0008_remove_jury_candidates.py b/src/strass/strass_app/migrations/0008_remove_jury_candidates.py index bef324ee10a47ad159a4620d8f29094f232b9970..85ba3297ff69ebf1e7d70b8fa86bbb068cb9e67b 100644 --- a/src/strass/strass_app/migrations/0008_remove_jury_candidates.py +++ b/src/strass/strass_app/migrations/0008_remove_jury_candidates.py @@ -1,3 +1,21 @@ +# +# STRASS +# Copyright (C) 2025 The STRASS Authors +# +# 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 <http://www.gnu.org/licenses/>. +# + # Generated by Django 3.1.1 on 2020-12-01 13:28 from django.db import migrations diff --git a/src/strass/strass_app/migrations/0009_auto_20201208_1055.py b/src/strass/strass_app/migrations/0009_auto_20201208_1055.py index 82b8a2018e0e7a47692f6dcf9f6cfa3e94c069ed..646c89691d72bc85ed69fe93191d746efb82c17c 100644 --- a/src/strass/strass_app/migrations/0009_auto_20201208_1055.py +++ b/src/strass/strass_app/migrations/0009_auto_20201208_1055.py @@ -1,3 +1,21 @@ +# +# STRASS +# Copyright (C) 2025 The STRASS Authors +# +# 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 <http://www.gnu.org/licenses/>. +# + # Generated by Django 3.1.1 on 2020-12-08 09:55 from django.db import migrations diff --git a/src/strass/strass_app/migrations/0010_auto_20201210_1621.py b/src/strass/strass_app/migrations/0010_auto_20201210_1621.py index d4dfaef09fce375da2e182cf0878574163a23e48..dc6f6ca930cf6d296d1c00aa23ab280d7d6bb4f5 100644 --- a/src/strass/strass_app/migrations/0010_auto_20201210_1621.py +++ b/src/strass/strass_app/migrations/0010_auto_20201210_1621.py @@ -1,3 +1,21 @@ +# +# STRASS +# Copyright (C) 2025 The STRASS Authors +# +# 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 <http://www.gnu.org/licenses/>. +# + # Generated by Django 3.1.1 on 2020-12-10 15:21 from django.db import migrations, models diff --git a/src/strass/strass_app/migrations/0011_auto_20210119_1503.py b/src/strass/strass_app/migrations/0011_auto_20210119_1503.py index 87d0ec12a2e37ca0a93be76a6c60a66fff135752..698c914f9154d7282bcdcd2d685a9f73e3e80978 100644 --- a/src/strass/strass_app/migrations/0011_auto_20210119_1503.py +++ b/src/strass/strass_app/migrations/0011_auto_20210119_1503.py @@ -1,3 +1,21 @@ +# +# STRASS +# Copyright (C) 2025 The STRASS Authors +# +# 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 <http://www.gnu.org/licenses/>. +# + # Generated by Django 3.1.5 on 2021-01-19 14:03 from django.db import migrations, models diff --git a/src/strass/strass_app/migrations/0012_auto_20210119_1702.py b/src/strass/strass_app/migrations/0012_auto_20210119_1702.py index 6c3de83bf5d650c121f7e2c5f0cd7d5bb684e3fd..7f4955eb70f9d171b0f59e29c53e9e4a7093bad5 100644 --- a/src/strass/strass_app/migrations/0012_auto_20210119_1702.py +++ b/src/strass/strass_app/migrations/0012_auto_20210119_1702.py @@ -1,3 +1,21 @@ +# +# STRASS +# Copyright (C) 2025 The STRASS Authors +# +# 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 <http://www.gnu.org/licenses/>. +# + # Generated by Django 3.1.5 on 2021-01-19 16:02 from django.db import migrations, models diff --git a/src/strass/strass_app/migrations/0013_answer_question.py b/src/strass/strass_app/migrations/0013_answer_question.py index 7a7ef59d483a5a503fca6971b9ab44b1a511bb79..079b19c7a8747266ff41b1a1bf96c27a18917b4b 100644 --- a/src/strass/strass_app/migrations/0013_answer_question.py +++ b/src/strass/strass_app/migrations/0013_answer_question.py @@ -1,3 +1,21 @@ +# +# STRASS +# Copyright (C) 2025 The STRASS Authors +# +# 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 <http://www.gnu.org/licenses/>. +# + # Generated by Django 3.1.5 on 2021-01-20 14:53 from django.db import migrations, models diff --git a/src/strass/strass_app/migrations/0014_auto_20210217_1412.py b/src/strass/strass_app/migrations/0014_auto_20210217_1412.py index 329ddce37d49efc4ac5b58b20dd25ce38407d6f8..59954d700109a813bf5046e840a238dd53d69bd1 100644 --- a/src/strass/strass_app/migrations/0014_auto_20210217_1412.py +++ b/src/strass/strass_app/migrations/0014_auto_20210217_1412.py @@ -1,3 +1,21 @@ +# +# STRASS +# Copyright (C) 2025 The STRASS Authors +# +# 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 <http://www.gnu.org/licenses/>. +# + # Generated by Django 3.1.5 on 2021-02-17 13:12 from django.db import migrations, models diff --git a/src/strass/strass_app/migrations/0015_auto_20210701_1115.py b/src/strass/strass_app/migrations/0015_auto_20210701_1115.py index d91a608365b4ca5863568ade38ac22423bfa7da5..6026cee19fd010a2de67ac77d06a460e6e000c5c 100644 --- a/src/strass/strass_app/migrations/0015_auto_20210701_1115.py +++ b/src/strass/strass_app/migrations/0015_auto_20210701_1115.py @@ -1,3 +1,21 @@ +# +# STRASS +# Copyright (C) 2025 The STRASS Authors +# +# 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 <http://www.gnu.org/licenses/>. +# + # Generated by Django 3.2.4 on 2021-07-01 09:15 from django.db import migrations, models diff --git a/src/strass/strass_app/migrations/0016_callcontent.py b/src/strass/strass_app/migrations/0016_callcontent.py index 695dc1bcd62eb8bcc099a7cd024ddb7001d13b35..4ac5c07395fd6d94d8053cba35d129a32037c22b 100644 --- a/src/strass/strass_app/migrations/0016_callcontent.py +++ b/src/strass/strass_app/migrations/0016_callcontent.py @@ -1,3 +1,21 @@ +# +# STRASS +# Copyright (C) 2025 The STRASS Authors +# +# 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 <http://www.gnu.org/licenses/>. +# + # Generated by Django 3.2.4 on 2021-07-01 13:36 from django.db import migrations, models diff --git a/src/strass/strass_app/migrations/0017_auto_20210716_1052.py b/src/strass/strass_app/migrations/0017_auto_20210716_1052.py index e02f6c75b5e73a08db8db2ff14497619a65b5822..6c1268fdc8274691c5e0254f443c52782b82a3f1 100644 --- a/src/strass/strass_app/migrations/0017_auto_20210716_1052.py +++ b/src/strass/strass_app/migrations/0017_auto_20210716_1052.py @@ -1,3 +1,21 @@ +# +# STRASS +# Copyright (C) 2025 The STRASS Authors +# +# 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 <http://www.gnu.org/licenses/>. +# + # Generated by Django 3.2.4 on 2021-07-16 08:52 from django.conf import settings diff --git a/src/strass/strass_app/migrations/0018_review_automatically_generated.py b/src/strass/strass_app/migrations/0018_review_automatically_generated.py index 1453ffbdb0f770728e6a2ec65b3835c09ca55e6e..7682d5b6461c3d758984babc1cb5a518937c51c9 100644 --- a/src/strass/strass_app/migrations/0018_review_automatically_generated.py +++ b/src/strass/strass_app/migrations/0018_review_automatically_generated.py @@ -1,3 +1,21 @@ +# +# STRASS +# Copyright (C) 2025 The STRASS Authors +# +# 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 <http://www.gnu.org/licenses/>. +# + # Generated by Django 3.2.4 on 2021-07-20 08:17 from django.db import migrations, models diff --git a/src/strass/strass_app/migrations/0019_auto_20210727_1546.py b/src/strass/strass_app/migrations/0019_auto_20210727_1546.py index 7fa7dc7a2c9bcbd805c4a51f77f3ab434a8978b4..c658b931232a33b0c04dc3e3fc822652be7dc7a0 100644 --- a/src/strass/strass_app/migrations/0019_auto_20210727_1546.py +++ b/src/strass/strass_app/migrations/0019_auto_20210727_1546.py @@ -1,3 +1,21 @@ +# +# STRASS +# Copyright (C) 2025 The STRASS Authors +# +# 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 <http://www.gnu.org/licenses/>. +# + # Generated by Django 3.2.4 on 2021-07-27 13:46 from django.db import migrations, models diff --git a/src/strass/strass_app/migrations/0020_applicationstatus_default.py b/src/strass/strass_app/migrations/0020_applicationstatus_default.py index 272ca52a09a846b5f7d1194ccc6e5fb5a7a50d00..50731bc15f985584dd46bde4c7cbbad0e36018de 100644 --- a/src/strass/strass_app/migrations/0020_applicationstatus_default.py +++ b/src/strass/strass_app/migrations/0020_applicationstatus_default.py @@ -1,3 +1,21 @@ +# +# STRASS +# Copyright (C) 2025 The STRASS Authors +# +# 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 <http://www.gnu.org/licenses/>. +# + # Generated by Django 3.2.4 on 2021-09-16 08:14 from django.db import migrations, models diff --git a/src/strass/strass_app/migrations/0021_auto_20210916_1759.py b/src/strass/strass_app/migrations/0021_auto_20210916_1759.py index e061eebc4a19d15ac962e5894218110f597430f6..f07d72624dc4fd85afd4d7337529d8ab4395a7d5 100644 --- a/src/strass/strass_app/migrations/0021_auto_20210916_1759.py +++ b/src/strass/strass_app/migrations/0021_auto_20210916_1759.py @@ -1,3 +1,21 @@ +# +# STRASS +# Copyright (C) 2025 The STRASS Authors +# +# 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 <http://www.gnu.org/licenses/>. +# + # Generated by Django 3.2.7 on 2021-09-16 15:59 from django.db import migrations, models diff --git a/src/strass/strass_app/migrations/0022_conflictofinterest.py b/src/strass/strass_app/migrations/0022_conflictofinterest.py index c8d02ad64a28b11595a50044f5143cb4c600016c..bd022ac1bb5e8f7529a1c416ec3ffbea0f0535d2 100644 --- a/src/strass/strass_app/migrations/0022_conflictofinterest.py +++ b/src/strass/strass_app/migrations/0022_conflictofinterest.py @@ -1,3 +1,21 @@ +# +# STRASS +# Copyright (C) 2025 The STRASS Authors +# +# 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 <http://www.gnu.org/licenses/>. +# + # Generated by Django 3.2.7 on 2021-09-22 09:56 from django.conf import settings diff --git a/src/strass/strass_app/migrations/0023_alter_conflictofinterest_options.py b/src/strass/strass_app/migrations/0023_alter_conflictofinterest_options.py index bc345cd3f7eb6e5841bae53c957bbab934c66759..bc44762995bc97a4bc53cdfe19c64fa007b2c34d 100644 --- a/src/strass/strass_app/migrations/0023_alter_conflictofinterest_options.py +++ b/src/strass/strass_app/migrations/0023_alter_conflictofinterest_options.py @@ -1,3 +1,21 @@ +# +# STRASS +# Copyright (C) 2025 The STRASS Authors +# +# 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 <http://www.gnu.org/licenses/>. +# + # Generated by Django 3.2.7 on 2021-10-07 08:57 from django.db import migrations diff --git a/src/strass/strass_app/migrations/0024_auto_20211021_1514.py b/src/strass/strass_app/migrations/0024_auto_20211021_1514.py index abaf3363459bafa285ebf42c133ed39997810f3f..6ada6173fbfe5b74c616829070d6355bbf57c3b6 100644 --- a/src/strass/strass_app/migrations/0024_auto_20211021_1514.py +++ b/src/strass/strass_app/migrations/0024_auto_20211021_1514.py @@ -1,3 +1,21 @@ +# +# STRASS +# Copyright (C) 2025 The STRASS Authors +# +# 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 <http://www.gnu.org/licenses/>. +# + # Generated by Django 3.2.7 on 2021-10-20 09:27 from django.db import migrations, models diff --git a/src/strass/strass_app/migrations/0025_auto_20211029_1733.py b/src/strass/strass_app/migrations/0025_auto_20211029_1733.py index 48a549810c6ec05b6055fb57d8b5576605508507..60bb754a963f8bc731e3a503fb8df8c1891ce3b1 100644 --- a/src/strass/strass_app/migrations/0025_auto_20211029_1733.py +++ b/src/strass/strass_app/migrations/0025_auto_20211029_1733.py @@ -1,3 +1,21 @@ +# +# STRASS +# Copyright (C) 2025 The STRASS Authors +# +# 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 <http://www.gnu.org/licenses/>. +# + # Generated by Django 3.2.7 on 2021-10-29 15:33 from django.db import migrations, models diff --git a/src/strass/strass_app/migrations/0026_auto_20211116_1130.py b/src/strass/strass_app/migrations/0026_auto_20211116_1130.py index 4bf0fddea4528647f898c54e20a0174fc62700f3..0601de80985d0e2e195e091cc982c76b10e090af 100644 --- a/src/strass/strass_app/migrations/0026_auto_20211116_1130.py +++ b/src/strass/strass_app/migrations/0026_auto_20211116_1130.py @@ -1,3 +1,21 @@ +# +# STRASS +# Copyright (C) 2025 The STRASS Authors +# +# 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 <http://www.gnu.org/licenses/>. +# + # Generated by Django 3.2.7 on 2021-11-16 10:30 from django.db import migrations, models diff --git a/src/strass/strass_app/migrations/0027_alter_callcontent_language.py b/src/strass/strass_app/migrations/0027_alter_callcontent_language.py index 722c362cc9a768e3c03f5685339eefb8ffab3936..34272e20eb6b75fc5aa52b3c7236eaf122b81911 100644 --- a/src/strass/strass_app/migrations/0027_alter_callcontent_language.py +++ b/src/strass/strass_app/migrations/0027_alter_callcontent_language.py @@ -1,3 +1,21 @@ +# +# STRASS +# Copyright (C) 2025 The STRASS Authors +# +# 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 <http://www.gnu.org/licenses/>. +# + # Generated by Django 3.2.7 on 2021-11-30 10:42 from django.db import migrations, models diff --git a/src/strass/strass_app/migrations/0028_auto_20220106_1159.py b/src/strass/strass_app/migrations/0028_auto_20220106_1159.py index 8432df7c3f456a517cb2e230de48b584c13da51b..c782c4df5b036b442ced907cc9ded41c36da9f9d 100644 --- a/src/strass/strass_app/migrations/0028_auto_20220106_1159.py +++ b/src/strass/strass_app/migrations/0028_auto_20220106_1159.py @@ -1,3 +1,21 @@ +# +# STRASS +# Copyright (C) 2025 The STRASS Authors +# +# 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 <http://www.gnu.org/licenses/>. +# + # Generated by Django 3.2.7 on 2022-01-06 10:59 from django.conf import settings diff --git a/src/strass/strass_app/migrations/0029_alter_conflictofinterest_comments.py b/src/strass/strass_app/migrations/0029_alter_conflictofinterest_comments.py index 91c8f0648053f4d2768500cb93ad46d1a432b189..daa3099c5d7da39d235b79d925c4e4771f6701ca 100644 --- a/src/strass/strass_app/migrations/0029_alter_conflictofinterest_comments.py +++ b/src/strass/strass_app/migrations/0029_alter_conflictofinterest_comments.py @@ -1,3 +1,21 @@ +# +# STRASS +# Copyright (C) 2025 The STRASS Authors +# +# 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 <http://www.gnu.org/licenses/>. +# + # Generated by Django 3.2.12 on 2022-02-25 13:04 from django.db import migrations, models diff --git a/src/strass/strass_app/migrations/0030_auto_20220302_1410.py b/src/strass/strass_app/migrations/0030_auto_20220302_1410.py index 6183c312227097deda8c4b3f57acb31e95bd9cb6..10a171f7538c23a96591fefe7dad4823e444b6ee 100644 --- a/src/strass/strass_app/migrations/0030_auto_20220302_1410.py +++ b/src/strass/strass_app/migrations/0030_auto_20220302_1410.py @@ -1,3 +1,21 @@ +# +# STRASS +# Copyright (C) 2025 The STRASS Authors +# +# 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 <http://www.gnu.org/licenses/>. +# + # Generated by Django 3.2.12 on 2022-03-02 13:10 from django.db import migrations, models diff --git a/src/strass/strass_app/migrations/0031_auto_20220302_1552.py b/src/strass/strass_app/migrations/0031_auto_20220302_1552.py index 8fefe4585014432e3d29d3be9712aa3962577077..e64f7526c7820e58302d3e0d8431a5fb5d49c747 100644 --- a/src/strass/strass_app/migrations/0031_auto_20220302_1552.py +++ b/src/strass/strass_app/migrations/0031_auto_20220302_1552.py @@ -1,3 +1,21 @@ +# +# STRASS +# Copyright (C) 2025 The STRASS Authors +# +# 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 <http://www.gnu.org/licenses/>. +# + # Generated by Django 3.2.12 on 2022-03-02 14:52 from django.db import migrations, models diff --git a/src/strass/strass_app/migrations/0032_myuserpreferences_notify_on_new_candidate.py b/src/strass/strass_app/migrations/0032_myuserpreferences_notify_on_new_candidate.py index 1517ade9d222eda1a59da7194a2b410133f0503b..06c0215a7315b416de550fbbc548d350cb9e1631 100644 --- a/src/strass/strass_app/migrations/0032_myuserpreferences_notify_on_new_candidate.py +++ b/src/strass/strass_app/migrations/0032_myuserpreferences_notify_on_new_candidate.py @@ -1,3 +1,21 @@ +# +# STRASS +# Copyright (C) 2025 The STRASS Authors +# +# 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 <http://www.gnu.org/licenses/>. +# + # Generated by Django 3.2.12 on 2023-03-06 13:34 from django.db import migrations, models diff --git a/src/strass/strass_app/migrations/0033_myuserpreferences_notify_on_accepted_invitation.py b/src/strass/strass_app/migrations/0033_myuserpreferences_notify_on_accepted_invitation.py index 88dea014a998061505f1c83e11d214ffdcc23ae7..f023af5592009bbb1f3aaf8cbaa673e9d167984b 100644 --- a/src/strass/strass_app/migrations/0033_myuserpreferences_notify_on_accepted_invitation.py +++ b/src/strass/strass_app/migrations/0033_myuserpreferences_notify_on_accepted_invitation.py @@ -1,3 +1,21 @@ +# +# STRASS +# Copyright (C) 2025 The STRASS Authors +# +# 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 <http://www.gnu.org/licenses/>. +# + # Generated by Django 3.2.12 on 2023-03-06 14:02 from django.db import migrations, models diff --git a/src/strass/strass_app/migrations/0034_review_completed.py b/src/strass/strass_app/migrations/0034_review_completed.py index 986bafc564408093f9a1bac7d451250b098fbeea..ab655a96ec36af3fe517e32c2710c8179a03da80 100644 --- a/src/strass/strass_app/migrations/0034_review_completed.py +++ b/src/strass/strass_app/migrations/0034_review_completed.py @@ -1,3 +1,21 @@ +# +# STRASS +# Copyright (C) 2025 The STRASS Authors +# +# 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 <http://www.gnu.org/licenses/>. +# + # Generated by Django 3.2.12 on 2023-03-27 13:28 from django.db import migrations, models diff --git a/src/strass/strass_app/migrations/0035_auto_20230411_1636.py b/src/strass/strass_app/migrations/0035_auto_20230411_1636.py index dd5740aaaad6bd7d859dc0bccb7e93be14e4122e..c8af8322527ab2eac5950565294f8f2c0766d7d3 100644 --- a/src/strass/strass_app/migrations/0035_auto_20230411_1636.py +++ b/src/strass/strass_app/migrations/0035_auto_20230411_1636.py @@ -1,3 +1,21 @@ +# +# STRASS +# Copyright (C) 2025 The STRASS Authors +# +# 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 <http://www.gnu.org/licenses/>. +# + # Generated by Django 3.2.12 on 2023-04-11 14:36 from django.db import migrations, models diff --git a/src/strass/strass_app/migrations/0036_alter_candidate_groups.py b/src/strass/strass_app/migrations/0036_alter_candidate_groups.py index 7dc1a9b356adbdb3e0a1466b463d9ef8d357e1cc..e577903be7643b70c6228631c2417d247052213e 100644 --- a/src/strass/strass_app/migrations/0036_alter_candidate_groups.py +++ b/src/strass/strass_app/migrations/0036_alter_candidate_groups.py @@ -1,3 +1,21 @@ +# +# STRASS +# Copyright (C) 2025 The STRASS Authors +# +# 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 <http://www.gnu.org/licenses/>. +# + # Generated by Django 3.2.21 on 2023-10-20 14:07 from django.db import migrations, models diff --git a/src/strass/strass_app/migrations/0037_auto_20231024_1314.py b/src/strass/strass_app/migrations/0037_auto_20231024_1314.py index 15df110cf7ce093f03cdf71fd92f6959c5aa00e1..2c384bbc6d305a1ac38f04fa6fca23ac5110997d 100644 --- a/src/strass/strass_app/migrations/0037_auto_20231024_1314.py +++ b/src/strass/strass_app/migrations/0037_auto_20231024_1314.py @@ -1,3 +1,21 @@ +# +# STRASS +# Copyright (C) 2025 The STRASS Authors +# +# 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 <http://www.gnu.org/licenses/>. +# + # Generated by Django 3.2.21 on 2023-10-24 11:14 import django.core.validators diff --git a/src/strass/strass_app/migrations/0038_auto_20231024_1429.py b/src/strass/strass_app/migrations/0038_auto_20231024_1429.py index 1c3eba929d0c297455eaddcdbcdcfb6031c93e08..636e84721b439de6a52ff2c2a3b130ad9c68d556 100644 --- a/src/strass/strass_app/migrations/0038_auto_20231024_1429.py +++ b/src/strass/strass_app/migrations/0038_auto_20231024_1429.py @@ -1,3 +1,21 @@ +# +# STRASS +# Copyright (C) 2025 The STRASS Authors +# +# 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 <http://www.gnu.org/licenses/>. +# + # Generated by Django 3.2.21 on 2023-10-24 12:29 from django.db import migrations diff --git a/src/strass/strass_app/migrations/0039_candidateanswer_candidatequestion.py b/src/strass/strass_app/migrations/0039_candidateanswer_candidatequestion.py index 390b5ceeb8df476b1b676c044ce93c896ff885af..e1b58b0170411ead0fdc6bdd46b4c494355a4795 100644 --- a/src/strass/strass_app/migrations/0039_candidateanswer_candidatequestion.py +++ b/src/strass/strass_app/migrations/0039_candidateanswer_candidatequestion.py @@ -1,3 +1,21 @@ +# +# STRASS +# Copyright (C) 2025 The STRASS Authors +# +# 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 <http://www.gnu.org/licenses/>. +# + # Generated by Django 3.2.21 on 2023-11-19 13:43 import django.core.validators diff --git a/src/strass/strass_app/migrations/0040_alter_candidate_former_statuses.py b/src/strass/strass_app/migrations/0040_alter_candidate_former_statuses.py index a58274be46e4c7573535e6a7f18fa95c2476283d..4614b165b5c5de21dc115e5ce831269ce083f3d4 100644 --- a/src/strass/strass_app/migrations/0040_alter_candidate_former_statuses.py +++ b/src/strass/strass_app/migrations/0040_alter_candidate_former_statuses.py @@ -1,3 +1,21 @@ +# +# STRASS +# Copyright (C) 2025 The STRASS Authors +# +# 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 <http://www.gnu.org/licenses/>. +# + # Generated by Django 4.2.8 on 2023-12-19 07:44 from django.db import migrations, models diff --git a/src/strass/strass_app/migrations/0041_alter_candidate_cv.py b/src/strass/strass_app/migrations/0041_alter_candidate_cv.py index ffdba6aac56d384b1d0ad3800df484b4ff33fdfc..c93deab7d26dbecc9a2dd401990e194c253e9226 100644 --- a/src/strass/strass_app/migrations/0041_alter_candidate_cv.py +++ b/src/strass/strass_app/migrations/0041_alter_candidate_cv.py @@ -1,3 +1,21 @@ +# +# STRASS +# Copyright (C) 2025 The STRASS Authors +# +# 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 <http://www.gnu.org/licenses/>. +# + # Generated by Django 4.2.15 on 2024-08-30 14:49 import django.core.validators diff --git a/src/strass/strass_app/migrations/0042_alter_candidate_motivation.py b/src/strass/strass_app/migrations/0042_alter_candidate_motivation.py index 136ac4d8b60952da605457b588ddb98dfc3f1bb2..2c76529a67380237ccf5fe2acc9f3b39fe9e9f5d 100644 --- a/src/strass/strass_app/migrations/0042_alter_candidate_motivation.py +++ b/src/strass/strass_app/migrations/0042_alter_candidate_motivation.py @@ -1,3 +1,21 @@ +# +# STRASS +# Copyright (C) 2025 The STRASS Authors +# +# 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 <http://www.gnu.org/licenses/>. +# + # Generated by Django 4.2.19 on 2025-02-17 17:10 from django.db import migrations, models diff --git a/src/strass/strass_app/migrations/__init__.py b/src/strass/strass_app/migrations/__init__.py index e69de29bb2d1d6434b8b29ae775ad8c2e48c5391..596267674969f0d7622c9f00c2431e4cd07b25dd 100644 --- a/src/strass/strass_app/migrations/__init__.py +++ b/src/strass/strass_app/migrations/__init__.py @@ -0,0 +1,18 @@ +# +# STRASS +# Copyright (C) 2025 The STRASS Authors +# +# 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 <http://www.gnu.org/licenses/>. +# + diff --git a/src/strass/strass_app/misc.py b/src/strass/strass_app/misc.py index d4932af5b90b9fb2340d429fb478638a1c7de0cd..61a76da18c43e2da378cc1ab9b45ae958f2a8db1 100644 --- a/src/strass/strass_app/misc.py +++ b/src/strass/strass_app/misc.py @@ -1,3 +1,21 @@ +# +# STRASS +# Copyright (C) 2025 The STRASS Authors +# +# 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 <http://www.gnu.org/licenses/>. +# + import io import random import string diff --git a/src/strass/strass_app/mixins.py b/src/strass/strass_app/mixins.py index 3cb32a673746a0101ef9b29d4eeb12a427d23ec7..cc4abc19affe2754658af7f4db89c82d4764fabc 100644 --- a/src/strass/strass_app/mixins.py +++ b/src/strass/strass_app/mixins.py @@ -1,3 +1,21 @@ +# +# STRASS +# Copyright (C) 2025 The STRASS Authors +# +# 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 <http://www.gnu.org/licenses/>. +# + from django.contrib.auth.mixins import AccessMixin from django.db.models import Q, Case, When, Value, BooleanField, Count, Exists, OuterRef from django.http import Http404, HttpResponseRedirect diff --git a/src/strass/strass_app/models.py b/src/strass/strass_app/models.py index 37c551512cac1ddceee79792115462b21786e102..318b1dda441c38d66f4e41bd512562a9aa98a9f4 100644 --- a/src/strass/strass_app/models.py +++ b/src/strass/strass_app/models.py @@ -1,3 +1,21 @@ +# +# STRASS +# Copyright (C) 2025 The STRASS Authors +# +# 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 <http://www.gnu.org/licenses/>. +# + import json import os import random diff --git a/src/strass/strass_app/password_validation.py b/src/strass/strass_app/password_validation.py index 0884240ebfe9b6a8d246cbdd2c890d64a90d4be4..063464d3b6ce072c7194047f42b9d4f68e8e3516 100644 --- a/src/strass/strass_app/password_validation.py +++ b/src/strass/strass_app/password_validation.py @@ -1,3 +1,21 @@ +# +# STRASS +# Copyright (C) 2025 The STRASS Authors +# +# 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 <http://www.gnu.org/licenses/>. +# + import abc import unicodedata diff --git a/src/strass/strass_app/review_allocation.py b/src/strass/strass_app/review_allocation.py index 8de32d679ad99982828e7194cff8ce42ccb6e951..be9a5f7118033fdf0f762240f1a390796a8fd6ca 100644 --- a/src/strass/strass_app/review_allocation.py +++ b/src/strass/strass_app/review_allocation.py @@ -1,3 +1,21 @@ +# +# STRASS +# Copyright (C) 2025 The STRASS Authors +# +# 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 <http://www.gnu.org/licenses/>. +# + from typing import Optional import pulp diff --git a/src/strass/strass_app/templatetags/interview_session_grid_filters.py b/src/strass/strass_app/templatetags/interview_session_grid_filters.py index 61b62cd6b291f45fe7b1c614dd472a84a22242b1..421e28771dbe42122db1be8112a3e5ac74639993 100644 --- a/src/strass/strass_app/templatetags/interview_session_grid_filters.py +++ b/src/strass/strass_app/templatetags/interview_session_grid_filters.py @@ -1,3 +1,21 @@ +# +# STRASS +# Copyright (C) 2025 The STRASS Authors +# +# 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 <http://www.gnu.org/licenses/>. +# + from django import template from django.db.models import Value, F, CharField from django.db.models.functions import Concat diff --git a/src/strass/strass_app/templatetags/strass_tags.py b/src/strass/strass_app/templatetags/strass_tags.py index 8b261b6262b2af9af216bbb710bf309d4bda4ca3..8227723003b9061b902897e6fe38400ded1d15ff 100644 --- a/src/strass/strass_app/templatetags/strass_tags.py +++ b/src/strass/strass_app/templatetags/strass_tags.py @@ -1,3 +1,21 @@ +# +# STRASS +# Copyright (C) 2025 The STRASS Authors +# +# 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 <http://www.gnu.org/licenses/>. +# + import logging from datetime import datetime diff --git a/src/strass/strass_app/tests/__init__.py b/src/strass/strass_app/tests/__init__.py index e69de29bb2d1d6434b8b29ae775ad8c2e48c5391..6792ce05b5242bdf422b45df1f5b12d121490352 100644 --- a/src/strass/strass_app/tests/__init__.py +++ b/src/strass/strass_app/tests/__init__.py @@ -0,0 +1,17 @@ +# +# STRASS +# Copyright (C) 2025 The STRASS Authors +# +# 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 <http://www.gnu.org/licenses/>. +# diff --git a/src/strass/strass_app/tests/test_admin.py b/src/strass/strass_app/tests/test_admin.py index 7032affcf0ba560486db718d84991a0e00e80f9e..cc0fd0ae5718f31af10f884ea3db49d48597fc61 100644 --- a/src/strass/strass_app/tests/test_admin.py +++ b/src/strass/strass_app/tests/test_admin.py @@ -1,3 +1,21 @@ +# +# STRASS +# Copyright (C) 2025 The STRASS Authors +# +# 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 <http://www.gnu.org/licenses/>. +# + import io import logging import re diff --git a/src/strass/strass_app/tests/test_app_settings.py b/src/strass/strass_app/tests/test_app_settings.py index c875129b1321bda477f07d98d78b3456d51a2b7d..f9870f17270591998ab78cbe2ba54ab062a61193 100644 --- a/src/strass/strass_app/tests/test_app_settings.py +++ b/src/strass/strass_app/tests/test_app_settings.py @@ -1,3 +1,21 @@ +# +# STRASS +# Copyright (C) 2025 The STRASS Authors +# +# 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 <http://www.gnu.org/licenses/>. +# + from django.contrib.auth import get_user_model from django.forms import BooleanField from django.urls import reverse diff --git a/src/strass/strass_app/tests/test_base_test_case.py b/src/strass/strass_app/tests/test_base_test_case.py index 6aca3f2226fd5a82a17080924c9c27c5fbb6de4c..4609c068caa301b8ee9c1609da4dd83f6124b44e 100644 --- a/src/strass/strass_app/tests/test_base_test_case.py +++ b/src/strass/strass_app/tests/test_base_test_case.py @@ -1,3 +1,21 @@ +# +# STRASS +# Copyright (C) 2025 The STRASS Authors +# +# 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 <http://www.gnu.org/licenses/>. +# + import hashlib import io import json diff --git a/src/strass/strass_app/tests/test_business_logic.py b/src/strass/strass_app/tests/test_business_logic.py index 7b0b192387f2e5a856ccb5df9fd83f891fa82925..30f4b6d1f047542d9adb4f8e7656556ba0374e32 100644 --- a/src/strass/strass_app/tests/test_business_logic.py +++ b/src/strass/strass_app/tests/test_business_logic.py @@ -1,3 +1,21 @@ +# +# STRASS +# Copyright (C) 2025 The STRASS Authors +# +# 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 <http://www.gnu.org/licenses/>. +# + import os from datetime import datetime from unittest.case import skipIf diff --git a/src/strass/strass_app/tests/test_candidate_apply.py b/src/strass/strass_app/tests/test_candidate_apply.py index 9f6a4dfa38a726e94b88d09c5e4824b18ff20abd..f32f596e5ac32a225b6546d31875a2b13c99901d 100644 --- a/src/strass/strass_app/tests/test_candidate_apply.py +++ b/src/strass/strass_app/tests/test_candidate_apply.py @@ -1,3 +1,21 @@ +# +# STRASS +# Copyright (C) 2025 The STRASS Authors +# +# 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 <http://www.gnu.org/licenses/>. +# + import collections import errno import logging diff --git a/src/strass/strass_app/tests/test_candidate_pdf_safe.py b/src/strass/strass_app/tests/test_candidate_pdf_safe.py index 526246faab6165f3d879f28836346bddea693fb7..ef837e4ec7d67c571cea91b5b8e46960a84425b2 100644 --- a/src/strass/strass_app/tests/test_candidate_pdf_safe.py +++ b/src/strass/strass_app/tests/test_candidate_pdf_safe.py @@ -1,3 +1,21 @@ +# +# STRASS +# Copyright (C) 2025 The STRASS Authors +# +# 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 <http://www.gnu.org/licenses/>. +# + import io from django.core.exceptions import ValidationError diff --git a/src/strass/strass_app/tests/test_commands.py b/src/strass/strass_app/tests/test_commands.py index 3e5d47d3077b985f1bbbc455ae326368e102c81f..d93cd05523f79afd797a36e5bca273fccf83b24e 100644 --- a/src/strass/strass_app/tests/test_commands.py +++ b/src/strass/strass_app/tests/test_commands.py @@ -1,3 +1,21 @@ +# +# STRASS +# Copyright (C) 2025 The STRASS Authors +# +# 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 <http://www.gnu.org/licenses/>. +# + import logging from django.core import management diff --git a/src/strass/strass_app/tests/test_commands_export.py b/src/strass/strass_app/tests/test_commands_export.py index 257e79d79b0ae306627ddfc787db087d218e805e..b71c3ea9ed269b853d1d71c962077d165805ba4e 100644 --- a/src/strass/strass_app/tests/test_commands_export.py +++ b/src/strass/strass_app/tests/test_commands_export.py @@ -1,3 +1,21 @@ +# +# STRASS +# Copyright (C) 2025 The STRASS Authors +# +# 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 <http://www.gnu.org/licenses/>. +# + import json import logging diff --git a/src/strass/strass_app/tests/test_conflict_of_interest.py b/src/strass/strass_app/tests/test_conflict_of_interest.py index 258bc9d5b22fc9fb78045e47c8a45ae102345327..7654a075276862aac46bc55b1f22e90d5d9c88d0 100644 --- a/src/strass/strass_app/tests/test_conflict_of_interest.py +++ b/src/strass/strass_app/tests/test_conflict_of_interest.py @@ -1,3 +1,21 @@ +# +# STRASS +# Copyright (C) 2025 The STRASS Authors +# +# 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 <http://www.gnu.org/licenses/>. +# + from django.contrib.auth import get_user_model from django.urls import reverse diff --git a/src/strass/strass_app/tests/test_contact_us.py b/src/strass/strass_app/tests/test_contact_us.py index 6cf6f0e862443b7d509800146a4cc8eae4ae2be1..e7994eb6554c5bea88209c6889a1c846ee76e168 100644 --- a/src/strass/strass_app/tests/test_contact_us.py +++ b/src/strass/strass_app/tests/test_contact_us.py @@ -1,3 +1,21 @@ +# +# STRASS +# Copyright (C) 2025 The STRASS Authors +# +# 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 <http://www.gnu.org/licenses/>. +# + import logging from django.contrib.auth import get_user_model diff --git a/src/strass/strass_app/tests/test_data_io.py b/src/strass/strass_app/tests/test_data_io.py index 430abc83a0d402760b53fae3f49948e024208406..1518bbd2cdec0f164f3dfcd34e0de0611df64d6a 100644 --- a/src/strass/strass_app/tests/test_data_io.py +++ b/src/strass/strass_app/tests/test_data_io.py @@ -1,3 +1,21 @@ +# +# STRASS +# Copyright (C) 2025 The STRASS Authors +# +# 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 <http://www.gnu.org/licenses/>. +# + import json import logging import os diff --git a/src/strass/strass_app/tests/test_forms.py b/src/strass/strass_app/tests/test_forms.py index de811dcd95a68629b0f2e0ce2cc9f3287ba9e777..8a7c1217cb4036497887f094cebd986953e93bcf 100644 --- a/src/strass/strass_app/tests/test_forms.py +++ b/src/strass/strass_app/tests/test_forms.py @@ -1,3 +1,21 @@ +# +# STRASS +# Copyright (C) 2025 The STRASS Authors +# +# 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 <http://www.gnu.org/licenses/>. +# + import logging from crispy_forms import layout diff --git a/src/strass/strass_app/tests/test_global_grade.py b/src/strass/strass_app/tests/test_global_grade.py index 96072e2871e9a0a359be6b11b2f08e2559c68c12..86514d02fb028e27e562db2a32aa170416f6d84f 100644 --- a/src/strass/strass_app/tests/test_global_grade.py +++ b/src/strass/strass_app/tests/test_global_grade.py @@ -1,3 +1,21 @@ +# +# STRASS +# Copyright (C) 2025 The STRASS Authors +# +# 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 <http://www.gnu.org/licenses/>. +# + from django.db.models import F, Value from strass_app import models diff --git a/src/strass/strass_app/tests/test_global_grade_indicator_rendering.py b/src/strass/strass_app/tests/test_global_grade_indicator_rendering.py index f4d5437296c5852c79c34a571c287fa1803684cd..762fbcf06b5c67157d3c9c0c99a6a7f08d12209c 100644 --- a/src/strass/strass_app/tests/test_global_grade_indicator_rendering.py +++ b/src/strass/strass_app/tests/test_global_grade_indicator_rendering.py @@ -1,3 +1,21 @@ +# +# STRASS +# Copyright (C) 2025 The STRASS Authors +# +# 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 <http://www.gnu.org/licenses/>. +# + from datetime import timedelta from django.contrib.messages import get_messages diff --git a/src/strass/strass_app/tests/test_internationalization.py b/src/strass/strass_app/tests/test_internationalization.py index e0e23c2d3f3ad8f76b047ce150288b3d227ed216..2d9ce69f5d373bc8cebec7059184eaad76a53c5f 100644 --- a/src/strass/strass_app/tests/test_internationalization.py +++ b/src/strass/strass_app/tests/test_internationalization.py @@ -1,3 +1,21 @@ +# +# STRASS +# Copyright (C) 2025 The STRASS Authors +# +# 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 <http://www.gnu.org/licenses/>. +# + import logging import os diff --git a/src/strass/strass_app/tests/test_interview_session.py b/src/strass/strass_app/tests/test_interview_session.py index e349390100e37326e3fd87dee934ae39126248b9..5f67f070622920e51f1275c928d235cc8b92c6a6 100644 --- a/src/strass/strass_app/tests/test_interview_session.py +++ b/src/strass/strass_app/tests/test_interview_session.py @@ -1,3 +1,21 @@ +# +# STRASS +# Copyright (C) 2025 The STRASS Authors +# +# 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 <http://www.gnu.org/licenses/>. +# + import logging from datetime import timedelta diff --git a/src/strass/strass_app/tests/test_interview_session_grid_filter.py b/src/strass/strass_app/tests/test_interview_session_grid_filter.py index 0b8b7ef8fda23d6c3a080d68ce1649aeb1191216..8696fa9540264b0269d8cb6a061abb402844b6d5 100644 --- a/src/strass/strass_app/tests/test_interview_session_grid_filter.py +++ b/src/strass/strass_app/tests/test_interview_session_grid_filter.py @@ -1,3 +1,21 @@ +# +# STRASS +# Copyright (C) 2025 The STRASS Authors +# +# 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 <http://www.gnu.org/licenses/>. +# + import logging from datetime import timedelta diff --git a/src/strass/strass_app/tests/test_invitation.py b/src/strass/strass_app/tests/test_invitation.py index e69bde08e6bd041392f32cf9c736c8ab97929c50..8d73e6b05094f61f0bf89551a6f482e6f7134aae 100644 --- a/src/strass/strass_app/tests/test_invitation.py +++ b/src/strass/strass_app/tests/test_invitation.py @@ -1,3 +1,21 @@ +# +# STRASS +# Copyright (C) 2025 The STRASS Authors +# +# 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 <http://www.gnu.org/licenses/>. +# + import logging import re diff --git a/src/strass/strass_app/tests/test_mass_mailing.py b/src/strass/strass_app/tests/test_mass_mailing.py index 9d0ffe995f4509929d753b8f739238f08d360d73..bf2c12b4cf64bca8c341954af4868d1e54256ceb 100644 --- a/src/strass/strass_app/tests/test_mass_mailing.py +++ b/src/strass/strass_app/tests/test_mass_mailing.py @@ -1,3 +1,21 @@ +# +# STRASS +# Copyright (C) 2025 The STRASS Authors +# +# 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 <http://www.gnu.org/licenses/>. +# + import collections import errno import logging diff --git a/src/strass/strass_app/tests/test_mixins.py b/src/strass/strass_app/tests/test_mixins.py index bfb9a7df4575c5bd3c84767c21af76b2d716dd89..44e8eefa9b4458cd477970f2b04b4fab20bf48fd 100644 --- a/src/strass/strass_app/tests/test_mixins.py +++ b/src/strass/strass_app/tests/test_mixins.py @@ -1,3 +1,21 @@ +# +# STRASS +# Copyright (C) 2025 The STRASS Authors +# +# 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 <http://www.gnu.org/licenses/>. +# + from datetime import timedelta from django.contrib.auth import get_user_model diff --git a/src/strass/strass_app/tests/test_no_admin_view_crash.py b/src/strass/strass_app/tests/test_no_admin_view_crash.py index f6a7b901cc85f5fd55ef7c8285721b9874ee6a90..3cc527378c7bcad17f0b7b51456dfbb536e46785 100644 --- a/src/strass/strass_app/tests/test_no_admin_view_crash.py +++ b/src/strass/strass_app/tests/test_no_admin_view_crash.py @@ -1,3 +1,21 @@ +# +# STRASS +# Copyright (C) 2025 The STRASS Authors +# +# 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 <http://www.gnu.org/licenses/>. +# + import logging from django.apps import apps diff --git a/src/strass/strass_app/tests/test_others.py b/src/strass/strass_app/tests/test_others.py index 0f302616cb3e3d13c379054ca108a58f82c9df3c..e597dc074801f86198a5db8435c8b402d553e1e2 100644 --- a/src/strass/strass_app/tests/test_others.py +++ b/src/strass/strass_app/tests/test_others.py @@ -1,3 +1,21 @@ +# +# STRASS +# Copyright (C) 2025 The STRASS Authors +# +# 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 <http://www.gnu.org/licenses/>. +# + import logging import os import random diff --git a/src/strass/strass_app/tests/test_password_validation.py b/src/strass/strass_app/tests/test_password_validation.py index 4a9e9ec60075cd7270fe6c958059633d5d56fc87..1ae1f4964d4de10823801547b4125fe2bb37b3bd 100644 --- a/src/strass/strass_app/tests/test_password_validation.py +++ b/src/strass/strass_app/tests/test_password_validation.py @@ -1,3 +1,21 @@ +# +# STRASS +# Copyright (C) 2025 The STRASS Authors +# +# 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 <http://www.gnu.org/licenses/>. +# + from django.core.exceptions import ValidationError from django.utils import timezone from freezegun import freeze_time diff --git a/src/strass/strass_app/tests/test_pdf.py b/src/strass/strass_app/tests/test_pdf.py index c979386e291838099b7f2b7a00bc58bcec22964c..7aa768ee407d5ed3f0125398c2ace11679d3c4ef 100644 --- a/src/strass/strass_app/tests/test_pdf.py +++ b/src/strass/strass_app/tests/test_pdf.py @@ -1,3 +1,21 @@ +# +# STRASS +# Copyright (C) 2025 The STRASS Authors +# +# 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 <http://www.gnu.org/licenses/>. +# + from django.contrib.auth.models import AnonymousUser from django.core.files.temp import NamedTemporaryFile from django.test import RequestFactory diff --git a/src/strass/strass_app/tests/test_pdf_cache.py b/src/strass/strass_app/tests/test_pdf_cache.py index 137d03547a3f189510eed35fed4b054ac89772b2..a6f0c67ac75403910333b44405a1f2a2ec0556a1 100644 --- a/src/strass/strass_app/tests/test_pdf_cache.py +++ b/src/strass/strass_app/tests/test_pdf_cache.py @@ -1,3 +1,21 @@ +# +# STRASS +# Copyright (C) 2025 The STRASS Authors +# +# 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 <http://www.gnu.org/licenses/>. +# + import collections import errno import logging diff --git a/src/strass/strass_app/tests/test_review_allocation.py b/src/strass/strass_app/tests/test_review_allocation.py index 2d3dafec2f917f65db14ede94d156bfff53102be..d03581f52c65e1f7a9a6888585389692934c9410 100644 --- a/src/strass/strass_app/tests/test_review_allocation.py +++ b/src/strass/strass_app/tests/test_review_allocation.py @@ -1,3 +1,21 @@ +# +# STRASS +# Copyright (C) 2025 The STRASS Authors +# +# 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 <http://www.gnu.org/licenses/>. +# + import csv import math import os diff --git a/src/strass/strass_app/tests/test_sanitize_pdf.py b/src/strass/strass_app/tests/test_sanitize_pdf.py index 453bd7ef73c4413d3ad3518b8a0b7ff5a295d487..6e94032dc93d83943111893d90773c7e83084fea 100644 --- a/src/strass/strass_app/tests/test_sanitize_pdf.py +++ b/src/strass/strass_app/tests/test_sanitize_pdf.py @@ -1,3 +1,21 @@ +# +# STRASS +# Copyright (C) 2025 The STRASS Authors +# +# 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 <http://www.gnu.org/licenses/>. +# + import os from io import BytesIO diff --git a/src/strass/strass_app/tests/test_setup.py b/src/strass/strass_app/tests/test_setup.py index b4574563a19dd027f162b27cf7be9eb8f1c29164..7a81e1a7b601c24374a53dc7d87ad199a099f43a 100644 --- a/src/strass/strass_app/tests/test_setup.py +++ b/src/strass/strass_app/tests/test_setup.py @@ -1,3 +1,21 @@ +# +# STRASS +# Copyright (C) 2025 The STRASS Authors +# +# 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 <http://www.gnu.org/licenses/>. +# + import datetime from datetime import timedelta diff --git a/src/strass/strass_app/tests/test_strass_tags.py b/src/strass/strass_app/tests/test_strass_tags.py index 8f9797ac0f82222857fcdc2eac800d9505f4291f..fb4395bd28644c69b1733c25df0c6c72cec17c20 100644 --- a/src/strass/strass_app/tests/test_strass_tags.py +++ b/src/strass/strass_app/tests/test_strass_tags.py @@ -1,3 +1,21 @@ +# +# STRASS +# Copyright (C) 2025 The STRASS Authors +# +# 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 <http://www.gnu.org/licenses/>. +# + from html.parser import HTMLParser from django.contrib.auth import get_user_model diff --git a/src/strass/strass_app/tests/test_validators.py b/src/strass/strass_app/tests/test_validators.py index beff583f1d48234c12c3fdb9577ab108a41fa76a..9c091e71fb40ef33044252a5d47867d0c975e14e 100644 --- a/src/strass/strass_app/tests/test_validators.py +++ b/src/strass/strass_app/tests/test_validators.py @@ -1,3 +1,21 @@ +# +# STRASS +# Copyright (C) 2025 The STRASS Authors +# +# 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 <http://www.gnu.org/licenses/>. +# + import io import types diff --git a/src/strass/strass_app/tests/test_view_review_allocation.py b/src/strass/strass_app/tests/test_view_review_allocation.py index 0893d2230154385df29c6c70c4b4fe21fd2ce479..d82096373175228c73ccb9e1eaa8e00792451c63 100644 --- a/src/strass/strass_app/tests/test_view_review_allocation.py +++ b/src/strass/strass_app/tests/test_view_review_allocation.py @@ -1,3 +1,21 @@ +# +# STRASS +# Copyright (C) 2025 The STRASS Authors +# +# 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 <http://www.gnu.org/licenses/>. +# + from functools import reduce from django.contrib.auth.models import Group diff --git a/src/strass/strass_app/tests/test_view_stage_interview_session.py b/src/strass/strass_app/tests/test_view_stage_interview_session.py index 5cb72a692710ba0a8c53e0130813d72c085e421e..c2826ab5dabdaf588a0cc7500dcfe18d1029b30b 100644 --- a/src/strass/strass_app/tests/test_view_stage_interview_session.py +++ b/src/strass/strass_app/tests/test_view_stage_interview_session.py @@ -1,3 +1,21 @@ +# +# STRASS +# Copyright (C) 2025 The STRASS Authors +# +# 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 <http://www.gnu.org/licenses/>. +# + import datetime from django.contrib.auth import get_user_model diff --git a/src/strass/strass_app/tests/test_views_candidate.py b/src/strass/strass_app/tests/test_views_candidate.py index 88480e5bde98fb9ef1ae3b44c69dbab845f3ff8f..ddc05c5039490f6170817963ae48f8aa5eb9a61e 100644 --- a/src/strass/strass_app/tests/test_views_candidate.py +++ b/src/strass/strass_app/tests/test_views_candidate.py @@ -1,3 +1,21 @@ +# +# STRASS +# Copyright (C) 2025 The STRASS Authors +# +# 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 <http://www.gnu.org/licenses/>. +# + import csv import io from datetime import timedelta diff --git a/src/strass/strass_app/tests/test_views_candidate_question.py b/src/strass/strass_app/tests/test_views_candidate_question.py index 0ec1dc62b7ea66db35d363975981d6cf4b948482..357b8b200ef9d92886c85687f9e835ee6f017c3d 100644 --- a/src/strass/strass_app/tests/test_views_candidate_question.py +++ b/src/strass/strass_app/tests/test_views_candidate_question.py @@ -1,3 +1,21 @@ +# +# STRASS +# Copyright (C) 2025 The STRASS Authors +# +# 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 <http://www.gnu.org/licenses/>. +# + from django.contrib.auth import get_user_model from django.urls import reverse diff --git a/src/strass/strass_app/tests/test_views_interview_session.py b/src/strass/strass_app/tests/test_views_interview_session.py index 4cce5a8ca281031731a1b80ed839ff70cd2080e9..b8096b4d7a9c14e6d0234dbe23466db24d52217c 100644 --- a/src/strass/strass_app/tests/test_views_interview_session.py +++ b/src/strass/strass_app/tests/test_views_interview_session.py @@ -1,3 +1,21 @@ +# +# STRASS +# Copyright (C) 2025 The STRASS Authors +# +# 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 <http://www.gnu.org/licenses/>. +# + import datetime from django.contrib.auth import get_user_model diff --git a/src/strass/strass_app/tests/test_views_jury.py b/src/strass/strass_app/tests/test_views_jury.py index 68e1628fe3816732dfbdfa2ec9070c93cc4535fb..c167b414e6ddcc9f11ac86fdd43eb8e9983d3b89 100644 --- a/src/strass/strass_app/tests/test_views_jury.py +++ b/src/strass/strass_app/tests/test_views_jury.py @@ -1,3 +1,21 @@ +# +# STRASS +# Copyright (C) 2025 The STRASS Authors +# +# 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 <http://www.gnu.org/licenses/>. +# + from django.db.models import ManyToManyField from django.urls import reverse diff --git a/src/strass/strass_app/tests/test_views_others.py b/src/strass/strass_app/tests/test_views_others.py index 5b02197b2a0f64b3f4fbedcecc3ee45b70f4eded..5c5e080b7ed45e2b98e1ffdd0d7aae6d0a44f60c 100644 --- a/src/strass/strass_app/tests/test_views_others.py +++ b/src/strass/strass_app/tests/test_views_others.py @@ -1,3 +1,21 @@ +# +# STRASS +# Copyright (C) 2025 The STRASS Authors +# +# 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 <http://www.gnu.org/licenses/>. +# + import gzip import io import json diff --git a/src/strass/strass_app/tests/test_views_question.py b/src/strass/strass_app/tests/test_views_question.py index d1fba38a38773e14b5ae3b4fd0d6e4811b7cbd1e..02f388530ca18caddb6b58a6554238a30f139113 100644 --- a/src/strass/strass_app/tests/test_views_question.py +++ b/src/strass/strass_app/tests/test_views_question.py @@ -1,3 +1,21 @@ +# +# STRASS +# Copyright (C) 2025 The STRASS Authors +# +# 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 <http://www.gnu.org/licenses/>. +# + import json from django.core.exceptions import ValidationError diff --git a/src/strass/strass_app/tests/test_views_recommendation.py b/src/strass/strass_app/tests/test_views_recommendation.py index 5fc7f684a79f3a2e79719d23937340c8ecebdf2e..43be99b530eea6215f47b3805d7123a99fdc3d25 100644 --- a/src/strass/strass_app/tests/test_views_recommendation.py +++ b/src/strass/strass_app/tests/test_views_recommendation.py @@ -1,3 +1,21 @@ +# +# STRASS +# Copyright (C) 2025 The STRASS Authors +# +# 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 <http://www.gnu.org/licenses/>. +# + from datetime import timedelta, datetime from django.contrib.messages import get_messages diff --git a/src/strass/strass_app/tests/test_views_recommendation_question.py b/src/strass/strass_app/tests/test_views_recommendation_question.py index 11b24ee4e973c107b80ffab9a00bdf261962a61b..ea9d704231d25dffad4922dbebae7675a145dec6 100644 --- a/src/strass/strass_app/tests/test_views_recommendation_question.py +++ b/src/strass/strass_app/tests/test_views_recommendation_question.py @@ -1,3 +1,21 @@ +# +# STRASS +# Copyright (C) 2025 The STRASS Authors +# +# 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 <http://www.gnu.org/licenses/>. +# + from django.urls import reverse from strass_app import models diff --git a/src/strass/strass_app/tests/test_views_review.py b/src/strass/strass_app/tests/test_views_review.py index 3ee2a1918b5c22bb3a1db48ca3dfbf5e4d1d6d2c..7233ff1ebf7fd8e089eeea7f3860714438d48348 100644 --- a/src/strass/strass_app/tests/test_views_review.py +++ b/src/strass/strass_app/tests/test_views_review.py @@ -1,3 +1,21 @@ +# +# STRASS +# Copyright (C) 2025 The STRASS Authors +# +# 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 <http://www.gnu.org/licenses/>. +# + import random from datetime import timedelta diff --git a/src/strass/strass_app/tests/test_views_review_question.py b/src/strass/strass_app/tests/test_views_review_question.py index 9c301f3610da273c1fec76e5aff58ba840901136..c57710e6b8f2bff14552023670b206c1772224f0 100644 --- a/src/strass/strass_app/tests/test_views_review_question.py +++ b/src/strass/strass_app/tests/test_views_review_question.py @@ -1,3 +1,21 @@ +# +# STRASS +# Copyright (C) 2025 The STRASS Authors +# +# 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 <http://www.gnu.org/licenses/>. +# + from django.contrib.auth import get_user_model from django.urls import reverse diff --git a/src/strass/strass_app/urls.py b/src/strass/strass_app/urls.py index b9b8959c74670514c8af0b14de467b463b642fb8..e73122aa42b2f8c0888ea0ee11d779a7fc3b8c2b 100644 --- a/src/strass/strass_app/urls.py +++ b/src/strass/strass_app/urls.py @@ -1,3 +1,21 @@ +# +# STRASS +# Copyright (C) 2025 The STRASS Authors +# +# 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 <http://www.gnu.org/licenses/>. +# + from django.urls import re_path from django.urls import path from django.contrib.auth.decorators import login_required diff --git a/src/strass/strass_app/utils.py b/src/strass/strass_app/utils.py index 694ffd9674829c05c19e9c3fe9520e402d8444ae..e903b252ab6694a0a8e730319278972ce30ef128 100644 --- a/src/strass/strass_app/utils.py +++ b/src/strass/strass_app/utils.py @@ -1,3 +1,21 @@ +# +# STRASS +# Copyright (C) 2025 The STRASS Authors +# +# 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 <http://www.gnu.org/licenses/>. +# + import functools import logging from abc import abstractmethod diff --git a/src/strass/strass_app/validators.py b/src/strass/strass_app/validators.py index 1c4e83420722d06e2ed79cc448a42e3073ed1268..4975a495192189780a79ccf77bf43b9275e0e9d3 100644 --- a/src/strass/strass_app/validators.py +++ b/src/strass/strass_app/validators.py @@ -1,3 +1,21 @@ +# +# STRASS +# Copyright (C) 2025 The STRASS Authors +# +# 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 <http://www.gnu.org/licenses/>. +# + from gettext import gettext as _ import magic diff --git a/src/strass/strass_app/views.py b/src/strass/strass_app/views.py index 945b7fc917aab0ebc40f6a504c0481e40c54c959..3c426076a2c8dcaa9919e68cde71684f7701ec70 100644 --- a/src/strass/strass_app/views.py +++ b/src/strass/strass_app/views.py @@ -1,3 +1,21 @@ +# +# STRASS +# Copyright (C) 2025 The STRASS Authors +# +# 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 <http://www.gnu.org/licenses/>. +# + import base64 import datetime import io