Commit graph

115 commits

Author SHA1 Message Date
Gilles Dubuc 95dcc971b0 Reduce number of RL modules in MultimediaViewer
Having many modules makes the startup module in the head
unnecessarily longer. Things should only be in their own
module if they're going to be loaded on demand on their
own or are a shared dependency of separate modules that
are.

This change brings down the amount of modules declared by
Media Viewer from 53 to 8. The ones that remain are
mostly things loaded on demand.

Bug: T103706
Change-Id: I5b0d29209599285b93217e96def818e641646c73
2015-07-10 00:07:14 +02:00
Gilles Dubuc 2b1c1b2260 Record virtual image views
Soft-depends on Ie20ed8fc7041e89510a6558d9e2647c67a0a4bbf

Bug: T89088
Change-Id: If1459bd9acde8b6e5040afbd89e2ceafc61dedc9
2015-02-16 18:06:08 +01:00
Namit 3244e8f1c6 MultimediaViewer usable on Special file related pages when enabled
When media viewer is enabled, go through the latest images in full-screen
mode making it look neat.

Bug: T63085
Bug: T73372
Change-Id: I8d92689eba580a88c98207e9197f1af0ea8ac96b
2014-12-23 18:06:42 +00:00
Gilles Dubuc 00d345f8b4 Rename Performance to PerformanceLogger
Change-Id: Iacfde35851cf8f617c4672d3ea466d4f0e2e448f
2014-11-21 11:07:40 +01:00
Gilles Dubuc 0e01796a3c Track how long users are viewing images for
This is complete, but it would be better if the HEAD request
was actually aborted by Varnish when the viewDuration parameter is
present, or if the hit pointed to a script that does that.

Change-Id: I66cafd97427756411e967de1901324af2215e3ae
Mingle: https://wikimedia.mingle.thoughtworks.com/projects/multimedia/cards/1001
2014-11-21 00:39:29 +01:00
Gilles Dubuc ad5040a140 Add marker parameter to image requests coming from MediaViewer
This will be needed by Erik Zachte for compiling per-file image view data.
Since Media Viewer does preloading, it skews the HTTP request-based
statistics. By marking image requests coming from Media Viewer,
it allows us to remove that bias.

Change-Id: Iac8e7770c1a379691547de4b6d47b7d54467f54d
Mingle: https://wikimedia.mingle.thoughtworks.com/projects/multimedia/cards/1002
2014-11-20 15:57:27 +01:00
Gilles Dubuc 0e782adf7d Add the ability to apply a different duration sampling factor to loggedin users
Change-Id: I10fc042ddf50f02e1a86711621b66c14fc981311
Mingle: https://wikimedia.mingle.thoughtworks.com/projects/multimedia/cards/978
2014-11-06 18:51:08 +01:00
Gergő Tisza 62133bab3c Update URLs of renamed pages
Change-Id: I6547855881a86616a9df52ad38e97136ee16eae0
2014-10-22 15:44:23 +00:00
Gergő Tisza 2c578e6dc3 Show popup when the user visits a file page the first time after disabling MMV
Change-Id: Id2b121c930115373a8a81dc1091c4124807db053
Mingle: https://wikimedia.mingle.thoughtworks.com/projects/multimedia/cards/719
2014-10-21 14:28:20 +00:00
Mark Holmquist feb8e43571 Add tests for viewing options panel
Change-Id: Ic7a856ac4d94f4a65224f4c6373938da7b05f0fd
2014-10-19 00:35:36 +02:00
Gergő Tisza ff76011032 Log image dimensions
Also add a sanity test to attribution logging which I forgot at the time.

Change-Id: I3010e57eb74a76fee4078c415182a033375ea890
Mingle: https://wikimedia.mingle.thoughtworks.com/projects/multimedia/cards/898
2014-09-30 14:55:47 +00:00
Mark Holmquist 0d4863dd91 Make the download pane into its own dialog
Change-Id: Ia92545ed1ef7f2e4ba7934c682eef684a22ca17f
Mingle: https://wikimedia.mingle.thoughtworks.com/projects/multimedia/cards/841
2014-09-24 17:05:50 +02:00
Gilles Dubuc 2ef45b3058 Remove categories
Change-Id: I309b01592e874579d50bf5fc0810c238d47748f5
Mingle: https://wikimedia.mingle.thoughtworks.com/projects/multimedia/cards/835
2014-09-09 13:23:50 +00:00
jenkins-bot 23c7258b31 Merge "Remove file usage" 2014-09-09 13:10:37 +00:00
Gergő Tisza e5de2a5415 Log whether attribution could be presented by MediaViewer
Change-Id: Ib4e8fbafa16c86ff902c838cc93b1710a7ca87af
Mingle: https://wikimedia.mingle.thoughtworks.com/projects/multimedia/cards/858
2014-09-05 14:35:35 +00:00
Gilles Dubuc caa624d711 Remove file usage
Change-Id: I538f7734e1c06a179ee98a5cd843ccee4d91349f
Mingle: https://wikimedia.mingle.thoughtworks.com/projects/multimedia/cards/835
2014-09-05 08:14:52 +02:00
Gergő Tisza c4c262bf44 Move logging-related code to its own directory
Also make sure class and file names have the same case.

Change-Id: I21042e40030051326f8c55fd62a86a54e9011a4a
2014-09-04 23:34:45 +00:00
Gergő Tisza d3869e581e Fix preference DB values
Ensure that changing the preference via the quick link and
Special:Preferences is stored identically in the DB.

Change-Id: Ia37da1c6bfbb3edf0eba56f01105e4a5f3a5e4ba
2014-08-26 10:37:38 +00:00
Gergő Tisza e71bcefcdc Add an option to disable by default for logged-in users
Soft-depends on I90f6ab5b44fbcde0b89f56e795f69472c4940854

Bug: 69363
Mingle: https://wikimedia.mingle.thoughtworks.com/projects/multimedia/cards/822
Change-Id: Ief0df5b4f4285d99208f007b0510a396f6c272e0
2014-08-16 12:16:34 +00:00
Gilles Dubuc b0d885e4dc Remove all survey-related code
Change-Id: I67285260c13a1e8d3c37365bb80a7156c0fecd4e
Mingle: https://wikimedia.mingle.thoughtworks.com/projects/multimedia/cards/794
2014-07-16 21:27:53 +00:00
jenkins-bot 5abf15890e Merge "Fix URL handling for global usage list" 2014-06-27 17:41:17 +00:00
Gergő Tisza deafff7046 Fix URL handling for global usage list
Also add integration tests to make sure URL generation works OK

Bug: 63908
Bug: 64910
Bug: 66147
Mingle: https://wikimedia.mingle.thoughtworks.com/projects/multimedia/cards/570
Change-Id: I448f42e294102a633f74c305dd0a226e7dbe955d
2014-06-25 21:41:04 +00:00
Mark Holmquist ea610f8256 Tooltips for loads of things
Change-Id: I993bf60909024453a14de85af6239bded02eb8a6
Mingle: https://wikimedia.mingle.thoughtworks.com/projects/multimedia/cards/546
2014-06-12 12:27:04 -07:00
Gergő Tisza e8c7c537a2 Add functionality to check & set opt-in flag from code, also for anons
Adds anew mmv.Config class to centralize localStorage handling issues,
adds AJAX option setting, adds getting/setting opt-in flag from
localstorage.

Change-Id: I25762ccb8c9bccd694c30a6f1c5d3c8611a5ecbc
Mingle: https://wikimedia.mingle.thoughtworks.com/projects/multimedia/cards/703
Mingle: https://wikimedia.mingle.thoughtworks.com/projects/multimedia/cards/704
2014-06-11 01:11:12 +00:00
Gilles Dubuc 7161ac3cc4 Record sampling factor in EventLogging calls.
Change-Id: I3966bf5dfe9ed607bda8e87f3b1924de37716dcf
Mingle: https://wikimedia.mingle.thoughtworks.com/projects/multimedia/cards/619
2014-05-22 09:30:37 +02:00
jenkins-bot b27029f8b5 Merge "Revert "Temp fix for core bug (getFileSearchOptions() stopped working)"" 2014-05-16 23:10:20 +00:00
Gergő Tisza 863121a518 Revert "Temp fix for core bug (getFileSearchOptions() stopped working)"
This reverts commit 0ef329b8c5.

See https://wikimedia.mingle.thoughtworks.com/projects/multimedia/cards/620

Change-Id: I347f0f2500b91c2afe9bcf460209e0f7daebdebd
2014-05-16 23:09:14 +00:00
Gergő Tisza 171b13149e Add sampling to unsampled event logging
Has issues:
- needs dependency injection
- needs to be DRY
- should not load mw.eventLogging when we are not in sample

Due to urgency this will be fixed in another commit.

Change-Id: I0df067a619109a7c945f82c8d33fa2e621217f0b
Mingle: https://wikimedia.mingle.thoughtworks.com/projects/multimedia/cards/619
2014-05-16 18:43:55 +00:00
Gergő Tisza 0ef329b8c5 Temp fix for core bug (getFileSearchOptions() stopped working)
Change-Id: I0662f5cc5de2c421f926fe9e1bdbdde25bf1313e
2014-05-16 18:36:14 +00:00
Gergő Tisza 40b125565d Extract metadata panel scroll/log/animate logic into separate component
Change-Id: I2441d64c094a9bfbae7a4712ff4c78efa13a62a7
2014-05-13 18:57:38 +00:00
Mark Holmquist 969c5bfda9 Add preferences link after "help"
Reused message from the top-right menu.

Change-Id: Id37712e332bf8fed56edaa9ae8f7e04a2a5a5f42
2014-04-30 22:49:09 +00:00
Gilles Dubuc 8ab6ef23c8 Adds new performance metrics
- duration between early click and replayed click
- duration between replayed/post-replay click and first image display
- duration between replayed/post-replay click and first metadata display

Change-Id: Ia308db7580fd89538b9a9c8b0fea89fa2a4c77d2
Mingle: https://wikimedia.mingle.thoughtworks.com/projects/multimedia/cards/515
Mingle: https://wikimedia.mingle.thoughtworks.com/projects/multimedia/cards/508
2014-04-29 14:08:49 -07:00
Gergő Tisza c9e92da374 Split the progress bar into a component of its own.
Change-Id: I131b0d1b8ec992a7c7ad388021febea5a0303d16
2014-04-21 22:27:59 +00:00
Gergő Tisza dd9a9718c3 Use thumbnail guessing
Change-Id: I2335af257fd23c9367b6839dfc6050840a905aa2
2014-04-17 10:35:33 +02:00
Gergő Tisza e03b9345c2 Guess thumbnail URLs without extra API call
Given a sample thumbnail URL and the original width/height
this provider tries to guess the thumbnail url for a given
size.

Change-Id: I2966b60978ab763864475851d8a79370bd422dc4
2014-04-17 01:21:35 +00:00
jenkins-bot 8217b97462 Merge "Load moment.js on demand" 2014-04-16 20:32:21 +00:00
Gergő Tisza 9b1e756c3b Replace current URL generation logic with routing classes
* deduplicates URL generating/parsing code
* gets rid of spaces in URLs
* fixes error for file names with / in them (in case they exist;
  current MediaWiki seems to disallow such names anyway)

Change-Id: I5aad43f6af1b99523c597c39befcc9db1ecab83a
Mingle: https://wikimedia.mingle.thoughtworks.com/projects/multimedia/cards/371
2014-04-16 12:51:38 +02:00
Gergő Tisza 0b614c78e3 Add routing classes
Adds a Route class hierarchy for various URL schemes and a Router
class to convert Route classes to and from URLs.

Right now we only have two(-ish) schemes, but in the future we want
to be able to show related images which are not present on the current
page and need shareable URLs for those as well; also we might want
to specify other things in the URL than the current image (the reuse
box being open was one thing discussed); this will be a good framework
to add features like that.

The MainFileRoute class will be used by #416.

Change-Id: I489126a0ada37f91a22a2f48a4e686140a28d162
Mingle: https://wikimedia.mingle.thoughtworks.com/projects/multimedia/cards/371
2014-04-16 12:40:17 +02:00
Gilles Dubuc 7ff5b22873 Load moment.js on demand
Change-Id: I881d38ea201f314fcf364766bb589f56c9e6b057
Mingle: https://wikimedia.mingle.thoughtworks.com/projects/multimedia/cards/444
2014-04-15 14:13:27 +02:00
Gilles Dubuc eb6386bb5b Load oojs-ui on demand when "use this file" is clicked
Change-Id: Ia3b6b91c7ff0cb223f5f312eb901726fb6adcf35
Mingle: https://wikimedia.mingle.thoughtworks.com/projects/multimedia/cards/426
2014-04-14 11:50:05 +02:00
jenkins-bot 911e87adde Merge "Add truncatable text field, use for some fields" 2014-04-10 12:13:46 +00:00
Mark Holmquist 1ae138c9e7 Open MMV on hash change on file pages, add link
Change-Id: I4aa53d50bcd4880f341dfb59b7a451e2d5bda2ad
2014-04-10 09:34:01 +02:00
Mark Holmquist 40feb61dbe Add truncatable text field, use for some fields
Source + author are one such field, title is another.

Loads of the mingle card will be split out.

Change-Id: Ib2937cc55304118f82e5b2e87b822b2b2811ef2b
Mingle: https://wikimedia.mingle.thoughtworks.com/projects/multimedia/cards/243
2014-04-09 15:53:37 -07:00
Gilles Dubuc 204d582a3a Add site/language conditions for feedback button
Only show the survey button if the user's language matches and the site is
enabled, and log which site we are on.

The corresponding site configuration commit is
Ic07432649906890785769ce5127761e2c84316e2

Change-Id: I575bb286f4289489b80505c901f5a9e7aeecec8b
Mingle: https://wikimedia.mingle.thoughtworks.com/projects/multimedia/cards/261
2014-04-08 11:37:24 +02:00
Gergő Tisza 47a8bda392 Create StripeButtons class, convert reuse button to use it
Also do a bunch of refactoring to:
* keep LESS rules in more sane locations so it is not as hard to get an overview
  (most of the metadata panel rules were in mmv.less)
* move mmv.mixins.less up one directory as it is not specific to the UI
* move the SVG icons as all of them were related to the UI
* remove the marging-right hack which was used to keep the title text from
  overflowing the button; instead use a float and overflow properties to make
  sure text that is too long gets hidden

Change-Id: Icc8ea2e766be67d86ae98c734721b2185bd6c36e
2014-04-03 23:13:12 +00:00
Gilles Dubuc 961d47432b Download tab, basic download and preview
* Following design, use split button to display a pulldown
menu with possible image sizes. The download happens by
sending the special "download" parameter to the server.

* Offer link to preview image in the browser.

Change-Id: Ic9d895fead04c9128186c7376a0bb09f3596335c
Mingle: https://wikimedia.mingle.thoughtworks.com/projects/multimedia/cards/79
2014-04-02 23:00:28 +00:00
Gilles Dubuc c07e3a367f Fix breakage on beta due to type hint being too strict
Change-Id: I2ed0b80e61fed2dfca00095ff172a7f1d047250f
2014-04-01 11:56:14 +02:00
jenkins-bot 21ba529db0 Merge "Display thumbnail placeholder ASAP" 2014-03-31 21:05:45 +00:00
Gilles Dubuc 94588c9859 Replay early thumb link clicks when bootstrap is ready to receive them
Change-Id: I1ccd7c2cb949a051e3078fc746bc79254cc36a1d
Mingle: https://wikimedia.mingle.thoughtworks.com/projects/multimedia/cards/391
2014-03-31 17:19:08 +00:00
jenkins-bot 53a641b63a Merge "Rename Buttons to CanvasButtons" 2014-03-30 08:47:39 +00:00