Commit graph

2222 commits

Author SHA1 Message Date
jenkins-bot 0f4e85ce11 Merge "Template dialog: Show up to the limit of parameters, not up to the limit + 1" 2014-09-16 23:44:55 +00:00
jenkins-bot d2bcc9dc05 Merge "Show pending state on action button and keep dialog open when switching to source mode" 2014-09-16 23:44:22 +00:00
jenkins-bot 370aadd619 Merge "Make <visualeditor-preference-enable> message respect plural rules" 2014-09-16 21:43:10 +00:00
Moriel Schottlender 20c4fbbc1e Validate size widget when activating/deactivating apply button
In the Media Dialog, make sure the size widget is valid before
applying or disabling the apply/save buttons.

Bug: 70861
Change-Id: I6ec9eb69fe6576f1c668270b12157de9910f0214
2014-09-16 14:48:40 -04:00
Translation updater bot 2ac26314b7 Localisation updates from https://translatewiki.net.
Change-Id: I8bc42c851314fe3d70068403b77a709f94be381f
2014-09-16 19:48:38 +02:00
James D. Forrester 92a6fdbb02 Make <visualeditor-preference-enable> message respect plural rules
Change-Id: I4660a530cd50a179c06a82295b6a24cae1b741b6
2014-09-16 10:35:57 -07:00
jenkins-bot 078f30f781 Merge "Use ve.parseXhtml() and ve.serializeXhtml()" 2014-09-16 02:39:39 +00:00
Roan Kattouw c4857a1f82 Use ve.parseXhtml() and ve.serializeXhtml()
Introduced in VE core in I0fb47f7c91f61.

In IE, this fixes corruption of style and bgcolor attributes.
In other browsers, the only change is that we now use
XMLSerializer rather than .outerHTML to serialize, but as
far as I can tell this isn't materially different. XMLSerializer
correctly uses HTML semantics when given an HTML document.

Bug: 70856
Change-Id: If48555fa4763e763484bbabfa0bc4ded0d0a5c58
2014-09-16 01:41:53 +00:00
jenkins-bot 6ec7789be6 Merge "Add contextual help to all remaining meta dialog controls" 2014-09-16 01:31:12 +00:00
James D. Forrester 712ea472d3 Add contextual help to all remaining meta dialog controls
Bug: 51798
Change-Id: I3f8141485c89e585595dbb853d32e69cbcaebac6
2014-09-15 16:26:12 -07:00
Alex Monk ceafcd5937 Check whether there is a range selected when enabling/disabling re-use citation tool
If there is no range selected, disable regardless of whether there are references in the document or not.

Bug: 70870
Change-Id: I2c281fefe7915345fafb735b3788166ab8118049
2014-09-16 00:18:23 +01:00
Cmcmahon b6b93fc860 [BrowserTest] inadvertent clash of identifiers from earlier update
Change-Id: I1a86db0f4fa9ee0f327cf371b76c9ebf25ddc17e
2014-09-15 14:48:49 -07:00
Cmcmahon e71699f06a [BrowserTests] Pick up the latest webdriver to run latest Firefox
Pure maintenance

Change-Id: I709bcae2a609904c5ce75e22c61588d5012dec17
2014-09-15 13:48:12 -07:00
Alex Monk 65b232a35b Show pending state on action button and keep dialog open when switching to source mode
Instead of doing a blocking overlay, we're simply keeping the dialog open,
which is necessary for the pending status of the action buttons anyway.

Requires Ib2c8f336 in OOUI

Bug: 65012
Change-Id: I65b5de4a1666a81b157a71f6fec490007689eb44
2014-09-15 20:44:55 +01:00
James D. Forrester 8cde565899 Template dialog: Show up to the limit of parameters, not up to the limit + 1
Bug: 70609
Change-Id: I26dc9c17fe7572d7b864000781fff6583edf9f9b
2014-09-15 12:13:47 -07:00
Translation updater bot e4a8b251eb Localisation updates from https://translatewiki.net.
Change-Id: Ifb2e827be70c18a7976d36dac4ba2f2c3786ba48
2014-09-15 02:11:59 +02:00
Translation updater bot 7faa561782 Localisation updates from https://translatewiki.net.
Change-Id: I32071f21af9ed6e606aa7aa23982aaef29641ee6
2014-09-13 00:50:00 +02:00
Roan Kattouw 7545868bc8 Don't return undefined in ve.init.mw.Platform#getLanguageName
When the language isn't found, return an empty string
instead of undefined.

Bug: 70731
Change-Id: Ia28e0d24e57e3a24414e04bee58ec76459665ad4
2014-09-12 14:43:31 -07:00
Cmcmahon 954fec83e1 [BrowserTest] UI text changed s/Cancel/Resume editing/.
Change-Id: I774b6a3cf02627ea0399377b9f6d57ca474ead07
2014-09-12 10:53:59 -07:00
Cmcmahon aa67deaeef [BrowserTest] add one test to validate new ie11 build
Change-Id: I9add1caf0083e757d0a7f6da513bd798fd74e97e
2014-09-12 08:55:14 -07:00
lokal-profil dbb94ea221 Correct typo in visualeditor-dialog-meta-settings-redirect-statichelp
Change-Id: Ibd9459903f8ce278e414fd7ba891f653109f913d
2014-09-12 15:26:11 +00:00
Translation updater bot ff803b321f Merge "Localisation updates from https://translatewiki.net." 2014-09-11 22:03:29 +00:00
Translation updater bot c13ee9c93c Localisation updates from https://translatewiki.net.
Change-Id: Ib0454ae6e13ca3e16b92615a743bc6d56b47c18d
2014-09-12 00:01:36 +02:00
jenkins-bot 050205ea85 Merge "Convert all instances of assert.equal to assert.strictEqual" 2014-09-11 21:37:45 +00:00
James D. Forrester b46159eeed Relabel the cancel button in the save dialog to "Resume editing"
Bug: 69116
Change-Id: I35289ff02681c3bf46a7bb491c017c500f30c7a6
2014-09-11 11:52:21 -07:00
Ed Sanders c35d68d52b Convert all instances of assert.equal to assert.strictEqual
We don't tolerate == in our code, so we shouldn't use it in our tests.

Change-Id: I6ed7aebbad8013839af2521819fc6507df014a1a
2014-09-11 10:50:44 -07:00
jenkins-bot c3bd61a3a5 Merge "Disable re-use citation tool if there are no references in the document" 2014-09-11 17:42:25 +00:00
Cmcmahon 3351241659 [BrowserTest] Add @safari and @internet_explorer tags for Jenkins build
Change-Id: Ia39fd2cf40cea7f6c4df364a45b0744ca92bfb7d
2014-09-11 08:11:47 -07:00
Alex Monk 72a118fc82 Disable re-use citation tool if there are no references in the document
Bug: 70640
Change-Id: I727857281644dffd23605d7792a3f71ee7c5b751
2014-09-11 00:13:10 +01:00
Alex Monk e6c4315d93 Refactor a bunch of CategoryInputWidget code, tear out dead/broken redirect handling that should be rewritten
Category redirect stuff is currently broken because of I5c536697, but no one seems to have noticed.
Fix bug 69886 while we're here

Bug: 69886
Change-Id: I62cf23d0e86bc43d739bb4c4610a5a852146fa3f
2014-09-10 23:21:12 +01:00
Translation updater bot dc3351e615 Localisation updates from https://translatewiki.net.
Change-Id: I898f5d237545e7a26645be8bc272b4c7df86af8e
2014-09-10 23:44:39 +02:00
jenkins-bot d4f1f6ca7a Merge "Update LinkCache in MWTitleInputWidget" 2014-09-10 19:09:05 +00:00
Alex Monk 674f64dbaf Properly mark reference search index as empty when setting internal list
If it didn't get marked otherwise

Caused by I56909801

Bug: 70611
Change-Id: I81bca8f471c6685e48a7d3768f473a6faf5d8459
2014-09-10 00:13:42 +01:00
Alex Monk 056ef20a96 Update LinkCache in MWTitleInputWidget
Bug: 69886
Change-Id: If7439ea6f60533f8c3166ba4a24656ead0acc6cd
2014-09-09 23:08:14 +01:00
jenkins-bot 3b91c34194 Merge "mw.ViewPageTarget.init: Log an error if target fails to load" 2014-09-09 01:26:46 +00:00
jenkins-bot 2d3eed0ac7 Merge "mw.ViewPageTarget.init: Reduce Deferred clutter in getTarget()" 2014-09-09 01:26:45 +00:00
jenkins-bot 7634f2a5dc Merge "Re-sort i18n message keys for clarity; add a comment about TOC in VisualEditor.php" 2014-09-08 21:00:25 +00:00
James D. Forrester d6a3a30d91 Re-sort i18n message keys for clarity; add a comment about TOC in VisualEditor.php
Change-Id: Iad844021077e8c9c2c68dceca55027b7be12e556
2014-09-08 13:44:54 -07:00
jenkins-bot 80bbd7a25f Merge "Provide contextual help for the page settings dialog's controls" 2014-09-08 20:41:46 +00:00
Translation updater bot 65311897c3 Localisation updates from https://translatewiki.net.
Change-Id: I2bc6983fc1a139118a1d555d3c48192eb6eb49d8
2014-09-08 21:37:23 +02:00
James D. Forrester a8180fe3c7 Provide contextual help for the page settings dialog's controls
Bug: 51798
Change-Id: Ief3c52e504a08d255a8778af6e24785d35154898
2014-09-08 19:22:44 +01:00
James D. Forrester e130042b7f mw.ViewPageTarget.init: Log an error if target fails to load
So users aren't left entirely stranded..

Change-Id: I111176b83227b48d50623a4817b9dc7573010338
2014-09-08 01:11:07 +02:00
Timo Tijhof 7f43fccd4d mw.ViewPageTarget.init: Reduce Deferred clutter in getTarget()
* mw.loader.using returns a promise already.
* Use .then() instead of manually forwarding failures.
* Cache .promise() result.

Change-Id: I3d0a90051c389c02dd5714020b2a1fb872790a18
2014-09-08 01:10:10 +02:00
Translation updater bot 69750e4b41 Localisation updates from https://translatewiki.net.
Change-Id: Id2a6c2dfe71c87184d67cc47fe91581685a47455
2014-09-07 22:02:02 +02:00
Bartosz Dziewoński 8e84d75383 Make it possible to create autonumbered external links from link inspector
Inserting a new external link from the link inspector when nothing is
selected (collapsed selection) will now produce an autonumbered external
link ('link/mwNumberedExternal' node, corresponding to wikitext
"[http://example.com]"). It used to produce annotated link text
('link/mwExternal' annotation, corresponding to wikitext
"[http://example.com http://example.com]" or "http://example.com").

Depends on two commits in VisualEditor/VisualEditor:
* Icc2e368a to insert unannotated content from the inspector.
* I40cd4d5a to insert non-text content from the inspector.

Bug: 51309
Change-Id: Ie4a633ed42907551337a62d96d0abd59e208d49d
2014-09-05 16:48:55 -07:00
jenkins-bot 5f71ecc80f Merge "Abort promises before sending new ones in MediaSearchWidget" 2014-09-05 22:56:18 +00:00
Moriel Schottlender 2e03a8276e Abort promises before sending new ones in MediaSearchWidget
Before sending new searches to the API, abort the previous ones if
they were not resolved. This will assure that the result presented
on the screen is valid to the latest search that was done even if
the user types quickly and sends many async requests simultaneously.

Bug: 67438
Change-Id: If88123019bfa972520e9db7c627a7f4cd8fc2526
2014-09-05 18:51:30 -04:00
Roan Kattouw e92e4912fe Followup cb86c4f: fix call to renamed setChanged() function
setChanged() was renamed to checkChanged(), but one call wasn't
updated. This was causing JS errors in a documentUpdate event
handler, which caused pawn nastiness.

Bug: 70450
Change-Id: I71e576638f9e2fde450f4412229cf980e6ba7e10
2014-09-05 14:50:24 -07:00
Moriel Schottlender ae4511a02b Hide "no results" messaage in media search widget
After resolving the search queries to the API, make sure to display
or hide (!) the "no results" message.

Bug: 67438
Change-Id: I518fbf5ae18bb2265710600516d556c60e2b4924
2014-09-04 19:03:03 -04:00
jenkins-bot 4be972799f Merge "Rename $label to $labelElement in MWParameterPage to avoid naming conflict" 2014-09-04 21:07:41 +00:00
jenkins-bot 71875de0c6 Merge "Check for changes in the model" 2014-09-04 21:07:12 +00:00
Moriel Schottlender cb86c4f030 Check for changes in the model
Create an image model hash and check for changes to the image every
time the dialog is changed, so we can activate and deactivate the
apply button properly.

Bug: 68058
Change-Id: I94b7e4879c6e752432c6f937a8cf1b9f15d1b56d
2014-09-04 14:05:01 -07:00
Alex Monk 160d99d9f4 Rename $label to $labelElement in MWParameterPage to avoid naming conflict
Causing the label of each parameter to be missing ($label actually gets sent to the outline item
widget, for some reason). Looks like it was caused by I1abecd8a.

Bug: 70406
Change-Id: I598ffe5066d0ae8267324d4125d05514449064d5
2014-09-04 22:02:28 +01:00
jenkins-bot e16ebe0e7c Merge "Set default dimensions based on original dimensions" 2014-09-04 21:01:43 +00:00
Translation updater bot efdf3f3553 Localisation updates from https://translatewiki.net.
Change-Id: I368d44e1a2f5887a2ab78335b8737bc010cc9edf
2014-09-04 22:09:45 +02:00
Cmcmahon 6a90a9070a [BrowserTest] Locator for template field remove changed
Change-Id: I647a937c6e07e6bf3dae515fd684ebe2274ddc54
2014-09-04 10:45:55 -07:00
Cmcmahon 16ca79057f [BrowserTest] updates for Cite test
Test additional fields

Change-Id: I9368962bd2b8e7217c064c9b8779d5d53585154d
2014-09-04 10:07:27 -07:00
Moriel Schottlender a83086c007 Set default dimensions based on original dimensions
Make sure default dimensions are only set if we have the original
dimensions. Also fix a bug where image default dimensions were
calculated according to current width/height rather than those
of the original dimensions.

Bug: 68000
Change-Id: I8c3acc18b317f82c6b88966950e74b956936dda4
2014-09-04 11:29:51 -04:00
James D. Forrester f2e22babaa Update VE core submodule to master (1f82a47)
New changes:
5d063a2 Don't use three different coordinate systems in getSelectionRect()
feeb1ae Only focus the paste target if focusedNode has changed
2c1bb97 Update OOjs UI to v0.1.0-pre (4cef83f702)

Local changes:
* Update references to renamed classes
* Update calling patterns element mixins

Change-Id: I330c0e308807597dec31dad8dbf713eb29fdc290
2014-09-03 17:20:09 -07:00
jenkins-bot bfbe8cbbeb Merge "Shrink height of summary box in save dialog from 80px to 4em" 2014-09-02 20:25:00 +00:00
jenkins-bot 567b0e7d53 Merge "Use combo box widget to suggest existing values for reference group" 2014-09-02 20:21:32 +00:00
Translation updater bot 8840ccdb53 Localisation updates from https://translatewiki.net.
Change-Id: I8764d5cf5293cd444582c658ef9d2c064a359fab
2014-09-02 22:18:50 +02:00
Translation updater bot acb59eac90 Localisation updates from https://translatewiki.net.
Change-Id: Ic15801ebe7ce7cb536103f73b7f7fc7949d4719c
2014-09-01 22:38:04 +02:00
James D. Forrester 0637104a17 Shrink height of summary box in save dialog from 80px to 4em
Change-Id: Ifd40bb19c7b57bab15c127d2de16940f9a239235
2014-09-01 12:06:22 -07:00
Translation updater bot 1f136f9d1d Localisation updates from https://translatewiki.net.
Change-Id: I411434f0e235af80ca010d0a4186ee914744c790
2014-08-31 22:01:02 +02:00
Translation updater bot 5eba10284d Localisation updates from https://translatewiki.net.
Change-Id: I2c5cf553aeb26e2579af0c6857de01e74a4508e0
2014-08-30 22:44:16 +02:00
Alex Monk 802b018133 Use combo box widget to suggest existing values for reference group
Bug: 61574
Change-Id: I2ab47e79a8b90db8631d042c80b0759e9c250523
2014-08-30 02:33:04 +01:00
Alex Monk 14b23d7ba4 Make sure mediawiki.notification is loaded -before- calling ViewPageTarget#checkForWikitextWarning
That function needs to return the result immediately, not wait for module loading (via mw.notify).
This was breaking us being able to keep track of what wikitextWarning object was in use (but only
the first time we used the module), and therefore fail to close the warning when the wikitext
disappeared.

Bug: 70168
Change-Id: I0f1427423a5fe82ec8e70e2f0462a3044ca7ace8
2014-08-29 21:18:24 +01:00
Translation updater bot 4f4cdd8ca3 Localisation updates from https://translatewiki.net.
Change-Id: I9eb1f89d5f9e3bee5833f09d8f9ed37044b03ca9
2014-08-29 21:22:44 +02:00
Cmcmahon 1b45b120e8 [BrowserTest] update Cite element locators
Also small refactor for readability

Change-Id: I65c1b589413bdb7de784aa3c4e0e189fca10bab3
2014-08-29 10:12:31 -07:00
Cmcmahon 3a964326a5 [BrowserTest] element locator changed
Change-Id: I456cd0718513e6338ccbbae86634d3e3bd1464b9
2014-08-29 09:12:50 -07:00
jenkins-bot 3286115c21 Merge "Return undefined, not null from onbeforeunload" 2014-08-28 23:11:30 +00:00
jenkins-bot f79d099490 Merge "In LinkTargetInputWidget, put existence status into LinkCache" 2014-08-28 22:17:03 +00:00
Alex Monk 51d2de4547 In LinkTargetInputWidget, put existence status into LinkCache
Bug: 69886
Change-Id: Ib37ba971c006c0bedc94f3ea9f1185461c9617b5
2014-08-28 23:09:13 +01:00
Roan Kattouw f0cadeca42 Return undefined, not null from onbeforeunload
IE doesn't accept null as a "do nothing" value, only undefined.
If you return null, it'll show a popup with the text "null".

Change-Id: I984a7ded483c4c178cbca2a9af9abd895e6ded56
2014-08-28 14:38:49 -07:00
jenkins-bot 7492cc7949 Merge "Pick up 'summary' parameter from URL to use as initial edit summary" 2014-08-28 21:29:07 +00:00
James D. Forrester adb0593c92 Update VE core submodule to master (be42edf)
New changes:
7a2e989 Update OOjs UI to v0.1.0-pre (43f379c884)

Local changes:
Eliminate all references to Agora, now Minerva

Change-Id: I497e122a35090a909b1fbb00d0a9487d97e09da1
2014-08-28 13:51:10 -07:00
Translation updater bot 8084ab0198 Localisation updates from https://translatewiki.net.
Change-Id: Ifc5808737c12f0a334cc6bca3c73620145b921e8
2014-08-28 22:32:08 +02:00
jenkins-bot aed40d6d04 Merge "Fix various bugs in our Monobook stylesheet" 2014-08-28 17:43:40 +00:00
jenkins-bot 1135d066ac Merge "Make the image model persistent" 2014-08-28 16:08:03 +00:00
Moriel Schottlender e34fdae776 Make the image model persistent
Make sure the image model can switch parameters when the image
source is switched, rather than having to instantiate a new
image model.

Also, when the image is changed, retain aspect ratio but make sure
to preserve the width of the previous image (unless the new image
is smaller)

Added 'resizeToBoundingBox' and 'scaleToThumbnailSize' static methods
in MWImageNode that return scaled dimensions based on the image
dimensions and the bounding box detals.

Depends on core change Idbb8b29db8e

Bug: 69450
Bug: 68000
Change-Id: I4327c86a9127f46da5522dc1197411fda757d5a4
2014-08-28 12:04:49 -04:00
Alex Monk 2748366a8e Pick up 'summary' parameter from URL to use as initial edit summary
To match the wikitext editor

Bug: 69501
Change-Id: I3cfc269aa344d89cc30af29699aca70eda5565e2
2014-08-28 02:56:14 +01:00
jenkins-bot d220e03cf8 Merge "Link target input widget: Make '' an invalid link target" 2014-08-28 00:04:43 +00:00
Roan Kattouw 03c8ad7744 Fix various bugs in our Monobook stylesheet
* Toolbar was too tall
** The actions toolbar is nested in the main toolbar, so the rule
   increasing the font size by 25% for toolbars applied to it twice
* Font size in link suggestions was too big
** Remove 25% font size increase from overlays
** Add it back on the context (otherwise it's too small)
** But only on the main surface's context (otherwise contexts in dialogs are too big)
* Make highlights and context appear below, not above, toolbar menus
** z-index: 4 was too high for the overlay, because MenuToolGroup also has 4
** But the default of z-index: 1 is too low because it puts dialogs behind the surface
** z-index: 2 seems to work

Bug: 69949
Change-Id: I19da270abcdbe526ff213f0eb7d0859b48276930
2014-08-27 23:28:20 +00:00
jenkins-bot 7be69944d6 Merge "Toggle trash button (on transclusion dialog) visibility when changing to non-parameter pages" 2014-08-27 21:28:33 +00:00
Alex Monk c71d06f1e0 Toggle trash button (on transclusion dialog) visibility when changing to non-parameter pages
Bug: 70101
Change-Id: Id18f910ea9f96121584ece0270dda3f8529478dd
2014-08-27 21:00:34 +01:00
Translation updater bot a6b1644868 Localisation updates from https://translatewiki.net.
Change-Id: I0ad92ae91cc13f7c3466839d7427a342b95f2238
2014-08-27 21:27:45 +02:00
Alex Monk 5e5cfc19d9 Link target input widget: Make '' an invalid link target
Bug: 70015
Change-Id: Ia984b88009a6373223fb9378b9a10e8313c8b22e
2014-08-27 18:36:08 +01:00
Cmcmahon af988015bb QA: update to fix deprecated API token call
Change-Id: Ibad3aa773dcf5390eb7c729a2731ef2fe76b174c
2014-08-27 09:27:52 -07:00
jenkins-bot 323fb9e712 Merge "Remove delete button from required parameters in template dialog" 2014-08-27 10:04:39 +00:00
jenkins-bot 5d482e16af Merge "Make the Resolve conflict button actually appear" 2014-08-27 01:08:44 +00:00
Roan Kattouw 6fce4c6359 Make the Resolve conflict button actually appear
If you got an edit conflict, the save dialog would
dead-end: there was no way for you to actually get to
the edit conflict resolution page because we were
hiding the resolve button.

Bug: 69150
Change-Id: Iaccb7d0ec25d8f15398e437d614184433c33e6eb
2014-08-27 01:06:54 +00:00
jenkins-bot d97d57d106 Merge "Categories: Don't suggest empty or old categories" 2014-08-26 20:00:41 +00:00
Translation updater bot e46bff4afc Localisation updates from https://translatewiki.net.
Change-Id: I4d177742d10d421c0ba834b3e1d34ffead0c0062
2014-08-26 21:53:44 +02:00
Derk-Jan Hartman a270fc396d Categories: Don't suggest empty or old categories
The categories table holds all categories that exist OR have at one
point existed. This means it also contains a lot of vandalism and
other inappropriate names that happily come up in the suggestions.
This is undesirable. This changes the query to only list categories
with at least 1 entry.

Though technically it can be argued that an empty category with an
existing page might 'exist' and should thus be listed, with this
change they won't be. I don't think that is terribly incorrect to
say that such would be a 'new category', but we could also consider
renaming the label in the suggestion list to say:
'Currently unused category' or something similar.

As far as I can tell there is no way to test for page existance OR
generate a list based on allcategories with one API query.

Bug: 70025
Change-Id: I0e195d3ce26e69d4710d6a505b9da7d1b7678d92
2014-08-26 11:25:54 +02:00
Alex Monk 11fef44a08 Remove delete button from required parameters in template dialog
Bug: 60358
Change-Id: I5d03f466475bfafd4569480431969f5001365eb8
2014-08-26 01:39:51 +01:00
jenkins-bot aa95f70c4e Merge "Switch 'disallowQuotedKeysInObjects' jscs rule on and fix up" 2014-08-25 18:00:07 +00:00
Translation updater bot 1d7962c619 Localisation updates from https://translatewiki.net.
Change-Id: Ic9fc4852d5cd5f33704f539839698e756c4de173
2014-08-23 22:02:15 +02:00
jenkins-bot 8462907ae3 Merge "Do not focus CE on mobile when editor opens" 2014-08-22 22:50:59 +00:00
Ed Sanders 9a1e3852fc Update VE core submodule to master (c231b71)
New changes:
c9f1027 Remove broken ve.isMsie() function
6571da1 Fix case on language annotation CSS class
c231b71 Fix case in all annotation classes

Local changes:
Fix case in all annotation classes

Change-Id: Iba2596cde52d8f8be27e0257893ef8ec77798ae8
2014-08-22 14:27:14 -07:00