From be90c70741e0002fa3a7182e820b6d94deab4d49 Mon Sep 17 00:00:00 2001 From: Anna Philips Date: Mar 21 2018 17:45:07 +0000 Subject: Port code from Github to Pagure --- diff --git a/.coveragerc b/.coveragerc new file mode 100755 index 0000000..1fa48ef --- /dev/null +++ b/.coveragerc @@ -0,0 +1,27 @@ +# .coveragerc to control coverage.py +[run] +include = happinesspackets/* + +[report] +exclude_lines = + pragma: no cover + + # Don't complain about missing debug-only code: + def __unicode__ + def __repr__ + if self\.debug + + # Don't complain if tests don't hit defensive assertion code: + raise AssertionError + raise NotImplementedError + + # Don't complain if non-runnable code isn't run: + if 0: + if __name__ == .__main__.: + +omit = + happinesspackets/settings/* + happinesspackets/*/migrations/* + happinesspackets/urls.py + +show_missing = True diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..e2ced61 --- /dev/null +++ b/.gitignore @@ -0,0 +1,21 @@ +# automatically created files: +.DS_Store + +virtualenv/ +.idea/workspace.xml + +# other +static +build +.idea +_build +.coverage +htmlcov +celery.pid +selenium-screenshots/ + +syntax: glob +/media +*.pyc +*.swp +*.sqlite3 diff --git a/LICENSE b/LICENSE new file mode 100644 index 0000000..04e85ba --- /dev/null +++ b/LICENSE @@ -0,0 +1,202 @@ + + Apache License + Version 2.0, January 2004 + http://www.apache.org/licenses/ + + TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: + + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade + names, trademarks, service marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. + + END OF TERMS AND CONDITIONS + + APPENDIX: How to apply the Apache License to your work. + + To apply the Apache License to your work, attach the following + boilerplate notice, with the fields enclosed by brackets "[]" + replaced with your own identifying information. (Don't include + the brackets!) The text should be enclosed in the appropriate + comment syntax for the file format. We also recommend that a + file or class name and description of purpose be included on the + same "printed page" as the copyright notice for easier + identification within third-party archives. + + Copyright 2016, Erik Romijn & Mikey Ariel + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. diff --git a/README.rst b/README.rst new file mode 100644 index 0000000..eede335 --- /dev/null +++ b/README.rst @@ -0,0 +1,41 @@ +Open-source Happiness Packets +============================= + +The Open-Source Happiness Packets project was created by `Sasha +Romijn `__ and `Mikey +Ariel `__ in March 2016. The idea came +about while we were building our `Healthy Minds in a Healthy +Community `__ presentation for +`Djangocon Europe 2016 `__. One +of the issues we wanted to address in the presentation was that many +people are unaware of how loved, appreciated, or admired they are by +their peers, since our culture seems to discourage positive feedback and +amplify negative feedback. With this project, we wanted to provide a +platform for people to send positive feedback, thanks, or just a kind +word to their peers, with hope to make it easier and more acceptable for +people to spread happiness, gratitude and appreciation in open-source +communities. + +The structure and format of the site is basic, and contributions are +welcome! + +To run this project or the tests, you need to set up a virtualenv, install the dev requirements and set +the correct ``DJANGO_SETTINGS_MODULE``, for example with:: + + virtualenv --no-site-packages --prompt='(happinesspackets)' virtualenv/ + source virtualenv/bin/activate + pip install -r requirements/dev.txt + export DJANGO_SETTINGS_MODULE=happinesspackets.settings.dev + ./t + +The ``t`` command is a very short shell script that runs the tests with the correct settings and reports on coverage. + +To run the integration tests:: + + ./manage.py test -v 2 -p integration_test*.py --settings=happinesspackets.settings.tsting + +This repository contains some documentation directly related to the code, built with Sphinx. To build the docs:: + + cd docs + make html + open _build/html/index.html diff --git a/artwork/envelope-square.png b/artwork/envelope-square.png new file mode 100644 index 0000000..2af7c3d Binary files /dev/null and b/artwork/envelope-square.png differ diff --git a/artwork/envelope.ai b/artwork/envelope.ai new file mode 100644 index 0000000..01dad3d --- /dev/null +++ b/artwork/envelope.ai @@ -0,0 +1,1745 @@ +%PDF-1.5 %���� +1 0 obj <>/OCGs[5 0 R]>>/Pages 3 0 R/Type/Catalog>> endobj 2 0 obj <>stream + + + + + application/pdf + + + envelope + + + Adobe Illustrator CC 2015 (Macintosh) + 2016-03-12T22:01:01Z + 2016-03-12T22:01:01Z + 2016-03-12T22:01:01Z + + + + 256 + 164 + JPEG + /9j/4AAQSkZJRgABAgEASABIAAD/7QAsUGhvdG9zaG9wIDMuMAA4QklNA+0AAAAAABAASAAAAAEA AQBIAAAAAQAB/+4ADkFkb2JlAGTAAAAAAf/bAIQABgQEBAUEBgUFBgkGBQYJCwgGBggLDAoKCwoK DBAMDAwMDAwQDA4PEA8ODBMTFBQTExwbGxscHx8fHx8fHx8fHwEHBwcNDA0YEBAYGhURFRofHx8f Hx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8f/8AAEQgApAEAAwER AAIRAQMRAf/EAaIAAAAHAQEBAQEAAAAAAAAAAAQFAwIGAQAHCAkKCwEAAgIDAQEBAQEAAAAAAAAA AQACAwQFBgcICQoLEAACAQMDAgQCBgcDBAIGAnMBAgMRBAAFIRIxQVEGE2EicYEUMpGhBxWxQiPB UtHhMxZi8CRygvElQzRTkqKyY3PCNUQnk6OzNhdUZHTD0uIIJoMJChgZhJRFRqS0VtNVKBry4/PE 1OT0ZXWFlaW1xdXl9WZ2hpamtsbW5vY3R1dnd4eXp7fH1+f3OEhYaHiImKi4yNjo+Ck5SVlpeYmZ qbnJ2en5KjpKWmp6ipqqusra6voRAAICAQIDBQUEBQYECAMDbQEAAhEDBCESMUEFURNhIgZxgZEy obHwFMHR4SNCFVJicvEzJDRDghaSUyWiY7LCB3PSNeJEgxdUkwgJChgZJjZFGidkdFU38qOzwygp 0+PzhJSktMTU5PRldYWVpbXF1eX1RlZmdoaWprbG1ub2R1dnd4eXp7fH1+f3OEhYaHiImKi4yNjo +DlJWWl5iZmpucnZ6fkqOkpaanqKmqq6ytrq+v/aAAwDAQACEQMRAD8A7rdfnF+X9td3FjJqEj39 tLJBNZxW1xLKHicowpHGw6jxxVS/5Wm1xtpvlPX7yv2ZTZi3iP8As5nTw8MVd/iz8zbg0tfI4gQ/ ZlvNSt0++OJZW7Yq71fzsn3SDy7Yr3Ej3lw//CCNfxxVv9Bfm5cf3vmrT7L/AJhtN9Xp/wAZpe+K uHkr8wJP96fPt0xHT0LCzhFT16K1fauKu/5VrqslBcedtfZR09KaCE1+YhO3tirv+VVqd5PN3maR vH9JFNvlGiL+GKuH5S6U1TPruvXDn/dkupzlqeG3HFXf8qf8suf9IvdWuVHRJdRuSAfEUcYq4/k3 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 +ivHFU2ThwXhThQcePSnalMVbxV2KuxV2Kv/2Q== + + + + proof:pdf + uuid:65E6390686CF11DBA6E2D887CEACB407 + xmp.did:538e07b1-b418-456a-83a1-57fc97bf9bb7 + uuid:9c1cc504-b3cf-4048-afeb-638af4945a60 + + xmp.iid:38a03b94-1039-44cc-8218-6e16921e15e9 + xmp.did:38a03b94-1039-44cc-8218-6e16921e15e9 + uuid:65E6390686CF11DBA6E2D887CEACB407 + proof:pdf + + + + + saved + xmp.iid:38a03b94-1039-44cc-8218-6e16921e15e9 + 2016-03-12T19:41:02Z + Adobe Illustrator CC 2015 (Macintosh) + / + + + saved + xmp.iid:538e07b1-b418-456a-83a1-57fc97bf9bb7 + 2016-03-12T22:01Z + Adobe Illustrator CC 2015 (Macintosh) + / + + + + Web + Document + 1 + False + False + + 1403.581029 + 899.943720 + Pixels + + + + Cyan + Magenta + Yellow + Black + + + + + + Default Swatch Group + 0 + + + + White + RGB + PROCESS + 255 + 255 + 255 + + + Black + RGB + PROCESS + 0 + 0 + 0 + + + RGB Red + RGB + PROCESS + 255 + 0 + 0 + + + RGB Yellow + RGB + PROCESS + 255 + 255 + 0 + + + RGB Green + RGB + PROCESS + 0 + 255 + 0 + + + RGB Cyan + RGB + PROCESS + 0 + 255 + 255 + + + RGB Blue + RGB + PROCESS + 0 + 0 + 255 + + + RGB Magenta + RGB + PROCESS + 255 + 0 + 255 + + + R=193 G=39 B=45 + RGB + PROCESS + 193 + 39 + 45 + + + R=237 G=28 B=36 + RGB + PROCESS + 237 + 28 + 36 + + + R=241 G=90 B=36 + RGB + PROCESS + 241 + 90 + 36 + + + R=247 G=147 B=30 + RGB + PROCESS + 247 + 147 + 30 + + + R=251 G=176 B=59 + RGB + PROCESS + 251 + 176 + 59 + + + R=252 G=238 B=33 + RGB + PROCESS + 252 + 238 + 33 + + + R=217 G=224 B=33 + RGB + PROCESS + 217 + 224 + 33 + + + R=140 G=198 B=63 + RGB + PROCESS + 140 + 198 + 63 + + + R=57 G=181 B=74 + RGB + PROCESS + 57 + 181 + 74 + + + R=0 G=146 B=69 + RGB + PROCESS + 0 + 146 + 69 + + + R=0 G=104 B=55 + RGB + PROCESS + 0 + 104 + 55 + + + R=34 G=181 B=115 + RGB + PROCESS + 34 + 181 + 115 + + + R=0 G=169 B=157 + RGB + PROCESS + 0 + 169 + 157 + + + R=41 G=171 B=226 + RGB + PROCESS + 41 + 171 + 226 + + + R=0 G=113 B=188 + RGB + PROCESS + 0 + 113 + 188 + + + R=46 G=49 B=146 + RGB + PROCESS + 46 + 49 + 146 + + + R=27 G=20 B=100 + RGB + PROCESS + 27 + 20 + 100 + + + R=102 G=45 B=145 + RGB + PROCESS + 102 + 45 + 145 + + + R=147 G=39 B=143 + RGB + PROCESS + 147 + 39 + 143 + + + R=158 G=0 B=93 + RGB + PROCESS + 158 + 0 + 93 + + + R=212 G=20 B=90 + RGB + PROCESS + 212 + 20 + 90 + + + R=237 G=30 B=121 + RGB + PROCESS + 237 + 30 + 121 + + + R=199 G=178 B=153 + RGB + PROCESS + 199 + 178 + 153 + + + R=153 G=134 B=117 + RGB + PROCESS + 153 + 134 + 117 + + + R=115 G=99 B=87 + RGB + PROCESS + 115 + 99 + 87 + + + R=83 G=71 B=65 + RGB + PROCESS + 83 + 71 + 65 + + + R=198 G=156 B=109 + RGB + PROCESS + 198 + 156 + 109 + + + R=166 G=124 B=82 + RGB + PROCESS + 166 + 124 + 82 + + + R=140 G=98 B=57 + RGB + PROCESS + 140 + 98 + 57 + + + R=117 G=76 B=36 + RGB + PROCESS + 117 + 76 + 36 + + + R=96 G=56 B=19 + RGB + PROCESS + 96 + 56 + 19 + + + R=66 G=33 B=11 + RGB + PROCESS + 66 + 33 + 11 + + + + + + Grays + 1 + + + + R=0 G=0 B=0 + RGB + PROCESS + 0 + 0 + 0 + + + R=26 G=26 B=26 + RGB + PROCESS + 26 + 26 + 26 + + + R=51 G=51 B=51 + RGB + PROCESS + 51 + 51 + 51 + + + R=77 G=77 B=77 + RGB + PROCESS + 77 + 77 + 77 + + + R=102 G=102 B=102 + RGB + PROCESS + 102 + 102 + 102 + + + R=128 G=128 B=128 + RGB + PROCESS + 128 + 128 + 128 + + + R=153 G=153 B=153 + RGB + PROCESS + 153 + 153 + 153 + + + R=179 G=179 B=179 + RGB + PROCESS + 179 + 179 + 179 + + + R=204 G=204 B=204 + RGB + PROCESS + 204 + 204 + 204 + + + R=230 G=230 B=230 + RGB + PROCESS + 230 + 230 + 230 + + + R=242 G=242 B=242 + RGB + PROCESS + 242 + 242 + 242 + + + + + + Web Color Group + 1 + + + + R=63 G=169 B=245 + RGB + PROCESS + 63 + 169 + 245 + + + R=122 G=201 B=67 + RGB + PROCESS + 122 + 201 + 67 + + + R=255 G=147 B=30 + RGB + PROCESS + 255 + 147 + 30 + + + R=255 G=29 B=37 + RGB + PROCESS + 255 + 29 + 37 + + + R=255 G=123 B=172 + RGB + PROCESS + 255 + 123 + 172 + + + R=189 G=204 B=212 + RGB + PROCESS + 189 + 204 + 212 + + + + + + + Adobe PDF library 15.00 + + + + + + + + + + + + + + + + + + + + + + + + + endstream endobj 3 0 obj <> endobj 7 0 obj <>/Resources<>/ExtGState<>/Properties<>>>/Thumb 12 0 R/TrimBox[0.0 0.0 1403.58 899.944]/Type/Page>> endobj 8 0 obj <>stream +H��Mr7 ��} +^�!� p�I*+'��"���Ʈr����=��\��Qi8l?�=���<}���Ï�r|9j��d�^�W�Z�ם�?~+����s-����S^�l��֟/�6*����{��� ?�OG>�t�M�z9��ŗ5������B�U���~��,{!�NB�UL����I����ΣJ�Q�D ]�EHkV�eM´�W�Z{�߅�j����&3�U'�OH���D�U|���Eژu�{��i� v���8�c��N�!k����ʝZ�r��e4�s�!:���ӧ +u��.�,&`D%�A�c�4�?���"h:�b��z�G�.���E���h�-���agz$FtŦ�~�q|�4p{���������˱�?�] ߃�:���7TW�����Ts���T��L{.�