Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Frontend - Extension Submit / Edit / View #15

Open
mfleeson opened this issue Sep 13, 2023 · 0 comments
Open

Frontend - Extension Submit / Edit / View #15

mfleeson opened this issue Sep 13, 2023 · 0 comments

Comments

@mfleeson
Copy link
Contributor

mfleeson commented Sep 13, 2023

From the technical specification.
Extension Submission
Functionality
Registered users can add / edit their own extensions. The extension submission form should be easily customisable so that new fields can be added in the future. The submission process should be as automated as possible.
1. The component should check the user’s account for any pending issues. The component should prevent submissions if:
the user has 3 pending submissions.
the user has a suspended account.
the user has any unpublished listings for any reason other than UR5 (per developer request).
2. Submission form fields - (*) indicates a required field:
Name *
Free and Paid checkboxes
Extension Type (multi-select)
Component - Mini-application to render the main page body
Module - Renders small html blocks on any page
Plugin - Changes code behavior dynamically
Extension Specific Add-on - a Specific add-on that requires another extension to operate
3. The form needs to run the JED Checker automatically for all files uploaded.
Different automatic tests based on extension type selection.
Items to test:
All tests currently present + Match Listing Name + Reserved Words + Joomla
Check to see if the alias for the extension already exists
If it passes, continue.
If it doesn’t pass, display issues from checker to user.
If it doesn’t pass, the user has the option (via checkbox) to bypass the check and describe why the submission is valid. In this scenario, the submission will be placed in a manual review queue.
4. Remaining fields:
Descriptions
Descriptions should support simple BBCode or Markdown for only: bold, italic, underlined, and lists
Include a main Description field (text area) in English
The developer should also be able to add extra descriptions in other languages. They would need to fill in 2 fields: Language Name (select from list) and a Description (text area).
Parent Extension (Required for Extension Specific Add-ons)
Project Homepage
Download URL
Demo URL
Documentation URL
Support Forum URL
License URL (Required when “Paid” is selected - see below)
Service Type: standalone or hosted
Support: not included or included. (Note: Reviews: support question to only be shown if support is included.)
Require Registration to Download (checkbox) (Automatically checked if “Paid” is selected)
Supported Joomla Versions (checkbox) - ability to add future Joomla versions.
Joomla! 3.x
Joomla! 4.x - JED Checker can be adapted to check this.
PHP Compatibility - ability to add
PHP versions (5.6, 7.0, 7.1 etc)
Uses Joomla Updater? (checkbox) - mandatory. (There’s no choice anymore)
Version (text field)
Category (only second level categories can be selected)
Tags (10 max)
Logo (1 max)
Video (youtube/vimeo) (URL Only) (max 1)
Image (10 max) (upload with auto resize)
Note to JED (text area)
JED XML URL
Subscribe to mailing list concerning your submission
The actual Update XML + for a paid extension a code that allows free downloads (that should allow a opt-in to the security review - badge
The possibility of auto populating some fields using data from the extension’s XML install file should be reviewed. The user would need to provide the XML file for this.
When the extension submission is approved, the user who created the listing should be able to unpublish their own listing (with an automatic reason: UR5-Per Developer Request). The user should also be able to update listing information. The user should also have the ability to open a ticket for their own listing in this area.
If someone changes the distribution model (free to paid and vice-versa), reviews are automatically deleted. The listing owner should receive a warning that their reviews will be wiped out, before saving the listing.
An extension name (ex: plg_system_example) must be unique and bound to the developer account, no one other than this developer is allowed to publish (and sign) packages with that extension name. An extension name should be prevented from including any words that are not permitted as below. The form should not allow submission if any are present. The ability to remove the restriction for a user for one-time use.
Joomla (only permitted in the form “{Extension Name} for Joomla”)
Component
Module
Plugin
Extension
Free
Language strings
Version numbers
Offensive words
A title that is more like a description than a title (length or number of words)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant