Extension:MobileFrontend/Deployments/2012-12-04

From mediawiki.org

High-level changes[edit]

Stories[edit]

#150 Watchlist Logged in Viewing

Bugs[edit]

https://bugzilla.wikimedia.org/show_bug.cgi?id=41613
Page load error formatting seems busted
https://bugzilla.wikimedia.org/show_bug.cgi?id=41605
History pushState misbehaving on the Nexus One 4.0.4
https://bugzilla.wikimedia.org/show_bug.cgi?id=41290
Title displayed for Main Page when loaded via search
https://bugzilla.wikimedia.org/show_bug.cgi?id=41710
Login and settings redirect URL doesn't change on a dynamic page load
https://bugzilla.wikimedia.org/show_bug.cgi?id=41091
Images loading in dynamic sections even when images disabled
https://bugzilla.wikimedia.org/show_bug.cgi?id=41513
MobileFrontend beta shows "edit" link for previous article while prompting for random page
https://bugzilla.wikimedia.org/show_bug.cgi?id=42485
MobileFrontend beta dynamic post-search loading fails to initialize sections if previous page had no sections
https://bugzilla.wikimedia.org/show_bug.cgi?id=41286 
MF beta: selecting an article with space in the title goes to non-canonical URL
https://bugzilla.wikimedia.org/show_bug.cgi?id=41711
Cleanup headings that show words italicized and/or bold where they should not 
https://bugzilla.wikimedia.org/show_bug.cgi?id=42486
searching for a phrase and adding it to the watchlist adds previous article
https://bugzilla.wikimedia.org/show_bug.cgi?id=41406
Collapsing broken on small pages
https://bugzilla.wikimedia.org/show_bug.cgi?id=41666
Configure homepage link doesn't work on beta
https://bugzilla.wikimedia.org/show_bug.cgi?id=41514 
Hash links broken in mobile
https://bugzilla.wikimedia.org/show_bug.cgi?id=41509
Bug fix change gallery from table to a div 


Uncatagorized[edit]

i18n changes
No longer load edit page dynamically 
Hackathon - photo uploads for articles without images in the summary section
Styling changes
    * reorganise the section anchor rules
    * currently there are unused bad css rules and they are not in one place remove use of back_to_top
    * replace all tables with a link to open table in an overlay
    * center heading in overlay header 
    * font size increase for edit form
When a random article is selected it displays in the address bar 
Simplify device detection code
Refactor random functionality
    * Load entire random article
    * Change yes button to close the try again box
    * Request 10 random articles when random selected
       * list the other 9 articles in the try again box
    * Styling on horizontal lists 
Refactor callbacks in the cleanuptemplate code
Add jshint to check javascript code quality and integrate into the build
Add a progress indicator so that if you click on the watch icon on a slower connection, you realize something is happening and don’t click multiple times 
Collapsible sections now behave properly w/o JS
Code cleanup 
    * remove mg-navigation-legacy.js
    * rename variable from utilities to u
    * intialize JQuery when present
    * use u rather than jQuery
    * move the jQuery library from application.js to the jquery-shim.js
Mw.config changes and update title for history

Git log[edit]

commit f0393923d01a8920dc047c22f19e6548d0601f11 Author: jrobson <jrobson@wikimedia.org> Date: Mon Dec 3 15:07:10 2012 -0800

   fix styling of page load error message (bug 41613)
   
   Change-Id: I9970e456b490bd0f4359c1ce6028190775f5d1c8

commit 2d5b32db7d94e9eb74a535286bdae8db8063f694 Author: Translation updater bot <l10n-bot@translatewiki.net> Date: Mon Dec 3 21:03:45 2012 +0000

   Localisation updates from http://translatewiki.net.
   
   Change-Id: Ic6b33b65ed58b70b4e2497c6e3a9c2d394f72c31

commit f12b550ee9cf82a04dd5b7ff0514d35a862c9c50 Author: jrobson <jrobson@wikimedia.org> Date: Mon Dec 3 12:22:15 2012 -0800

   don't attempt to load the edit page dynamically
   
   On an edit page the h1 as the text "Editing Article title"
   however this is not a valid page.
   
   improve the error handling for loadPage that was causing the infinite
   redirect loop
   
   Change-Id: I37b6de35c0b724fc960858988f80bcaf1cd14fd7

commit 6badfb9e0147fb9009abd3f38779106c03b066aa Author: jrobson <jrobson@wikimedia.org> Date: Fri Nov 9 19:08:47 2012 +0530

   photo uploads for articles without images in the summary section
   
   first version - result of hackathon in Bangalore written by
   @imdadahmed, @kaoskeya @darkyen, @swaroopsm and @jdlrobson
   
   __for webkit only to reduce scope and test feature__
   
   * Note some cleanup templates include a small img - we should not
   count these - so we look for .thumb img
   * duplicate image upload handling
   * use cors to upload between projects (e.g. en.wiki to commons)
   * use cc-by-sa-3.0 license by default and warn user
   ** license opens in a new window
   
   other changes:
   * expose isLoggedIn from mf-application.js
   * add .cancel and .confirm versions of buttons
   * $wgMFPhotoUploadEndpoint allows uploading to other domains
   * show error message returned by API if present
   Change-Id: Ic790f9d079cae83a36e8e2b0e572c9c4a36c9753

commit 5128993e4b19d45aff8496c043da28c6b50258e2 Author: jrobson <jrobson@wikimedia.org> Date: Mon Dec 3 11:13:20 2012 -0800

   add close this section to dynamically rendered pages (bug 41605)
   
   when dynamically creating a page ensure we add the close this section
   link
   add FIXME note - this is a bad code smell - we should start using a
   template engine e.g. mustache
   
   Change-Id: Ie04950a7276a21a4886235b10051bb228db2a440

commit 814ed789479e78a54e0589ba26cfa155f8928582 Author: jrobson <jrobson@wikimedia.org> Date: Mon Dec 3 10:47:47 2012 -0800

   reorganise the section anchor rules
   
   currently there are unused bad css rules and they are not in one place
   remove use of back_to_top
   
   Change-Id: Iafcd4f840e450946fda62993b5c41eb7e17d9cbb

commit 8937cfa27fe02a2078df666b07ee614a9ee73693 Author: jrobson <jrobson@wikimedia.org> Date: Fri Nov 30 16:41:54 2012 -0800

   special case main page (bug 41290)
   
   ensure consistency when loading homepage dynamically to loading
   it normally - this separates the homepage special casing into a separate module
   
   Change-Id: I0076d3f139c78129eb7a05fad2d1a7d1fd2e58a0

commit 3af6bb9e728222fac94a4fdb05532e6b98e571d5 Author: jrobson <jrobson@wikimedia.org> Date: Fri Nov 30 15:00:02 2012 -0800

   update parameters referencing titles when title changes (bug 41710)
   
   this updates query string parameters in urls in main menu
   which refer to the current page
   
   Change-Id: I86ca989fbc4809a097c844a1dcff9c4f395dbb7f

commit 054552f0e4db7f99f1f535df10cfe26fd1775d90 Author: Translation updater bot <l10n-bot@translatewiki.net> Date: Sun Dec 2 20:43:09 2012 +0000

   Localisation updates from http://translatewiki.net.
   
   Change-Id: Ief808ad7f635b07f7f9c4184cf884a1d3ed1130d

commit bc8fd7b18dfc105b8126bdbb910b20c9596cc0c6 Author: jrobson <jrobson@wikimedia.org> Date: Fri Nov 30 16:48:34 2012 -0800

   when clicking random update url
   
   when you click random it loads the page with display "read this
   article" and buttons "try again" and "yes"
   
   you can read the article but hitting refresh doesn't bring you back
   to that article. This ensures that when a random article is chosen
   the address bar reflects it
   
   Change-Id: I196857955ac6ffdb8a18a805a1a71786f1e47dc3

commit ef33f87ee21e89ce9672a7a431314c22b4b1c3ea Author: Max Semenik <maxsem.wiki@gmail.com> Date: Sat Dec 1 03:41:12 2012 +0400

   Simplify rules
   
   Change-Id: If30dea48948f12027405adf360b7e76a9d18af4c

commit e55487cc23b20aa1881558a9f1a4e19b4effe9d1 Author: jrobson <jrobson@wikimedia.org> Date: Fri Nov 30 15:34:52 2012 -0800

   follow up to I3493fa549fa082002de540fae63306e10e83154d
   
   setting got renamed to getConfig
   
   Change-Id: I0ae39aa9ffc88b4d5c5731fdfd13babe53242f82

commit 021808bf81e519c93b5e6ed9607e1d6540e818d1 Author: jrobson <jrobson@wikimedia.org> Date: Thu Nov 8 10:51:39 2012 +0800

   replace all tables with a link to open table in an overlay
   
   open all table's in an overlay
   restrict table styling to table's in #content
   table's in overlay use default styling
   add some styling
   
   Change-Id: I140a626755eebda51b68df72d545b5106b109ec2

commit 7beb39887c1baecb3b5b79d2e9b4689f4c442135 Author: Juliusz Gonera <jgonera@wikimedia.org> Date: Tue Nov 27 17:55:33 2012 -0800

   (bug 41091) Images in dynamic sections even when images disabled
   
   Change-Id: I3493fa549fa082002de540fae63306e10e83154d

commit b7524c00adcf17c22da8718197e968d491c87ff4 Author: jrobson <jrobson@wikimedia.org> Date: Fri Nov 30 14:42:18 2012 -0800

   deal with errors in request for section (bug 41290#2)
   
   when the api returns an error for whatever reason fall back
   to window.location.href
   this helps with the comment in bug 41290 but not the original
   reported bug
   
   * separate callback into a renderPage function
   
   Change-Id: Idf0b8e0eb87c25e705a5a20c92e10aaca079ccb4

commit 50a21ded267aa657adb9ab16a5eee1133c8f9b16 Author: jrobson <jrobson@wikimedia.org> Date: Fri Nov 30 14:35:50 2012 -0800

   put edit link in #content (bug 41513)
   
   since edit link exists outside what happens is that the edit link
   for the previous article stays until the new article has fully loaded
   even though the title has changed due to makeStubPage
   
   Change-Id: I2326bff5081b7a6c38eda076ba2b6f535b050883

commit c9884e6c3475da3e9a159d02bed7c5aca57ccdea Author: jrobson <jrobson@wikimedia.org> Date: Fri Nov 30 10:32:47 2012 -0800

   ensure toggling always enabled on pages (bug 42485)
   
   if loading a page marked as a special page then any page loads via
   ajax are currently not getting reinitialised. this takes care of that
   
   Change-Id: I5fae91b79fef06a502dfcf54d907d905e9182557

commit 0c5ec3851f8212214ea6a6eace896a22a497c94e Author: jrobson <jrobson@wikimedia.org> Date: Wed Nov 28 13:15:19 2012 -0800

   jshint all the code base
   
   brings all code up to our high quality js standards
   
   Change-Id: I58d835ae7519e1e27536df1c205e15654706be2f

commit 7015b93f95db385f472ad6537608c7e41e40634e Author: Translation updater bot <l10n-bot@translatewiki.net> Date: Fri Nov 30 21:15:04 2012 +0000

   Localisation updates from http://translatewiki.net.
   
   Change-Id: Ib82eac58dbeb3c35419b048d17dad0cededbc90a

commit e086a4531e50d5a435d650892ab629ac25f34606 Author: jrobson <jrobson@wikimedia.org> Date: Fri Nov 30 12:40:29 2012 -0800

   getArticleUrl returns canonical url (bug 41286)
   
   replace ' ' with '_'
   
   Change-Id: I8344e89b97c293cd7ce0d0fe9bde13ac0f6ad765

commit b77c91b34a4883b0e97cb4ee1a0a841544856a01 Author: jrobson <jrobson@wikimedia.org> Date: Thu Nov 29 13:32:25 2012 -0800

   allow html in headings (bug 41711)
   
   Change-Id: I0ba194b73f7f311e1b78a5e966501fed07155fa4

commit 3a6e2930ff64f175f8bf1ef0cd453970adcb74ed Author: jrobson <jrobson@wikimedia.org> Date: Fri Nov 9 17:36:33 2012 +0530

   adjust random function
   
   when clicking random load the entire random article
   change the yes button to close the try again box
   request 10 random articles in one button press
   list the other 9 articles in the try again box
   add styling for horizontal lists
   
   Patch set 3: rearranged the code a bit to avoid redeclaration of
   makeHeader() plus other small fixes (jgonera)
   
   Change-Id: I1c79a18684c7449f4f250580cdbb8b4648d05ca7

commit 15ba21c2fca64159a39464c14e0fdc667671a849 Author: Juliusz Gonera <jgonera@wikimedia.org> Date: Thu Nov 29 18:56:04 2012 -0800

   Fix adding unnecessary callbacks in mf-cleanuptemplates
   
   Callbacks accumulated each time the callback was run.
   
   Change-Id: I7926a27051a28ebb001a15fbf61b88ec8ab89232

commit e3a1a66dcc2561c8181b173a6638bf4c4f12f853 Author: jrobson <jrobson@wikimedia.org> Date: Fri Nov 30 08:43:19 2012 -0800

   watch the correct article (bug 42486)
   
   remove redefinition of title to current article - use one passed
   as argument
   
   Change-Id: I3ce83793c00e925081e87dab00a1b51cc65b76ff

commit 0a3284c2ddbd4305a81750d314f89e5854971b25 Author: jrobson <jrobson@wikimedia.org> Date: Wed Nov 28 11:48:55 2012 -0800

   add jshint to MobileFrontend
   
   jshint is now integrated into jenkins
   so let's take advantage
   
   add config file and Makefile helper
   (note Makefile specifically targets all subdirectories except
   external as we cannot guarantee external js will follow our
   standards)
   remove jslint config from top of js files as this seems
   to conflict with .jshintrc
   update pre-commit hook to run jshint
   (note I originally tried make tests but there seems to be an
   issue with running this from a different directory)
   
   update documentation in README
   
   Patch set 4: I edited .jshintrc. It didn't check the global or undefined
   variables at all. Also, all options default to false so no need to
   specify them, maxerr doesn't seem to have any effect. Added unused and
   some custom globals (it seems we need mw). (jgonera)
   
   Change-Id: I58ede993b97dac0ac707b2686dd1ecae915590df

commit e72e522c53f42e3ee105fd69c1e88418a239e7dc Author: jrobson <jrobson@wikimedia.org> Date: Thu Nov 29 17:32:55 2012 -0800

   center heading in overlay header
   
   to test:
   go to a page with cleanup templates on a 320px screen
   click "This article has some issues"
   observe the heading Issues is centered above the cleanup template
   below
   previously it was slightly off center
   
   Change-Id: Iaea2023ed117dbff5e7d6a08ab45eb76a6e658b5

commit a73a4091d20f340d978886f8337cf31e83e58307 Author: jrobson <jrobson@wikimedia.org> Date: Thu Nov 29 15:23:30 2012 -0800

   only enable toggling if more than one heading in content (bug 41406)
   
   if there are no subsequent headings then the summary should be impossible
   to collapse
   
   Change-Id: I671047dbf9e746153a83d7b9dcde7cc28aaf8aad

commit 06dea162d6ded8d4c37b473e0fc3aa358bf9aabf Author: jrobson <jrobson@wikimedia.org> Date: Thu Nov 29 14:47:01 2012 -0800

   show progress indicator when watching article
   
   on slow connections when you click the watch icon it is not
   clear if anything has happened. I've clicked it several times accidently
   and then just realised it was slow.
   
   This adds an ajax animation to show something is happening which is
   cleared when the action has finished.
   
   Change-Id: I79841f1974813d9e0c758ca7d1fa2e6601ae69b0

commit 29f3c2cceb3c17aa3a6d43e9392b0b42471237a8 Author: jrobson <jrobson@wikimedia.org> Date: Thu Nov 29 14:37:24 2012 -0800

   increase font size of edit areas to be 1em
   
   Change-Id: I8b7e2d636ee5459b1e56ee515515fcd386394ed3

commit 8c7748b13c0484ee953fead13ad0441900d4c524 Author: jrobson <jrobson@wikimedia.org> Date: Thu Nov 29 13:28:16 2012 -0800

   switch h2 to h1 for homepage msg (bug 41666)
   
   this stops interference with L79 mf-toggle-dynamic.js
   preventing the link being clickable
   
   Change-Id: Ibbf08bb08a1c2adbe818e318ba091ea7228f20e5

commit 9bdf6e561741542a6d9f619b21c63cb108c1bde5 Author: Raimond Spekking <raimond.spekking@gmail.com> Date: Thu Nov 29 21:12:04 2012 +0000

   Revert "Localisation updates from http://translatewiki.net."
   
   This reverts commit 3ea76d79e86b282473ed0267b457e55af9ca739a

commit 3ea76d79e86b282473ed0267b457e55af9ca739a Author: Translation updater bot <l10n-bot@translatewiki.net> Date: Thu Nov 29 20:58:58 2012 +0000

   Localisation updates from http://translatewiki.net.
   
   Change-Id: I0d6d67b17bd5335d88a5c4adb89cf55ca2bb8328

commit c89db94987ab9e779afffc6a467978c01db6b14c Author: Max Semenik <maxsem.wiki@gmail.com> Date: Sun Nov 11 16:31:13 2012 +0530

   Collapsible sections now behave properly w/o JS
   
   We are currently sending 2 versions of the page - 1 for
   devices which are marked as not supporting js and 1 for devices
   which do not - lets avoid this unnecessary cache fragmentation
   
   Change-Id: I56923eccf97f2d2945ec838961a5ac7977639d69

commit 822659c087e3672e571c8aec13e33e16de3eb95b Author: Juliusz Gonera <jgonera@wikimedia.org> Date: Wed Nov 21 15:53:16 2012 -0800

   (bug 41514) Hash links broken in mobile
   
   window.history.replaceState() does not require the third
   parameter. When it's missing it just uses current URL. Previously
   current URL was generated but without the hash and that's why the hash
   got "swallowed."
   
   Moreover, we need to know which section should be expanded when a
   hash/anchor refers a subsection. Since subsections in beta are
   inserted into DOM dynamically, this information needs to be stored
   separately (anchorSection object).
   
   The following
       if ( hash.indexOf( '#' ) === 0 ) {
   in checkHash() was always true, so I've removed it.
   
   Change-Id: I2f3b8173321317bc58b213a84e73a674b6f28729

commit 98859cc14a6f36cac62c8472d33571bfa99c5efb Author: Brion Vibber <brion@pobox.com> Date: Mon Oct 22 14:45:30 2012 -0700

   Mobile replacement for Special:Watchlist, initial version.
   
   So far includes a simplified overview display, bnd an initial drilldown into individual changes which is meant to be shared with history view etc.
   
   A basic filter is available to select between 'all' pages, article pages, article talk pages, and other pages -- this needs further work as well.
   
   May need to consider more issues of tagging/marking.
   
   Note that some of SpecialMobileWatchlist's code is copied from core SpecialWatchlist, with the intention that it will be refactored further into a base that works with both desktop and mobile.
   
   Change-Id: Iee1a4bfde4369df0f1f0b1dba3a65d45219e8efa

commit f2a43d82025d28859b10e9e74c62e091565addab Author: Derk-Jan Hartman <hartman@videolan.org> Date: Tue Oct 30 23:36:43 2012 +0100

   (bug 41509) Fix styling of galleries on mobile
   
   The stylesheet still assumed table.gallery, but we switched to a div
   based solution quite a while ago. This is a straight copy of the style
   from common/shared.css of core with some less flavours
   
   Add !important overrides for the widths of galleries.
   original patchset by thedj adjusted by Jon Robson
   
   Change-Id: Ib3a6e258c60ac5f4083dfe72e2e9e834dfa3d112

commit 13dc33c68537cf18f53eb6eb4c9614a222bc89ef Author: Translation updater bot <l10n-bot@translatewiki.net> Date: Wed Nov 28 20:17:22 2012 +0000

   Localisation updates from http://translatewiki.net.
   
   Change-Id: Ib9898be895a8334a55c53a6b854139cd348be679

commit 8b7d2f42b17753b893d3d913889103078e90588f Author: jrobson <jrobson@wikimedia.org> Date: Wed Nov 28 11:44:25 2012 -0800

   remove historic code
   
   mf-navigation-legacy.js not used since last beta push
   we now use mf-navigation.js instead
   
   Change-Id: I3a2e666ed011d8c675b0363e98a0d2d99a51057d

commit a572c136058117d3cde7a8a368408799e10a14e4 Author: Translation updater bot <l10n-bot@translatewiki.net> Date: Tue Nov 27 21:06:28 2012 +0000

   Localisation updates from http://translatewiki.net.
   
   Change-Id: Iff78875fefcf643e23b9c9e86cfdca25acfbe89e

commit 42eb756ab12360b8402fd000259d8b6430671268 Author: Ori Livneh <ori@wikimedia.org> Date: Fri Oct 26 16:41:59 2012 -0700

   Replace setting() with get/setConfig; update title on history change.
   
   - M.setting() is replaced with two functions: M.getConfig() and
     M.setConfig.
   
   - getConfig accepts an optional second parameter, specifying a default
     value to return if the key if missing. If the key is missing and
     default is unset, returns null, in line with mw.config.get().
     Allowing a default value to be specified makes it easy to fix
     invocations of this function that expect a string return value.
     modules might want to make use of it this ensures the value is
     accurate (updates setting function to accept a second value for
     saving)
   
   - setConfig gets its own function.
   
   Change-Id: Ica90765eb571275f85b0dba273f9658f54c39a56

commit 3c5bb09dfbc1cc9cafcc49104e95bbf4aa31cf30 Author: jrobson <jrobson@wikimedia.org> Date: Mon Nov 19 13:38:33 2012 +0530

   only initialise when jQuery is present
   
   $ = M.jQuery - possible it could be a boolean
   
   Change-Id: I3bb712e3ad04910e62570835b4408583b5423445

commit 6d682305c076bbbf46dda0cf2cb1001e2badee59 Author: jrobson <jrobson@wikimedia.org> Date: Mon Nov 19 13:08:47 2012 +0530

   use u rather than jQuery
   
   avoid possibility of exceptions when jQuery not present
   code is unreachable when jQuery not defined but am worried
   about any future refactoring breaking it
   
   Change-Id: Id31f860417710e5242de53f2fdd21e2d904bbe21

commit 398155ae9f27cc5c9e62958d38c45ac12485048b Author: jrobson <jrobson@wikimedia.org> Date: Mon Nov 19 12:33:02 2012 +0530

   rename utilities to u
   
   consistent with other modules
   better readability
   
   Change-Id: I5c04bd89b9d9b4ac32b1e8d330fd689aec8f4e2f

commit d3f278ad53e8bdd305e7e080aa24981bd872dd0c Author: jrobson <jrobson@wikimedia.org> Date: Mon Nov 19 12:04:30 2012 +0530

   move the jquery shim defined in application.js
   
   move into a separate file - currently this get served to lots of
   devices which make no use of it
   
   additional tweaks:
   * add trigger function (to avoid exceptions when toggling)
   * ensure text clears existing text before appending new text (currently
   shows close this section and jump back a section)
   
   Change-Id: Ice9b584d6bf40a229fc8f8c80675895481f4e98a