3330 Commits

Author SHA1 Message Date
Rodney Ewing
2119ee3b90 Merge commit 'refs/merge-requests/55' of git://gitorious.org/mediagoblin/mediagoblin into 55
Conflicts:
	docs/source/siteadmin/relnotes.rst
2013-07-31 15:27:22 -07:00
Rodney Ewing
9b60486894 minor styling updates to docs 2013-07-31 15:16:52 -07:00
Rodney Ewing
bc23c8b9b6 Merge commit 'refs/merge-requests/59' of git://gitorious.org/mediagoblin/mediagoblin into merge-requests/59 2013-07-31 15:07:44 -07:00
tilly-Q
63c3ca28ab Starting to write unit tests... 2013-07-30 19:06:26 -04:00
tilly-Q
52a355b275 Merge branch 'ticket-679' into OPW-Moderation-Update
Conflicts:
	mediagoblin/auth/tools.py
	mediagoblin/auth/views.py
	mediagoblin/db/migration_tools.py
	mediagoblin/db/migrations.py
	mediagoblin/db/models.py
	mediagoblin/decorators.py
	mediagoblin/user_pages/views.py
2013-07-29 18:40:19 -04:00
Christopher Allan Webber
a1e299d60e Why isn't .ogg in this list? A comment explains... it's detected by sniffing!
This commit sponsored by Tom Marble.  Thanks Tom!
2013-07-29 16:50:51 -05:00
tilly-Q
08cd10d84f I actually had to do a bit more work than I thought, because I needed to account
for plugins. In this commit I changed the MigrationManager and DatabaseData ob-
jects to account for FOUNDATIONS in any plugin's (or main program's) models.py
file.
2013-07-29 17:15:29 -04:00
tilly-Q
f2b2008da5 This was a very simple ticket actually. I created a list called FOUNDATIONS in
mediagoblin/db/models.py. This list holds all of the information about rows that
should be created at database initialization. Read the documentation near the
FOUNDATIONS list to understand the proper format for this list.

All of the work is done through a new method on MigrationManager in
mediagoblin/db/migrations_tools.py. This method, `populate_table_foundations`
parses the FOUNDATIONS list and creates the foundations based on the data incl-
uded. This only ever happens when the database is initialized. Migrations to
releases with new Foundations should be very easy just using the basic
database functionality.
2013-07-29 16:36:06 -04:00
tilly-Q
f26c21cd5b This is a very small commit. All that I have done here is to clean up my code
a bit. I made it so that mediagoblin.user_pages.report recieves the report
form as part of it's context. I also made sure I used {% trans %} tags effect-
-ively.
2013-07-29 15:14:39 -04:00
Rodney Ewing
130b85f81a babel 1.0 doesn't have a localedata.list() method, so updated setup.py.
made "import crypto" fully qualified
2013-07-29 11:26:06 -07:00
xray7224
cae55705b1 Fix problem causing exception when invalid Authentication header provided 2013-07-29 17:48:53 +01:00
xray7224
4554d6e014 Fix problem with routing to oauth 2013-07-29 17:29:56 +01:00
xray7224
0ec89cb29f Fixes problem with headers pointing to old federation dir 2013-07-29 17:25:10 +01:00
tilly-Q
3aa3871b90 This commit had some important milestones in it. The major update is that now I
have mostly completed the moderator punishment and resolution of reports. Along
with this, I have also added one last table to the database: one that holds ar-
-chived (or resolved) reports. This is some of the primary functionality of my
whole update, so this is a big step! The other changes I made this update are
primarily organizational. I refactored some of my code into functions and I cl-
eaned up many of my templates.

--\ mediagoblin/db/models.py
--| Created the new ArchivedReport table
--| Removed columns from BaseReport table that are only necessary for Archived
  |    reports

--\ mediagoblin/db/migrations.py
--| Created the new ArchivedReport table
--| Removed columns from BaseReport table that are only necessary for Archived
  |    reports

--\ mediagoblin/db/util.py
--| Created the user_privileges_to_dictionary function. This is useful for
  |    accessing a user's permissions from within a template.

--\ mediagoblin/moderation/forms.py
--| Expanded the disciplinary actions a moderator can take
--| Allowed the moderator to choose more than one disciplinary action at a time
  |    (It's now managed with a list of checkboxes rather than radio buttons)
----| Pulled a MultiCheckBox class from  a wtforms tutorial
--| Added various other form inputs for details of the moderator's disciplinary
  |    actions
--| Tried to ensure that every string is unicode and translated

--\ mediagoblin/moderation/tools.py
--| Created this file for holding useful moderation tools
--| Moved the penalizing code from views to the function take_punitive_actions
--| Added many more types of punitive actions
--| Added the archiving of old reports

--\ mediagoblin/moderation/views.py
--| Used the privileges_to_dictionary function for the Users Detail view to
  |   allow for different actions available to a moderator and an admin.
--| Added in functionality for ArchivedReports to the reports_detail and
  |   reports_panel views
--| Moved the punishments of repots_detail to tools.py (as mentioned above)

--\ mediagoblin/static/css/base.css
--| Added new styling for the User Detail page

--\ mediagoblin/static/images/icon_clipboard_alert.png
--| Added this image to represent unresolved reports

--\ mediagoblin/templates/mediagoblin/moderation/report.html
--| Added 'Return to Reports Panel' button
--| Fixed the spacing to be less that 80 columns wide
--| Added in display for Archived Reports

--\ mediagoblin/templates/mediagoblin/moderation/reports_panel.html
--| Changed the placement and columns of the tables
--| Fixed the spacing to be less that 80 columns wide
--| Added in display for Archived Reports

--\ mediagoblin/templates/mediagoblin/moderation/user.html
--| Fixed the spacing to be less that 80 columns wide
--| Took away the moderator's ability to add and remove privileges at will.
  |  Only the admin has this power now.

--\ mediagoblin/templates/mediagoblin/moderation/users_panel.html
--| Fixed the spacing to be less that 80 columns wide

--\ mediagoblin/tools/response.py
--| Added in code to remove a UserBan from a User if that user logs in after
  |  the expiration date
2013-07-27 16:44:40 -04:00
Christopher Allan Webber
99d79749c4 Set up in-package virtualenv via make 2013-07-25 15:15:49 -05:00
Christopher Allan Webber
68f6f91339 Removing aclocal.m4, which is autogenerated 2013-07-25 14:56:08 -05:00
Christopher Allan Webber
7b3d6c675e Adding .gitignore for pyconfigure/automake generated files 2013-07-25 14:53:18 -05:00
Christopher Allan Webber
00ed01b7cb Moving setup.py.in back to setup.py 2013-07-25 14:34:48 -05:00
Christopher Allan Webber
2723bb154a Merge remote-tracking branch 'refs/remotes/brandoninvergo/pyconfigure' into merge-pyconfigure 2013-07-25 14:29:30 -05:00
Christopher Allan Webber
9a2b36c9a2 More up to date README 2013-07-25 14:05:50 -05:00
Christopher Allan Webber
b889f97156 Move the "cd mediagoblin" to the right line. Thanks usrnix!
This commit sponsored by Kenneth Dombrowski.  Thanks!
2013-07-23 20:24:30 -05:00
xray7224
005181b166 Renames OAuth1 code to federation 2013-07-22 17:06:00 +01:00
xray7224
657263abdf Refactor WTFormData 2013-07-22 16:56:22 +01:00
Jessica Tallon
8e3bf97821 Fix problem with migration - OAuth 2013-07-22 17:17:01 +01:00
Jessica Tallon
617bff1830 Fixes some typo's and removes unused imports 2013-07-20 19:08:02 +01:00
xray7224
7271b06282 Moves first versions of the the models to migrations 2013-07-18 20:39:15 +01:00
xray7224
8ddd7769de Adds migration for OAuth1 tables 2013-07-18 20:24:35 +01:00
xray7224
89d5b44e0a Adds test for request_tokens 2013-07-18 19:15:05 +01:00
tilly-Q
6bba33d7e6 Whew. This is a big update. I did some significant keeping work. I moved all of
the folders and enpoints labeled 'admin' to the more accurate term of 'moderat-
ion.' I also created the ability for admins and moderators to add or remove pr-
ivileges or to ban a user in response to a report. This also meant implementing
the UserBan class in various places. I also had to add a column called result
to the ReportBase table. This allows the moderator/admin to leave comments when
they respond to a report, allowing for archiving of what responses they do/n't
take.

--\ mediagoblin/db/migrations.py
--| Added result column to ReportBase

--\ mediagoblin/db/models.py
--| Added result column to ReportBase
--| Added documentation to tables I had made previously

--\ mediagoblin/decorators.py
--| Editted the user_has_privilege decorator to check whether a user has been
  | banned or not
--| Created a seperate user_not_banned decorator to prevent banned users from
  | accessing any pages
--| Changed require_admin_login into require_admin_or_moderator login

--\ mediagoblin/gmg_commands/users.py
--| Made the gmg command `adduser` create a user w/ the appropriate privileges

--\ mediagoblin/moderation/routing.py  << formerly mediagoblin/admin/routing.py
--| Renamed all of the routes from admin -> moderation

--\ mediagoblin/routing.py
--| Renamed all of the routes from admin -> moderation

--\ mediagoblin/moderation/views.py << formerly mediagoblin/admin/views.py
--| Renamed all of the routes & functions from admin -> moderation
--| Expanded greatly on the moderation_reports_detail view and functionality
--| Added in the give_or_take_away_privilege form, however this might be a use-
  | -less function which I could remove (because privilege changes should happe-
  | n in response to a report so they can be archived and visible)

--\ mediagoblin/static/css/base.css
--| Added in a style for the reports_detail page

--\ mediagoblin/templates/mediagoblin/base.html
--| Renamed all of the routes from admin -> moderation

--\ mediagoblin/templates/mediagoblin/moderation/report.html
--| Added form to allow moderators and admins to respond to reports.

--\ mediagoblin/templates/mediagoblin/moderation/reports_panel.html
--| Fixed the table for closed reports

--\ mediagoblin/templates/mediagoblin/moderation/user.html
--| Added in a table w/ all of the user's privileges and the option to add or
  | remove them. Again, this is probably vestigial
--| Renamed all of the routes from admin -> moderation

--\ mediagoblin/templates/mediagoblin/moderation/user_panel.html
--| Renamed all of the routes from admin -> moderation

--\ mediagoblin/tools/response.py
--| Added function render_user_banned, this is the view function for the redir-
  | -ect that happens when a user tries to access the site whilst banned

--\ mediagoblin/user_pages/forms.py
--| Added important translate function where I had text

--\ mediagoblin/user_pages/lib.py
--| Renamed functiion for clarity

--\ mediagoblin/user_pages/views.py
--| Added the user_not_banned decorator to every view

--\ mediagoblin/views.py
--| Added the user_not_banned decorator

--\ mediagoblin/moderation/forms.py
--| Created this new file

--\ mediagoblin/templates/mediagoblin/banned.html
--| Created this new file
--| This is the page which people are redirected to when they access the site
  | while banned
2013-07-17 16:16:07 -04:00
xray7224
86ba416883 Adds some tests for the OAuth and some docs 2013-07-16 19:19:49 +01:00
Christopher Allan Webber
64ad0beea8 Fixing docs: git submodule update, not git submodule fetch!
This commit sponsored by Charles Combs.  Thank you!
2013-07-14 21:05:01 -05:00
xray7224
1c694fbec5 Fixes tests 2013-07-14 19:00:52 +01:00
xray7224
670717d950 Merge branch 'master' of git://gitorious.org/mediagoblin/mediagoblin 2013-07-14 17:31:03 +01:00
Christopher Allan Webber
df206ab633 Skip the openid tests if the openid module is not installed.
This commit sponsored by Brandon Smith.  Thank you!
2013-07-14 11:23:52 -05:00
xray7224
cfe7054c13 Using nonce now, preventing OAuth replay attacks 2013-07-14 16:24:04 +01:00
xray7224
e49263564b Merge branch 'master' of git://gitorious.org/mediagoblin/mediagoblin 2013-07-14 15:27:52 +01:00
Christopher Allan Webber
2d0028e932 Documenting the media_manager fetching hook
This commit sponsored by Christian Corrodi.  Thank you!
2013-07-12 17:13:48 -05:00
Christopher Allan Webber
6403bc928b Switching the hook 'get_media_manager' to a more "directed" tuple-hook
By switching this to a tuple that includes the media type in the key
itself, this requires iteration and execution of functions that
"check" that they are the right type.

This commit sponsored by Greg Grossmeier.  Thanks buddy! :)
2013-07-12 17:04:08 -05:00
Rodney Ewing
91bee92e8e documenting the new media_type plugins and available hooks 2013-07-12 14:35:43 -07:00
Christopher Allan Webber
5305fee13b Merge branch 'rodney757-media_plugins'
Conflicts:
	mediagoblin.ini
	mediagoblin/tests/test_mgoblin_app.ini
2013-07-12 16:24:36 -05:00
Christopher Allan Webber
4259ad5bf1 Fix the last bit preventing all the unit tests from passing in media types->plugins
The last commit was also small, so Jeff Moe gets... two!  Two sponsored commits!
Ah ah ah. </count_voice>
2013-07-12 15:52:20 -05:00
Christopher Allan Webber
60eeb45664 Switch the import of the image media manager over to the new class
This helps resolve one of the remaining issues with the tests for the
media type pluginification.

This commit sponsored by Jeffrey Moe.  Thanks Jeff!  Lulzbot rocks!
2013-07-12 14:53:10 -05:00
Christopher Allan Webber
003ea47499 Changing the information spat out while printing from media types->plugins
Previously it called even plugins media types.  Ha!

This commit sponsored by Jon Merkley.  Thank you!
2013-07-12 14:16:47 -05:00
Rodney Ewing
ac08a9acaf Patch by Strum. Remove redundent tool-tips from Stl media_type 2013-07-12 09:51:42 -07:00
Rodney Ewing
7bfb3ae829 Patch by pythonsnake. Make mediagoblin.ini comments more helpful. 2013-07-12 09:32:50 -07:00
Rodney Ewing
0f231966b3 make change_pass page autofocus 2013-07-11 16:33:33 -07:00
Rodney Ewing
643f07af06 forgot to render errors 2013-07-11 16:29:16 -07:00
Rodney Ewing
a937ea9efd change to class instead of id to work with firefox 2013-07-11 16:29:16 -07:00
Rodney Ewing
f7998c3326 fix for boolean fields 2013-07-11 16:29:16 -07:00
Rodney Ewing
0ec7ce4ec6 updated to new render_divs macro 2013-07-11 14:56:40 -07:00