Repository for com_jed4 - Joomla! Extensions Directory
Specifications Document: https://drive.google.com/file/d/1G4M-5jAABBIUEq3gLE9W6WxMcgZxVJYx/view?usp=sharing
Repository for com_jed4 - Joomla! Extensions Directory
Repository for com_jed4 - Joomla! Extensions Directory
Specifications Document: https://drive.google.com/file/d/1G4M-5jAABBIUEq3gLE9W6WxMcgZxVJYx/view?usp=sharing
Create a view to display a single extension. Logic by @roland-d, front-ending by @robinpoort
URL /extensions/extension-name
Extension:
Reviews:
Tickets:
Users:
Reviews can be left for any distribution type (free, paid, cloud service) providing that the type in question is listed.
User Restrictions:
Review Publishing:
Display of submitted ticket:
A form to add internal notes to the ticket - only visible on the back-end to JED team.
A form to reply to the ticket with a message. Default status of reply is Awaiting User. Other states as detailed below can be selected.
A form to link the ticket to a specific extension. If the ticket is linked to an extension, the ticket should show in the Notes section of the extension.
Ticket Status:
If a ticket has been marked as Resolved, an email is sent to the submitter informing them of this. If they do not make any further replies to the ticket, or do not close it themselves, the system will then automatically close the ticket after 7 days.
Tickets can be assigned to a specific sub-team: Listing, Reviews, Leadership etc. If a ticket is assigned to a usergroup, it does not prevent Leadership replying to the ticket. Assigning a ticket does not change the state.
Closed tickets cannot be replied to or re-opened.
The category of a ticket can be changed by JED Team so that the correct usergroup can process it.
When submitting a reply to a ticket, the JED Member should select the new status of the ticket: Resolved, Awaiting JED or Awaiting User. The default status is Awaiting User. A ticket can be marked as Resolved at any point.
An email is sent to the submitter for all changes in state of their tickets.
Each day the URLs (download, documentation, support, demo, license, project) of every extension should be checked to see if they still work. If they don’t work, an email should go out to the user to get it working again. After 24 hour grace period, the listing will be unpublished (with a new email sent to the developer). After the user updates the listing (or during the regular daily check) and the URLs work again, the listing should be republished (with a new email to sent to the developer).
On top of the jed4_jed_extensions
DB table
@JazParkyn can you please list the columns wanted for the list view in the backend?
====
From the JED 4 specs document:
Columns for list view table:
Filters - saved into the session:
All columns are orderable, and ordering is saved into the session. Pagination should not use AJAX.
Default ordering:
Most recent first
Plugin to be created in private repo.
To include:
All boxes have a quick search field and a link to the relevant area.
$query->select('*');
with a query to select only the columns needed for the view.extensions
instead of t
for the select (don't forget the getSortFields
)default_body
, default_foot
, default_head
into default.php
Needs further discussion and cannot be completed until new component structure has progressed further.
Users, listings and reviews from the current JED need site need to be migrated to the new JED site. Including connections between IDs.
A migration script needs to be developed when the new database structure is in place.
ucm_content data needs to be migrated to com_jed_* tables.
Related joomla/jed#28
List of all email templates and to manage them
Need to decide if the number of categories can be reduced and re-organised so that they become more useful, usable and meaningful for users.
As soon as a listing is open, it must be “checked in” so another user cannot overwrite data. JED Administrators should be able to open the listings, but not save any changes unless they check in.
#__categories
, so we need relation table)Columns:
Filters - saved in session:
All columns are orderable, and ordering is saved into the session. Pagination should not use AJAX.
Default ordering:
We need a proper solution for the filter form fields. A simple select won't work with so many users. So most likely an AJAX-based solution would work.
ATTENTION: If you have a question or you need to contact the JED Team about an Extension, please, contact us via the JED Ticketing System: https://extensions.joomla.org/profile/
Describe the bug
This is a Feature request not a bug!!!
Devs like me that don't release extensions for profit have to do a lot of work on the JED UI, but with a simple JSON feed from a static/dynamic site, this could be also automated. In short, I'm asking for something that will eventually simplify many devs workflow.
To Reproduce
Steps to reproduce the behavior:
Expected behavior
A clear and concise description of what you expected to happen.
Screenshots
If applicable, add screenshots to help explain your problem.
Desktop (please complete the following information):
Smartphone (please complete the following information):
Additional context
Add any other context about the problem here.
On the extension edit view we have 2 modal buttons:
These buttons get different classes based on their status. This used to work on Joomla 3 but in Joomla 4, all button CSS are overruled and backgrounds are made white. The real color only shows on hover however we want to show this immediately.
Have a look at these 2 toolbar button overrides:
https://github.com/joomla/com_jed4/tree/9f355541411dc22914e063057fad0008bd3a8b97/public_html/administrator/components/com_jed/layouts/joomla/toolbar
We need to create our own CSS to show the colors on the buttons.
A cronjob will run to process ‘Pending and Published’ extensions through the JED Checker. If the extension passes the JED Checker, it will:
A developer will become a Trusted Developer if they have 5 extensions that have passed the JED Checker without issues on the first run, or if they have been marked as Trusted by a JED Member.
If the extension does not pass the JED Checker, the system will update the Awaiting Response Codes accordingly. An automated email should be sent to inform the developer of the detected issues. This email should be visible in the Email / Notes tab in the Extension Detail view.
The JED Checker should be run each time that a developer uploads a new zip file. If an extension has never been marked as Approved and Published, uploading a new zip file will set the status back to Pending and Published.
All changes in states should always be communicated to the extension’s owner.
The XML will be queried once a day by the JED (and when a listings edit page has been saved). It will update certain editable fields for the listing. The editable fields which can be updated via the XML are:
The XML will only be checked and will only update the listing after the listing has been approved and published.
The updater will also need to check the fields for valid values before updating the listing information. If the values (including the descriptions) fail for some reason, the listing will not be updated. This will trigger an alert in the listing edit form that notifies the user that there is an issue with the XML file (and what the issue is).
There has to be the ability to block this feature on the listing and user levels.
JED Users fit into one of the following groups.
The permissions for each area of JED are detailed throughout the specifications document.
Design the "see all reviews" for extension page
On the Downloads tab when editing an extension, the alternative download dropdowns should only show the extensions by that developer of the given type.
Provide a ‘Request Merge’ option for extension developers. Form to require a new name and description to be used the merged extension, instead of combining descriptions from the free and paid versions. Request to be reviewed and actioned by Listing Specialist or Team Management.
This needs to be defined in a lot more detail - suggest that it is discussed when the views have progressed further. The SEO team will also need to be consulted on how best to handle the URL redirections.
Feedback:
Example case to improve the script: PWT Extensions
The main change from the current system is that a free, paid and cloud service distribution types of the same extension will be submitted, managed and viewed on the same page.
Add extension view to only allow users to add one of each distribution type (free, paid, cloud service) for each extension.
#__jed_extension - contains the information shared between the distribution types
#__jed_extension_detail - contains the information about the specific distribution type
A user must select at least one distribution type, and cannot have more than one of each type.
A file upload will be required for each type selected, and will eventually be run against the JED Checker
The component should check the user’s account for any pending issues. The component should prevent submissions if:
Submission checks:
Please see the spec document for further clarification on this process - see: Front-End Submission Process
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.
The possibility of auto populating some fields using data from the extension’s XML install file should be reviewed.
To make Joomla more interesting for companies a category especially for companies and company solutions would be important and helpful.
In addition to the »technical categories« such as modules, plugins, components and custom fields it is recommended to include the very powerful template overrides. There are no installers available yet, but this may come for the corresponding standard template and would be desirable.
Add at least 6 extensions into the new database for testing purposes during the development.
In a discussion I talked about quality indicators for extensions. The background wasn't so much to force developers to adopt something, but to give users an idea about the core integration and which core features the extension supports. The following information could be collected from an extension with the options "Yes", "No" and "Does not apply" and could then be displayed with badges in the listing:
The order of the list does not represent a priority of the individual items.
Users have the ability to view their own tickets, add new tickets, and reply to existing tickets.
If a user is submitting a ticket in the Report Extension, New Listing Support, Current Listing Support, and Unpublished Support categories, they must be forced to select the extension.
If a user is submitting a ticket in the Report Review Category, they must be forced to select the extension and the review.
If a user is submitting a ticket in the Site Technical Category, a message should be shown to them asking if they have checked our Issue Tracker on Github for their issue. This will help to avoid duplication and save time.
A user can add a new reply to a ticket at any point throughout the tickets lifetime, except if its status is Closed. A new reply will change the tickets status and email notifications accordingly.
We will extend the Joomla core user edit view with new tabs (create a plugin for this).
A log showing all of the user’s actions
- Filters:
Let's use the Joomla core action log for that, list the last 25 events from a user in the tab, and a "more" button to the view administrator/index.php?option=com_actionlogs
with active filter on the user.
Reviews to be filterable by free / paid / cloud service.
Overall score to be calculated from both all distribution types. Score also available for distribution types separately.
The listings will receive a final score that will be calculated by an algorithm and based on a number of aspects. The result is displayed to the nearest half-star on the five star scale.
This issue is to get a number to create a new branch so they can link together!
Then the code that's posted and be reviewed and hopefully made into a pull request for the main branch.
Need to setup CI from this repo to jed4.stage.extensions.joomla.org
A database file will need to be provided from jed4.stage.extensions.joomla.org so that developers will have an anonymised data set to work with.
Create the list view for extensions in the frontend. Logic will be done by @roland-d, front-ending by @robinpoort
Content and extensions outside of com_jed needs to be imported into jed4.stage.extensions.joomla.org
Each to be reviewed as to whether or not it is still required.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.