1 {% extends "base.html" %}
4 {{ package.title or "Create Package" }}
5 {% if not package and author != current_user %}
6 for {{ author.display_name }}
11 <h1>Create Package</h1>
15 {% for m in mpackages %}
16 {# This is safe as name can only contain `[a-z0-9_]` #}
19 value: "{{ m.name }}",
20 toString: function() { return "{{ m.name }}"; },
25 function escape(unsafe) {
27 .replace(/&/g, "&")
28 .replace(/</g, "<")
29 .replace(/>/g, ">")
30 .replace(/"/g, """)
31 .replace(/'/g, "'");
34 all_packages = meta_packages.slice();
36 {% for p in packages %}
38 id: "{{ p.author.username }}/{{ p.name }}",
39 value: escape({{ p.title | tojson }} + " by " + {{ p.author.display_name | tojson }}),
40 toString: function() { return escape({{ p.title | tojson }} + " by " + {{ p.author.display_name | tojson }} + " only"); },
45 {% from "macros/forms.html" import render_field, render_submit_field, form_includes, render_multiselect_field, render_mpackage_field, render_deps_field %}
48 <form method="POST" action="" class="tableform">
49 {{ form.hidden_tag() }}
51 <h2 class="pkg_meta">Package</h2>
53 {{ render_field(form.type, class_="pkg_meta") }}
54 {{ render_field(form.name, class_="pkg_meta") }}
55 {{ render_field(form.title, class_="pkg_meta") }}
56 {{ render_field(form.shortDesc, class_="pkg_meta") }}
57 {{ render_field(form.desc, class_="pkg_meta") }}
58 {{ render_multiselect_field(form.tags, class_="pkg_meta") }}
59 {{ render_field(form.license, class_="pkg_meta") }}
60 {{ render_field(form.media_license, class_="pkg_meta") }}
62 <div class="pkg_meta">
63 <h2 class="not_txp">Dependency Info</h2>
65 {{ render_mpackage_field(form.provides_str, class_="not_txp", placeholder="Comma separated list") }}
66 {{ render_deps_field(form.harddep_str, class_="not_txp not_game", placeholder="Comma separated list") }}
67 {{ render_deps_field(form.softdep_str, class_="not_txp not_game", placeholder="Comma separated list") }}
70 <h2 class="pkg_meta">Repository and Links</h2>
72 <div class="pkg_wiz_1">
73 <p>Enter the repo URL for the package.
74 If it's hosted on Github then metadata will automatically be imported.</p>
76 <p>Leave blank if you don't have a repo.</p>
79 {{ render_field(form.repo, class_="pkg_repo") }}
81 <div class="pkg_wiz_1">
82 <a id="pkg_wiz_1_next" class="button button-primary">Next</a>
85 <div class="pkg_wiz_2">
89 {{ render_field(form.website, class_="pkg_meta") }}
90 {{ render_field(form.issueTracker, class_="pkg_meta") }}
91 {{ render_field(form.forums, class_="pkg_meta") }}
92 <div class="pkg_meta">{{ render_submit_field(form.submit) }}</div>
95 {% if enable_wizard %}
96 <script src="/static/url.min.js"></script>
97 <script src="/static/polltask.js"></script>
98 <script src="/static/package_create.js"></script>
100 <div class="box box_grey alert alert-warning">
101 <span class="icon_message"></span>
102 Javascript is needed to automatically import metadata from VCS.
106 <script src="/static/package_edit.js"></script>