joomla-extensions/patchtester 47
Patch testing extension for the Joomla! CMS
joomla/volunteers.joomla.org 18
Extension for the volunteers portal
backend template for Joomla 4 working area
A Joomla! plugin to send mails via the SparkPost API
Home of the Joomla! Content Management System
Place for polyfills of all species
A system plugin requiring a backend token to login
Joomla Coding Standards Definition
pull request commentjoomla-projects/gsoc21_frontend-inline-editing
@rs4231199 I checked out this branch but I am unable to do front-end inline editing. Nothing happens when I click on a title or description. Inline editing is enabled in the Global Configuration. What is missing?
comment created time in a day
issue commentjoomla-projects/gsoc21_frontend-inline-editing
Refactoring of the FE Inline Editing - One Case for All Fields
@rs4231199 The base URL is available in the Joomla JS options. You can get that via Joomla.getOptions('system.paths').baseFull
We spoke in the chat about retrieving the fields when necessary so we don´t have a page full of forms. Are you taking a different approach now?
comment created time in 4 days
pull request commentjoomla/joomla-cms
Fixed the aria-describedby not being set correctly
@brianteeman I have no idea where that came from, but it has to be aria-describedby. I updated the text to reflect the correct name.
@dgrammatiko I don't mind doing all the cases if someone can tell me what they are and where to find them. I just found this as I am having troubles with subform and this stood out.
comment created time in 5 days
PR opened joomla/joomla-cms
Summary of Changes
In a repeatable subform we replace the X with the number of the row being created, however this is not done for the aria-controlledby. This fixes that and also updates the aria-controllerby tag.
Testing Instructions
- Login to the Joomla 4 backend
- Go to System -> Global Configuration
- Click on Users at the bottom of the list on the left
- Click on the
Email Domain Optionstab - Click on the + to add a new row
- Inspect the Domain name input field
- Notice that it says
<input type="text" name="jform[domains][__field10][name]" id="jform_domains____field10__name" value="" class="form-control required" aria-describedby="jform[domains][__field1X][name]-desc" required=""> - Apply the PR
- Reload the page
- Click on the + to add a new row
- Inspect the Domain name input field
- Notice that it now says
<input type="text" name="jform[domains][__field10][name]" id="jform_domains____field10__name" value="" class="form-control required" aria-describedby="jform[domains][__field10][name]-desc" required="">
Actual result BEFORE applying this Pull Request
The aria-controlledby is not updated
<input type="text" name="jform[domains][__field10][name]" id="jform_domains____field10__name" value="" class="form-control required" aria-describedby="jform[domains][__field1X][name]-desc" required="">
Expected result AFTER applying this Pull Request
The aria-controlledby is updated
<input type="text" name="jform[domains][__field10][name]" id="jform_domains____field10__name" value="" class="form-control required" aria-describedby="jform[domains][__field10][name]-desc" required="">
Documentation Changes Required
None
pr created time in 5 days
push eventroland-d/joomla-cms
commit sha cd1f121d57f78ed368cb8435e82fc771b22a8966
Add the missing -desc suffix Signed-off-by: Roland Dalmulder <[email protected]>
push time in 5 days
push eventroland-d/joomla-cms
commit sha 703484715a3de6fff26a7566e1ff779b99fc4dab
[4.0] content voting css (#34820) Updates the css for the content voting plugin to use logical css properties and therefore minimise the need for RTL specific css Enable the content- voting plugin In article options set voting to show There should be no visible difference before or after
commit sha 51938d5227d3cbb1d9cf38c8be883d78ea50b3b9
Add classes set for field (#34826) Signed-off-by: Roland Dalmulder <[email protected]>
commit sha 03ed1fdbf8a802bfaee3b6b09d84d828f0ae833e
Remove overflow to fix sticky. (#34805)
commit sha 6993f82859285c2a957da1a3bb513d4d121dcc2c
Changed %s to %d to be consistent (#34844)
commit sha b606ab620bb50160243c2e08865776258b486f39
[4.0] admin logo rtl margin (#34839) The margins on the logo and sidebar were changed in LTR but the RTL override was not updated. As its no longer needed this PR removes the override.
commit sha c33c694d25c2c99717468af1424ab4aa7af59f1e
[4.0] remove unused cassiopeia css (#34832) This css is not used now we are on bs5. Code review. pr for #34828
commit sha c0c5c7339bf8debfc0036a68d244fa9584aeeaff
[4.0] quickicons rtl (#34827) Fixes the scss for the display of the add new + link on rtl dashboards ### Before ### After
commit sha 214119e96a442328a83dae37f55ef5b7f62219d9
Allow dt elements too
commit sha d78b4e6731be0862603dda907a4851c17f723655
Convert XML Objects to a string. Fixes error installing extension in debug mode
commit sha a27ceedb5c912ccda99d1fd6a53c1541ca581194
[4.0] Atum mobile burger (#34838) The css to move the burger menu to the left when in rtl was incomplete. ### before ### after
commit sha ed0443818c376f5a9736545b745c0893db5967d7
[4.0] com_templates column border (#34837) Change the border to use logical css property which fixes the bug that the border was in the wrong place in RTL etc without the need for any specific rtl classes. There is no visible change in ltr ### Before ### After
commit sha cf3258be9e90ae35b6f8c643a3f61948d36a8084
[4.0] lint build script (#34831) We no longer have any scss files in administrator/components/com_media so there is no need for it to be in the path for the lint script. Code review
commit sha c6d76f663e59071fe5ec39165e783c5c4d058626
[4.0] mod_languages css (#34821) This PR changes the css so that we don't need to have any RTL specific css as it now uses logical css properties. To test you will need a multilingual site and have set the language switcher module to be displayed as a dropdown. After the pr there will be no visible change
commit sha 103d5ad8efd3bc1fbcf3fd475b426ada86abc9fe
[4.0] Badge icon (#34815) This pr adds spacing between the icon and the text. as far as I can see this is only used in one place as shown below
commit sha 97eab03959577efe33a18d8df761484934f84ed3
Remove 'debug' from grid area (#34849)
commit sha ae26814823653c700dfa777de421674dc1e8ed87
[4.0] edit tooltip css cassiopeia (#34823) This PR switches text-align to use logical properties so removes the need for the extra rtl css This can be seen in the front end when logged in and hovering on the edit module button
commit sha 688a765307910f63925e22896cee5d7942fccf8a
[4.0] RTL logical property mod-list (#34835) The class mod-list is used extensively in the site modules. This PR replaces the use of separate LTR and RTL classes by using css logical properties
commit sha d746df38c9b0bb53140a91d1ab256cfb160c9da5
[4.0] Linked Image (atum) a11y (#34768) When an image is used for functional purposes eg a link then then alt text should describe the function and not the image. Otherwise the link may appear to be empty to assistive technology and therefore ignored. https://www.w3.org/WAI/tutorials/images/functional/#image-used-alone-as-a-linked-logo In the atum template the logo in the top right is sometimes used as a link to the homepage. So in those circumstance it needs an alt text that describe where the link takes you that and not an aria label on the image.
commit sha a35cbcaa8cb378fe6c10694d4a82d91e05b2d8dc
[4.0] Dialoges Should be labeled (#34383)
commit sha a0c68d21b47e8992f23395245d315b3b4eb8ed41
[4.0] search module icon (#34829) It is not necessary to have separate classes for rtl and ltr to put a .2em gap between the text and the icon. margin-inline-end works in both directions This is an scss change There is no visible change in either LTR or RTL after this PR
push time in 5 days
Pull request review commentjoomla-projects/gsoc21_frontend-inline-editing
Text custom field and Article title inline editable
JTABLE_OPTIONS_ORDERING="Order by:" JGLOBAL_READ_MORE="Read more ..." JGLOBAL_READ_MORE_TITLE="Read more: %s" JGLOBAL_REGISTER_TO_READ_MORE="Register to read more ..."++; Inline Editing+JGLOBAL_SERVER_ERROR="Server Error. Invalid response."
Sort alphabetically
comment created time in 8 days
Pull request review commentjoomla-projects/gsoc21_frontend-inline-editing
Text custom field and Article title inline editable
public static function calendar($value, $name, $id, $format = '%Y-%m-%d', $attri return LayoutHelper::render('joomla.form.field.calendar', $data, null, null); } + /**+ * Add data-attributes for the inline editing.+ *+ * @param string $component com_content, com_fields, etc+ * @param string $controller Article, field, etc+ * @param mixed $attribs Additional HTML attributes required to make Ajax Request+ * Example: In case of Article title,+ * $attribs = [a_id => 23].+ *+ * @return string Formatted Data attributes+ *+ * @since __DEPLOY_VERSION__+ */+ public static function convertToDataAttributes(string $component, string $controller, $attribs = [])
Add return statement
comment created time in 8 days
Pull request review commentjoomla-projects/gsoc21_frontend-inline-editing
Text custom field and Article title inline editable
public static function calendar($value, $name, $id, $format = '%Y-%m-%d', $attri return LayoutHelper::render('joomla.form.field.calendar', $data, null, null); } + /**+ * Add data-attributes for the inline editing.+ *+ * @param string $component com_content, com_fields, etc+ * @param string $controller Article, field, etc+ * @param mixed $attribs Additional HTML attributes required to make Ajax Request+ * Example: In case of Article title,+ * $attribs = [a_id => 23].+ *+ * @return string Formatted Data attributes+ *+ * @since __DEPLOY_VERSION__+ */+ public static function convertToDataAttributes(string $component, string $controller, $attribs = [])+ {+ // Load script+ $app = Factory::getApplication();+ $document = Factory::getDocument();+ $wa = $document->getWebAssetManager();+ $wa->useStyle('webcomponent.inline-editing');++ if ($app->get('editor', '') == 'tinymce')+ {+ $wa->registerAndUseScript('tinymce', 'media/vendor/tinymce/tinymce.min.js')+ ->useScript('webcomponent.inline-editing-tinymce');+ }+ else+ {+ $wa->useScript('webcomponent.inline-editing');++ // Add script options+ $document->addScriptOptions('inline-editing', ['icon' => Uri::root(true) . '/media/system/images/ajax-loader.gif']);+ }++ // Register messages to be used by javascript code+ Text::script('JGLOBAL_SERVER_ERROR');+ Text::script('JGLOBAL_FIELD_NOT_SAVED');+ Text::script('JGLOBAL_EMPTY_FIELD');++ $return = 'data-inline_url="?option=' . $component . '&task=' . $controller . '.FEInlineEdition&format=json" ';+ $data = '';++ foreach ($attribs as $key => $value)+ {+ $data = $data . $key . '=' . $value . '&';+ }++ $return = $return . ' data-inline_data="' . $data . '"';
You can move this line directly in to the return statement
comment created time in 8 days
Pull request review commentjoomla-projects/gsoc21_frontend-inline-editing
Text custom field and Article title inline editable
public static function calendar($value, $name, $id, $format = '%Y-%m-%d', $attri return LayoutHelper::render('joomla.form.field.calendar', $data, null, null); } + /**+ * Add data-attributes for the inline editing.+ *+ * @param string $component com_content, com_fields, etc+ * @param string $controller Article, field, etc+ * @param mixed $attribs Additional HTML attributes required to make Ajax Request+ * Example: In case of Article title,+ * $attribs = [a_id => 23].+ *+ * @return string Formatted Data attributes+ *+ * @since __DEPLOY_VERSION__+ */+ public static function convertToDataAttributes(string $component, string $controller, $attribs = [])+ {+ // Load script+ $app = Factory::getApplication();+ $document = Factory::getDocument();+ $wa = $document->getWebAssetManager();+ $wa->useStyle('webcomponent.inline-editing');++ if ($app->get('editor', '') == 'tinymce')
Use strict comparison
comment created time in 8 days
Pull request review commentjoomla-projects/gsoc21_frontend-inline-editing
Text custom field and Article title inline editable
public static function calendar($value, $name, $id, $format = '%Y-%m-%d', $attri return LayoutHelper::render('joomla.form.field.calendar', $data, null, null); } + /**+ * Add data-attributes for the inline editing.+ *+ * @param string $component com_content, com_fields, etc+ * @param string $controller Article, field, etc+ * @param mixed $attribs Additional HTML attributes required to make Ajax Request+ * Example: In case of Article title,+ * $attribs = [a_id => 23].+ *+ * @return string Formatted Data attributes+ *+ * @since __DEPLOY_VERSION__+ */+ public static function convertToDataAttributes(string $component, string $controller, $attribs = [])+ {+ // Load script+ $app = Factory::getApplication();
Alignment
comment created time in 8 days
Pull request review commentjoomla-projects/gsoc21_frontend-inline-editing
Text custom field and Article title inline editable
+<?php+/**+ * @package Joomla.Site+ * @subpackage com_fields+ *+ * @copyright (C) 2017 Open Source Matters, Inc. <https://www.joomla.org>+ * @license GNU General Public License version 2 or later; see LICENSE.txt+ */++namespace Joomla\Component\Fields\Site\Controller;++\defined('_JEXEC') or die;++use Joomla\CMS\Response\JsonResponse;++/**+ * Custom Field class.+ *+ * @since __DEPLOY_VERSION__+ */+class FieldController extends \Joomla\CMS\MVC\Controller\BaseController+{++ /**+ * Method to save a field+ *+ * @return void+ *+ * @since __DEPLOY_VERSION__+ */+ public function FEInlineEdition()+ {+ $this->checkToken();++ $fieldId = $this->input->getInt('field_id');
Fix alignment, set a default value of 0
comment created time in 8 days
Pull request review commentjoomla-projects/gsoc21_frontend-inline-editing
Text custom field and Article title inline editable
defined('_JEXEC') or die; use Joomla\Component\Fields\Administrator\Helper\FieldsHelper;+use Joomla\CMS\Factory;
Sort alphavetically
comment created time in 8 days
Pull request review commentjoomla-projects/gsoc21_frontend-inline-editing
Text custom field and Article title inline editable
+<?php+/**+ * @package Joomla.Site+ * @subpackage com_fields+ *+ * @copyright (C) 2017 Open Source Matters, Inc. <https://www.joomla.org>+ * @license GNU General Public License version 2 or later; see LICENSE.txt+ */++namespace Joomla\Component\Fields\Site\Controller;++\defined('_JEXEC') or die;++use Joomla\CMS\Response\JsonResponse;++/**+ * Custom Field class.+ *+ * @since __DEPLOY_VERSION__+ */+class FieldController extends \Joomla\CMS\MVC\Controller\BaseController+{++ /**+ * Method to save a field+ *+ * @return void+ *+ * @since __DEPLOY_VERSION__+ */+ public function FEInlineEdition()
Set return type:
public function FEInlineEdititing(): void
Remember we change Edition to Editing
comment created time in 8 days
Pull request review commentjoomla-projects/gsoc21_frontend-inline-editing
Text custom field and Article title inline editable
return; } +$canEdit = $item->params->get('access-edit');+$dataAttributes = '';+$inlineEditClass = '';++if ($canEdit && $field->type == 'text')+{+ $dataAttributes = HTMLHelper::_('convertToDataAttributes', 'com_fields', 'field', [ 'item_id' => $item->id, 'field_id' => $field->id ]);
You can spread all the arguments over multiple lines like this:
$dataAttributes = HTMLHelper::_(
'convertToDataAttributes',
'com_fields',
and so on...
No need for spaces around the brackets.
comment created time in 8 days
Pull request review commentjoomla-projects/gsoc21_frontend-inline-editing
Text custom field and Article title inline editable
return; } +$canEdit = $item->params->get('access-edit');
Fix alignment
comment created time in 8 days
Pull request review commentjoomla-projects/gsoc21_frontend-inline-editing
Text custom field and Article title inline editable
+<?php+/**+ * @package Joomla.Site+ * @subpackage com_fields+ *+ * @copyright (C) 2017 Open Source Matters, Inc. <https://www.joomla.org>+ * @license GNU General Public License version 2 or later; see LICENSE.txt+ */++namespace Joomla\Component\Fields\Site\Controller;++\defined('_JEXEC') or die;++use Joomla\CMS\Response\JsonResponse;++/**+ * Custom Field class.+ *+ * @since __DEPLOY_VERSION__+ */+class FieldController extends \Joomla\CMS\MVC\Controller\BaseController
Add the Basecontroller to the use statement
comment created time in 8 days
Pull request review commentjoomla-projects/gsoc21_frontend-inline-editing
Text custom field and Article title inline editable
<?php if (isset ($this->item->toc)) : echo $this->item->toc; endif; ?>- <div itemprop="articleBody" class="com-content-article__body">+ <div itemprop="articleBody" class="com-content-article__body <?php echo $inlineEditClass ?>" <?php echo $ArticleDataAttributes ?>>
Add semi-colon at the end of the PHP statement
comment created time in 8 days
Pull request review commentjoomla-projects/gsoc21_frontend-inline-editing
Text custom field and Article title inline editable
return; } +$canEdit = $item->params->get('access-edit');+$dataAttributes = '';+$inlineEditClass = '';++if ($canEdit && $field->type == 'text')+{+ $dataAttributes = HTMLHelper::_('convertToDataAttributes', 'com_fields', 'field', [ 'item_id' => $item->id, 'field_id' => $field->id ]);+ $inlineEditClass = 'inline-editable-text';+}+ ?> <?php if ($showLabel == 1) : ?> <span class="field-label <?php echo $labelClass; ?>"><?php echo htmlentities($label, ENT_QUOTES | ENT_IGNORE, 'UTF-8'); ?>: </span> <?php endif; ?> <?php if ($prefix) : ?> <span class="field-prefix"><?php echo htmlentities($prefix, ENT_QUOTES | ENT_IGNORE, 'UTF-8'); ?></span> <?php endif; ?>-<span class="field-value"><?php echo $value; ?></span>+<span class="field-value <?php echo $inlineEditClass ?>" <?php echo $dataAttributes ?>><?php echo $value; ?></span>
Add semi-colon at the end of the PHP statement
comment created time in 8 days
Pull request review commentjoomla-projects/gsoc21_frontend-inline-editing
Text custom field and Article title inline editable
+(() => {+ 'use strict';++ // TODO+ // Shift some code to the css file++ // Get text area and loading icon+ const GetTextAreaWrapper = (oldContent) => {
Variables need to start with a lowercase letter
comment created time in 8 days
Pull request review commentjoomla-projects/gsoc21_frontend-inline-editing
Text custom field and Article title inline editable
$currentDate = Factory::getDate()->format('Y-m-d H:i:s'); $isNotPublishedYet = $this->item->publish_up > $currentDate; $isExpired = !is_null($this->item->publish_down) && $this->item->publish_down < $currentDate;++// Enable frontend inline editing+$ArticleDataAttributes = '';+$inlineEditClass = '';+if ($canEdit)
Codestyle, need empty line before the if statement
comment created time in 8 days
Pull request review commentjoomla-projects/gsoc21_frontend-inline-editing
Text custom field and Article title inline editable
$currentDate = Factory::getDate()->format('Y-m-d H:i:s'); $isNotPublishedYet = $this->item->publish_up > $currentDate; $isExpired = !is_null($this->item->publish_down) && $this->item->publish_down < $currentDate;++// Enable frontend inline editing+$ArticleDataAttributes = '';
Start with a lowercase letter
comment created time in 8 days
Pull request review commentjoomla-projects/gsoc21_frontend-inline-editing
Text custom field and Article title inline editable
public function storeVote($pk = 0, $rate = 0) return false; } + /**+ * Save Title of an article+ *+ * @param integer $pk Article id+ * @param string $field Field to be updated. Ex, title, or introtext.+ * @param string $newValue New title of the article+ *+ * @return boolean True if successful, false otherwise+ *+ * @since __DEPLOY_VERSION__+ */+ public function saveOne(int $pk = null, string $field, string $newValue = null): bool+ {+ if ($pk == null || $newValue == null)+ {+ return false;+ }++ $pk = (string) $pk;+ $field = (string) $field;+ $newValue = (string) $newValue;++ $db = $this->getDbo();+ $query = $db->getQuery(true);++ // Fields to update.+ $fields = [ $db->quoteName($field) . ' = ' . $db->quote($newValue) ];
No need for the spaces after and before the brackets.
comment created time in 8 days
Pull request review commentjoomla-projects/gsoc21_frontend-inline-editing
Text custom field and Article title inline editable
defined('_JEXEC') or die; use Joomla\CMS\Language\Text;+use Joomla\CMS\HTML\HTMLHelper;
Arrange use statements in alphabetical order
comment created time in 8 days
Pull request review commentjoomla-projects/gsoc21_frontend-inline-editing
Text custom field and Article title inline editable
defined('_JEXEC') or die; use Joomla\CMS\Language\Text;+use Joomla\CMS\HTML\HTMLHelper; if (!array_key_exists('field', $displayData)) { return; } +$item = $displayData['item'];
Fix alignment
comment created time in 8 days
Pull request review commentjoomla-projects/gsoc21_frontend-inline-editing
Text custom field and Article title inline editable
public function storeVote($pk = 0, $rate = 0) return false; } + /**+ * Save Title of an article+ *+ * @param integer $pk Article id+ * @param string $field Field to be updated. Ex, title, or introtext.+ * @param string $newValue New title of the article+ *+ * @return boolean True if successful, false otherwise+ *+ * @since __DEPLOY_VERSION__+ */+ public function saveOne(int $pk = null, string $field, string $newValue = null): bool+ {+ if ($pk == null || $newValue == null)+ {+ return false;+ }++ $pk = (string) $pk;
Codestyle
comment created time in 8 days
Pull request review commentjoomla-projects/gsoc21_frontend-inline-editing
Text custom field and Article title inline editable
<?php if ($params->get('show_title')) : ?> <div class="page-header">- <<?php echo $htag; ?> itemprop="headline">+ <<?php echo $htag; ?> class="<?php echo $inlineEditClass ?>" <?php echo $ArticleDataAttributes ?> itemprop="headline">
Add semi-colon at the end of the PHP statement
comment created time in 8 days
Pull request review commentjoomla-projects/gsoc21_frontend-inline-editing
Text custom field and Article title inline editable
public function storeVote($pk = 0, $rate = 0) return false; } + /**+ * Save Title of an article+ *+ * @param integer $pk Article id+ * @param string $field Field to be updated. Ex, title, or introtext.+ * @param string $newValue New title of the article+ *+ * @return boolean True if successful, false otherwise+ *+ * @since __DEPLOY_VERSION__+ */+ public function saveOne(int $pk = null, string $field, string $newValue = null): bool+ {+ if ($pk == null || $newValue == null)+ {+ return false;+ }++ $pk = (string) $pk;+ $field = (string) $field;+ $newValue = (string) $newValue;++ $db = $this->getDbo();+ $query = $db->getQuery(true);++ // Fields to update.+ $fields = [ $db->quoteName($field) . ' = ' . $db->quote($newValue) ];++ // Conditions for which records should be updated.+ $conditions = [ $db->quoteName('id') . ' = ' . $pk ];++ $query->update($db->quoteName('#__content'))->set($fields)->where($conditions);++ $db->setQuery($query);++ $result = $db->execute();
You can out the $db0<execute() directly in the if statement,
comment created time in 8 days
Pull request review commentjoomla-projects/gsoc21_frontend-inline-editing
Text custom field and Article title inline editable
public function save($key = null, $urlVar = 'a_id') return $result; } + /**+ * Method to save article's title+ *+ * @return void+ *+ * @since __DEPLOY_VERSION__+ */+ public function FEInlineEdition()
Specify the return type:
public function FEInlineEdition(): void
comment created time in 8 days