diff --git a/src/djangopypi/djangopypi/forms.py b/src/djangopypi/djangopypi/forms.py index 2785531..8fa7857 100644 --- a/src/djangopypi/djangopypi/forms.py +++ b/src/djangopypi/djangopypi/forms.py @@ -28,41 +28,37 @@ metadata10licenses = ('Artistic', 'BSD', 'DFSG', 'GNU GPL', 'GNU LGPL', 'nosource', 'shareware', 'other') class Metadata10Form(forms.Form): - platform = forms.TextField(required=False, + platform = forms.CharField(required=False, widget=forms.Textarea(), help_text=_(u'A comma-separated list of platform ' 'specifications, summarizing the ' 'operating systems supported by the ' 'package.')) - summary = forms.CharField(max_length=255, - help_text=_(u'A one-line summary of what the ' + summary = forms.CharField(help_text=_(u'A one-line summary of what the ' 'package does.')) - description = forms.TextField(required=False, + description = forms.CharField(required=False, widget=forms.Textarea(), help_text=_(u'A longer description of the ' 'package that can run to several ' 'paragraphs. If this is in ' 'reStructuredText format, it will ' 'be rendered nicely on display.')) - keywords = forms.CharField(max_length=255, - help_text=_(u'A list of additional keywords to ' + keywords = forms.CharField(help_text=_(u'A list of additional keywords to ' 'be used to assist searching for the ' 'package in a larger catalog')) - home_page = forms.URLField(max_length=255, required=False, - verify_exists=True, + home_page = forms.URLField(required=False, verify_exists=True, help_text=_(u'A string containing the URL for ' 'the package\'s home page.')) - author = forms.TextField(required=False, + author = forms.CharField(required=False, widget=forms.Textarea(), help_text=_(u'A string containing at a minimum the ' 'author\'s name. Contact information ' 'can also be added, separating each ' 'line with newlines.')) - author_email = forms.CharField(max_length=255, - help_text=_(u'A string containing the ' + author_email = forms.CharField(help_text=_(u'A string containing the ' 'author\'s e-mail address. It ' 'can contain a name and e-mail ' 'address in the legal forms for ' @@ -76,24 +72,130 @@ class Metadata10Form(forms.Form): metadata10licenses)))) class Metadata11Form(Metadata10Form): - supported_platform = False - download_url = False - license = False - classifier = False - requires = False - provides = False - obsoletes = False + supported_platform = forms.CharField(required=False, widget=forms.Textarea(), + help_text=_(u'The OS and CPU for which ' + 'the binary package was ' + 'compiled.')) + + keywords = forms.CharField(required=False, + help_text=_(u'A list of additional keywords to ' + 'be used to assist searching for the ' + 'package in a larger catalog')) + + download_url = forms.URLField(required=False, verify_exists=True, + help_text=_(u'A string containing the URL for ' + 'the package\'s home page.')) + + license = forms.CharField(required=False, widget=forms.Textarea(), + help_text=_(u'Text indicating the license ' + 'covering the package where the ' + 'license is not a selection from the ' + '"License" Trove classifiers.')) + + classifier = forms.ModelMultipleChoiceField(required=False, + queryset=Classifier.objects.all(), + help_text=_(u'Trove classifiers')) + + requires = forms.CharField(required=False, widget=forms.Textarea(), + help_text=_(u'Each line contains a string ' + 'describing some other module or ' + 'package required by this package.')) + + provides = forms.CharField(required=False, widget=forms.Textarea(), + help_text=_(u'Each line contains a string ' + 'describing a package or module that ' + 'will be provided by this package ' + 'once it is installed')) + + obsoletes = forms.CharField(required=False, widget=forms.Textarea(), + help_text=_(u'Each line contains a string ' + 'describing a package or module that ' + 'this package renders obsolete, ' + 'meaning that the two packages ' + 'should not be installed at the ' + 'same time')) class Metadata12Form(Metadata10Form): - supported_platform = False - download_url = False - license = False - classifier = False - maintainer = False - maintainer_email = False - requires_dist = False - provides_dist = False - obsoletes_dist = False - requires_python = False - requires_external = False - project_url = False \ No newline at end of file + supported_platform = forms.CharField(required=False, widget=forms.Textarea(), + help_text=_(u'The OS and CPU for which ' + 'the binary package was ' + 'compiled.')) + + keywords = forms.CharField(required=False, + help_text=_(u'A list of additional keywords to ' + 'be used to assist searching for the ' + 'package in a larger catalog')) + + download_url = forms.URLField(required=False, + verify_exists=True, + help_text=_(u'A string containing the URL for ' + 'the package\'s home page.')) + + author_email = forms.CharField(required=False, + help_text=_(u'A string containing the ' + 'author\'s e-mail address. It ' + 'can contain a name and e-mail ' + 'address in the legal forms for ' + 'a RFC-822 \'From:\' header.')) + + maintainer = forms.CharField(required=False, widget=forms.Textarea(), + help_text=_(u'A string containing at a minimum ' + 'the maintainer\'s name. Contact ' + 'information can also be added, ' + 'separating each line with ' + 'newlines.')) + maintainer_email = forms.CharField(required=False, + help_text=_(u'A string containing the ' + 'maintainer\'s e-mail address. ' + 'It can contain a name and ' + 'e-mail address in the legal ' + 'forms for a RFC-822 ' + '\'From:\' header.')) + + license = forms.CharField(required=False, widget=forms.Textarea(), + help_text=_(u'Text indicating the license ' + 'covering the package where the ' + 'license is not a selection from the ' + '"License" Trove classifiers.')) + + classifier = forms.ModelMultipleChoiceField(required=False, + queryset=Classifier.objects.all(), + help_text=_(u'Trove classifiers')) + + requires_dist = forms.CharField(required=False, widget=forms.Textarea(), + help_text=_(u'Each line contains a string ' + 'describing some other module or ' + 'package required by this package.')) + + provides_dist = forms.CharField(required=False, widget=forms.Textarea(), + help_text=_(u'Each line contains a string ' + 'describing a package or module that ' + 'will be provided by this package ' + 'once it is installed')) + + obsoletes_dist = forms.CharField(required=False, widget=forms.Textarea(), + help_text=_(u'Each line contains a string ' + 'describing a package or module that ' + 'this package renders obsolete, ' + 'meaning that the two packages ' + 'should not be installed at the ' + 'same time')) + + requires_python = forms.CharField(max_length=255, required=False, + help_text=_(u'This field specifies the ' + 'Python version(s) that the ' + 'distribution is guaranteed ' + 'to be compatible with.')) + + requires_external = forms.CharField(required=False, widget=forms.Textarea(), + help_text=_(u'Each line contains a ' + 'string describing some ' + 'dependency in the system ' + 'that the distribution is ' + 'to be used.')) + project_url = forms.CharField(required=False, widget=forms.Textarea(), + help_text=_(u'Each line is a string containing ' + 'a browsable URL for the project ' + 'and a label for it, separated ' + 'by a comma: "Bug Tracker, ' + 'http://bugs.project.com"'))