{{_('Get to the Web quickly with speedy start up and page load times.')}}
-
{{_('The Awesome Screen gets to know you as you browse so you can search easier and get to your destination faster.')|format('http://support.mozilla.org/kb/use-awesome-screen-search-firefox-android') }}
+
{{_('Type less, browse more with the Awesome Bar and Awesome Screen.')|format('http://support.mozilla.org/kb/use-awesome-screen-search-firefox-android', 'http://support.mozilla.org/kb/use-awesome-screen-search-firefox-android')}}
+
{{_('Browse multiple sites at once, simply and easily, with easy-to-use tabs.')|format('http://support.mozilla.org/kb/use-awesome-screen-search-firefox-android')}}
{{_('Safe')}}
-
{{_('Control your privacy and how much data you share on the Web with features like Do Not Track. Learn more')|format('http://support.mozilla.org/kb/configure-mobile-privacy-and-security-settings') }}
-
{{_('Enjoy the latest in security preferences to easily customize the settings for your passwords, private data, cookies, images and add-ons.')}}
+
{{_('Enjoy the latest security features to easily customize settings for passwords, private data, cookies and more. Learn more')|format('http://support.mozilla.org/kb/configure-mobile-privacy-and-security-settings') }}
+
{{_('Control what you share on the Web with features like Do Not Track.')|format('http://www.mozilla.org/dnt/') }}
+
{{_('Browse without worry thanks to built-in phishing and malware protection.')|format('http://www.mozilla.org/firefox/phishing-protection/')}}
{{_('Smart')}}
-
{{_('Experience the unlimited possibilities of the mobile Web with full support for HTML5 and Web APIs. Learn more')|format('https://developer.mozilla.org/en/Mobile')}}
+
{{_('Experience the unlimited possibilities of the mobile Web with full support for HTML5 and Web APIs. Learn more')|format('https://developer.mozilla.org/en-US/docs/HTML/HTML5')}}
{{_('Sync your desktop history, bookmarks and passwords to all your devices for a painless browsing experience on mobile.')|format('http://support.mozilla.org/kb/how-do-i-set-up-firefox-sync')}}
{{_('Personalize features and functionality with add-ons. Get add-ons')|format('http://addons.mozilla.org/android/')}}
-
{{_('Effortlessly switch between tabs with live thumbnail images that show you updated snapshots of your sites.')|format('http://support.mozilla.org/kb/tabs-quickly-switch-websites-firefox-mobile')}}
{% trans url1='class="nav" href="#os"'|safe, url2='class="nav" href="#marketplace"'|safe, url3='class="nav" href="#android"'|safe %}
+ We’re enabling operators, phone manufacturers and developers to manage, customize and own relationships with their customers directly through our mobile products: Firefox OS, Firefox Marketplace and Firefox for Android.
+ {% endtrans %}
{% trans url='class="view-section" data-section="os-operators" href="#"'|safe %}
+ Backed by some of the biggest names in the industry, Firefox OS is an open platform that fosters greater participation in the value chain. See how you can get involved.
+ {% endtrans %}
+
{{ _('Made of the Web') }}
+
{{ _('Built entirely using HTML5 and other open Web standards, Firefox OS is free from the rules and restrictions of existing proprietary platforms.') }}
+
{{ _('Made by Firefox') }}
+
{{ _('For the past 15 years, we’ve been instrumental in innovating and shaping the Web to keep it open and accessible to all. As a result of our efforts, one fifth of all Web activity today happens through Firefox products.') }}
+
+
+
+
+
+
+
{{ _('The difference the Open Web makes') }}
+
+
{{ _('Firefox OS offers:') }}
+
+
{{ _('A level playing field against other OS and marketplace providers') }}
+
{{ _('Greater participation in the value chain') }}
+
{{ _('Ownership and control over relationships with customers') }}
+
{{ _('Customized phones that meet the specific needs of various target markets') }}
{% trans url1='class="view-section" data-section="marketplace-operators" href="#"'|safe, url2='class="view-section" data-section="marketplace-developers" href="#"'|safe %}
+ Discover a new way to participate in an ecosystem that features the world’s most popular apps as well as more relevant, targeted content to suit customers’ local needs. See how that can help operators and manufacturers as well as developers.
+ {% endtrans %}
+
{{ _('Your needs') }}
+
{{ _('Grow your business by combining your own customer payment plans with our open source service offerings, reach new markets and customize purchasing and app experiences to meet your specific needs.') }}
+
{{ _('Our experience') }}
+
{{ _('Our proven track record of providing excellent user experiences and serving content to huge global audiences runs through everything we do. Our directory of add-ons serves content to hundreds of millions of users worldwide.') }}
{% trans url='class="view-section" data-section="android-partner" href="#"'|safe %}
+ With high-performance, advanced cross-platform features and the latest in security, our top-rated browser offers an alternative to closed platforms, giving you the flexibility to design, distribute and charge as you see fit. Learn more about partner opportunities.
+ {% endtrans %}
+
{{ _('Strengthen customer relationships') }}
+
{{ _('Create your own unique branded sections of Firefox for Android and Firefox Marketplace for a more engaging user experience and to increase the visibility of your brand.') }}
+
{{ _('Create new value for both you and your users') }}
+
{{ _('Take advantage of service opportunities like Firefox Marketplace and WebRTC to create new, platform-independent offerings and establish direct customer billing.') }}
+
+
+
+
+
+
+
+
{{ _('Stand out from the crowd') }}
+
{{ _('Take advantage of our strong brand and service offerings to differentiate your product and drive sales.') }}
+
{{ _('Firefox for Android lets you:') }}
+
+
+
{{ _('Customize the experience') }}
+
{{ _('Add your brand and content to increase customer touchpoints, improve retention and drive future sales.') }}
+
+
+
{{ _('Build new service offerings') }}
+
{{ _('Integrate services directly into the browser with Firefox Marketplace and WebRTC to free yourself from the constraints of proprietary platforms.') }}
+
+
+
{{ _('Direct customer billing') }}
+
{{ _('Grow your business by combining your own customer payment plans with our open source service offerings.') }}
{{ _('Firefox at MWC 2013 — Stand F20, Hall 8.1, App Planet') }}
+
+
+
+
+
{{ _('Firefox at MWC 2013 — Schedule of events') }}
+
+
+
{{ _('Monday') }} {{ _('February 25') }}
+
+
+
{{ _('Mobile World Live TV Panel') }}
+
{{ _('Johnathan Nightingale, VP of Firefox Engineering, will participate in a discussion about future opportunities in the apps market.') }}
+
{{ _('12:30-13:00 CET') }}
+
{{ _('Location: the live panel will be streamed on all major screens throughout the show area') }}
+
+
+
{{ _('Apps Panel: Evolving Ecosystems') }}
+
{{ _('Jay Sullivan, Vice President of Products, will take part in the Apps Panel: Evolving Ecosystems. The panel will discuss the current state of the apps industry and consider how the roles and responsibilities within it are adapting as the apps market evolves.') }}
+
{{ _('16:00-17:30 CET') }}
+
{{ _('Hall 4, Conference Village, Auditorium 2') }}
+
+
+
{{ _('Mobile Premier Awards & AppCircus After Party') }}
+
{{ _('Mozilla Marketplace VP Rick Fant will select and present the winning app.') }}
+
{{ _('16:00-23:00 CET (awards at 22:30)') }}
+
{{ _('Sala Apolo, Barcelona') }}
+
+
+
+
+
{{ _('Tuesday') }} {{ _('February 26') }}
+
+
+
{{ _('Gary Kovacs CEO of Mozilla Keynote') }}
+
{{ _('Mozilla CEO Gary Kovacs’ keynote speech will discuss the benefits of an Open Web device in markets around the world and how Firefox OS will help operators, phone manufacturers and developers reach the next billion Web users.') }}
+
{{ _('09:00-10:30 CET') }}
+
{{ _('Hall 4, Conference Village, Auditorium 1') }}
+
+
+
{{ _('Mobile World Live Keynote with Mitchell Baker') }}
+
{{ _('Mitchell Baker, Chairperson of the Mozilla Foundation, will discuss the importance of bringing Open Web innovation to mobile devices.') }}
+
{{ _('17:45-18:30 CET') }}
+
{{ _('Hall 4, Conference Village, Auditorium 1') }}
+
+
+
+
+
{{ _('Wednesday') }} {{ _('February 27') }}
+
+
+
{{ _('Mobile App Privacy Debate') }}
+
{{ _('Harvey Anderson, Vice President of Business Affairs and General Counsel at Mozilla, will take part in the debate “Mobile app privacy: What’s your view?” This interactive session is for anyone interested in helping consumers easily make privacy choices on a mobile device.') }}
+
{{ _('13:00-15:00 CET') }}
+
{{ _('GSMA Pavilion, Congress Square (CS80)') }}
+
+
+
+
+
{{ _('Thursday') }} {{ _('February 28') }}
+
+
+
{{ _('WIP Jam - Day for Developers') }}
+
{% trans link='http://bit.ly/mozwipjam'|safe %}
+ The key event for mobile developers at MWC. Mozilla CTO Brendan Eich and Mozilla Developer Evangelist Robert Nyman will host a workshop and Q&A session on “Why Open Web Apps & Firefox OS are good for mobile developers.” Mozilla developer evangelist Chris Heilmann will present an UnPanel on "HTML5 Beyond the Hype" and lead several HTML5 discussion groups. WIP Jam will also see DemoCamps of HTML5 apps created during Mozilla Developer Days. Full schedule available here: {{link}}
+ {% endtrans %}
{{ _('Thanks for your interest in partnering with us') }}
+
{{ _('We will review your request and get back to you about possibilities and opportunities soon.') }}
+
+
+
+
+
+
+
+
+{% endblock %}
+
+{% block email_form %}{% endblock %}
diff --git a/apps/firefox/templates/firefox/partners/landing.html b/apps/firefox/templates/firefox/partners/landing.html
index a4ffdf5bfe..24c37ee4ce 100644
--- a/apps/firefox/templates/firefox/partners/landing.html
+++ b/apps/firefox/templates/firefox/partners/landing.html
@@ -21,7 +21,7 @@
{# L10N: This is an abbreviation of 'hours', used as a label on a countdown clock. The translated label should be as short as possible. #}
data-hourstext="{{ _('hrs') }}"
data-hourstextex="{{ _('hours') }}"
- {# L10N: This is an abbreviation of 'minutes', used as a label on a countdown clock. The translated label should be as short as possible. #}
+ {# L10N: This is an abbreviation of 'minutes', used as a label on a countdown clock. The translated label should be as short as possible. #}
data-minutestext="{{ _('min') }}"
data-minutestextex="{{ _('minutes') }}"
{# L10N: This is an abbreviation of 'seconds', used as a label on a countdown clock. The translated label should be as short as possible. #}
@@ -29,6 +29,8 @@
data-secondstextex="{{ _('seconds') }}"
{% endblock %}
+{% block mwc_badge %}{% endblock %}
+
{% block content %}
@@ -137,7 +139,7 @@
{{ _('Listen') }}
{% trans %}
- During his Tuesday keynote, Mozilla CEO Gary Kovacs will talk about
+ During his Tuesday keynote, Mozilla CEO Gary Kovacs will talk about
reaching the next billion people to come online.
{% endtrans %}
See our schedule of events
@@ -173,7 +175,7 @@
phones to meet the specific needs of their target markets and to own and
manage the relationship with their customers themselves.
{% endtrans %}
- Learn more
+ Learn more
@@ -251,9 +253,9 @@
{{ _('Apps Panel: Evolving Ecosystems') }}
-
+
-
{{ _('Speaker:') }}
+
{{ _('Speaker:') }}
Jay Sullivan, {{ _('VP of Products') }}, Mozilla
{{ _('Time:') }}
–
@@ -264,8 +266,8 @@
{% trans %}
- Experts from across the board will discuss the current state of the
- apps industry and consider how the roles and responsibilities within
+ Experts from across the board will discuss the current state of the
+ apps industry and consider how the roles and responsibilities within
it are adapting as the apps market evolves.
{% endtrans %}
@@ -273,11 +275,11 @@
-
+
{{ _('Mozilla Keynote') }}
-
+
-
{{ _('Speaker:') }}
+
{{ _('Speaker:') }}
Gary Kovacs, {{ _('CEO') }}, Mozilla
{{ _('Time:') }}
–
@@ -288,8 +290,8 @@
{% trans %}
- Mozilla CEO Gary Kovacs will discuss the benefits of an Open Web device
- in markets around the world and how Firefox OS will help operators, phone manufacturers
+ Mozilla CEO Gary Kovacs will discuss the benefits of an Open Web device
+ in markets around the world and how Firefox OS will help operators, phone manufacturers
and developers reach the next billion Web users.
{% endtrans %}
@@ -297,15 +299,15 @@
-
+
{{ _('Check back for schedule additions and updates.') }}
-
+
{{ _('WIPJam') }}
-
+
{{ _('Time:') }}
–
diff --git a/apps/firefox/templates/firefox/partners/partners-base.html b/apps/firefox/templates/firefox/partners/partners-base.html
index e5708e83e9..f91045a456 100644
--- a/apps/firefox/templates/firefox/partners/partners-base.html
+++ b/apps/firefox/templates/firefox/partners/partners-base.html
@@ -14,6 +14,8 @@
{{ js('mozorg-resp') }}
{% endblock %}
+{% block mwc_badge %}{% endblock %}
+
{% block site_header %}
{{ _('Mozilla') }}
diff --git a/apps/firefox/tests.py b/apps/firefox/tests.py
index 74c0901bd8..1fecb75118 100644
--- a/apps/firefox/tests.py
+++ b/apps/firefox/tests.py
@@ -3,6 +3,7 @@
# This Source Code Form is subject to the terms of the Mozilla Public
# License, v. 2.0. If a copy of the MPL was not distributed with this
# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+import json
import os
from urlparse import parse_qs, urlparse
@@ -12,7 +13,7 @@ from django.test.client import Client
from django.utils import unittest
from funfactory.urlresolvers import reverse
-from mock import patch
+from mock import ANY, Mock, patch
from mozorg.tests import TestCase
from nose.tools import eq_, ok_
from platforms import load_devices
@@ -90,6 +91,89 @@ class TestFirefoxAll(TestCase):
eq_(len(doc('tr[data-search]')), num_builds)
+class TestFirefoxPartners(TestCase):
+ def setUp(self):
+ self.client = Client()
+
+ @patch('firefox.views.settings.DEBUG', True)
+ def test_js_bundle_files_debug_true(self):
+ """
+ When DEBUG is on the bundle should return the individual files
+ with the MEDIA_URL.
+ """
+ bundle = 'partners_desktop'
+ files = settings.MINIFY_BUNDLES['js'][bundle]
+ files = [settings.MEDIA_URL + f for f in files]
+ self.assertEqual(files,
+ json.loads(fx_views.get_js_bundle_files(bundle)))
+
+ @patch('firefox.views.settings.DEBUG', False)
+ def test_js_bundle_files_debug_false(self):
+ """
+ When DEBUG is off the bundle should return a single minified filename.
+ """
+ bundle = 'partners_desktop'
+ filename = '%sjs/%s-min.js?build=' % (settings.MEDIA_URL, bundle)
+ bundle_file = json.loads(fx_views.get_js_bundle_files(bundle))
+ self.assertEqual(len(bundle_file), 1)
+ self.assertTrue(bundle_file[0].startswith(filename))
+
+ @patch('firefox.views.requests.post')
+ def test_sf_form_proxy_error_response(self, post_patch):
+ """An error response from SF should be returned."""
+ new_mock = Mock()
+ new_mock.status_code = 400
+ post_patch.return_value = new_mock
+ with self.activate('en-US'):
+ url = reverse('firefox.partners.contact-bizdev')
+ resp = self.client.post(url)
+ self.assertEqual(resp.status_code, 400)
+ self.assertEqual(resp.content, 'bad_request')
+ self.assertTrue(post_patch.called)
+
+ @patch('firefox.views.requests.post')
+ def test_sf_form_proxy_invalid_form(self, post_patch):
+ """A form error should result in a 400 response."""
+ with self.activate('en-US'):
+ url = reverse('firefox.partners.contact-bizdev')
+ resp = self.client.post(url, {
+ 'first_name': 'Dude' * 20,
+ })
+ self.assertEqual(resp.status_code, 400)
+ self.assertEqual(resp.content, 'Form invalid')
+ self.assertFalse(post_patch.called)
+
+ @patch('firefox.views.requests.post')
+ def test_sf_form_proxy(self, post_patch):
+ new_mock = Mock()
+ new_mock.status_code = 200
+ post_patch.return_value = new_mock
+ with self.activate('en-US'):
+ url = reverse('firefox.partners.contact-bizdev')
+ resp = self.client.post(url, {
+ 'first_name': 'The',
+ 'last_name': 'Dude',
+ 'title': 'Abider of things',
+ })
+ self.assertEqual(resp.status_code, 200)
+ self.assertEqual(resp.content, 'ok')
+ post_patch.assert_called_once_with(ANY, {
+ 'first_name': u'The',
+ 'last_name': u'Dude',
+ 'description': u'',
+ 'retURL': 'http://www.mozilla.org/en-US/about/'
+ 'partnerships?success=1',
+ 'title': u'Abider of things',
+ 'URL': u'',
+ 'company': u'',
+ 'oid': '00DU0000000IrgO',
+ 'phone': u'',
+ 'mobile': u'',
+ '00NU0000002pDJr': [],
+ 'email': u'',
+ })
+
+
class TestLoadDevices(unittest.TestCase):
def file(self):
diff --git a/apps/firefox/urls.py b/apps/firefox/urls.py
index 10b37d4e3c..b5e140be50 100644
--- a/apps/firefox/urls.py
+++ b/apps/firefox/urls.py
@@ -4,6 +4,7 @@
from django.conf.urls.defaults import *
from django.conf import settings
+
from product_details import product_details
from firefox import version_re
@@ -16,6 +17,7 @@ latest_re = r'^firefox(?:/(%s))?/%s/$'
firstrun_re = latest_re % (version_re, 'firstrun')
whatsnew_re = latest_re % (version_re, 'whatsnew')
+
urlpatterns = patterns('',
url(r'^firefox/all/$', views.all_downloads, name='firefox.all'),
page('firefox/central', 'firefox/central.html'),
@@ -61,5 +63,8 @@ urlpatterns = patterns('',
url(whatsnew_re, views.latest_fx_redirect, name='firefox.whatsnew',
kwargs={'template_name': 'firefox/whatsnew.html'}),
- page('firefox/partners', 'firefox/partners/landing.html'),
+ url(r'^firefox/partners/$', views.firefox_partners,
+ name='firefox.partners.index'),
+ url(r'^firefox/partners/contact-bizdev/$', views.contact_bizdev,
+ name='firefox.partners.contact-bizdev'),
)
diff --git a/apps/firefox/views.py b/apps/firefox/views.py
index 957a760f0a..83900a8ee6 100644
--- a/apps/firefox/views.py
+++ b/apps/firefox/views.py
@@ -2,26 +2,83 @@
# License, v. 2.0. If a copy of the MPL was not distributed with this
# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+import json
import re
from django.conf import settings
-from django.http import HttpResponsePermanentRedirect, HttpResponseRedirect
+from django.http import (HttpResponse, HttpResponsePermanentRedirect,
+ HttpResponseRedirect)
from django.views.decorators.csrf import csrf_exempt
+from django.views.decorators.http import require_POST
from django.views.decorators.vary import vary_on_headers
import basket
+import requests
+from jingo_minify.helpers import BUILD_ID_JS, BUNDLE_HASHES
from product_details import product_details
from product_details.version_compare import Version
from funfactory.urlresolvers import reverse
import l10n_utils
from firefox import version_re
-from firefox.forms import SMSSendForm
+from firefox.forms import SMSSendForm, WebToLeadForm
from firefox.platforms import load_devices
from firefox.firefox_details import firefox_details
from l10n_utils.dotlang import _
+LOCALE_OS_URLS = {
+ 'en-US': 'http://blog.mozilla.org/press/2013/02/firefox-os-expansion',
+ 'de': 'http://blog.mozilla.org/press-de/?p=760',
+ 'it': 'http://blog.mozilla.org/press-it/?p=347',
+ 'pl': 'http://blog.mozilla.org/press-pl/?p=407',
+ 'fr': 'http://blog.mozilla.org/press-fr/?p=366',
+ 'es-ES': 'http://blog.mozilla.org/press-es/?p=340',
+ 'en-GB': 'http://blog.mozilla.org/press-uk/?p=471'
+}
+
+
+def get_js_bundle_files(bundle):
+ """
+ Return a JSON string of the list of file names for lazy loaded
+ javascript.
+ """
+ # mostly stolen from jingo_minify.helpers.js
+ if settings.DEBUG:
+ items = settings.MINIFY_BUNDLES['js'][bundle]
+ else:
+ build_id = BUILD_ID_JS
+ bundle_full = "js:%s" % bundle
+ if bundle_full in BUNDLE_HASHES:
+ build_id = BUNDLE_HASHES[bundle_full]
+ items = ("js/%s-min.js?build=%s" % (bundle, build_id,),)
+ return json.dumps([settings.MEDIA_URL + i for i in items])
+
+
+JS_COMMON = get_js_bundle_files('partners_common')
+JS_MOBILE = get_js_bundle_files('partners_mobile')
+JS_DESKTOP = get_js_bundle_files('partners_desktop')
+
+
+@csrf_exempt
+@require_POST
+def contact_bizdev(request):
+ form = WebToLeadForm(request.POST)
+ if form.is_valid():
+ data = form.cleaned_data.copy()
+ interest = data.pop('interest')
+ data['00NU0000002pDJr'] = interest
+ data['oid'] = '00DU0000000IrgO'
+ data['retURL'] = ('http://www.mozilla.org/en-US/about/'
+ 'partnerships?success=1')
+ r = requests.post('https://www.salesforce.com/servlet/'
+ 'servlet.WebToLead?encoding=UTF-8', data)
+ msg = requests.status_codes._codes.get(r.status_code, ['error'])[0]
+ return HttpResponse(msg, status=r.status_code)
+
+ return HttpResponse('Form invalid', status=400)
+
+
@csrf_exempt
def sms_send(request):
form = SMSSendForm(request.POST or None)
@@ -133,3 +190,15 @@ def all_downloads(request):
'test_builds': firefox_details.get_filtered_test_builds(version, query),
'query': query,
})
+
+
+def firefox_partners(request):
+ # If the current locale isn't in our list, return the en-US value
+ locale_os_url = LOCALE_OS_URLS.get(request.locale, LOCALE_OS_URLS['en-US'])
+
+ return l10n_utils.render(request, 'firefox/partners/index.html', {
+ 'locale_os_url': locale_os_url,
+ 'js_common': JS_COMMON,
+ 'js_mobile': JS_MOBILE,
+ 'js_desktop': JS_DESKTOP,
+ })
diff --git a/apps/firefoxos/__init__.py b/apps/firefoxos/__init__.py
deleted file mode 100644
index e69de29bb2..0000000000
diff --git a/apps/firefoxos/models.py b/apps/firefoxos/models.py
deleted file mode 100644
index 3d2dade135..0000000000
--- a/apps/firefoxos/models.py
+++ /dev/null
@@ -1,7 +0,0 @@
-# This Source Code Form is subject to the terms of the Mozilla Public
-# License, v. 2.0. If a copy of the MPL was not distributed with this
-# file, You can obtain one at http://mozilla.org/MPL/2.0/.
-
-from django.db import models
-
-# Create your models here.
diff --git a/apps/firefoxos/templates/firefoxos/faq.html b/apps/firefoxos/templates/firefoxos/faq.html
deleted file mode 100644
index 998ab41c15..0000000000
--- a/apps/firefoxos/templates/firefoxos/faq.html
+++ /dev/null
@@ -1,104 +0,0 @@
-{# This Source Code Form is subject to the terms of the Mozilla Public
- # License, v. 2.0. If a copy of the MPL was not distributed with this
- # file, You can obtain one at http://mozilla.org/MPL/2.0/. #}
-
-{% extends "firefoxos/firefoxos-base.html" %}
-
-{% block page_title %}Firefox OS FAQ{% endblock %}
-{% block body_id %}firefoxos-faq{% endblock %}
-
-{% block content %}
-
-
-
-
Firefox OS FAQ
-
-
-
What is Firefox OS?
-
-
The project is an implementation of new Web standards that bring the power of the Open Web to mobile devices, unencumbered by the rules and restrictions of existing proprietary platforms.
-
-
-
What is the overall aim of the project? What problems are you solving?
-
-
We believe that the next frontier for Web applications is full device integration, so that web developers have the same capabilities as those building for OS-specific stacks. Boot to Gecko is intended to identify those missing device capabilities and other application needs, and design standardized solutions for app developers to use.
-
-
-
What is the size of the team working on this project?
-
-
More than 20 engineers were working full-time on specific parts of the system (telephony, messaging, system-level phone integration). In addition, Mozilla contributors and engineers from operators partners are working jointly with us on the project.
-
We are also leaning heavily on the existing Gecko and Firefox mobile work and the team of hundreds of engineers building those products. 95% of the code in the Boot to Gecko project is shared with Firefox.
-
-
-
What does the project mean for your relationships with Apple, Google and Microsoft?
-
-
We don’t expect that it will affect our relationships with other organizations.
-
-
-
Does this replace work that’s already being done on Web APIs for desktop and mobile?
-
-
We are already pushing hard on new Web APIs and will continue to implement and standardize new APIs for Web content while the project ramps up.
-
-
-
How is this different than the Webian Shell project?
-
-
The Webian Shell project is an impressive project even in its early stages. Where Webian is focused on a Web-centric desktop experience, we’re focused on extending the Web to include more of what is traditionally the domain of OS-specific code. We think we can work together on a bunch of things, and we’re looking forward to it.
-
-
-
How is this different from Chrome OS?
-
-
We’re aiming at mobile/tablet devices rather than a notebook form factor. This is an early-stage project to expose all device capabilities such that infrastructure like phone dialers can be built with Web APIs, and not only “high level” apps like word processors and presentation software.
-
We will of course be happy to work with the Chrome OS team on standards activities, and indeed to share source code where appropriate.
-
-
-
Do you see this project as competing with other mobile operating systems?
-
-
We believe the Web is the platform. Ideally, the technology pioneered or refined in the Boot to Gecko project will make its way into all mobile browsers, so that enhanced Web applications can be great regardless of operating system or device. We look forward to working with other OS and browser developers on standards activities and even implementations.
-
-
-
Are OEMs interested in the project?
-
-
- Currently B2G is still a project without a firm product schedule. We are working on Qualcomm chipset based hardware platform for our development and discussing with OEMs /carriers on B2G deployment plans. We will announce a product schedule and launch partners once we reach that stage.
-
-
-
-
Whose hardware will you support?
-
-
- We are currently using off-the shelf developer hardware (Samsung Galaxy S 2), because the device is commercially available to Mozilla employees and community members. We are working on Qualcomm chipset based hardware platform right now and optimizing B2G to this reference platform. As we mentioned above, we are in process of finalization of lead OEM partners for shipping commercial B2G devices. That reference platform will likely be very different than the Samsung Galaxy S 2.
-
-
-
-
Is this going to be yet another platform for developers to code for?
-
-
No: the project is extending what developers can do with the Web, especially in the context of mobile devices, and to do so in a way that leads to interoperable standards.
-
Just as with HTML5, ES5, CSS3 and other Web technology it will reach different browsers and operating systems at different times, but the pace of Web platform development gives us confidence that good Web technology can reach a lot of people pretty quickly.
-
We don’t want this work to lead to applications that only run atop one platform, or only run in Firefox. That’s an important difference between what we’re doing and proprietary mobile stacks today: we don’t seek a competitive advantage for Mozilla, we seek a competitive advantage for the Web.
-
-
-
How do you think you’ll get the mobile manufacturers and operators on board with this?
-
-
The Boot to Gecko project is designed to build on the success of the Web, and given the early stage of the project it could reach users in many forms. We’re working with ODMs, OEMs, operators and others who share our vision of even greater success for Web-based applications.
-
-
-
What does the Boot to Gecko project offer mobile users that HTML5 doesn’t?
-
-
The project offers mobile users all the power of HTML5, extended with device capabilities like Bluetooth and SMS, a richer capability model for interaction with the filesystem, and a way to tie native HTML5 apps together. The intent is to lead to improved capabilities for the Web platform, not to replace HTML5 or related technology in any way. Many of these new capabilities will also make sense in desktop browsers, and we look forward to seeing them there as well.
-
-
-
Will this mean a Firefox Phone?
-
-
We don’t have any plans to build or distribute a custom device.
-
-
-
I am a web developer. How will I deploy my web application to this platform?
-
-
You don’t. By default, your web app will be accessible from the phone just like any other website. If you want to make it installable to the homescreen, you may consider adding an open web app manifest to your app. However, the install API is not complete yet as of February 2012.
-
-
-
-
-
-
-{% endblock %}
diff --git a/apps/firefoxos/templates/firefoxos/firefoxos-base.html b/apps/firefoxos/templates/firefoxos/firefoxos-base.html
deleted file mode 100644
index 608abcecac..0000000000
--- a/apps/firefoxos/templates/firefoxos/firefoxos-base.html
+++ /dev/null
@@ -1,43 +0,0 @@
-{# This Source Code Form is subject to the terms of the Mozilla Public
- # License, v. 2.0. If a copy of the MPL was not distributed with this
- # file, You can obtain one at http://mozilla.org/MPL/2.0/. #}
-
-{% extends "base-resp.html" %}
-
-{% block body_class %}sand{% endblock %}
-
-{% block extrahead %}
- {{ css('firefoxos') }}
-{% endblock %}
-
-{% block site_js %}
- {{ js('mozorg-resp') }}
-{% endblock %}
-
-{% block site_header %}
-
- {{ _('Mozilla') }}
-
- {% block site_header_nav %}
-
- {% endblock %}
-
-
-{% endblock %}
-
-
-{% block content %}{% endblock %}
-
-{% block email_form %}{% endblock %}
diff --git a/apps/firefoxos/templates/firefoxos/firefoxos.html b/apps/firefoxos/templates/firefoxos/firefoxos.html
deleted file mode 100644
index 159df8aa6f..0000000000
--- a/apps/firefoxos/templates/firefoxos/firefoxos.html
+++ /dev/null
@@ -1,69 +0,0 @@
-{# This Source Code Form is subject to the terms of the Mozilla Public
- # License, v. 2.0. If a copy of the MPL was not distributed with this
- # file, You can obtain one at http://mozilla.org/MPL/2.0/. #}
-
-{% extends "firefoxos/firefoxos-base.html" %}
-
-{% block page_title %}Firefox OS{% endblock %}
-{% block body_id %}firefoxos{% endblock %}
-
-{% block content %}
-
-
-
-
{{ _('Bringing the Open Web to mobile devices') }}
-
-
-
-
{{ _('Welcome to a new, open and powerful mobile world!') }}
-
{{ _('Firefox OS enables the Open Web as a platform for mobile devices. We’re making innovation possible by driving the development of new Web standards.') }}
-
-
-
-
-
-
-
-
-
-
{{ _('New Web standards') }}
-
{{ _('Firefox OS will produce an implementation of these new Web standards to free mobile platforms from the encumbrances of the rules and restrictions of existing proprietary platforms.') }}
-
-
{{ _('Freedom from proprietary mobile platforms') }}
-
{{ _('We’re collaborating with OEMs and carriers directly, giving them more influence to meet the specific needs of their users and market. Users and developers aren’t locked in to one platform, so they can access their info and use apps across multiple devices.') }}
-
-
-
-
-
-
-
-
{{ _('Customization for OEMs and operators')}}
-
{{ _('OEMs and operators will be able to provide content and services across their entire device portfolio, regardless of OS. And they will be able to customize user experiences, manage app distribution and retain customer attention, loyalty and billing relationships.') }}
-
-
-
-
-
-
-
{{ _('Opportunities for developers') }}
-
{{ _('Using HTML5 and the new Mozilla-proposed standard APIs, developers everywhere will be able to create amazing experiences and apps. Developers will no longer need to learn and develop against platform-specific native APIs.') }}
-
-
-
-
-
-
-
-
{{ _('Consumer freedom') }}
-
{{ _('Consumers who use devices powered by Firefox OS won’t be locked into one specific platform giving them more choice, flexibility and freedom. With Firefox OS, the Web is the platform.') }}
-
-
-
-
-
-{% endblock %}
-
-{% block site_js %}
- {{ js('mozorg-resp') }}
-{% endblock %}
diff --git a/apps/firefoxos/urls.py b/apps/firefoxos/urls.py
deleted file mode 100644
index 712878eea9..0000000000
--- a/apps/firefoxos/urls.py
+++ /dev/null
@@ -1,11 +0,0 @@
-# This Source Code Form is subject to the terms of the Mozilla Public
-# License, v. 2.0. If a copy of the MPL was not distributed with this
-# file, You can obtain one at http://mozilla.org/MPL/2.0/.
-
-from django.conf.urls.defaults import *
-from mozorg.util import page
-
-
-urlpatterns = patterns('',
- page('', 'firefoxos/firefoxos.html'),
-)
diff --git a/apps/marketplace/templates/marketplace/marketplace.html b/apps/marketplace/templates/marketplace/marketplace.html
index efc09a2dde..6c1211523d 100644
--- a/apps/marketplace/templates/marketplace/marketplace.html
+++ b/apps/marketplace/templates/marketplace/marketplace.html
@@ -40,23 +40,7 @@
{{_('The first Aurora release of Firefox Marketplace is available on Firefox Aurora for Android, giving developers a means to get feedback on their apps as the Marketplace grows and progresses.')}}
-
+
@@ -182,9 +166,6 @@
{% endblock %}
{% block js %}
-
- {{ js('box2d') }}
-
{{ js('marketplace') }}
{% endblock %}
diff --git a/apps/mozorg/templates/mozorg/download_buttons/mobile_small_landing.html b/apps/mozorg/templates/mozorg/download_buttons/mobile_small_landing.html
new file mode 100644
index 0000000000..04238f8d7d
--- /dev/null
+++ b/apps/mozorg/templates/mozorg/download_buttons/mobile_small_landing.html
@@ -0,0 +1,19 @@
+{# This Source Code Form is subject to the terms of the Mozilla Public
+ # License, v. 2.0. If a copy of the MPL was not distributed with this
+ # file, You can obtain one at http://mozilla.org/MPL/2.0/. #}
+
+{% extends "mozorg/download_buttons/mobile_base.html" %}
+
+{% block class %}download-button-mobile-small{% endblock %}
+
+{% block title %}{{ _('Get Firefox for Android »') }}
+
+ {{ _('Free from the Google Play Store') }}
+
+{% endblock %}
+
+{% block subtitle %}{% endblock %}
+
+{% block small_print %}{% endblock %}
+
+{% block download_info %}{% endblock %}
diff --git a/apps/mozorg/templates/mozorg/home.html b/apps/mozorg/templates/mozorg/home.html
index 848e537c9b..9695227fe1 100644
--- a/apps/mozorg/templates/mozorg/home.html
+++ b/apps/mozorg/templates/mozorg/home.html
@@ -57,15 +57,15 @@
We created Firefox OS to build the Web as the platform for
- mobile devices. That includes implementing new Web standards
- that aren't restricted by the rules of existing proprietary
- platforms. As with all Mozilla projects, Firefox OS is based
- entirely on open standards and the source code is accessible
+
We created Firefox OS to build the Web as the platform for
+ mobile devices. That includes implementing new Web standards
+ that aren't restricted by the rules of existing proprietary
+ platforms. As with all Mozilla projects, Firefox OS is based
+ entirely on open standards and the source code is accessible
to all.
Based on the same principles and technologies as our desktop
- browser, Firefox for Android is fast, smart, safe and full
- of innovations that let you type less, browse more and get
- to the Web quickly and easily. Our latest version includes
- improved performance, the latest privacy and security features
+
Based on the same principles and technologies as our desktop
+ browser, Firefox for Android is fast, smart, safe and full
+ of innovations that let you type less, browse more and get
+ to the Web quickly and easily. Our latest version includes
+ improved performance, the latest privacy and security features
and a redesigned look and feel.
We're bringing our core values – openness, freedom, user
- choice – to the world of apps and giving developers with
- full control over content, functionality and how apps are
- distributed, including access to hundreds of millions of Firefox
+
We're bringing our core values – openness, freedom, user
+ choice – to the world of apps and giving developers with
+ full control over content, functionality and how apps are
+ distributed, including access to hundreds of millions of Firefox
users through the Mozilla Marketplace.