added early adopter page (bug 834081)
This commit is contained in:
Родитель
f93b674a0b
Коммит
648504f753
|
@ -422,11 +422,15 @@
|
|||
}
|
||||
}
|
||||
|
||||
.business-partners {
|
||||
.business-partners, .dev-phone {
|
||||
#landing-page {
|
||||
margin: 0 auto;
|
||||
width: 900px;
|
||||
}
|
||||
}
|
||||
|
||||
.business-partners {
|
||||
#landing-page {
|
||||
h1 {
|
||||
font-size: 40px;
|
||||
margin: 0;
|
||||
|
@ -633,3 +637,150 @@
|
|||
}
|
||||
}
|
||||
}
|
||||
|
||||
.dev-phone {
|
||||
#landing-page {
|
||||
text-align: center;
|
||||
|
||||
.header {
|
||||
h1 {
|
||||
.hidetext;
|
||||
background: url(../../img/ecosystem/ff-os-wordmark.png) no-repeat;
|
||||
height: 39px;
|
||||
margin: 20px auto;
|
||||
width: 192px;
|
||||
}
|
||||
|
||||
h2 {
|
||||
font-size: 32px;
|
||||
line-height: 38px;
|
||||
margin-bottom: 30px;
|
||||
}
|
||||
}
|
||||
|
||||
section {
|
||||
.faded-border;
|
||||
border-bottom: 1px solid #ddd;
|
||||
border-top: 1px solid #fff;
|
||||
float: left;
|
||||
position: relative;
|
||||
width: 870px;
|
||||
|
||||
&:last-child {
|
||||
border-bottom: 0;
|
||||
}
|
||||
|
||||
&.intro {
|
||||
border-top: 0;
|
||||
}
|
||||
|
||||
.content-wrapper {
|
||||
margin: 0 auto;
|
||||
width: 800px;
|
||||
}
|
||||
|
||||
.content {
|
||||
text-align: left;
|
||||
|
||||
&.half {
|
||||
float: left;
|
||||
margin: 10px auto 0;
|
||||
padding: 20px 20px 0;
|
||||
|
||||
&.keon:first-child {
|
||||
width: 420px;
|
||||
}
|
||||
|
||||
&.peak {
|
||||
margin-top: 40px;
|
||||
padding-right: 50px;
|
||||
}
|
||||
|
||||
&.keon:last-child {
|
||||
width: 300px;
|
||||
}
|
||||
|
||||
&.peak:first-child {
|
||||
margin-left: 70px;
|
||||
width: 210px;
|
||||
}
|
||||
|
||||
&.peak:last-child {
|
||||
width: 330px;
|
||||
}
|
||||
|
||||
&.keon:last-child {
|
||||
background: url(../../img/ecosystem/phone-hand.png) no-repeat;
|
||||
height: 196px;
|
||||
width: 300px;
|
||||
|
||||
p {
|
||||
font-weight: bold;
|
||||
padding-left: 130px;
|
||||
}
|
||||
}
|
||||
|
||||
&.peak:first-child {
|
||||
background: url(../../img/ecosystem/phone-peak.png) no-repeat;
|
||||
height: 252px;
|
||||
|
||||
p {
|
||||
font-weight: bold;
|
||||
padding-top: 215px;
|
||||
text-align: center;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
h2 {
|
||||
font-size: 20px;
|
||||
line-height: 25px;
|
||||
padding-top: 20px;
|
||||
}
|
||||
}
|
||||
|
||||
.phone-options {
|
||||
font-size: 16px;
|
||||
line-height: 22px;
|
||||
margin: 10px auto;
|
||||
width: 540px;
|
||||
|
||||
.have-phone, .want-phone {
|
||||
float: left;
|
||||
padding: 160px 10px 10px;
|
||||
width: 250px;
|
||||
}
|
||||
|
||||
.have-phone {
|
||||
background: url(../../img/ecosystem/have-phone.png) no-repeat 50% 10px;
|
||||
}
|
||||
|
||||
.want-phone {
|
||||
background: url(../../img/ecosystem/want-phone.png) no-repeat 50% 10px;
|
||||
}
|
||||
|
||||
em {
|
||||
clear: both;
|
||||
color: #e97421;
|
||||
display: block;
|
||||
font-style: italic;
|
||||
font-weight: bold;
|
||||
}
|
||||
|
||||
span {
|
||||
display: block;
|
||||
font-size: 13px;
|
||||
font-style: italic;
|
||||
font-weight: 100;
|
||||
margin-top: 10px;
|
||||
}
|
||||
|
||||
.button {
|
||||
font-size: 14px;
|
||||
margin-top: 20px;
|
||||
padding: 15px 25px;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
Двоичный файл не отображается.
После Ширина: | Высота: | Размер: 4.2 KiB |
Двоичный файл не отображается.
После Ширина: | Высота: | Размер: 10 KiB |
Двоичный файл не отображается.
После Ширина: | Высота: | Размер: 61 KiB |
Двоичный файл не отображается.
После Ширина: | Высота: | Размер: 38 KiB |
Двоичный файл не отображается.
После Ширина: | Высота: | Размер: 24 KiB |
|
@ -0,0 +1,73 @@
|
|||
{% extends 'ecosystem/base.html' %}
|
||||
|
||||
{% block bodyclass %}landing developer-hub dev-phone{% endblock %}
|
||||
|
||||
{% block devhub_categories %}{% endblock %}
|
||||
|
||||
{% block content %}
|
||||
<div id="landing-page">
|
||||
<div class="header">
|
||||
<h1>{{ _('Firefox OS') }}</h1>
|
||||
<h2>
|
||||
{% trans %}
|
||||
Developer Preview Phone
|
||||
{% endtrans %}
|
||||
</h2>
|
||||
</div>
|
||||
<section class="intro">
|
||||
<div class="content-wrapper">
|
||||
<div class="content half keon">
|
||||
<h2>{{ _('Bringing the Open Web to mobile devices.') }}</h2>
|
||||
<p>
|
||||
{%- trans %}
|
||||
Firefox OS is a new mobile operating system built entirely
|
||||
using open web standards. In Firefox OS, HTML5 apps can do
|
||||
"phone things" – they can make the phone vibrate,
|
||||
make a phone call or send a text message.
|
||||
{% endtrans -%}
|
||||
</p>
|
||||
</div>
|
||||
<div class="content half keon">
|
||||
<p>{{ _('Keon') }}</p>
|
||||
</div>
|
||||
</div>
|
||||
</section>
|
||||
<section>
|
||||
<div class="phone-options">
|
||||
<p class="have-phone">
|
||||
{%- trans devhub_url=url('ecosystem.landing') %}
|
||||
<em>I have</em> a developer preview phone
|
||||
<a href="{{ devhub_url }}" class="button">Get started</a>
|
||||
{% endtrans -%}
|
||||
</p>
|
||||
<p class="want-phone">
|
||||
{%- trans order_url='http://www.geeksphone.com' %}
|
||||
<em>I want</em> a developer preview phone
|
||||
<a href="{{ order_url }}" class="button">Order one</a>
|
||||
<span>through Geeksphone</span>
|
||||
{% endtrans -%}
|
||||
</p>
|
||||
</div>
|
||||
</section>
|
||||
<section>
|
||||
<div class="content-wrapper">
|
||||
<div class="content half peak">
|
||||
<p>{{ _('Peak') }}</p>
|
||||
</div>
|
||||
<div class="content half peak">
|
||||
<h2>{{ _('The power of the web to mobile.') }}</h2>
|
||||
<p>
|
||||
{%- trans %}
|
||||
We believe that developers will help bring the power of
|
||||
the web to mobile and so we have worked with Geeksphone
|
||||
and Telefonica to create a device just for you. With a
|
||||
Firefox OS developer preview phone you will be able to
|
||||
create and test your apps on actual hardware, rather
|
||||
than just in the simulator.
|
||||
{% endtrans -%}
|
||||
</p>
|
||||
</div>
|
||||
</div>
|
||||
</section>
|
||||
</div>
|
||||
{% endblock %}
|
|
@ -82,6 +82,11 @@ class TestDevHub(amo.tests.TestCase):
|
|||
eq_(r.status_code, 200)
|
||||
self.assertTemplateUsed(r, 'ecosystem/partners.html')
|
||||
|
||||
def test_dev_phone(self):
|
||||
r = self.client.get(reverse('ecosystem.dev_phone'))
|
||||
eq_(r.status_code, 200)
|
||||
self.assertTemplateUsed(r, 'ecosystem/dev_phone.html')
|
||||
|
||||
def test_valid_reference_app(self):
|
||||
r = self.client.get(reverse('ecosystem.apps_documentation',
|
||||
args=['face_value']))
|
||||
|
|
|
@ -6,6 +6,7 @@ urlpatterns = patterns('',
|
|||
url('^$', views.landing, name='ecosystem.landing'),
|
||||
url('^partners$', views.partners, name='ecosystem.partners'),
|
||||
url('^support$', views.support, name='ecosystem.support'),
|
||||
url('^dev_phone$', views.dev_phone, name='ecosystem.dev_phone'),
|
||||
url('^docs/app_generator$', views.app_generator_documentation,
|
||||
name='ecosystem.app_generator_documentation'),
|
||||
url('^docs/firefox_os_simulator$', views.firefox_os_simulator,
|
||||
|
|
|
@ -94,6 +94,12 @@ def installation(request):
|
|||
{'page': 'installation', 'category': 'publish'})
|
||||
|
||||
|
||||
def dev_phone(request):
|
||||
"""Landing page for the developer phone."""
|
||||
return jingo.render(request, 'ecosystem/dev_phone.html',
|
||||
{'page': 'dev_phone'})
|
||||
|
||||
|
||||
def documentation(request, page=None):
|
||||
"""Page template for all content that is extracted from MDN's API."""
|
||||
_refresh_mdn(request)
|
||||
|
|
Загрузка…
Ссылка в новой задаче