switch from ddportfolio to debianmemberportfolio

- change all references from ddportfolio to debianmemberportfolio
- rename debianmemberportfolio.controllers.DDPortfolioController to
  debianmemberportfolio.controllers.Controller
- update documentation
- update copyright years, unify file header formatting
develop
Jan Dittberner 9 years ago
parent 780e10494e
commit b670f58c7a
  1. 6
      MANIFEST.in
  2. 28
      debianmemberportfolio/__init__.py
  3. 28
      debianmemberportfolio/config/__init__.py
  4. 6
      debianmemberportfolio/config/deployment.ini_tmpl
  5. 46
      debianmemberportfolio/config/environment.py
  6. 39
      debianmemberportfolio/config/middleware.py
  7. 42
      debianmemberportfolio/config/routing.py
  8. 28
      debianmemberportfolio/controllers/__init__.py
  9. 32
      debianmemberportfolio/controllers/error.py
  10. 67
      debianmemberportfolio/controllers/portfolio.py
  11. 42
      debianmemberportfolio/controllers/showformscripts.py
  12. 35
      debianmemberportfolio/controllers/template.py
  13. BIN
      debianmemberportfolio/i18n/de/LC_MESSAGES/debianmemberportfolio.mo
  14. 285
      debianmemberportfolio/i18n/de/LC_MESSAGES/debianmemberportfolio.po
  15. 192
      debianmemberportfolio/i18n/debianmemberportfolio.pot
  16. BIN
      debianmemberportfolio/i18n/fr/LC_MESSAGES/debianmemberportfolio.mo
  17. 282
      debianmemberportfolio/i18n/fr/LC_MESSAGES/debianmemberportfolio.po
  18. BIN
      debianmemberportfolio/i18n/id/LC_MESSAGES/debianmemberportfolio.mo
  19. 281
      debianmemberportfolio/i18n/id/LC_MESSAGES/debianmemberportfolio.po
  20. BIN
      debianmemberportfolio/i18n/pt_BR/LC_MESSAGES/debianmemberportfolio.mo
  21. 282
      debianmemberportfolio/i18n/pt_BR/LC_MESSAGES/debianmemberportfolio.po
  22. 28
      debianmemberportfolio/lib/__init__.py
  23. 32
      debianmemberportfolio/lib/app_globals.py
  24. 34
      debianmemberportfolio/lib/base.py
  25. 30
      debianmemberportfolio/lib/helpers.py
  26. 28
      debianmemberportfolio/model/__init__.py
  27. 47
      debianmemberportfolio/model/dddatabuilder.py
  28. 7
      debianmemberportfolio/model/form.py
  29. 10
      debianmemberportfolio/model/keyfinder.py
  30. 21
      debianmemberportfolio/model/keyringanalyzer.py
  31. 70
      debianmemberportfolio/model/urlbuilder.py
  32. 4
      debianmemberportfolio/templates/showform.mako
  33. 4
      debianmemberportfolio/templates/showurls.mako
  34. 19
      debianmemberportfolio/tests/__init__.py
  35. 28
      debianmemberportfolio/tests/functional/__init__.py
  36. 23
      debianmemberportfolio/tests/functional/test_portfolio.py
  37. 17
      debianmemberportfolio/tests/functional/test_showformscripts.py
  38. 28
      debianmemberportfolio/tests/test_models.py
  39. 42
      debianmemberportfolio/websetup.py
  40. 13
      development.ini
  41. 45
      docs/source/devdocs.rst
  42. 34
      docs/source/sourcecode.rst
  43. 25
      setup.cfg
  44. 30
      setup.py
  45. 2
      test.ini

@ -1,3 +1,3 @@
include newpylonsapp/config/deployment.ini_tmpl
recursive-include ddportfolioservice/public *
recursive-include ddportfolioservice/templates *
include debianmemberportfolio/config/deployment.ini_tmpl
recursive-include debianmemberportfolio/public *
recursive-include debianmemberportfolio/templates *

@ -1,22 +1,22 @@
# -*- python -*-
# -*- coding: utf-8 -*-
#
# DDPortfolio service package
# Copyright (c) 2009 Jan Dittberner <jan@dittberner.info>
# Debian Member Portfolio Service package
#
# This file is part of DDPortfolio service.
# Copyright © 2009-2014 Jan Dittberner <jan@dittberner.info>
#
# DDPortfolio service is free software: you can redistribute it and/or
# modify it under the terms of the GNU Affero General Public License
# as published by the Free Software Foundation, either version 3 of
# the License, or (at your option) any later version.
# This file is part of the Debian Member Portfolio Service.
#
# DDPortfolio service is distributed in the hope that it will be
# useful, but WITHOUT ANY WARRANTY; without even the implied warranty
# of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
# Affero General Public License for more details.
# Debian Member Portfolio Service is free software: you can redistribute it
# and/or modify it under the terms of the GNU Affero General Public License as
# published by the Free Software Foundation, either version 3 of the License,
# or (at your option) any later version.
#
# You should have received a copy of the GNU Affero General Public
# License along with this program. If not, see
# <http://www.gnu.org/licenses/>.
# Debian Member Portfolio Service is distributed in the hope that it will be
# useful, but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero
# General Public License for more details.
#
# You should have received a copy of the GNU Affero General Public License
# along with this program. If not, see <http://www.gnu.org/licenses/>.
#

@ -1,22 +1,22 @@
# -*- python -*-
# -*- coding: utf-8 -*-
#
# DDPortfolio service config package
# Copyright © 2009, 2010 Jan Dittberner <jan@dittberner.info>
# Debian Member Portfolio Service config package
#
# This file is part of DDPortfolio service.
# Copyright © 2009-2014 Jan Dittberner <jan@dittberner.info>
#
# DDPortfolio service is free software: you can redistribute it and/or
# modify it under the terms of the GNU Affero General Public License
# as published by the Free Software Foundation, either version 3 of
# the License, or (at your option) any later version.
# This file is part of the Debian Member Portfolio Service.
#
# DDPortfolio service is distributed in the hope that it will be
# useful, but WITHOUT ANY WARRANTY; without even the implied warranty
# of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
# Affero General Public License for more details.
# Debian Member Portfolio Service is free software: you can redistribute it
# and/or modify it under the terms of the GNU Affero General Public License as
# published by the Free Software Foundation, either version 3 of the License,
# or (at your option) any later version.
#
# You should have received a copy of the GNU Affero General Public
# License along with this program. If not, see
# <http://www.gnu.org/licenses/>.
# Debian Member Portfolio Service is distributed in the hope that it will be
# useful, but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero
# General Public License for more details.
#
# You should have received a copy of the GNU Affero General Public License
# along with this program. If not, see <http://www.gnu.org/licenses/>.
#

@ -1,5 +1,5 @@
#
# ddportfolioservice - Pylons configuration
# Debian Member Portfolio Service - Pylons configuration
#
# The %(here)s variable will be replaced with the parent directory of this file
#
@ -15,12 +15,12 @@ host = 0.0.0.0
port = 5000
[app:main]
use = egg:ddportfolioservice
use = egg:debianmemberportfolio
full_stack = true
static_files = true
cache_dir = %(here)s/data
beaker.session.key = ddportfolioservice
beaker.session.key = debianmemberportfolio
beaker.session.secret = ${app_instance_secret}
app_instance_uuid = ${app_instance_uuid}

@ -1,40 +1,44 @@
# -*- python -*-
# -*- coding: utf-8 -*-
#
# DDPortfolio service environment configuration
# Copyright © 2009, 2010, 2011, 2012 Jan Dittberner <jan@dittberner.info>
# Debian Member Portfolio Service environment configuration
#
# This file is part of DDPortfolio service.
# Copyright © 2009-2014 Jan Dittberner <jan@dittberner.info>
#
# DDPortfolio service is free software: you can redistribute it and/or
# modify it under the terms of the GNU Affero General Public License
# as published by the Free Software Foundation, either version 3 of
# the License, or (at your option) any later version.
# This file is part of the Debian Member Portfolio Service.
#
# DDPortfolio service is distributed in the hope that it will be
# useful, but WITHOUT ANY WARRANTY; without even the implied warranty
# of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
# Affero General Public License for more details.
# Debian Member Portfolio Service is free software: you can redistribute it
# and/or modify it under the terms of the GNU Affero General Public License as
# published by the Free Software Foundation, either version 3 of the License,
# or (at your option) any later version.
#
# You should have received a copy of the GNU Affero General Public
# License along with this program. If not, see
# <http://www.gnu.org/licenses/>.
# Debian Member Portfolio Service is distributed in the hope that it will be
# useful, but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero
# General Public License for more details.
#
"""Pylons environment configuration"""
# You should have received a copy of the GNU Affero General Public License
# along with this program. If not, see <http://www.gnu.org/licenses/>.
#
"""
Pylons environment configuration
"""
import os
from mako.lookup import TemplateLookup
from pylons.configuration import PylonsConfig
from pylons.error import handle_mako_error
import ddportfolioservice.lib.app_globals as app_globals
import ddportfolioservice.lib.helpers
from ddportfolioservice.config.routing import make_map
import debianmemberportfolio.lib.app_globals as app_globals
import debianmemberportfolio.lib.helpers
from debianmemberportfolio.config.routing import make_map
def load_environment(global_conf, app_conf):
"""
Configure the Pylons environment via the ``pylons.config`` object
Configures the Pylons environment via the ``pylons.config`` object.
"""
config = PylonsConfig()
@ -47,11 +51,11 @@ def load_environment(global_conf, app_conf):
# Initialize config with the basic options
config.init_app(
global_conf, app_conf, package='ddportfolioservice', paths=paths)
global_conf, app_conf, package='debianmemberportfolio', paths=paths)
config['routes.map'] = make_map(config)
config['pylons.app_globals'] = app_globals.Globals(config)
config['pylons.h'] = ddportfolioservice.lib.helpers
config['pylons.h'] = debianmemberportfolio.lib.helpers
# Setup cache object as early as possible
import pylons

@ -1,26 +1,30 @@
# -*- python -*-
# -*- coding: utf-8 -*-
#
# DDPortfolio service middleware configuration
# Copyright © 2009, 2010, 2011, 2012 Jan Dittberner <jan@dittberner.info>
# Debian Member Portfolio Service middleware configuration
#
# This file is part of DDPortfolio service.
# Copyright © 2009-2014 Jan Dittberner <jan@dittberner.info>
#
# DDPortfolio service is free software: you can redistribute it and/or
# modify it under the terms of the GNU Affero General Public License
# as published by the Free Software Foundation, either version 3 of
# the License, or (at your option) any later version.
# This file is part of the Debian Member Portfolio Service.
#
# DDPortfolio service is distributed in the hope that it will be
# useful, but WITHOUT ANY WARRANTY; without even the implied warranty
# of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
# Affero General Public License for more details.
# Debian Member Portfolio Service is free software: you can redistribute it
# and/or modify it under the terms of the GNU Affero General Public License as
# published by the Free Software Foundation, either version 3 of the License,
# or (at your option) any later version.
#
# You should have received a copy of the GNU Affero General Public
# License along with this program. If not, see
# <http://www.gnu.org/licenses/>.
# Debian Member Portfolio Service is distributed in the hope that it will be
# useful, but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero
# General Public License for more details.
#
"""Pylons middleware initialization"""
# You should have received a copy of the GNU Affero General Public License
# along with this program. If not, see <http://www.gnu.org/licenses/>.
#
"""
Pylons middleware initialization
"""
from beaker.middleware import SessionMiddleware
from paste.cascade import Cascade
from paste.registry import RegistryManager
@ -30,11 +34,12 @@ from pylons.middleware import ErrorHandler, StatusCodeRedirect
from pylons.wsgiapp import PylonsApp
from routes.middleware import RoutesMiddleware
from ddportfolioservice.config.environment import load_environment
from debianmemberportfolio.config.environment import load_environment
def make_app(global_conf, full_stack=True, static_files=True, **app_conf):
"""Create a Pylons WSGI application and return it
"""
Create a Pylons WSGI application and return it
``global_conf``
The inherited configuration for this application. Normally from

@ -1,36 +1,42 @@
# -*- python -*-
# -*- coding: utf-8 -*-
#
# DDPortfolio service routing configuration
# Copyright © 2009, 2010, 2011, 2012 Jan Dittberner <jan@dittberner.info>
# Debian Member Portfolio Service routing configuration
#
# This file is part of DDPortfolio service.
# Copyright © 2009-2014 Jan Dittberner <jan@dittberner.info>
#
# DDPortfolio service is free software: you can redistribute it and/or
# modify it under the terms of the GNU Affero General Public License
# as published by the Free Software Foundation, either version 3 of
# the License, or (at your option) any later version.
# This file is part of the Debian Member Portfolio Service.
#
# DDPortfolio service is distributed in the hope that it will be
# useful, but WITHOUT ANY WARRANTY; without even the implied warranty
# of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
# Affero General Public License for more details.
# Debian Member Portfolio Service is free software: you can redistribute it
# and/or modify it under the terms of the GNU Affero General Public License as
# published by the Free Software Foundation, either version 3 of the License,
# or (at your option) any later version.
#
# You should have received a copy of the GNU Affero General Public
# License along with this program. If not, see
# <http://www.gnu.org/licenses/>.
# Debian Member Portfolio Service is distributed in the hope that it will be
# useful, but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero
# General Public License for more details.
#
"""Routes configuration
# You should have received a copy of the GNU Affero General Public License
# along with this program. If not, see <http://www.gnu.org/licenses/>.
#
"""
Routes configuration
The more specific and detailed routes should be defined first so they
may take precedent over the more generic routes. For more information
refer to the routes manual at http://routes.groovie.org/docs/
"""
from routes import Mapper
def make_map(config):
"""Create, configure and return the routes Mapper"""
"""
Create, configure and return the routes Mapper
"""
map = Mapper(directory=config['pylons.paths']['controllers'],
always_scan=config['debug'], explicit=True)
map.minimization = False
@ -41,8 +47,8 @@ def make_map(config):
map.connect('/error/{action}/{id}', controller='error')
# CUSTOM ROUTES HERE
map.connect('/', controller='ddportfolio', action='index')
map.connect('/result', controller='ddportfolio', action='urllist')
map.connect('/', controller='portfolio', action='index')
map.connect('/result', controller='portfolio', action='urllist')
map.connect('/htmlformhelper.js', controller='showformscripts',
action='index')

@ -1,22 +1,22 @@
# -*- python -*-
# -*- coding: utf-8 -*-
#
# DDPortfolio service controllers package
# Copyright © 2009, 2010 Jan Dittberner <jan@dittberner.info>
# Debian Member Portfolio Service controllers package
#
# This file is part of DDPortfolio service.
# Copyright © 2009-2014 Jan Dittberner <jan@dittberner.info>
#
# DDPortfolio service is free software: you can redistribute it and/or
# modify it under the terms of the GNU Affero General Public License
# as published by the Free Software Foundation, either version 3 of
# the License, or (at your option) any later version.
# This file is part of the Debian Member Portfolio Service.
#
# DDPortfolio service is distributed in the hope that it will be
# useful, but WITHOUT ANY WARRANTY; without even the implied warranty
# of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
# Affero General Public License for more details.
# Debian Member Portfolio Service is free software: you can redistribute it
# and/or modify it under the terms of the GNU Affero General Public License as
# published by the Free Software Foundation, either version 3 of the License,
# or (at your option) any later version.
#
# You should have received a copy of the GNU Affero General Public
# License along with this program. If not, see
# <http://www.gnu.org/licenses/>.
# Debian Member Portfolio Service is distributed in the hope that it will be
# useful, but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero
# General Public License for more details.
#
# You should have received a copy of the GNU Affero General Public License
# along with this program. If not, see <http://www.gnu.org/licenses/>.
#

@ -1,24 +1,24 @@
# -*- python -*-
# -*- coding: utf-8 -*-
#
# DDPortfolio service ErrorController
# Copyright © 2009, 2010, 2011, 2012 Jan Dittberner <jan@dittberner.info>
# Debian Member Portfolio Service ErrorController
#
# This file is part of DDPortfolio service.
# Copyright © 2009-2014 Jan Dittberner <jan@dittberner.info>
#
# DDPortfolio service is free software: you can redistribute it and/or
# modify it under the terms of the GNU Affero General Public License
# as published by the Free Software Foundation, either version 3 of
# the License, or (at your option) any later version.
# This file is part of the Debian Member Portfolio Service.
#
# DDPortfolio service is distributed in the hope that it will be
# useful, but WITHOUT ANY WARRANTY; without even the implied warranty
# of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
# Affero General Public License for more details.
# Debian Member Portfolio Service is free software: you can redistribute it
# and/or modify it under the terms of the GNU Affero General Public License as
# published by the Free Software Foundation, either version 3 of the License,
# or (at your option) any later version.
#
# You should have received a copy of the GNU Affero General Public
# License along with this program. If not, see
# <http://www.gnu.org/licenses/>.
# Debian Member Portfolio Service is distributed in the hope that it will be
# useful, but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero
# General Public License for more details.
#
# You should have received a copy of the GNU Affero General Public License
# along with this program. If not, see <http://www.gnu.org/licenses/>.
#
import cgi
@ -28,7 +28,7 @@ from pylons.controllers.util import forward
from pylons.middleware import error_document_template
from webhelpers.html.builder import literal
from ddportfolioservice.lib.base import BaseController
from debianmemberportfolio.lib.base import BaseController
class ErrorController(BaseController):
@ -49,7 +49,7 @@ class ErrorController(BaseController):
page = error_document_template % \
dict(prefix=request.environ.get('SCRIPT_NAME', ''),
code=cgi.escape(
request.GET.get('code', str(resp.status_int))),
request.GET.get('code', str(resp.status_int))),
message=content)
return page

@ -1,10 +1,11 @@
# -*- python -*-
# -*- coding: utf-8 -*-
#
# Debian Member Portfolio Service DdportfolioController
# Debian Member Portfolio Service PortfolioController
#
# Copyright © 2009-2014 Jan Dittberner <jan@dittberner.info>
#
# This file is part of Debian Member Portfolio Service.
# This file is part of the Debian Member Portfolio Service.
#
# Debian Member Portfolio Service is free software: you can redistribute it
# and/or modify it under the terms of the GNU Affero General Public License as
@ -19,6 +20,11 @@
# You should have received a copy of the GNU Affero General Public License
# along with this program. If not, see <http://www.gnu.org/licenses/>.
#
"""
This module defines the PortfolioController class used to render the portfolio
of a person.
"""
import logging
import simplejson
@ -27,18 +33,19 @@ from pylons.i18n import N_, _
import formencode.api
import formencode.validators
from ddportfolioservice.lib.base import BaseController, render
from ddportfolioservice.model.form import DDDataRequest, DeveloperData
from ddportfolioservice.model.urlbuilder import build_urls
from ddportfolioservice.model import dddatabuilder
from debianmemberportfolio.lib.base import BaseController, render
from debianmemberportfolio.model.form import DDDataRequest, DeveloperData
from debianmemberportfolio.model.urlbuilder import build_urls
from debianmemberportfolio.model import dddatabuilder
log = logging.getLogger(__name__)
class DdportfolioController(BaseController):
class PortfolioController(BaseController):
"""
Main controller for the Debian Member portfolio service.
Main controller for the Debian Member Portfolio Service.
"""
#: This dictionary defines groups of labeled portfolio items.
_LABELS = {
'overview': {
'label': N_('Overview'),
@ -123,6 +130,15 @@ developer name on all bug logs)'),
},
}
#: list of field name tuples for Debian Maintainers
DM_TUPLES = (('name', 'name'),
('gpgfp', 'gpgfp'),
('nonddemail', 'email'))
#: list of field name tuples for Debian Developers
DD_TUPLES = (('username', 'username'),
('aliothusername', 'username'))
def _get_label(self, section, url=None):
if section in self._LABELS:
if url:
@ -140,35 +156,34 @@ developer name on all bug logs)'),
"""
return render('/showform.mako')
def urllist(self):
"""Handle the actual data."""
def _build_request_params(self):
schema = DDDataRequest()
try:
formencode.api.set_stdtranslation(
domain="FormEncode",
languages=[lang[0:2] for lang in request.languages])
form_result = schema.to_python(request.params)
except formencode.validators.Invalid, error:
c.messages = {'errors': error.unpack_errors()}
return render('/showform.mako')
formencode.api.set_stdtranslation(
domain="FormEncode",
languages=[lang[0:2] for lang in request.languages])
form_result = schema.to_python(request.params)
fields = dddatabuilder.build_data(form_result['email'])
rp = request.params.copy()
DM_TUPLES = (('name', 'name'),
('gpgfp', 'gpgfp'),
('nonddemail', 'email'))
DD_TUPLES = (('username', 'username'),
('aliothusername', 'username'))
if fields['type'] in (dddatabuilder.TYPE_DD, dddatabuilder.TYPE_DM):
for tuple in DM_TUPLES:
for tuple in self.DM_TUPLES:
if not tuple[0] in rp or not rp[tuple[0]]:
rp[tuple[0]] = fields[tuple[1]]
if fields['type'] == dddatabuilder.TYPE_DD:
for tuple in DD_TUPLES:
for tuple in self.DD_TUPLES:
if not tuple[0] in rp or not rp[tuple[0]]:
rp[tuple[0]] = fields[tuple[1]]
return rp
def urllist(self):
"""Handle the actual data."""
try:
rp = self._build_request_params()
except formencode.validators.Invalid as error:
c.messages = {'errors': error.unpack_errors()}
return render('/showform.mako')
schema = DeveloperData()
try:
formencode.api.set_stdtranslation(

@ -1,36 +1,42 @@
# -*- python -*-
# -*- coding: utf-8 -*-
#
# DDPortfolio service ShowformscriptController.
# Copyright © 2009, 2010, 2011, 2012 Jan Dittberner <jan@dittberner.info>
# Debian Member Portfolio Service ShowformscriptsController.
#
# This file is part of DDPortfolio service.
# Copyright © 2009-2014 Jan Dittberner <jan@dittberner.info>
#
# DDPortfolio service is free software: you can redistribute it and/or
# modify it under the terms of the GNU Affero General Public License
# as published by the Free Software Foundation, either version 3 of
# the License, or (at your option) any later version.
# This file is part of the Debian Member Portfolio Service.
#
# DDPortfolio service is distributed in the hope that it will be
# useful, but WITHOUT ANY WARRANTY; without even the implied warranty
# of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
# Affero General Public License for more details.
# Debian Member Portfolio Service is free software: you can redistribute it
# and/or modify it under the terms of the GNU Affero General Public License as
# published by the Free Software Foundation, either version 3 of the License,
# or (at your option) any later version.
#
# You should have received a copy of the GNU Affero General Public
# License along with this program. If not, see
# <http://www.gnu.org/licenses/>.
# Debian Member Portfolio Service is distributed in the hope that it will be
# useful, but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero
# General Public License for more details.
#
# You should have received a copy of the GNU Affero General Public License
# along with this program. If not, see <http://www.gnu.org/licenses/>.
#
"""
This file defines the ShowformscriptsController used to generate the JavaScript
code in forms.
"""
import logging
import simplejson
from pylons import request, response
from pylons.controllers.util import abort
import formencode.api
import formencode.validators
from ddportfolioservice.lib.base import BaseController, render
from ddportfolioservice.model.form import DDDataRequest
from ddportfolioservice.model import dddatabuilder
from debianmemberportfolio.lib.base import BaseController, render
from debianmemberportfolio.model.form import DDDataRequest
from debianmemberportfolio.model import dddatabuilder
log = logging.getLogger(__name__)
@ -62,7 +68,7 @@ class ShowformscriptsController(BaseController):
except formencode.validators.Invalid, error:
errors = error.unpack_errors()
abort(400, "\n".join(
["%s: %s" % (key, errors[key]) for key in errors]))
["%s: %s" % (key, errors[key]) for key in errors]))
fields = dddatabuilder.build_data(form_result['email'])
log.debug(fields)
response.headers['Content-Type'] = 'text/plain'

@ -1,26 +1,31 @@
# -*- python -*-
# -*- coding: utf-8 -*-
#
# DDPortfolio service TemplateController
# Copyright © 2009, 2010, 2011, 2012 Jan Dittberner <jan@dittberner.info>
# Debian Member Portfolio Service TemplateController
#
# This file is part of DDPortfolio service.
# Copyright © 2009-2014 Jan Dittberner <jan@dittberner.info>
#
# DDPortfolio service is free software: you can redistribute it and/or
# modify it under the terms of the GNU Affero General Public License
# as published by the Free Software Foundation, either version 3 of
# the License, or (at your option) any later version.
# This file is part of the Debian Member Portfolio Service.
#
# DDPortfolio service is distributed in the hope that it will be
# useful, but WITHOUT ANY WARRANTY; without even the implied warranty
# of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
# Affero General Public License for more details.
# Debian Member Portfolio Service is free software: you can redistribute it
# and/or modify it under the terms of the GNU Affero General Public License as
# published by the Free Software Foundation, either version 3 of the License,
# or (at your option) any later version.
#
# You should have received a copy of the GNU Affero General Public
# License along with this program. If not, see
# <http://www.gnu.org/licenses/>.
# Debian Member Portfolio Service is distributed in the hope that it will be
# useful, but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero
# General Public License for more details.
#
from ddportfolioservice.lib.base import BaseController
# You should have received a copy of the GNU Affero General Public License
# along with this program. If not, see <http://www.gnu.org/licenses/>.
#
"""
This file contains the TemplateController used to render templates.
"""
from debianmemberportfolio.lib.base import BaseController
from pylons.controllers.util import abort
class TemplateController(BaseController):

@ -1,34 +1,33 @@
# German translations for ddportfolioservice.
# Copyright (C) 2009, 2010, 2011, 2012 Jan Dittberner
# This file is distributed under the same license as the ddportfolioservice
# project.
# Jan Dittberner <jan@dittberner.info>, 2009, 2010, 2011, 2012.
# German translations for the Debian Member Portfolio Service.
#
# Copyright (C) 2009-2014 Jan Dittberner
# This file is distributed under the same license as the Debian Member
# Portfolio Service project.
# Translators:
# Jan Dittberner <jan@dittberner.info>, 2009-2014
msgid ""
msgstr ""
"Project-Id-Version: ddportfolioservice 0.2.1\n"
"Project-Id-Version: Debian Member Portfolio Service 0.3.1\n"
"Report-Msgid-Bugs-To: jan@dittberner.info\n"
"POT-Creation-Date: 2014-01-11 00:25+0000\n"
"PO-Revision-Date: 2014-01-11 01:37+0100\n"
"POT-Creation-Date: 2014-02-08 18:14+0100\n"
"PO-Revision-Date: 2014-02-08 18:03+0100\n"
"Last-Translator: Jan Dittberner <jan@dittberner.info>\n"
"Language-Team: de <de@li.org>\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
"Plural-Forms: nplurals=2; plural=(n != 1)\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Type: text/plain; charset=utf-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Generated-By: Babel 0.9.6\n"
"X-Generator: Poedit 1.5.4\n"
"Language: de\n"
#: ddportfolioservice/controllers/ddportfolio.py:45
#: debianmemberportfolio/controllers/portfolio.py:45
msgid "Overview"
msgstr "Überblick"
#: ddportfolioservice/controllers/ddportfolio.py:46
#: debianmemberportfolio/controllers/portfolio.py:46
msgid "Debian Member's Package Overview"
msgstr "Paketübersicht des Debian-Mitglieds"
#: ddportfolioservice/controllers/ddportfolio.py:47
#: debianmemberportfolio/controllers/portfolio.py:47
msgid ""
"Debian Member's Package Overview\n"
"... showing all email addresses"
@ -36,384 +35,386 @@ msgstr ""
"Paketübersicht des Debian-Mitglieds\n"
"... mit allen E-Mailadressen"
#: ddportfolioservice/controllers/ddportfolio.py:51
#: debianmemberportfolio/controllers/portfolio.py:51
msgid "Bugs"
msgstr "Fehler"
#: ddportfolioservice/controllers/ddportfolio.py:52
#: debianmemberportfolio/controllers/portfolio.py:52
msgid ""
"bugs received\n"
"(note: co-maintainers not listed, see <a href=\"http://bugs.debian.org/cgi-"
"bin/bugreport.cgi?bug=430986\">#430986</a>)"
"(note: co-maintainers not listed, see <a href=\"http://bugs.debian.org"
"/cgi-bin/bugreport.cgi?bug=430986\">#430986</a>)"
msgstr ""
"Erhaltene Fehlerberichte\n"
"(Anmerkung: Co-Maintainer werden nicht aufgeführt, siehe <a href=\"http://"
"bugs.debian.org/cgi-bin/bugreport.cgi?bug=430986\">#430986</a>)"
"(Anmerkung: Co-Maintainer werden nicht aufgeführt, siehe <a "
"href=\"http://bugs.debian.org/cgi-"
"bin/bugreport.cgi?bug=430986\">#430986</a>)"
#: ddportfolioservice/controllers/ddportfolio.py:56
#: debianmemberportfolio/controllers/portfolio.py:56
msgid "bugs reported"
msgstr "Berichtete Fehler"
#: ddportfolioservice/controllers/ddportfolio.py:57
#: debianmemberportfolio/controllers/portfolio.py:57
msgid "user tags"
msgstr "User Tags"
#: ddportfolioservice/controllers/ddportfolio.py:58
msgid ""
"all messages (i.e., full text search for developer name on all bug logs)"
#: debianmemberportfolio/controllers/portfolio.py:58
msgid "all messages (i.e., full text search for developer name on all bug logs)"
msgstr ""
"Alle Nachrichten (d.h. Volltextsuche nach dem Entwicklernamen in allen "
"Fehlerlogs)"
#: ddportfolioservice/controllers/ddportfolio.py:60
#: debianmemberportfolio/controllers/portfolio.py:60
msgid "<a href=\"http://wiki.debian.org/WNPP\">WNPP</a>"
msgstr "<a href=\"http://wiki.debian.org/WNPP\">WNPP</a>"
#: ddportfolioservice/controllers/ddportfolio.py:61
#: debianmemberportfolio/controllers/portfolio.py:61
msgid "correspondent for bugs"
msgstr "Beitragender zu Fehlern"
#: ddportfolioservice/controllers/ddportfolio.py:62
#: debianmemberportfolio/controllers/portfolio.py:62
msgid "one year open bug history graph"
msgstr "Graph der Entwicklung offener Fehlerberichte über ein Jahr"
#: ddportfolioservice/controllers/ddportfolio.py:65
#: debianmemberportfolio/controllers/portfolio.py:65
msgid "Build"
msgstr "Build"
#: ddportfolioservice/controllers/ddportfolio.py:66
#: debianmemberportfolio/controllers/portfolio.py:66
msgid "buildd.d.o"
msgstr "buildd.d.o"
#: ddportfolioservice/controllers/ddportfolio.py:67
#: debianmemberportfolio/controllers/portfolio.py:67
msgid "igloo"
msgstr "Igloo"
#: ddportfolioservice/controllers/ddportfolio.py:70
#: debianmemberportfolio/controllers/portfolio.py:70
msgid "Quality Assurance"
msgstr "Qualitätssicherung"
#: ddportfolioservice/controllers/ddportfolio.py:71
#: debianmemberportfolio/controllers/portfolio.py:71
msgid "maintainer dashboard"
msgstr "Maintainer Dashboard"
#: ddportfolioservice/controllers/ddportfolio.py:72
#: debianmemberportfolio/controllers/portfolio.py:72
msgid "lintian reports"
msgstr "Lintian-Berichte"
#: ddportfolioservice/controllers/ddportfolio.py:73
#: debianmemberportfolio/controllers/portfolio.py:73
msgid "full lintian reports (i.e. including \"info\"-level messages)"
msgstr ""
"vollständige Lintian-Berichte (d.h. inklusive Meldungen der Stufe \"info\")"
"vollständige Lintian-Berichte (d.h. inklusive Meldungen der Stufe "
"\"info\")"
#: ddportfolioservice/controllers/ddportfolio.py:75
#: debianmemberportfolio/controllers/portfolio.py:75
msgid "piuparts"
msgstr "piuparts"
#: ddportfolioservice/controllers/ddportfolio.py:76
#: debianmemberportfolio/controllers/portfolio.py:76
msgid "Debian patch tracking system"
msgstr "Debian Nachverfolgungssystem für Patches"
#: ddportfolioservice/controllers/ddportfolio.py:77
#: debianmemberportfolio/controllers/portfolio.py:77
msgid "Debian Url ChecKer"
msgstr "Debian URL-Prüfer"
#: ddportfolioservice/controllers/ddportfolio.py:80
#: debianmemberportfolio/controllers/portfolio.py:80
msgid "Mailing Lists"
msgstr "Mailinglisten"
#: ddportfolioservice/controllers/ddportfolio.py:81
#: debianmemberportfolio/controllers/portfolio.py:81
msgid "lists.d.o"
msgstr "lists.d.o"
#: ddportfolioservice/controllers/ddportfolio.py:82
#: debianmemberportfolio/controllers/portfolio.py:82
msgid "lists.a.d.o"
msgstr "lists.a.d.o"
#: ddportfolioservice/controllers/ddportfolio.py:83
#: debianmemberportfolio/controllers/portfolio.py:83
msgid "gmane"
msgstr "Gmane"
#: ddportfolioservice/controllers/ddportfolio.py:86
#: debianmemberportfolio/controllers/portfolio.py:86
msgid "Files"
msgstr "Dateien"
#: ddportfolioservice/controllers/ddportfolio.py:87
#: debianmemberportfolio/controllers/portfolio.py:87
msgid "people.d.o"
msgstr "people.d.o"
#: ddportfolioservice/controllers/ddportfolio.py:88
#: debianmemberportfolio/controllers/portfolio.py:88
msgid "oldpeople"
msgstr "oldpeople"
#: ddportfolioservice/controllers/ddportfolio.py:89
#: ddportfolioservice/controllers/ddportfolio.py:97
#: debianmemberportfolio/controllers/portfolio.py:89
#: debianmemberportfolio/controllers/portfolio.py:97
msgid "Alioth"
msgstr "Alioth"
#: ddportfolioservice/controllers/ddportfolio.py:92
#: debianmemberportfolio/controllers/portfolio.py:92
msgid "Membership"
msgstr "Mitgliedschaft"
#: ddportfolioservice/controllers/ddportfolio.py:93
#: debianmemberportfolio/controllers/portfolio.py:93
msgid "NM"
msgstr "NM"
#: ddportfolioservice/controllers/ddportfolio.py:94
#: debianmemberportfolio/controllers/portfolio.py:94
msgid "DB information via finger"
msgstr "DB-Informationen per finger"
#: ddportfolioservice/controllers/ddportfolio.py:95
#: debianmemberportfolio/controllers/portfolio.py:95
msgid "DB information via HTTP"
msgstr "DB-Informationen per HTTP"
#: ddportfolioservice/controllers/ddportfolio.py:96
#: debianmemberportfolio/controllers/portfolio.py:96
msgid "FOAF profile"
msgstr "FOAF-Profil"
#: ddportfolioservice/controllers/ddportfolio.py:98
#: debianmemberportfolio/controllers/portfolio.py:98
msgid "Wiki"
msgstr "Wiki"
#: ddportfolioservice/controllers/ddportfolio.py:99
#: debianmemberportfolio/controllers/portfolio.py:99
msgid "Forum"
msgstr "Forum"
#: ddportfolioservice/controllers/ddportfolio.py:102
#: debianmemberportfolio/controllers/portfolio.py:102
msgid "Miscellaneous"
msgstr "Sonstiges"
#: ddportfolioservice/controllers/ddportfolio.py:103
#: debianmemberportfolio/controllers/portfolio.py:103
msgid "debtags"
msgstr "debtags"
#: ddportfolioservice/controllers/ddportfolio.py:104
#: debianmemberportfolio/controllers/portfolio.py:104
msgid "Planet Debian (name)"
msgstr "Planet Debian (Name)"
#: ddportfolioservice/controllers/ddportfolio.py:105
#| msgid "Debian user name"
#: debianmemberportfolio/controllers/portfolio.py:105
msgid "Planet Debian (username)"
msgstr "Planet Debian (Benutzername)"
#: ddportfolioservice/controllers/ddportfolio.py:106
#: debianmemberportfolio/controllers/portfolio.py:106
msgid "links"
msgstr "Links"
#: ddportfolioservice/controllers/ddportfolio.py:107
#: debianmemberportfolio/controllers/portfolio.py:107
msgid "Debian website"
msgstr "Debian Webseite"
#: ddportfolioservice/controllers/ddportfolio.py:108
#: debianmemberportfolio/controllers/portfolio.py:108
msgid "Debian search"
msgstr "Debian-Suche"
#: ddportfolioservice/controllers/ddportfolio.py:109
#: debianmemberportfolio/controllers/portfolio.py:109
msgid "GPG public key via finger"
msgstr "öffentlicher GPG-Schlüssel per finger"
#: ddportfolioservice/controllers/ddportfolio.py:110
#: debianmemberportfolio/controllers/portfolio.py:110
msgid "GPG public key via HTTP"
msgstr "öffentlicher GPG-Schlüssel per HTTP"
#: ddportfolioservice/controllers/ddportfolio.py:111
#: debianmemberportfolio/controllers/portfolio.py:111
msgid "NM, AM participation"
msgstr "NM-, AM-Mitwirkung"
#: ddportfolioservice/controllers/ddportfolio.py:112
#| msgid "Enter your personal information"
#: debianmemberportfolio/controllers/portfolio.py:112
msgid "Contribution information"
msgstr "Debian Contributor-Informationen"
#: ddportfolioservice/controllers/ddportfolio.py:115
#: debianmemberportfolio/controllers/portfolio.py:115
msgid "Information reachable via ssh (for Debian Members)"
msgstr "Per ssh erreichbare Informationen (für Debian Mitglieder)"
#: ddportfolioservice/controllers/ddportfolio.py:116
#: debianmemberportfolio/controllers/portfolio.py:116
msgid "owned debian.net domains"
msgstr "Besitz von debian.net-Domains"
#: ddportfolioservice/controllers/ddportfolio.py:117
#: debianmemberportfolio/controllers/portfolio.py:117
msgid ""
"<a href=\"http://wiki.debian.org/qa.debian.org/MIATeam\">MIA</a> database "
"information"
"<a href=\"http://wiki.debian.org/qa.debian.org/MIATeam\">MIA</a> database"
" information"
msgstr ""
"Informationen in der <a href=\"http://wiki.debian.org/qa.debian.org/MIATeam"
"\">MIA</a>-Datenbank"
"Informationen in der <a "
"href=\"http://wiki.debian.org/qa.debian.org/MIATeam\">MIA</a>-Datenbank"
#: ddportfolioservice/controllers/ddportfolio.py:119
#: debianmemberportfolio/controllers/portfolio.py:119
msgid "Group membership information"
msgstr "Information über Gruppenmitgliedschaften"
#: ddportfolioservice/controllers/ddportfolio.py:122
#: debianmemberportfolio/controllers/portfolio.py:122
msgid "Ubuntu"
msgstr "Ubuntu"
#: ddportfolioservice/controllers/ddportfolio.py:123
#: debianmemberportfolio/controllers/portfolio.py:123
msgid "Available patches from Ubuntu"
msgstr "Verfügbare Patches aus Ubuntu"
#: ddportfolioservice/model/urlbuilder.py:40
#: debianmemberportfolio/model/urlbuilder.py:40
msgid "Email address"
msgstr "E-Mailadresse"
#: ddportfolioservice/model/urlbuilder.py:41
#: debianmemberportfolio/model/urlbuilder.py:41
msgid "Name"
msgstr "Name"
#: ddportfolioservice/model/urlbuilder.py:42
#: debianmemberportfolio/model/urlbuilder.py:42
msgid "GPG fingerprint"
msgstr "GPG-Fingerabdruck"
#: ddportfolioservice/model/urlbuilder.py:43
#: debianmemberportfolio/model/urlbuilder.py:43
msgid "Debian user name"
msgstr "Debian-Benutzername"
#: ddportfolioservice/model/urlbuilder.py:44
#: debianmemberportfolio/model/urlbuilder.py:44
msgid "Non Debian email address"
msgstr "Nicht-Debian-E-Mailadresse"
#: ddportfolioservice/model/urlbuilder.py:45
#: debianmemberportfolio/model/urlbuilder.py:45
msgid "Alioth user name"
msgstr "Alioth-Benutzername"
#: ddportfolioservice/model/urlbuilder.py:97
#: ddportfolioservice/model/urlbuilder.py:101
#: debianmemberportfolio/model/urlbuilder.py:97
#: debianmemberportfolio/model/urlbuilder.py:101
#, python-format
msgid "Missing input: %s"
msgstr "Fehlende Eingabe: %s"
#: ddportfolioservice/templates/base.mako:25
#: ddportfolioservice/templates/base.mako:33
#: debianmemberportfolio/templates/base.mako:25
#: debianmemberportfolio/templates/base.mako:33
msgid "Debian Member Portfolio Service"
msgstr "Debian-Mitglieder-Portfolioservice"
#: ddportfolioservice/templates/base.mako:31
#: debianmemberportfolio/templates/base.mako:31
msgid "Debian Logo"
msgstr "Debian-Logo"
#: ddportfolioservice/templates/base.mako:34
#: debianmemberportfolio/templates/base.mako:34
msgid ""
"This service has been inspired by Stefano Zacchiroli's <a href=\"http://wiki."
"debian.org/DDPortfolio\">DDPortfolio page in the Debian Wiki</a>. You can "
"create a set of customized links leading to a Debian Member's or package "
"maintainer's information regarding Debian."
"This service has been inspired by Stefano Zacchiroli's <a "
"href=\"http://wiki.debian.org/DDPortfolio\">DDPortfolio page in the "
"Debian Wiki</a>. You can create a set of customized links leading to a "
"Debian Member's or package maintainer's information regarding Debian."
msgstr ""
"Dieser Dienst wurde durch Stefano Zacchirolis <a href=\"http://wiki.debian."
"org/DDPortfolio\">DDPortfolio-Seite im Debian Wiki</a> inspiriert. Mit dem "
"Dienst können personalisierte Links zu Informationen im Bezug auf Debian für "
"Debian-Mitglieder und Paketbetreuer erzeugt werden."
"Dieser Dienst wurde durch Stefano Zacchirolis <a "
"href=\"http://wiki.debian.org/DDPortfolio\">DDPortfolio-Seite im Debian "
"Wiki</a> inspiriert. Mit dem Dienst können personalisierte Links zu "
"Informationen im Bezug auf Debian für Debian-Mitglieder und Paketbetreuer"
" erzeugt werden."
#: ddportfolioservice/templates/base.mako:41
#: debianmemberportfolio/templates/base.mako:41
msgid "AGPL - Free Software"
msgstr "AGPL - Freie Software"
#: ddportfolioservice/templates/base.mako:43
#: debianmemberportfolio/templates/base.mako:43
#, python-format
msgid ""
"The service is available under the terms of the <a href=\"http://www.gnu.org/"
"licenses/agpl.html\">GNU Affero General Public License</a> as published by "
"the Free Software Foundation, either version 3 of the License, or (at your "
"option) any later version. You can <a href=\"%(browseurl)s\" title=\"Gitweb "
"repository browser URL\">browse the source code</a> or clone it from <a href="
"\"%(cloneurl)s\" title=\"git clone URL\">%(cloneurl)s</a> using <a href="
"\"http://git-scm.com/\">git</a>. If you want to translate this service to "
"your language you can contribute at <a href=\"%(transifexurl)s\" title="
"\"Debian Member Portfolio Service at Transifex\">Transifex</a>."
"The service is available under the terms of the <a "
"href=\"http://www.gnu.org/licenses/agpl.html\">GNU Affero General Public "
"License</a> as published by the Free Software Foundation, either version "
"3 of the License, or (at your option) any later version. You can <a "
"href=\"%(browseurl)s\" title=\"Gitweb repository browser URL\">browse the"
" source code</a> or clone it from <a href=\"%(cloneurl)s\" title=\"git "
"clone URL\">%(cloneurl)s</a> using <a href=\"http://git-"
"scm.com/\">git</a>. If you want to translate this service to your "
"language you can contribute at <a href=\"%(transifexurl)s\" "
"title=\"Debian Member Portfolio Service at Transifex\">Transifex</a>."
msgstr ""
"Dieser Dienst wird unter den Bedingungen der <a href=\"http://www.gnu.org/"
"licenses/agpl.html\">GNU Affero General Public License</a>, so wie sie von "
"der Free Software Foundation veröffentlicht ist, bereitgestellt. Sie können "
"entweder Version 3 oder (auf Ihren Wunsch hin) jede spätere Version der "
"Lizenz verwenden. Sie können sich <a href=\"%(browseurl)s\" title=\"Gitweb "
"Repository-Browser-URL\">den Quelltext ansehen</a> oder mit <a href=\"http://"
"git-scm.com\">git</a> von <a href=\"%(cloneurl)s\" title=\"Git Clone-URL\">"
"%(cloneurl)s</a> klonen. Wenn Sie diesen Service in Ihre Sprache übersetzen "
"möchten, können Sie auf <a href=\"%(transifexurl)s\" title=\"Debian Member "
"Dieser Dienst wird unter den Bedingungen der <a "
"href=\"http://www.gnu.org/licenses/agpl.html\">GNU Affero General Public "
"License</a>, so wie sie von der Free Software Foundation veröffentlicht "
"ist, bereitgestellt. Sie können entweder Version 3 oder (auf Ihren Wunsch"
" hin) jede spätere Version der Lizenz verwenden. Sie können sich <a "
"href=\"%(browseurl)s\" title=\"Gitweb Repository-Browser-URL\">den "
"Quelltext ansehen</a> oder mit <a href=\"http://git-scm.com\">git</a> von"
" <a href=\"%(cloneurl)s\" title=\"Git Clone-URL\">%(cloneurl)s</a> "
"klonen. Wenn Sie diesen Service in Ihre Sprache übersetzen möchten, "
"können Sie auf <a href=\"%(transifexurl)s\" title=\"Debian Member "
"Portfolio Service bei Transifex\">Transifex</a> dazu beitragen."
#: ddportfolioservice/templates/base.mako:44
#| msgid "Copyright © 2009, 2010, 2011, 2012 Jan Dittberner"
#: debianmemberportfolio/templates/base.mako:44
msgid "Copyright © 2009-2014 Jan Dittberner"
msgstr "Copyright © 2009-2014 Jan Dittberner"
#: ddportfolioservice/templates/showform.mako:24
#: debianmemberportfolio/templates/showform.mako:24
msgid "Enter your personal information"
msgstr "Eingabe der persönlichen Informationen"
#: ddportfolioservice/templates/showform.mako:30
#: ddportfolioservice/templates/showurls.mako:28
#: debianmemberportfolio/templates/showform.mako:30
#: debianmemberportfolio/templates/showurls.mako:27
msgid "Debian Member Portfolio"
msgstr "Debian-Mitgliederportfolio"
#: ddportfolioservice/templates/showform.mako:36
#: debianmemberportfolio/templates/showform.mako:36
msgid "Email address:"
msgstr "E-Mailadresse:"
#: ddportfolioservice/templates/showform.mako:47
#: debianmemberportfolio/templates/showform.mako:47
msgid "Show all form fields"
msgstr "Alle Formularfelder anzeigen"
#: ddportfolioservice/templates/showform.mako:54
#: debianmemberportfolio/templates/showform.mako:54
msgid "Name:"
msgstr "Name:"
#: ddportfolioservice/templates/showform.mako:64
#: debianmemberportfolio/templates/showform.mako:64
msgid "GPG fingerprint:"
msgstr "GPG-Fingerabdruck:"
#: ddportfolioservice/templates/showform.mako:79
#: debianmemberportfolio/templates/showform.mako:79
msgid "Debian user name:"
msgstr "Debian-Benutzername:"
#: ddportfolioservice/templates/showform.mako:94
#: debianmemberportfolio/templates/showform.mako:94
msgid "Non Debian email address:"
msgstr "Nicht-Debian-E-Mailadresse"
#: ddportfolioservice/templates/showform.mako:109
#: debianmemberportfolio/templates/showform.mako:109
msgid "Alioth user name:"
msgstr "Alioth-Benutzername:"
#: ddportfolioservice/templates/showform.mako:125
#: debianmemberportfolio/templates/showform.mako:125
msgid "Wiki user name:"
msgstr "Wiki-Benutzername:"
#: ddportfolioservice/templates/showform.mako:140
#: debianmemberportfolio/templates/showform.mako:140
msgid "Forum user id:"
msgstr "Forumsbenutzernummer:"
#: ddportfolioservice/templates/showform.mako:151
#: debianmemberportfolio/templates/showform.mako:151
msgid "Output format:"
msgstr "Ausgabeformat:"
#: ddportfolioservice/templates/showform.mako:157
#: debianmemberportfolio/templates/showform.mako:157
msgid "HTML"
msgstr "HTML"
#: ddportfolioservice/templates/showform.mako:159
#: debianmemberportfolio/templates/showform.mako:159
msgid "JSON"
msgstr "JSON"
#: ddportfolioservice/templates/showform.mako:161
#: debianmemberportfolio/templates/showform.mako:161
msgid "Build Debian Member Portfolio URLs"
msgstr "Debian-Mitgliedsportfolio-URLs bauen"
#: ddportfolioservice/templates/showurls.mako:24
#: debianmemberportfolio/templates/showurls.mako:23
msgid "Your personal links"
msgstr "Ihre personalisierten Links"
#: ddportfolioservice/templates/showurls.mako:31
#: debianmemberportfolio/templates/showurls.mako:30
msgid "Usage"
msgstr "Verwendung"
#: ddportfolioservice/templates/showurls.mako:31
#: debianmemberportfolio/templates/showurls.mako:30
msgid "URL"
msgstr "URL"
#: ddportfolioservice/templates/showurls.mako:41
#: debianmemberportfolio/templates/showurls.mako:40
msgid "Error during URL creation:"
msgstr "Fehler bei der URL-Erzeugung:"
#: ddportfolioservice/templates/showurls.mako:68
#: debianmemberportfolio/templates/showurls.mako:67
msgid "Restart"
msgstr "Neu beginnen"

@ -1,283 +1,283 @@
# Translations template for ddportfolioservice.
# Translations template for debianmemberportfolio.
# Copyright (C) 2014 ORGANIZATION
# This file is distributed under the same license as the ddportfolioservice
# This file is distributed under the same license as the debianmemberportfolio
# project.
# FIRST AUTHOR <EMAIL@ADDRESS>, 2014.
#
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: ddportfolioservice 0.2.20\n"
"Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
"POT-Creation-Date: 2014-01-11 00:25+0000\n"
"Project-Id-Version: debianmemberportfolio 0.3.1\n"
"Report-Msgid-Bugs-To: jan@dittberner.info\n"
"POT-Creation-Date: 2014-02-08 18:14+0100\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=utf-8\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Generated-By: Babel 0.9.6\n"
#: ddportfolioservice/controllers/ddportfolio.py:45
#: debianmemberportfolio/controllers/portfolio.py:45
msgid "Overview"
msgstr ""
#: ddportfolioservice/controllers/ddportfolio.py:46
#: debianmemberportfolio/controllers/portfolio.py:46
msgid "Debian Member's Package Overview"
msgstr ""
#: ddportfolioservice/controllers/ddportfolio.py:47
#: debianmemberportfolio/controllers/portfolio.py:47
msgid ""
"Debian Member's Package Overview\n"
"... showing all email addresses"
msgstr ""
#: ddportfolioservice/controllers/ddportfolio.py:51
#: debianmemberportfolio/controllers/portfolio.py:51
msgid "Bugs"
msgstr ""
#: ddportfolioservice/controllers/ddportfolio.py:52
#: debianmemberportfolio/controllers/portfolio.py:52
msgid ""
"bugs received\n"
"(note: co-maintainers not listed, see <a href=\"http://bugs.debian.org/cgi-"
"bin/bugreport.cgi?bug=430986\">#430986</a>)"
msgstr ""
#: ddportfolioservice/controllers/ddportfolio.py:56
#: debianmemberportfolio/controllers/portfolio.py:56
msgid "bugs reported"
msgstr ""
#: ddportfolioservice/controllers/ddportfolio.py:57
#: debianmemberportfolio/controllers/portfolio.py:57
msgid "user tags"
msgstr ""
#: ddportfolioservice/controllers/ddportfolio.py:58
#: debianmemberportfolio/controllers/portfolio.py:58
msgid "all messages (i.e., full text search for developer name on all bug logs)"
msgstr ""
#: ddportfolioservice/controllers/ddportfolio.py:60
#: debianmemberportfolio/controllers/portfolio.py:60
msgid "<a href=\"http://wiki.debian.org/WNPP\">WNPP</a>"
msgstr ""
#: ddportfolioservice/controllers/ddportfolio.py:61
#: debianmemberportfolio/controllers/portfolio.py:61
msgid "correspondent for bugs"
msgstr ""
#: ddportfolioservice/controllers/ddportfolio.py:62
#: debianmemberportfolio/controllers/portfolio.py:62
msgid "one year open bug history graph"
msgstr ""
#: ddportfolioservice/controllers/ddportfolio.py:65
#: debianmemberportfolio/controllers/portfolio.py:65
msgid "Build"
msgstr ""
#: ddportfolioservice/controllers/ddportfolio.py:66
#: debianmemberportfolio/controllers/portfolio.py:66
msgid "buildd.d.o"
msgstr ""
#: ddportfolioservice/controllers/ddportfolio.py:67
#: debianmemberportfolio/controllers/portfolio.py:67
msgid "igloo"
msgstr ""
#: ddportfolioservice/controllers/ddportfolio.py:70
#: debianmemberportfolio/controllers/portfolio.py:70
msgid "Quality Assurance"
msgstr ""
#: ddportfolioservice/controllers/ddportfolio.py:71
#: debianmemberportfolio/controllers/portfolio.py:71
msgid "maintainer dashboard"
msgstr ""
#: ddportfolioservice/controllers/ddportfolio.py:72
#: debianmemberportfolio/controllers/portfolio.py:72
msgid "lintian reports"
msgstr ""
#: ddportfolioservice/controllers/ddportfolio.py:73
#: debianmemberportfolio/controllers/portfolio.py:73
msgid "full lintian reports (i.e. including \"info\"-level messages)"
msgstr ""
#: ddportfolioservice/controllers/ddportfolio.py:75
#: debianmemberportfolio/controllers/portfolio.py:75
msgid "piuparts"
msgstr ""
#: ddportfolioservice/controllers/ddportfolio.py:76
#: debianmemberportfolio/controllers/portfolio.py:76
msgid "Debian patch tracking system"
msgstr ""
#: ddportfolioservice/controllers/ddportfolio.py:77
#: debianmemberportfolio/controllers/portfolio.py:77
msgid "Debian Url ChecKer"
msgstr ""
#: ddportfolioservice/controllers/ddportfolio.py:80
#: debianmemberportfolio/controllers/portfolio.py:80
msgid "Mailing Lists"
msgstr ""
#: ddportfolioservice/controllers/ddportfolio.py:81
#: debianmemberportfolio/controllers/portfolio.py:81
msgid "lists.d.o"
msgstr ""
#: ddportfolioservice/controllers/ddportfolio.py:82
#: debianmemberportfolio/controllers/portfolio.py:82
msgid "lists.a.d.o"
msgstr ""
#: ddportfolioservice/controllers/ddportfolio.py:83
#: debianmemberportfolio/controllers/portfolio.py:83
msgid "gmane"
msgstr ""
#: ddportfolioservice/controllers/ddportfolio.py:86
#: debianmemberportfolio/controllers/portfolio.py:86
msgid "Files"
msgstr ""
#: ddportfolioservice/controllers/ddportfolio.py:87
#: debianmemberportfolio/controllers/portfolio.py:87
msgid "people.d.o"
msgstr ""
#: ddportfolioservice/controllers/ddportfolio.py:88
#: debianmemberportfolio/controllers/portfolio.py:88
msgid "oldpeople"
msgstr ""
#: ddportfolioservice/controllers/ddportfolio.py:89
#: ddportfolioservice/controllers/ddportfolio.py:97
#: debianmemberportfolio/controllers/portfolio.py:89
#: debianmemberportfolio/controllers/portfolio.py:97
msgid "Alioth"
msgstr ""
#: ddportfolioservice/controllers/ddportfolio.py:92
#: debianmemberportfolio/controllers/portfolio.py:92
msgid "Membership"
msgstr ""
#: ddportfolioservice/controllers/ddportfolio.py:93
#: debianmemberportfolio/controllers/portfolio.py:93
msgid "NM"
msgstr ""
#: ddportfolioservice/controllers/ddportfolio.py:94
#: debianmemberportfolio/controllers/portfolio.py:94
msgid "DB information via finger"
msgstr ""
#: ddportfolioservice/controllers/ddportfolio.py:95
#: debianmemberportfolio/controllers/portfolio.py:95
msgid "DB information via HTTP"
msgstr ""
#: ddportfolioservice/controllers/ddportfolio.py:96
#: debianmemberportfolio/controllers/portfolio.py:96
msgid "FOAF profile"
msgstr ""
#: ddportfolioservice/controllers/ddportfolio.py:98
#: debianmemberportfolio/controllers/portfolio.py:98
msgid "Wiki"
msgstr ""
#: ddportfolioservice/controllers/ddportfolio.py:99
#: debianmemberportfolio/controllers/portfolio.py:99
msgid "Forum"
msgstr ""
#: ddportfolioservice/controllers/ddportfolio.py:102
#: debianmemberportfolio/controllers/portfolio.py:102
msgid "Miscellaneous"
msgstr ""