diff --git a/.gitmodules b/.gitmodules index 8eed3f705f..e42479976a 100644 --- a/.gitmodules +++ b/.gitmodules @@ -13,3 +13,6 @@ [submodule "vendor"] path = vendor url = git://github.com/mozilla/zamboni-lib.git +[submodule "media/marketplace-experiments/bootstrap"] + path = media/marketplace-experiments/bootstrap + url = git://github.com/mozilla/bootstrap.git diff --git a/apps/marketplace-experiments/__init__.py b/apps/marketplace-experiments/__init__.py new file mode 100644 index 0000000000..e69de29bb2 diff --git a/apps/marketplace-experiments/urls.py b/apps/marketplace-experiments/urls.py new file mode 100644 index 0000000000..1ef52fc43f --- /dev/null +++ b/apps/marketplace-experiments/urls.py @@ -0,0 +1,9 @@ +from django.conf.urls.defaults import patterns, url + +from jingo.views import direct_to_template + +urlpatterns = patterns('', + url('^$', direct_to_template, + {'template': 'marketplace-experiments/base.html'}, + name='mrkt.index'), +) \ No newline at end of file diff --git a/media/marketplace-experiments/bootstrap b/media/marketplace-experiments/bootstrap new file mode 160000 index 0000000000..5c62c23ebe --- /dev/null +++ b/media/marketplace-experiments/bootstrap @@ -0,0 +1 @@ +Subproject commit 5c62c23ebe5e88e89d9a3060e106095a2d7e2094 diff --git a/migrations/301-waffle-market-ui-experiments.sql b/migrations/301-waffle-market-ui-experiments.sql new file mode 100644 index 0000000000..cedfee84fa --- /dev/null +++ b/migrations/301-waffle-market-ui-experiments.sql @@ -0,0 +1,2 @@ +INSERT INTO waffle_switch (name, active) VALUES ('market-ui-experiments', 0); + diff --git a/settings.py b/settings.py index 0d6a1164e2..331bb2d79a 100644 --- a/settings.py +++ b/settings.py @@ -221,8 +221,9 @@ ADMIN_MEDIA_PREFIX = '/admin-media/' # paths that don't require an app prefix SUPPORTED_NONAPPS = ('admin', 'apps', 'blocklist', 'developers', 'editors', - 'img', 'jsi18n', 'localizers', 'media', 'robots.txt', - 'statistics', 'services') + 'img', 'jsi18n', 'localizers', 'media', + 'marketplace-experiments', 'robots.txt', 'statistics', + 'services') DEFAULT_APP = 'firefox' # paths that don't require a locale prefix @@ -350,6 +351,7 @@ INSTALLED_APPS = ( 'files', 'jingo_minify', 'market', + 'marketplace-experiments', 'localizers', 'pages', 'perf', @@ -553,6 +555,8 @@ MINIFY_BUNDLES = { 'css/zamboni/admin-mozilla.css', 'css/zamboni/admin_features.css' ), + 'marketplace-experiments': ( + ), }, 'js': { # JS files common to the entire site (pre-impala). @@ -834,6 +838,8 @@ MINIFY_BUNDLES = { 'js/lib/less-1.1.4.js', 'js/debug/less_live.js', ), + 'marketplace-experiments': ( + ), } } diff --git a/templates/marketplace-experiments/base.html b/templates/marketplace-experiments/base.html new file mode 100644 index 0000000000..b1def1b122 --- /dev/null +++ b/templates/marketplace-experiments/base.html @@ -0,0 +1,68 @@ + + + + + {% if not settings.ENGAGE_ROBOTS %} + + {% endif %} + {% block extrameta %}{% endblock %} + {% block title %}{{ _('Mozilla Marketplace') }}{% endblock %} + + + + {# L10n: {0} is an application, like Firefox. #} + + + {% block site_css %} + {{ css('marketplace-experiments') }} + + + {% endblock %} + + {% block extrahead %}{% endblock %} + + {% if request.user.is_authenticated() %} + + {% endif %} + + + +
+
+ +
+
+ + + + {# js #} + {% block site_js %} + + {% if settings.APP_PREVIEW %} + + {% endif %} + {% if waffle.switch('browserid-login') %} + + {% endif %} + {{ js('marketplace-experiments') }} + + + {% endblock %} + + diff --git a/urls.py b/urls.py index 7387e6587c..1b9a057ac6 100644 --- a/urls.py +++ b/urls.py @@ -166,6 +166,13 @@ urlpatterns = patterns('', ) +# Marketplace UI Experiments +if settings.POTCH_MARKETPLACE_EXPERIMENTS: + urlpatterns += patterns('', + ('^marketplace-experiments/', include('marketplace-experiments.urls')) + ) + + urlpatterns += patterns('piston.authentication.oauth.views', url(r'^oauth/request_token/$', 'get_request_token', name='oauth.request_token'),