Disable Sunbird; bug 617989. Stuff to know:

- This should be accompanied by an apache rewrite for /:lang/sunbird/.* to /:lang/sunbird/
- This doesn't strip anything out of /media/
This commit is contained in:
Wil Clouser 2012-02-21 16:05:38 -08:00
Родитель ef93e5ac6a
Коммит f97aec2bad
20 изменённых файлов: 73 добавлений и 24 удалений

Просмотреть файл

@ -610,6 +610,7 @@
"model": "applications.application", "model": "applications.application",
"fields": { "fields": {
"guid": "{718e30fb-e89b-41dd-9da7-e25a45638b28}", "guid": "{718e30fb-e89b-41dd-9da7-e25a45638b28}",
"supported": "0",
"modified": "2008-06-17 08:29:01", "modified": "2008-06-17 08:29:01",
"created": "2007-03-05 13:09:26" "created": "2007-03-05 13:09:26"
} }

Просмотреть файл

@ -5,7 +5,6 @@
amo.FIREFOX: 'http://getfirefox.com/?src=amo', amo.FIREFOX: 'http://getfirefox.com/?src=amo',
amo.THUNDERBIRD: 'http://www.mozillamessaging.com/', amo.THUNDERBIRD: 'http://www.mozillamessaging.com/',
amo.MOBILE: 'http://www.mozilla.com/m/', amo.MOBILE: 'http://www.mozilla.com/m/',
amo.SUNBIRD: 'http://www.mozilla.org/projects/calendar/sunbird/',
amo.SEAMONKEY: 'http://www.seamonkey-project.org/', amo.SEAMONKEY: 'http://www.seamonkey-project.org/',
}[APP] %} }[APP] %}

Просмотреть файл

@ -179,7 +179,7 @@ class TestAddonManager(amo.tests.TestCase):
eq_(f.count(), 3) eq_(f.count(), 3)
eq_(sorted(x.id for x in f), eq_(sorted(x.id for x in f),
[2464, 7661, 15679]) [2464, 7661, 15679])
f = Addon.objects.featured(amo.SUNBIRD) f = Addon.objects.featured(amo.THUNDERBIRD)
assert not f.exists() assert not f.exists()
@ -1278,7 +1278,7 @@ class TestAddonModelsFeatured(amo.tests.TestCase):
eq_(sorted(f), [1001, 1003, 2464, 3481, 7661, 15679]) eq_(sorted(f), [1001, 1003, 2464, 3481, 7661, 15679])
f = Addon.featured_random(amo.FIREFOX, 'fr') f = Addon.featured_random(amo.FIREFOX, 'fr')
eq_(sorted(f), [1001, 1003, 2464, 7661, 15679]) eq_(sorted(f), [1001, 1003, 2464, 7661, 15679])
f = Addon.featured_random(amo.SUNBIRD, 'en-US') f = Addon.featured_random(amo.THUNDERBIRD, 'en-US')
eq_(f, []) eq_(f, [])
def test_featured_random(self): def test_featured_random(self):

Просмотреть файл

@ -1045,13 +1045,13 @@ class TestDetailPage(amo.tests.TestCase):
If current add-on's type is unsupported by app, redirect to an If current add-on's type is unsupported by app, redirect to an
app that supports it. app that supports it.
""" """
# Sunbird can't do Personas => redirect # Thunderbird can't do search engines
prefixer = amo.urlresolvers.get_url_prefix() prefixer = amo.urlresolvers.get_url_prefix()
prefixer.app = amo.SUNBIRD.short prefixer.app = amo.THUNDERBIRD.short
response = self.client.get(reverse('addons.detail', args=['a15663']), response = self.client.get(reverse('addons.detail', args=['a4594']),
follow=False) follow=False)
eq_(response.status_code, 301) eq_(response.status_code, 301)
eq_(response['Location'].find(amo.SUNBIRD.short), -1) eq_(response['Location'].find(amo.THUNDERBIRD.short), -1)
assert (response['Location'].find(amo.FIREFOX.short) >= 0) assert (response['Location'].find(amo.FIREFOX.short) >= 0)
def test_compatible_app_redirect(self): def test_compatible_app_redirect(self):

Просмотреть файл

@ -790,7 +790,6 @@ class SearchTest(ESTestCase):
""" """
# The following URLs should yield zero results. # The following URLs should yield zero results.
zeros = ( zeros = (
'/en-US/sunbird/api/1.2/search/yslow',
'yslow category:alerts', 'yslow category:alerts',
'jsonview version:1.0', 'jsonview version:1.0',
'firebug type:dictionary', 'firebug type:dictionary',

Просмотреть файл

@ -31,6 +31,7 @@
"model": "applications.application", "model": "applications.application",
"fields": { "fields": {
"guid": "{718e30fb-e89b-41dd-9da7-e25a45638b28}", "guid": "{718e30fb-e89b-41dd-9da7-e25a45638b28}",
"supported": "0",
"modified": "2008-06-17 08:29:01", "modified": "2008-06-17 08:29:01",
"created": "2007-03-05 13:09:26" "created": "2007-03-05 13:09:26"
} }

Просмотреть файл

@ -19,7 +19,8 @@ class Command(BaseCommand):
def handle(self, *args, **kw): def handle(self, *args, **kw):
apps = {} apps = {}
for id, guid in Application.objects.values_list('id', 'guid'): for id, guid in (Application.objects.values_list('id', 'guid')
.exclude(supported=0)):
apps[id] = dict(guid=guid, versions=[], apps[id] = dict(guid=guid, versions=[],
name=amo.APPS_ALL[id].short) name=amo.APPS_ALL[id].short)
versions = (AppVersion.objects.values_list('application', 'version') versions = (AppVersion.objects.values_list('application', 'version')

Просмотреть файл

@ -7,6 +7,7 @@ from versions import compare
class Application(amo.models.ModelBase): class Application(amo.models.ModelBase):
guid = models.CharField(max_length=255, default='') guid = models.CharField(max_length=255, default='')
supported = models.BooleanField(default=1)
# We never reference these translated fields, so stop loading them. # We never reference these translated fields, so stop loading them.
# name = TranslatedField() # name = TranslatedField()
# shortname = TranslatedField() # shortname = TranslatedField()

Просмотреть файл

@ -59,6 +59,8 @@ class SEAMONKEY(App):
class SUNBIRD(App): class SUNBIRD(App):
"""This application is retired and should not be used on the site. It
remains as there are still some sunbird add-ons in the db."""
id = 52 id = 52
short = 'sunbird' short = 'sunbird'
shortername = 'sb' shortername = 'sb'
@ -128,9 +130,8 @@ class MOZILLA(App):
platforms = 'desktop' # DESKTOP_PLATFORMS (set in constants.platforms) platforms = 'desktop' # DESKTOP_PLATFORMS (set in constants.platforms)
# UAs will attempt to match in this order # UAs will attempt to match in this order
APP_DETECT = (ANDROID, MOBILE, THUNDERBIRD, SEAMONKEY, SUNBIRD, FIREFOX) APP_DETECT = (ANDROID, MOBILE, THUNDERBIRD, SEAMONKEY, FIREFOX)
APP_USAGE = _apps = (FIREFOX, THUNDERBIRD, ANDROID, APP_USAGE = _apps = (FIREFOX, THUNDERBIRD, ANDROID, MOBILE, SEAMONKEY)
MOBILE, SEAMONKEY, SUNBIRD)
APPS = dict((app.short, app) for app in _apps) APPS = dict((app.short, app) for app in _apps)
APP_IDS = dict((app.id, app) for app in _apps) APP_IDS = dict((app.id, app) for app in _apps)
APP_GUIDS = dict((app.guid, app) for app in _apps) APP_GUIDS = dict((app.guid, app) for app in _apps)

Просмотреть файл

@ -11,8 +11,8 @@
<h3>{{ _('What is this website?') }}</h3> <h3>{{ _('What is this website?') }}</h3>
<p>{% trans %}addons.mozilla.org, commonly known as "AMO", is Mozilla's official <p>{% trans %}addons.mozilla.org, commonly known as "AMO", is Mozilla's official
site for add-ons to Mozilla software, such as Firefox, Thunderbird, SeaMonkey, site for add-ons to Mozilla software, such as Firefox, Thunderbird, and SeaMonkey.
and Sunbird. Add-ons let you add new features and change the way your browser Add-ons let you add new features and change the way your browser
or application works. Take a look around and explore the thousands of ways to or application works. Take a look around and explore the thousands of ways to
customize the way you do things online.{% endtrans %}</p> customize the way you do things online.{% endtrans %}</p>

Просмотреть файл

@ -0,0 +1,48 @@
{% extends "impala/base_shared.html" %}
{% block title %}
{{ page_title(_('Sunbird')) }}
{% endblock %}
{% block extrahead %}
<style>
p {
margin-bottom: 1em;
}
.numbered li::-moz-list-number {
font-size: 2em;
border: 1px solid black;
}
#message {
padding-left: 250px;
min-height: 256px;
background: url(/media/img/app-icons/256/sunbird.png) no-repeat left 30%;
}
</style>
{% endblock %}
{% block content %}
<section id="message" class="copy prose">
<h1>{{ _('Sunbird has retired') }}</h1>
<p>
{% trans %}
Development on the Sunbird project has halted and its final release was
on March 30, 2010. We've been proud to host Sunbird add-ons on this site
but as the project is no longer maintained we have disabled our support
for the add-ons.
{% endtrans %}
</p>
<p>
{% trans tb_url="https://www.mozilla.org/en-US/thunderbird/",
lightning_url="https://addons.mozilla.org/thunderbird/2313/" %}
We recommend upgrading to <a href="{{ tb_url }}">Thunderbird</a> and <a href="{{ lightning_url }}">Lightning</a>.
{% endtrans %}
</p>
<p>
<a href="http://www.mozilla.org/projects/calendar/sunbird/">{{ _('Read more about Sunbird') }}</a>
</p>
</section>
{% endblock %}

Просмотреть файл

@ -14,4 +14,6 @@ urlpatterns = patterns('',
{'template': 'pages/dev_faq.html'}, name='pages.dev_faq'), {'template': 'pages/dev_faq.html'}, name='pages.dev_faq'),
url('^review_guide$', direct_to_template, url('^review_guide$', direct_to_template,
{'template': 'pages/review_guide.html'}, name='pages.review_guide'), {'template': 'pages/review_guide.html'}, name='pages.review_guide'),
url('^sunbird$', direct_to_template,
{'template': 'pages/sunbird.html'}, name='pages.sunbird'),
) )

Просмотреть файл

@ -41,7 +41,6 @@ min_version.update({
amo.FIREFOX: tuplize(amo.FIREFOX.min_display_version), amo.FIREFOX: tuplize(amo.FIREFOX.min_display_version),
amo.THUNDERBIRD: tuplize(amo.THUNDERBIRD.min_display_version), amo.THUNDERBIRD: tuplize(amo.THUNDERBIRD.min_display_version),
amo.SEAMONKEY: tuplize(amo.SEAMONKEY.min_display_version), amo.SEAMONKEY: tuplize(amo.SEAMONKEY.min_display_version),
amo.SUNBIRD: tuplize(amo.SUNBIRD.min_display_version),
}) })

Просмотреть файл

@ -173,8 +173,8 @@ class SearchTest(SphinxTestCase):
""" """
eq_(query('', limit=1, app=amo.MOBILE.id)[0].id, 11399) eq_(query('', limit=1, app=amo.MOBILE.id)[0].id, 11399)
# Poor sunbird, nobody likes them. # Poor seamonkey, nobody likes them.
eq_(len(query('deli', app=amo.SUNBIRD.id)), 0) eq_(len(query('deli', app=amo.SEAMONKEY.id)), 0)
def test_category_filter(self): def test_category_filter(self):
"""This tests filtering by category.""" """This tests filtering by category."""

Просмотреть файл

@ -967,8 +967,7 @@ class TestSearchSuggestions(TestAjaxSearch):
self.search_applications('q=firefox', [amo.FIREFOX]) self.search_applications('q=firefox', [amo.FIREFOX])
self.search_applications('q=thunder', [amo.THUNDERBIRD]) self.search_applications('q=thunder', [amo.THUNDERBIRD])
self.search_applications('q=monkey', [amo.SEAMONKEY]) self.search_applications('q=monkey', [amo.SEAMONKEY])
self.search_applications('q=sun', [amo.SUNBIRD]) self.search_applications('q=bird', [amo.THUNDERBIRD])
self.search_applications('q=bird', [amo.THUNDERBIRD, amo.SUNBIRD])
self.search_applications('q=mobile', [amo.MOBILE]) self.search_applications('q=mobile', [amo.MOBILE])
self.search_applications('q=mozilla', []) self.search_applications('q=mozilla', [])

Просмотреть файл

@ -230,7 +230,7 @@ ADMIN_MEDIA_PREFIX = '/admin-media/'
SUPPORTED_NONAPPS = ('admin', 'apps', 'blocklist', 'developers', 'editors', SUPPORTED_NONAPPS = ('admin', 'apps', 'blocklist', 'developers', 'editors',
'img', 'jsi18n', 'localizers', 'media', 'img', 'jsi18n', 'localizers', 'media',
'marketplace-experiments', 'payments', 'robots.txt', 'marketplace-experiments', 'payments', 'robots.txt',
'statistics', 'services') 'statistics', 'services', 'sunbird')
DEFAULT_APP = 'firefox' DEFAULT_APP = 'firefox'
# paths that don't require a locale prefix # paths that don't require a locale prefix

Двоичные данные
media/img/app-icons/256/sunbird.png Normal file

Двоичный файл не отображается.

После

Ширина:  |  Высота:  |  Размер: 84 KiB

Просмотреть файл

@ -0,0 +1,2 @@
-- disable sunbird; bug 617989
UPDATE applications SET supported=0 WHERE id=52 LIMIT 1;

Просмотреть файл

@ -12,8 +12,6 @@
{{ heading(_('<img alt="Firefox" src="{0}"> Mobile Add-ons'), 'firefox') }} {{ heading(_('<img alt="Firefox" src="{0}"> Mobile Add-ons'), 'firefox') }}
{% elif request.APP == amo.SEAMONKEY %} {% elif request.APP == amo.SEAMONKEY %}
{{ heading(_('<img alt="SeaMonkey" src="{0}"> Add-ons'), 'seamonkey') }} {{ heading(_('<img alt="SeaMonkey" src="{0}"> Add-ons'), 'seamonkey') }}
{% elif request.APP == amo.SUNBIRD %}
{{ heading(_('<img alt="Sunbird" src="{0}"> Add-ons'), 'sunbird') }}
{% else %} {% else %}
{{ heading(_('<img alt="" src="{0}"> Add-ons'), 'generic') }} {{ heading(_('<img alt="" src="{0}"> Add-ons'), 'generic') }}
{% endif %} {% endif %}

Просмотреть файл

@ -13,8 +13,6 @@
{{ heading('Firefox Mobile', _('Mobile Add-ons'), 'firefox') }} {{ heading('Firefox Mobile', _('Mobile Add-ons'), 'firefox') }}
{% elif request.APP == amo.SEAMONKEY %} {% elif request.APP == amo.SEAMONKEY %}
{{ heading('SeaMonkey', _('Add-ons'), 'seamonkey') }} {{ heading('SeaMonkey', _('Add-ons'), 'seamonkey') }}
{% elif request.APP == amo.SUNBIRD %}
{{ heading('Sunbird', _('Add-ons'), 'sunbird') }}
{% elif request.APP == amo.ANDROID %} {% elif request.APP == amo.ANDROID %}
{{ heading('Android', _('Android Add-ons'), 'firefox') }} {{ heading('Android', _('Android Add-ons'), 'firefox') }}
{% else %} {% else %}