aboutsummaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
...
| * | | | In this commit, I have made a few changes and tightened up some of my modelstilly-Q2013-06-278-87/+175
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | code. I added in two major pieces of functionality: table foundations and a decorator to confirm whether or not a user is a member of a certain group. Table Foundations are default rows that should be present in a given table as soon as the database is initialized. For example, I am using these to populate the core__groups table with all of the necessary groups ('moderator', 'com- menter', etc). Right now, this is achieved by adding a dictionary of parameters (with the parameters as lists) to the constant FOUNDATIONS in mediagoblin.db.models. The keys to this dictionary are uninstantiated classes. The classes which require foundations also have must have a constructor so that the list of parameters can be passed appropriately like so: Model(*parameters) In order to implement these foundations, I added the method populate_table_fou- -ndations to MigrationManager in mediagoblin.db.migration_tools. The decorator, called user_in_group, accepts as a parameter a unicode string, and then decides whether to redirect to 403 or let the user access the page. The identifier is the Group.group_name string, because I believe that will allow for the most readable code. I also added in the simple decorator require_admin_login. In terms of tightening up my code, I made many minor changes to my use of white space and made a few small documentation additions. I removed a vestigial class (ReportForm) from mediagoblin.user_pages.forms. I moved all of my migrations in- to one registered Migration. Setting up Foundations ============================== --\ mediagoblin/db/migration_tools.py --| created: MigrationManager.populate_table_foundations --| modified: MigrationManager.init_or_migrate to run | self.populate_table_foundations on init --\ mediagoblin/db/models.py --| created: FOUNDATIONS ----| created: group_foundations Working With Permissions ============================== --\ mediagoblin/decorators.py --| created: user_in_group --| created: require_admin_login --\ mediagoblin/user_pages/views.py --| modified: added decorator user_in_group to file_a_report --\ mediagoblin/admin/views.py --| modified: added decorator require_admin_login to all views functions General Code Tidying ============================= --/ mediagoblin/admin/views.py --/ mediagoblin/user_pages/forms.py --/ mediagoblin/db/models.py --/ mediagoblin/user_pages/lib.py --/ mediagoblin/user_pages/views.py --/ mediagoblin/db/migrations.py
| * | | | This is the first stage of my project of implenting admin/moderator functiona-tilly-Q2013-06-2413-10/+548
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | lity. At this point, I have finished all the of basic work with the models! I still need to do some tightening of their documentation, but they seem to be working well. Working with Models ======================================== --\ mediagoblin/db/models.py --| Added in the Report model and table. This model is strictly a parent ----| Added in the CommentReport model which holds information about a report | filed against a comment. This class inherits from Report. ----| Added in the MediaReport model which holds information about a report f- | -iled against a media entry. This class inherits from Report. --| Added in a UserBan model and table. This model is in a one to one relatio- | -nship with User. This object acts as a marker for whether a user is banned | or not. --| Added in a Group model. These objects are in a many-to-many relationship | with User to explain which privileges a User has. ----| Added in GroupUserAssociation which is a table used to hold this many to | many relationship between Group & User. --\ mediagoblin/db/migrations.py --| Added in the migrations for all of the additions to models --| Added UserBan_v0 --| Added Report_v0 ----| Added CommentReport_v0 ----| Added MediaReport_v0 --| Added Group_v0 ----| Added GroupUserAssociation_v0 Working with Templates, Views, and Routing =============================================== >>> Reporting a Comment or a MediaEntry --\ mediagoblin/user_pages/views.py --| Added in the function file_a_report to allow user to file reports against | MediaEntries or Comments. Handles GET and POST requests. --| Added in the function file_a_comment_report which uses file_a_report but | also catches appropriate information for comment_ids. I may be able to do | this more eloquently with decorators. --\ mediagoblin/user_pages/routing.py --| Added in route 'mediagoblin.user_pages.media_home.report_media' | (linked to address /u/<user>/m/<media>/report/ ) --| Added in route ''mediagoblin.user_pages.media_home.report_comment' | (linked to address /u/<user>/m/<media>/c/<comment>/report/ ) --\ mediagoblin/templates/mediagoblin/user_pages/report.html --| I created this file to handle the filing of a report. --\ mediagoblin/templates/mediagoblin/user_pages/media.html --| Modified this file to add in links allowing users to report either media | or comments. --\ mediagoblin/user_pages/lib.py --| Added in build_report_form which processes data as either a CommentReport or | a MediaReport depending on which parameters are present --\ mediagoblin/user_pages/forms.py --| Added in CommentReportForm --| Added in MediaReportForm --| note: ReportForm is vestigial to an earlier strategy I used and I'll remove it | promptly --\ mediagoblin/decorators.py --| Added in 'get_media_comment_by_id' for use in mediagoblin/user_pages/views.py >>> New Admin Panels --\ mediagoblin/admin/views.py --| Added in the function admin_users_panel --| Added in the function admin_reports_panel --\ mediagoblin/admin/routing.py --| Added in route 'mediagoblin.admin.users' | (linked to address '/a/users') --| Added in route 'mediagoblin.admin.reports' | (linked to address '/a/reports/') --\ mediagoblin/templates/admin/user.html --| Created this file as a template for monitoring users --\ mediagoblin/templates/admin/report.html --| Created this file as a template for monitoring reports filed against media or | comments
* | | | | Make the develop makefile target the default.Christopher Allan Webber2013-10-071-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Why do ./configure && make && sudo make install if the second one make installs, amirite? ;) Generally I just think install should not be a default make target. This commit sponsored by Ron Ursem. Thank you!
* | | | | Fix by lennax: Fix the AC_MSG_ERROR undefined macro error.Christopher Allan Webber2013-10-071-0/+1
| | | | | | | | | | | | | | | | | | | | Thanks Lennax! :)
* | | | | Okay, making the theme of video.js consistent with the theme we had previousChristopher Allan Webber2013-09-291-5/+1
| | | | | | | | | | | | | | | | | | | | This commit sponsored by Christian Sasso. Thank you!
* | | | | Fixing ALL THE BROKEN TESTS. I probably broke most of them.Christopher Allan Webber2013-09-295-6/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | - We've now broken out user.html and user_nonactive.html but the tests didn't reflect it - the location of one of the module imports broke, but I didn't notice because of .pyc files ;) This commit sponsored by Tiberiu C. Turbureanu (ceata.org). Thank you!
* | | | | Merge remote-tracking branch 'spaetz/master'Christopher Allan Webber2013-09-283-113/+148
|\ \ \ \ \
| * | | | | Simplify non-active user pageSebastian Spaeth2013-09-033-113/+148
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Currently, the logic of whether a user account has been activated is in the main user.html template. This is not good as: doing that check for all users from template code is probably not great for performance, but more severly, the template logic is rather difficult and convoluted. Split this in a user.html and a user_nonactive.html where user.html is used for active users and user_nonactive displays all the "you still need to be activated" blurbs. This makes the templates much easier on the eyes.
* | | | | | v0.5.1 release notesChristopher Allan Webber2013-09-271-0/+11
| | | | | |
* | | | | | Actually link to the scriptChristopher Allan Webber2013-09-251-2/+2
| | | | | |
* | | | | | Fixing one test post-merge. We got rid of the mongo stuff, so... consistency!Christopher Allan Webber2013-09-201-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Now we can merge LDAP support! Woohoo! This commit sponsored by the ever-awesome GMG contributor, Sebastian Spaeth. Thanks!
* | | | | | Merge remote-tracking branch 'refs/remotes/rodney757/new_ldap'Christopher Allan Webber2013-09-2010-0/+511
|\ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: docs/source/index.rst mediagoblin/templates/mediagoblin/auth/login.html
| * | | | | | skip test if python-ldap is not installedRodney Ewing2013-08-151-0/+2
| | | | | | |
| * | | | | | added tests for ldap pluginRodney Ewing2013-08-152-0/+164
| | | | | | |
| * | | | | | catch a keyerrorRodney Ewing2013-08-151-5/+5
| | | | | | |
| * | | | | | typo in docsRodney Ewing2013-08-151-3/+3
| | | | | | |
| * | | | | | added docs for ldap pluginRodney Ewing2013-08-153-0/+52
| | | | | | |
| * | | | | | use pluginapi.get_configRodney Ewing2013-08-151-2/+2
| | | | | | |
| * | | | | | removed unused importRodney Ewing2013-08-151-1/+0
| | | | | | |
| * | | | | | added a create_account hookRodney Ewing2013-08-152-0/+33
| | | | | | |
| * | | | | | only create a user if the register_form is from the ldap pluginRodney Ewing2013-08-151-1/+2
| | | | | | |
| * | | | | | - fixed typo with unbinding codeRodney Ewing2013-08-152-6/+21
| | | | | | | | | | | | | | | | | | | | | | | | | | | | - added the ability to get the user's email from the ldap server upon registration
| * | | | | | - changed host and port to just a server uriRodney Ewing2013-08-151-4/+11
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | - added an option to connect with TLS - unbind after when done
| * | | | | | ldap uses it own viewsRodney Ewing2013-08-155-48/+120
| | | | | | |
| * | | | | | starting ldap pluginRodney Ewing2013-08-153-0/+166
| | | | | | |
* | | | | | | Adding the .xcf file of the MediaGoblin goblin.Christopher Allan Webber2013-09-191-0/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | This commit sponsored by Alexandre Hannud Abdo. Thank you!
* | | | | | | We're no longer using this image, as awesome as it isChristopher Allan Webber2013-09-191-0/+0
| | | | | | |
* | | | | | | Fixing import error after merge of basic_auth branch.Christopher Allan Webber2013-09-191-2/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | This commit sponsored by geoffrey jost. Thank you!
* | | | | | | Fixing error caused by merge (failure to build password editing url)Christopher Allan Webber2013-09-191-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | This commit sponsored by Kim Lindberger. Thank you!
* | | | | | | Merge remote-tracking branch 'refs/remotes/rodney757/auth_refactor'Christopher Allan Webber2013-09-1929-168/+463
|\ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: mediagoblin/auth/views.py mediagoblin/edit/forms.py mediagoblin/templates/mediagoblin/edit/edit_account.html
| * | | | | | | skip openid test if python-openid isn't installedRodney Ewing2013-08-161-0/+1
| | | | | | | |
| * | | | | | | use new in-memory db for testingRodney Ewing2013-08-162-4/+4
| | | | | | | |
| * | | | | | | fixed some typos and missed importsRodney Ewing2013-08-163-5/+9
| | | | | | | |
| * | | | | | | moved create account link on login page to a hookRodney Ewing2013-08-163-8/+31
| | | | | | | |
| * | | | | | | deleted misplaced templateRodney Ewing2013-08-161-29/+0
| | | | | | | |
| * | | | | | | fixed typo to check allow_registration not if auth is enabledRodney Ewing2013-08-161-2/+2
| | | | | | | |
| * | | | | | | used template hooks instead of hardcoding basic_auth functionality into ↵Rodney Ewing2013-08-168-17/+86
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | templates
| * | | | | | | moved change_pass to basic_auth and fixed some typos with the moving of ↵Rodney Ewing2013-08-1612-96/+127
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | forgot pass
| * | | | | | | moved forgot pass to basic_auth pluginRodney Ewing2013-08-1611-237/+253
| | | | | | | |
* | | | | | | | remove a blank lineRodney Ewing2013-09-191-1/+0
| | | | | | | |
* | | | | | | | not all JSONEncoded fields should be mutable dictsRodney Ewing2013-09-193-29/+28
| | | | | | | |
* | | | | | | | skip video processing if necessaryRodney Ewing2013-09-191-0/+37
| | | | | | | |
* | | | | | | | skip stl processing if necessaryRodney Ewing2013-09-191-0/+41
| | | | | | | |
* | | | | | | | skip pdf processing if necessaryRodney Ewing2013-09-191-0/+26
| | | | | | | |
* | | | | | | | skip audio reprocessing if necessaryRodney Ewing2013-09-191-0/+39
| | | | | | | |
* | | | | | | | make all JSONEncoded columns mutableRodney Ewing2013-09-192-3/+5
| | | | | | | |
* | | | | | | | need to use mutation tracking to detect changes in JSONEncoded typesRodney Ewing2013-09-193-5/+35
| | | | | | | |
* | | | | | | | skip ascii thumb resizing if necessaryRodney Ewing2013-09-191-12/+12
| | | | | | | |
* | | | | | | | skip image resizing if possibleRodney Ewing2013-09-191-1/+0
| | | | | | | |
* | | | | | | | get and set metadata for a MediaFileRodney Ewing2013-09-191-0/+1
| | | | | | | |