Routing: Remove IDs from SEF URLs (new) #11320

Merged
merged 21 commits into from Oct 5, 2016

Conversation

Projects
None yet
@Hackwar
Member

Hackwar commented Jul 27, 2016

This PR removes the IDs from the URLs when using the new advanced routing. To test, please enable "Use new URL routing" and "Remove IDs from URLs" in the components options in the backend. You can set this feature individually for com_contact, com_content and com_newsfeeds. When set to yes, the IDs are removed from the URLs of the respective component

See #10170 for further discussion.

@n9iels

This comment has been minimized.

Show comment
Hide comment
@n9iels

n9iels Jul 28, 2016

Contributor

First of all, thanks for this feature!! :)

I tested the integration with com_content, com_newsfeeds and com_content in the following way:

  1. Go to the front-end and look at the url of a single item with id
  2. Apple the new url routing and set the option Remove IDs from URLs to "yes"
  3. Check if the id is removed and the same item is displayed.

For com_content I tested the is PR successful.

For com_contact I can't find the parameter under the tab "Integration".
schermafdruk van 2016-07-28 12-03-38

In com_newsfeeds there is a undefined language string (not sure if that is something for this PR).
schermafdruk van 2016-07-28 12-04-06

Maybe it is also an idea to hide this parameter till the "Use new router" is set on "yes"

Contributor

n9iels commented Jul 28, 2016

First of all, thanks for this feature!! :)

I tested the integration with com_content, com_newsfeeds and com_content in the following way:

  1. Go to the front-end and look at the url of a single item with id
  2. Apple the new url routing and set the option Remove IDs from URLs to "yes"
  3. Check if the id is removed and the same item is displayed.

For com_content I tested the is PR successful.

For com_contact I can't find the parameter under the tab "Integration".
schermafdruk van 2016-07-28 12-03-38

In com_newsfeeds there is a undefined language string (not sure if that is something for this PR).
schermafdruk van 2016-07-28 12-04-06

Maybe it is also an idea to hide this parameter till the "Use new router" is set on "yes"

@hardiktailored

This comment has been minimized.

Show comment
Hide comment
@hardiktailored

hardiktailored Jul 29, 2016

Not able to apply patch on latest staging site.

Error

The file marked for modification does not exist: libraries/cms/component/router/rules/menu.php


This comment was created with the J!Tracker Application at issues.joomla.org/joomla-cms/11320.

Not able to apply patch on latest staging site.

Error

The file marked for modification does not exist: libraries/cms/component/router/rules/menu.php


This comment was created with the J!Tracker Application at issues.joomla.org/joomla-cms/11320.

@mbabker

This comment has been minimized.

Show comment
Hide comment
@mbabker

mbabker Jul 29, 2016

Member

Make sure you've checked out the 3.7.x branch as this PR is targeted against it, not staging.

Member

mbabker commented Jul 29, 2016

Make sure you've checked out the 3.7.x branch as this PR is targeted against it, not staging.

@n9iels

This comment has been minimized.

Show comment
Hide comment
@n9iels

n9iels Aug 1, 2016

Contributor

hmm I found out something else.
When disable the new url routing you can do something like this: http://joomla-cms.dev/index.php/17-first-blog-post. At that moment you see the article "First blog post".
When the new url routing is enabled, I don't see this article, but the home page instead.

I think this is a bug (or is it just normal behaviour with a good reason?)

Contributor

n9iels commented Aug 1, 2016

hmm I found out something else.
When disable the new url routing you can do something like this: http://joomla-cms.dev/index.php/17-first-blog-post. At that moment you see the article "First blog post".
When the new url routing is enabled, I don't see this article, but the home page instead.

I think this is a bug (or is it just normal behaviour with a good reason?)

@hardiktailored

This comment has been minimized.

Show comment
Hide comment
@hardiktailored

hardiktailored Aug 2, 2016

I have tested this item 🔴 unsuccessfully on 6159beb

It is working for com_content but not for other two.
"Remove IDs from URLs" option not visible in com_contact.
Clicking on Single News Feed gives "Page not found" error. [Error: No registered feed parser for type html.]


This comment was created with the J!Tracker Application at issues.joomla.org/joomla-cms/11320.

I have tested this item 🔴 unsuccessfully on 6159beb

It is working for com_content but not for other two.
"Remove IDs from URLs" option not visible in com_contact.
Clicking on Single News Feed gives "Page not found" error. [Error: No registered feed parser for type html.]


This comment was created with the J!Tracker Application at issues.joomla.org/joomla-cms/11320.

@hardiktailored

This comment has been minimized.

Show comment
Hide comment
@hardiktailored

hardiktailored Aug 2, 2016

See results below (Joomla! 3.7.0-dev):

com_contact:
screen shot 2016-08-02 at 04 11 18

com_newsfeed:
screen shot 2016-08-02 at 04 11 43

Error on news feed link visit:
screen shot 2016-08-02 at 04 12 22


This comment was created with the J!Tracker Application at issues.joomla.org/joomla-cms/11320.

See results below (Joomla! 3.7.0-dev):

com_contact:
screen shot 2016-08-02 at 04 11 18

com_newsfeed:
screen shot 2016-08-02 at 04 11 43

Error on news feed link visit:
screen shot 2016-08-02 at 04 12 22


This comment was created with the J!Tracker Application at issues.joomla.org/joomla-cms/11320.

@ghost

This comment has been minimized.

Show comment
Hide comment
@ghost

ghost Aug 2, 2016

I have tested this item 🔴 unsuccessfully on 6159beb

  • Installed Joomla 3.7.x of today.
  • Checked testing datas during installation.
  • Applied this patch (Is this sufficient????)
  • Enabled Use new URL routing and Remove IDs from URLs for com_content.
  • Concerning following errors it makes no difference if Use URL Rewrite is enabled in global configuration or not.
  • Unpublished all menu items in menu Fruit Shop to be sure to have articles with leading id in URL in category views.
  • Opened in FE menu All Front End Views > Article Categories.
  • Error: See 3 categories but 2 categories links are pointing on the current page /article-categories instead of on the category. (See image: red arrows)
  • Deactivated only setting Remove IDs from URLs in com_content. Same error.
  • Deactivated Use URL Rewriting in global.
    and deactivated Remove IDs from URLs
    Same error.

Whenever Use new URL routing is activated in com_content same error.

After removing the patch: Behavior as expected.

02-08-_2016_15-30-53

ghost commented Aug 2, 2016

I have tested this item 🔴 unsuccessfully on 6159beb

  • Installed Joomla 3.7.x of today.
  • Checked testing datas during installation.
  • Applied this patch (Is this sufficient????)
  • Enabled Use new URL routing and Remove IDs from URLs for com_content.
  • Concerning following errors it makes no difference if Use URL Rewrite is enabled in global configuration or not.
  • Unpublished all menu items in menu Fruit Shop to be sure to have articles with leading id in URL in category views.
  • Opened in FE menu All Front End Views > Article Categories.
  • Error: See 3 categories but 2 categories links are pointing on the current page /article-categories instead of on the category. (See image: red arrows)
  • Deactivated only setting Remove IDs from URLs in com_content. Same error.
  • Deactivated Use URL Rewriting in global.
    and deactivated Remove IDs from URLs
    Same error.

Whenever Use new URL routing is activated in com_content same error.

After removing the patch: Behavior as expected.

02-08-_2016_15-30-53

@joeforjoomla

This comment has been minimized.

Show comment
Hide comment
@joeforjoomla

joeforjoomla Aug 2, 2016

Contributor

Confirm this issue. When the crappy 'New URL routing' is activated every links not only in com_content but even in com_contact, etc are no working anymore. Basically nothing works with this new router, all websites links get broken. Categories links point to the same page instead of that the category itself, etc i can't find anything working as of now.

Contributor

joeforjoomla commented Aug 2, 2016

Confirm this issue. When the crappy 'New URL routing' is activated every links not only in com_content but even in com_contact, etc are no working anymore. Basically nothing works with this new router, all websites links get broken. Categories links point to the same page instead of that the category itself, etc i can't find anything working as of now.

@JoshuaLewis

This comment has been minimized.

Show comment
Hide comment
@JoshuaLewis

JoshuaLewis Aug 19, 2016

Is there still interest in this? It's an important feature that was one of the top rated ideas that people want to see in Joomla.

Is there still interest in this? It's an important feature that was one of the top rated ideas that people want to see in Joomla.

@ssnobben

This comment has been minimized.

Show comment
Hide comment
@ssnobben

ssnobben Aug 24, 2016

Its a lot of work going into this router project. Hope it finally can get into J 3.7. And its needed to replace the crappy old Joomla router.

Its a lot of work going into this router project. Hope it finally can get into J 3.7. And its needed to replace the crappy old Joomla router.

@chrisdavenport

This comment has been minimized.

Show comment
Hide comment
@chrisdavenport

chrisdavenport Aug 24, 2016

Contributor

Its a lot of work going into this router project. Hope it finally can get into J 3.7. And its needed to replace the crappy old Joomla router.

Then test it. Report any problems and if possible submit PRs. Thank you.

Contributor

chrisdavenport commented Aug 24, 2016

Its a lot of work going into this router project. Hope it finally can get into J 3.7. And its needed to replace the crappy old Joomla router.

Then test it. Report any problems and if possible submit PRs. Thank you.

+ }
+ else
+ {
+ if ($child->id == (int) $segment)

This comment has been minimized.

@yvesh

yvesh Aug 24, 2016

Member

You could make an else if here (instead of nesting else + if) :)

@yvesh

yvesh Aug 24, 2016

Member

You could make an else if here (instead of nesting else + if) :)

+ if ($this->noIDs)
+ {
+ $path = array_reverse($category->getPath(), true);
+ foreach ($path as &$segment)

This comment has been minimized.

@yvesh

yvesh Aug 24, 2016

Member

New line missing before foreach

@yvesh

yvesh Aug 24, 2016

Member

New line missing before foreach

+ else
+ {
+ $db = JFactory::getDbo();
+ $dbquery = $db->getQuery(true);

This comment has been minimized.

@yvesh

yvesh Aug 24, 2016

Member

Any reason to not call it $query?

@yvesh

yvesh Aug 24, 2016

Member

Any reason to not call it $query?

This comment has been minimized.

@mbabker

mbabker Aug 24, 2016

Member

Look at the parameters in the method signature.

@mbabker

mbabker Aug 24, 2016

Member

Look at the parameters in the method signature.

This comment has been minimized.

@yvesh

yvesh Aug 24, 2016

Member

👍

@yvesh

yvesh Aug 24, 2016

Member

👍

+ $db = JFactory::getDbo();
+ $dbquery = $db->getQuery(true);
+ $dbquery->select($dbquery->qn('alias'))
+ ->from($dbquery->qn('#__newsfeeds'))

This comment has been minimized.

@yvesh

yvesh Aug 24, 2016

Member

Please use $db->quoteName and $db->quote instead of the short handles if possible.

@yvesh

yvesh Aug 24, 2016

Member

Please use $db->quoteName and $db->quote instead of the short handles if possible.

This comment has been minimized.

@Hackwar

Hackwar Aug 24, 2016

Member

We are using JDatabaseDriver::qn() over 1300 times in /libraries alone, while we use JDatabaseDriver::quoteName() just a little bit over 700 times in the same folder. I don't see a rule for either of the two and would rather keep it in this short form.

@Hackwar

Hackwar Aug 24, 2016

Member

We are using JDatabaseDriver::qn() over 1300 times in /libraries alone, while we use JDatabaseDriver::quoteName() just a little bit over 700 times in the same folder. I don't see a rule for either of the two and would rather keep it in this short form.

This comment has been minimized.

@yvesh

yvesh Aug 24, 2016

Member

@Hackwar Hannes, see last PLT meeting report

The PLT has decided that it will enforce the use of quoteName() and quote() methods on any new pull requests involving database queries. This to have consistent database queries that will work best across SQL platforms and with maximum security over time.

@yvesh

yvesh Aug 24, 2016

Member

@Hackwar Hannes, see last PLT meeting report

The PLT has decided that it will enforce the use of quoteName() and quote() methods on any new pull requests involving database queries. This to have consistent database queries that will work best across SQL platforms and with maximum security over time.

This comment has been minimized.

@mbabker

mbabker Aug 24, 2016

Member

I wish I remembered where the reference was but someone pointed out that the excessive use of quote() and quoteName() in conditions it's not needed in actually hinders performance some time ago. This entire query falls under that scenario IMO. But let's not get started on that...

@mbabker

mbabker Aug 24, 2016

Member

I wish I remembered where the reference was but someone pointed out that the excessive use of quote() and quoteName() in conditions it's not needed in actually hinders performance some time ago. This entire query falls under that scenario IMO. But let's not get started on that...

This comment has been minimized.

@Hackwar

Hackwar Aug 24, 2016

Member

The way I understand it is, that the use of the quoting methods should be enforced. Since q and quote and qn and quoteName are interchangeable, that shouldn't make a difference... I don't read a preference for the long version from that report.

@Hackwar

Hackwar Aug 24, 2016

Member

The way I understand it is, that the use of the quoting methods should be enforced. Since q and quote and qn and quoteName are interchangeable, that shouldn't make a difference... I don't read a preference for the long version from that report.

{
- return $child->id;
+ if ($child->alias == $segment)

This comment has been minimized.

@yvesh

yvesh Aug 24, 2016

Member

Any reason you nesting if here, instead of using && in line 154?

@yvesh

yvesh Aug 24, 2016

Member

Any reason you nesting if here, instead of using && in line 154?

This comment has been minimized.

@Hackwar

Hackwar Aug 24, 2016

Member

The reason for this rather verbose if-else-statement (and all the others, too) is readability. We are switching between ID-based routing and non-ID-based routing and in the respective block, we do what we have to do. If we shorten this, that distinction is not that clear. You have to understand the whole system a lot better to see why the code is written that way.

@Hackwar

Hackwar Aug 24, 2016

Member

The reason for this rather verbose if-else-statement (and all the others, too) is readability. We are switching between ID-based routing and non-ID-based routing and in the respective block, we do what we have to do. If we shorten this, that distinction is not that clear. You have to understand the whole system a lot better to see why the code is written that way.

This comment has been minimized.

@yvesh

yvesh Aug 24, 2016

Member

Hmm imo this is more readable:

if ($this->noIDs && $child->alias == $segment)
{
    return $child->id;
}
elseif ($child->id == (int) $segment)
{
    return $chield->id;
}

But as Michael says with code style it's like with opinions (hope i cite you right)

@yvesh

yvesh Aug 24, 2016

Member

Hmm imo this is more readable:

if ($this->noIDs && $child->alias == $segment)
{
    return $child->id;
}
elseif ($child->id == (int) $segment)
{
    return $chield->id;
}

But as Michael says with code style it's like with opinions (hope i cite you right)

+ return $child->id;
+ }
+ }
+ else

This comment has been minimized.

@yvesh

yvesh Aug 24, 2016

Member

else if

@yvesh

yvesh Aug 24, 2016

Member

else if

+ if ($this->noIDs)
+ {
+ $db = JFactory::getDbo();
+ $dbquery = $db->getQuery(true);

This comment has been minimized.

@yvesh

yvesh Aug 24, 2016

Member

see comments above

@yvesh

yvesh Aug 24, 2016

Member

see comments above

This comment has been minimized.

@Hackwar

Hackwar Aug 24, 2016

Member

As Michael wrote: we are already using the variable $query.

@Hackwar

Hackwar Aug 24, 2016

Member

As Michael wrote: we are already using the variable $query.

@Hackwar

This comment has been minimized.

Show comment
Hide comment
@Hackwar

Hackwar Sep 3, 2016

Member

Seems I forgot to set array_reverse() to keep the array keys. This should all work now. But since the 3.7.x branch currently is broken in terms of unittests, those fail spectacularly. 😄 💃

Anyway, maybe you can test this again and then blame the rest on those unittests.

Member

Hackwar commented Sep 3, 2016

Seems I forgot to set array_reverse() to keep the array keys. This should all work now. But since the 3.7.x branch currently is broken in terms of unittests, those fail spectacularly. 😄 💃

Anyway, maybe you can test this again and then blame the rest on those unittests.

@Hackwar

This comment has been minimized.

Show comment
Hide comment
@Hackwar

Hackwar Sep 5, 2016

Member

Please also test and merge #11936. When that one is merged, the unittests wont fail anymore.

Member

Hackwar commented Sep 5, 2016

Please also test and merge #11936. When that one is merged, the unittests wont fail anymore.

@Hackwar

This comment has been minimized.

Show comment
Hide comment
@Hackwar

Hackwar Sep 6, 2016

Member

@bertmert I checked the system based on your error description and with the latest commits, those should be fixed. Can you please check again?

Member

Hackwar commented Sep 6, 2016

@bertmert I checked the system based on your error description and with the latest commits, those should be fixed. Can you please check again?

@wilsonge

This comment has been minimized.

Show comment
Hide comment
@wilsonge

wilsonge Sep 10, 2016

Contributor

@Hackwar I've manually merged the category fixes into 3.7 directly. Can we merge back in staging here and I'll get some more tests going :)

Contributor

wilsonge commented Sep 10, 2016

@Hackwar I've manually merged the category fixes into 3.7 directly. Can we merge back in staging here and I'll get some more tests going :)

Merge branch '3.7.x' of https://github.com/joomla/joomla-cms into sef…
…_no_IDs

Conflicts:
	administrator/language/en-GB/en-GB.ini
	libraries/cms/component/router/rules/standard.php
@Hackwar

This comment has been minimized.

Show comment
Hide comment
@Hackwar

Hackwar Sep 11, 2016

Member

Done

Member

Hackwar commented Sep 11, 2016

Done

@JoshuaLewis

This comment has been minimized.

Show comment
Hide comment
@JoshuaLewis

JoshuaLewis Sep 21, 2016

screen shot 2016-09-21 at 05 31 35

Notice how contacts does not have the option "Remove IDs from URLs"? My understanding is that the new routing feature is actually being utilized with contacts but does not have a visible benefit in terms of affecting the URL due to the option not existing. Perhaps for now it's helping performance on some level?


This comment was created with the J!Tracker Application at issues.joomla.org/joomla-cms/11320.

screen shot 2016-09-21 at 05 31 35

Notice how contacts does not have the option "Remove IDs from URLs"? My understanding is that the new routing feature is actually being utilized with contacts but does not have a visible benefit in terms of affecting the URL due to the option not existing. Perhaps for now it's helping performance on some level?


This comment was created with the J!Tracker Application at issues.joomla.org/joomla-cms/11320.

@brianteeman

This comment has been minimized.

Show comment
Hide comment
@brianteeman

brianteeman Sep 21, 2016

Contributor

Yes thats a bug. There is only the option to remove the ID from com_content and com_newsfeeds. It is missing from the other components and should be there

Contributor

brianteeman commented Sep 21, 2016

Yes thats a bug. There is only the option to remove the ID from com_content and com_newsfeeds. It is missing from the other components and should be there

@JoshuaLewis

This comment has been minimized.

Show comment
Hide comment
@JoshuaLewis

JoshuaLewis Sep 21, 2016

I assumed it was an issue instead of a bug. ;-) Well hopefully when a few more commits are put in we can test it, assuming all goes well this PR would then be RTC.

I assumed it was an issue instead of a bug. ;-) Well hopefully when a few more commits are put in we can test it, assuming all goes well this PR would then be RTC.

@Hackwar

This comment has been minimized.

Show comment
Hide comment
@Hackwar

Hackwar Sep 24, 2016

Member

The option was added for com_contacts. com_users does not use IDs in its URLs and com_tags still uses the old router.

Member

Hackwar commented Sep 24, 2016

The option was added for com_contacts. com_users does not use IDs in its URLs and com_tags still uses the old router.

@wilsonge

This comment has been minimized.

Show comment
Hide comment
@wilsonge

wilsonge Sep 26, 2016

Contributor

Hey folks can we get some tests in here please?

Contributor

wilsonge commented Sep 26, 2016

Hey folks can we get some tests in here please?

@JoshuaLewis

This comment has been minimized.

Show comment
Hide comment
@JoshuaLewis

JoshuaLewis Oct 1, 2016

I have tested this item successfully on 8dc616b

Thanks for the update. Tested with success on contacts as well. :-) @wilsonge @brianteeman Can we get tests from you guys so that we can be RTC?


This comment was created with the J!Tracker Application at issues.joomla.org/joomla-cms/11320.

I have tested this item successfully on 8dc616b

Thanks for the update. Tested with success on contacts as well. :-) @wilsonge @brianteeman Can we get tests from you guys so that we can be RTC?


This comment was created with the J!Tracker Application at issues.joomla.org/joomla-cms/11320.

@infograf768

This comment has been minimized.

Show comment
Hide comment
@infograf768

infograf768 Oct 2, 2016

Member

This does not work at all here, Modern on and whatever the choice for Remove IDs.
I get urls of the type:
http://localhost:8888/infograf768/?view=article&id=1:getting-started
http://localhost:8888/infograf768/?view=category&id=8

Legacy works fine

@Hackwar

Member

infograf768 commented Oct 2, 2016

This does not work at all here, Modern on and whatever the choice for Remove IDs.
I get urls of the type:
http://localhost:8888/infograf768/?view=article&id=1:getting-started
http://localhost:8888/infograf768/?view=category&id=8

Legacy works fine

@Hackwar

@infograf768

This comment has been minimized.

Show comment
Hide comment
@infograf768

infograf768 Oct 2, 2016

Member

I have tested this item 🔴 unsuccessfully on 8dc616b


This comment was created with the J!Tracker Application at issues.joomla.org/joomla-cms/11320.

Member

infograf768 commented Oct 2, 2016

I have tested this item 🔴 unsuccessfully on 8dc616b


This comment was created with the J!Tracker Application at issues.joomla.org/joomla-cms/11320.

@infograf768

This comment has been minimized.

Show comment
Hide comment
@infograf768

infograf768 Oct 2, 2016

Member

Let me explain a bit further:
I get these results when, for a given article (displayed as featured in Home page), I have NO menu item displaying that single article AND/OR no menu item displaying its category.

Member

infograf768 commented Oct 2, 2016

Let me explain a bit further:
I get these results when, for a given article (displayed as featured in Home page), I have NO menu item displaying that single article AND/OR no menu item displaying its category.

@Hackwar

This comment has been minimized.

Show comment
Hide comment
@Hackwar

Hackwar Oct 2, 2016

Member

@infograf768 That is actually an expected result. The result that you are getting is an indicator that your routing setup has errors in the form of missing menu items. A featured view can not be the parent view of an article. That is also the reason why we have the legacy routing, so that people can decide to keep their "broken" routing.

The rule based component routers are NOT 100% backwards compatible. I know that. I always communicated it that way. That is the reason why we have the legacy routing in the first place and why legacy routing is enabled by default. Otherwise we wouldn't have the legacy routing at all.

So as long as it works with legacy routing like before and as long as you get to the page that you expected with the new routing, it is the right behavior. If you have an issue like in #12250, where you click a link that should go to some place else and instead it simply reloads the page, then we have indeed a problem. But as far as I understand you, the 3.7-dev branch together with this PR does not show such a problem as described in #12250, right?

Member

Hackwar commented Oct 2, 2016

@infograf768 That is actually an expected result. The result that you are getting is an indicator that your routing setup has errors in the form of missing menu items. A featured view can not be the parent view of an article. That is also the reason why we have the legacy routing, so that people can decide to keep their "broken" routing.

The rule based component routers are NOT 100% backwards compatible. I know that. I always communicated it that way. That is the reason why we have the legacy routing in the first place and why legacy routing is enabled by default. Otherwise we wouldn't have the legacy routing at all.

So as long as it works with legacy routing like before and as long as you get to the page that you expected with the new routing, it is the right behavior. If you have an issue like in #12250, where you click a link that should go to some place else and instead it simply reloads the page, then we have indeed a problem. But as far as I understand you, the 3.7-dev branch together with this PR does not show such a problem as described in #12250, right?

@infograf768

This comment has been minimized.

Show comment
Hide comment
@infograf768

infograf768 Oct 2, 2016

Member

But as far as I understand you, the 3.7-dev branch together with this PR does not show such a problem as described in #12250, right?

Indeed, but the links are really bad (article title link and its Category link.
Same for Categories Module category links.

I expect, in case we have no menu item for a specific item link, to fall back to legacy behaviour:
http://localhost:8888/infograf768/8-my-category/1-getting-started.html
and not
http://localhost:8888/infograf768/?view=article&id=1:getting-started

Member

infograf768 commented Oct 2, 2016

But as far as I understand you, the 3.7-dev branch together with this PR does not show such a problem as described in #12250, right?

Indeed, but the links are really bad (article title link and its Category link.
Same for Categories Module category links.

I expect, in case we have no menu item for a specific item link, to fall back to legacy behaviour:
http://localhost:8888/infograf768/8-my-category/1-getting-started.html
and not
http://localhost:8888/infograf768/?view=article&id=1:getting-started

@joeforjoomla

This comment has been minimized.

Show comment
Hide comment
@joeforjoomla

joeforjoomla Oct 2, 2016

Contributor

@infograf768 is right. What you say @Hackwar is something not acceptable. A featured/home view must continue to be used as a routing fallback even in the new router if there are no better menu items to route articles to, such as direct category view. Having such links, that look as broke links, is not acceptable. At least it should fallback on the legacy router as @infograf768 pointed out.

Contributor

joeforjoomla commented Oct 2, 2016

@infograf768 is right. What you say @Hackwar is something not acceptable. A featured/home view must continue to be used as a routing fallback even in the new router if there are no better menu items to route articles to, such as direct category view. Having such links, that look as broke links, is not acceptable. At least it should fallback on the legacy router as @infograf768 pointed out.

@mbabker

This comment has been minimized.

Show comment
Hide comment
@mbabker

mbabker Oct 2, 2016

Member

I don't agree. This is a new system, it does not have to have 100% feature parity for it to be accepted, especially if that feature parity relates to what could be argued as invalid logic (and in the case of a featured articles menu item, I do think it's broken logic to use that as the "parent" because that view is a bit of a special case and isn't a hierarchical view like the others are in com_content).

Member

mbabker commented Oct 2, 2016

I don't agree. This is a new system, it does not have to have 100% feature parity for it to be accepted, especially if that feature parity relates to what could be argued as invalid logic (and in the case of a featured articles menu item, I do think it's broken logic to use that as the "parent" because that view is a bit of a special case and isn't a hierarchical view like the others are in com_content).

@joeforjoomla

This comment has been minimized.

Show comment
Hide comment
@joeforjoomla

joeforjoomla Oct 2, 2016

Contributor

I agree.. I don't agree.... what's game are you playing?
A CMS and what is a labelled as a new fabulous router can't generate in any case a shit link like this one:
http://localhost:8888/infograf768/?view=article&id=1:getting-started
There is no further to discuss, there is only to find a fix.

Contributor

joeforjoomla commented Oct 2, 2016

I agree.. I don't agree.... what's game are you playing?
A CMS and what is a labelled as a new fabulous router can't generate in any case a shit link like this one:
http://localhost:8888/infograf768/?view=article&id=1:getting-started
There is no further to discuss, there is only to find a fix.

@mbabker

This comment has been minimized.

Show comment
Hide comment
@mbabker

mbabker Oct 2, 2016

Member

I'm not playing a game. I'm making a statement of fact. If there is broken logic in the existing system, it does NOT have to be carried forward in a new implementation. The featured article view is NOT a hierarchical view so to me it is broken and invalid logic to expect that to be used as a "parent" item for the generation of URLs. Using that menu item's configuration for the rest of the page behavior (because it is the system default, not the incorrectly labeled "Home" as it is in the UI) should continue (i.e. page metadata, module assignments, etc.), but the "issue" being pointed out here is the result of invalid expectations.

I would expect the same broken behavior if the homepage were a single category view and the article being routed to is an article NOT under that category (or if it has child categories one of those too). These are conditions where the system cannot correctly generate URLs because you're in a spot where there isn't a valid path to generate a proper URL.

The only thing that might be an acceptable fix is to generate a URL using the full category path in these cases but this still requires additional checks for every category up the tree to determine if there is a suitable menu item to use.

Member

mbabker commented Oct 2, 2016

I'm not playing a game. I'm making a statement of fact. If there is broken logic in the existing system, it does NOT have to be carried forward in a new implementation. The featured article view is NOT a hierarchical view so to me it is broken and invalid logic to expect that to be used as a "parent" item for the generation of URLs. Using that menu item's configuration for the rest of the page behavior (because it is the system default, not the incorrectly labeled "Home" as it is in the UI) should continue (i.e. page metadata, module assignments, etc.), but the "issue" being pointed out here is the result of invalid expectations.

I would expect the same broken behavior if the homepage were a single category view and the article being routed to is an article NOT under that category (or if it has child categories one of those too). These are conditions where the system cannot correctly generate URLs because you're in a spot where there isn't a valid path to generate a proper URL.

The only thing that might be an acceptable fix is to generate a URL using the full category path in these cases but this still requires additional checks for every category up the tree to determine if there is a suitable menu item to use.

@infograf768

This comment has been minimized.

Show comment
Hide comment
@infograf768

infograf768 Oct 2, 2016

Member

I would expect the same broken behavior if the homepage were a single category view and the article being routed to is an article NOT under that category (or if it has child categories one of those too). These are conditions where the system cannot correctly generate URLs because you're in a spot where there isn't a valid path to generate a proper URL.

The issue does not only exists for Featured page display indeed, but for ANY link which has not got a menu item. Test Modules categories for example.

Member

infograf768 commented Oct 2, 2016

I would expect the same broken behavior if the homepage were a single category view and the article being routed to is an article NOT under that category (or if it has child categories one of those too). These are conditions where the system cannot correctly generate URLs because you're in a spot where there isn't a valid path to generate a proper URL.

The issue does not only exists for Featured page display indeed, but for ANY link which has not got a menu item. Test Modules categories for example.

@infograf768

This comment has been minimized.

Show comment
Hide comment
@infograf768

infograf768 Oct 2, 2016

Member

@mbabker @Hackwar

Basically, what you are telling us is that we do have absolitely to create hidden menu items for everything if we want to use this new Router.
And that is why I think we should have a fall back.

Member

infograf768 commented Oct 2, 2016

@mbabker @Hackwar

Basically, what you are telling us is that we do have absolitely to create hidden menu items for everything if we want to use this new Router.
And that is why I think we should have a fall back.

@Hackwar

This comment has been minimized.

Show comment
Hide comment
@Hackwar

Hackwar Oct 2, 2016

Member

No, we are not saying that you have to create "hidden" menu items for everything. What we are saying is, that you have to create the right menu items. The same way it has been in Joomla since 1.5. Except that now we don't mask defective setups with unpredictable fallbacks.

Member

Hackwar commented Oct 2, 2016

No, we are not saying that you have to create "hidden" menu items for everything. What we are saying is, that you have to create the right menu items. The same way it has been in Joomla since 1.5. Except that now we don't mask defective setups with unpredictable fallbacks.

@mbabker

This comment has been minimized.

Show comment
Hide comment
@mbabker

mbabker Oct 2, 2016

Member

IMO you only need menu items for content (generic term, not articles) that otherwise has no other path which can create a proper URL. If you have an article in the Uncategorised category and neither that category or article have a menu item assigned, the result you're seeing is what I expect because there isn't a valid path anywhere in the system to generate that URL (as I noted an acceptable fallback may be to just write the URL using the category path but honestly the more I think of that the more I realize that's pretty error prone too). If the Uncategorised category has a menu item, the article should be correctly routed as /uncategorised/article. And obviously it be routed correctly if the article itself has a menu item.

The way I see it, what this new code does is not try to generate URLs for content which is in essence an orphan in relation to the menu configuration. And that makes complete sense to me.

Member

mbabker commented Oct 2, 2016

IMO you only need menu items for content (generic term, not articles) that otherwise has no other path which can create a proper URL. If you have an article in the Uncategorised category and neither that category or article have a menu item assigned, the result you're seeing is what I expect because there isn't a valid path anywhere in the system to generate that URL (as I noted an acceptable fallback may be to just write the URL using the category path but honestly the more I think of that the more I realize that's pretty error prone too). If the Uncategorised category has a menu item, the article should be correctly routed as /uncategorised/article. And obviously it be routed correctly if the article itself has a menu item.

The way I see it, what this new code does is not try to generate URLs for content which is in essence an orphan in relation to the menu configuration. And that makes complete sense to me.

@Hackwar

This comment has been minimized.

Show comment
Hide comment
@Hackwar

Hackwar Oct 2, 2016

Member

Spelling out simply the category path is not acceptable, since for example for /uncategorized/foo-bar you wouldn't know which component to choose. com_content, com_contact, com_newsfeed? You would have to at least prepend that with /component/, which we already do if there is no given Itemid. Since the application router right now however ALWAYS adds at least the current Itemid, this again fails horribly. That is what #12168 tries to fix.

Member

Hackwar commented Oct 2, 2016

Spelling out simply the category path is not acceptable, since for example for /uncategorized/foo-bar you wouldn't know which component to choose. com_content, com_contact, com_newsfeed? You would have to at least prepend that with /component/, which we already do if there is no given Itemid. Since the application router right now however ALWAYS adds at least the current Itemid, this again fails horribly. That is what #12168 tries to fix.

@infograf768

This comment has been minimized.

Show comment
Hide comment
@infograf768

infograf768 Oct 2, 2016

Member

Here I have another example of this behaviour:

Create an article tagged to a language (Italian for example). That article is ONLY displayed as a featured article and we do not have a menu item for its category.

Then edit an article tagged to another language (French for example), use the Article button in TinyMCE and select the former article.

The source shows correctly:
<a href="index.php?option=com_content&amp;view=article&amp;id=30&amp;catid=10&amp;lang=it-IT" hreflang="it">new article (Italian)</a>

Display in frontend the French article.

screen shot 2016-10-02 at 19 13 48
The link to the new article (Italian) is
http://localhost:8888/370/infograf768/it/?view=article&id=30
instead of
http://localhost:8888/370/infograf768/it/10-categoria-it-it/30-new-article-italian.html

Happily, we still get the correct sef tag, but it really looks bad...

Another one on the same page, the button links to the associated articles in the info block give (example for IT)
http://localhost:8888/370/infograf768/it/?view=article&id=3:articolo-it-it

Therefore, the only way to get a quite nice url IS to create hidden menu items at least to each category on the site.

Member

infograf768 commented Oct 2, 2016

Here I have another example of this behaviour:

Create an article tagged to a language (Italian for example). That article is ONLY displayed as a featured article and we do not have a menu item for its category.

Then edit an article tagged to another language (French for example), use the Article button in TinyMCE and select the former article.

The source shows correctly:
<a href="index.php?option=com_content&amp;view=article&amp;id=30&amp;catid=10&amp;lang=it-IT" hreflang="it">new article (Italian)</a>

Display in frontend the French article.

screen shot 2016-10-02 at 19 13 48
The link to the new article (Italian) is
http://localhost:8888/370/infograf768/it/?view=article&id=30
instead of
http://localhost:8888/370/infograf768/it/10-categoria-it-it/30-new-article-italian.html

Happily, we still get the correct sef tag, but it really looks bad...

Another one on the same page, the button links to the associated articles in the info block give (example for IT)
http://localhost:8888/370/infograf768/it/?view=article&id=3:articolo-it-it

Therefore, the only way to get a quite nice url IS to create hidden menu items at least to each category on the site.

@Hackwar

This comment has been minimized.

Show comment
Hide comment
@Hackwar

Hackwar Oct 2, 2016

Member

Or to the root category of your content. And that is indeed the right way.

Member

Hackwar commented Oct 2, 2016

Or to the root category of your content. And that is indeed the right way.

@Hackwar

This comment has been minimized.

Show comment
Hide comment
@Hackwar

Hackwar Oct 2, 2016

Member

There also was a time when the categories view was not a castrated copy of the category view and listed all categories and it would have been a valid fallback.

Member

Hackwar commented Oct 2, 2016

There also was a time when the categories view was not a castrated copy of the category view and listed all categories and it would have been a valid fallback.

@infograf768

This comment has been minimized.

Show comment
Hide comment
@infograf768

infograf768 Oct 3, 2016

Member

@Hackwar
B/C failure:
Using legacy router (no menu item for the contact concerned), I get different results when clicking on Written by creator contact link in info block as well as when entering a link to a user contact in an article (of the type:
<p><a href="index.php?option=com_contact&amp;view=contact&amp;id=3&amp;catid=16&amp;lang=en-GB" hreflang="en">contact en</a></p>)

Staging:
http://localhost:8888/testwindows/trunkgitnew/en/component/contact/contact/3.html

in 3.7.0-dev, the Itemid is added although it is useless
http://localhost:8888/370/infograf768/en/component/contact/contact/3.html?Itemid=102

Member

infograf768 commented Oct 3, 2016

@Hackwar
B/C failure:
Using legacy router (no menu item for the contact concerned), I get different results when clicking on Written by creator contact link in info block as well as when entering a link to a user contact in an article (of the type:
<p><a href="index.php?option=com_contact&amp;view=contact&amp;id=3&amp;catid=16&amp;lang=en-GB" hreflang="en">contact en</a></p>)

Staging:
http://localhost:8888/testwindows/trunkgitnew/en/component/contact/contact/3.html

in 3.7.0-dev, the Itemid is added although it is useless
http://localhost:8888/370/infograf768/en/component/contact/contact/3.html?Itemid=102

@infograf768

This comment has been minimized.

Show comment
Hide comment
@infograf768

infograf768 Oct 5, 2016

Member

I have tested this item successfully on 8dc616b

@rdeutz

This PR title is misinforming.
The ID removal works fine.
BUT it also corrects major bugs in the routers which make it a release blocker.

Although some aspects of this "modern router" may need further discussion (legacy, fall back) and eventually corrections, nothing is possible until this is merged.
Please merge asap.


This comment was created with the J!Tracker Application at issues.joomla.org/tracker/joomla-cms/11320.

Member

infograf768 commented Oct 5, 2016

I have tested this item successfully on 8dc616b

@rdeutz

This PR title is misinforming.
The ID removal works fine.
BUT it also corrects major bugs in the routers which make it a release blocker.

Although some aspects of this "modern router" may need further discussion (legacy, fall back) and eventually corrections, nothing is possible until this is merged.
Please merge asap.


This comment was created with the J!Tracker Application at issues.joomla.org/tracker/joomla-cms/11320.

@infograf768

This comment has been minimized.

Show comment
Hide comment
Member

infograf768 commented Oct 5, 2016

RTC


This comment was created with the J!Tracker Application at issues.joomla.org/tracker/joomla-cms/11320.

@joomla-cms-bot joomla-cms-bot added the RTC label Oct 5, 2016

@zero-24 zero-24 added this to the Joomla 3.7.0 milestone Oct 5, 2016

@wilsonge wilsonge merged commit 9f7bca7 into joomla:3.7.x Oct 5, 2016

3 checks passed

JTracker/HumanTestResults Human Test Results: 2 Successful 0 Failed.
Details
continuous-integration/drone the build was successful
Details
continuous-integration/travis-ci/pr The Travis CI build passed
Details
@Hackwar

This comment has been minimized.

Show comment
Hide comment
@Hackwar

Hackwar Oct 5, 2016

Member

🎉 😘 THANK YOU SO MUCH!!!

Member

Hackwar commented Oct 5, 2016

🎉 😘 THANK YOU SO MUCH!!!

@joomla-cms-bot joomla-cms-bot removed the RTC label Oct 5, 2016

wilsonge added a commit that referenced this pull request Oct 29, 2016

[4.0] Merge staging (#12622)
* added show/hide introtext parameter to mod_articles_news

* added <?php if (!$params->get('intro_only')) : ?> back again since it might be a B/C setting/parameter

* added tabs in code

* Update mod_articles_news.xml

* Update _item.php

* corrected typo from last merge

* changed label and description

* Add JHtmlBootstrap for front-end editing. Fixes #11562

* Implementing Menu Items modals (New feature)

* Wrong class for chosen (#11820)

* 3.7.0: Using the new modal_menu field in various core places (#11694)

* Using the new modal_menu field in various core places

* Simplifying clearField

* Simplify conditional

* Parenthesis replaced by mdash

* Using modal_category field in various core locations

* 3.7.0: New Feature=>editor-xtd to insert menu items links in content (#11721)

* 3.7.0: New Feature=>editor-xtd to insert menu items links in content

* correcting some errors

* quoting for sql azure

* one more

* Changed icon + lang constants

* Chosen upgrade. Fixes #11779

Squashed commit of the following:

commit 48051c7
Author: Brian Teeman <brian@teeman.net>
Date:   Thu Aug 25 14:31:04 2016 +0100

    css change only

commit 90a89fd
Author: Brian Teeman <brian@teeman.net>
Date:   Thu Aug 25 14:28:58 2016 +0100

    Revert "css fix thanks @C-Lodder"

    This reverts commit f7320cf.

commit f7320cf
Author: Brian Teeman <brian@teeman.net>
Date:   Thu Aug 25 14:09:03 2016 +0100

    css fix thanks @C-Lodder

commit 42c9de3
Author: Brian Teeman <brian@teeman.net>
Date:   Wed Aug 24 18:10:33 2016 +0100

    fix permissions

commit b8fdd34
Author: Brian Teeman <brian@teeman.net>
Date:   Wed Aug 24 18:07:53 2016 +0100

    add minified version of js

commit 0ef056d
Author: Brian Teeman <brian@teeman.net>
Date:   Wed Aug 24 17:59:55 2016 +0100

    add documented js hacks

commit c68c275
Author: Brian Teeman <brian@teeman.net>
Date:   Wed Aug 24 17:48:01 2016 +0100

    add comment block

commit 983dbf5
Author: Brian Teeman <brian@teeman.net>
Date:   Wed Aug 24 17:08:47 2016 +0100

    rename liszt: chosen:

commit 8caad73
Author: Brian Teeman <brian@teeman.net>
Date:   Wed Aug 24 17:07:47 2016 +0100

    Revert "rename liszt: chosen: and add JUI hacks"

    This reverts commit 8611671.

commit 8611671
Author: Brian Teeman <brian@teeman.net>
Date:   Wed Aug 24 17:06:21 2016 +0100

    rename liszt: chosen: and add JUI hacks

commit 535bea0
Author: Brian Teeman <brian@teeman.net>
Date:   Wed Aug 24 16:45:14 2016 +0100

    replace chosen: with liszt:

commit 2686df5
Author: Brian Teeman <brian@teeman.net>
Date:   Wed Aug 24 16:43:35 2016 +0100

    replace _chosen with _chzn

commit 691be65
Author: Brian Teeman <brian@teeman.net>
Date:   Wed Aug 24 16:42:49 2016 +0100

    replace chosen- with chzn-

commit 863b5f9
Author: Brian Teeman <brian@teeman.net>
Date:   Wed Aug 24 16:37:20 2016 +0100

    update js with original version

commit 537735c
Author: Brian Teeman <brian@teeman.net>
Date:   Wed Aug 24 16:36:19 2016 +0100

    remove min js

commit e739562
Author: Brian Teeman <brian@teeman.net>
Date:   Wed Aug 24 16:35:21 2016 +0100

    replace chosen- with chzn-

commit db82431
Author: Brian Teeman <brian@teeman.net>
Date:   Wed Aug 24 16:33:46 2016 +0100

    update css file with original version

commit 24a955b
Author: Brian Teeman <brian@teeman.net>
Date:   Wed Aug 24 16:29:34 2016 +0100

    update sprites

commit 4856d5e
Merge: 4ddd833 f10ab35
Author: Brian Teeman <brian@teeman.net>
Date:   Tue Aug 23 16:23:34 2016 +0100

    Merge branch 'staging' of https://github.com/joomla/joomla-cms into staging

commit 4ddd833
Merge: b5ffa27 8258906
Author: Brian Teeman <brian@teeman.net>
Date:   Mon Aug 22 10:30:58 2016 +0100

    Merge branch 'staging' of https://github.com/joomla/joomla-cms into staging

commit b5ffa27
Merge: 24e6c45 e80e319
Author: Brian Teeman <brian@teeman.net>
Date:   Sun Aug 21 17:45:45 2016 +0100

    Merge branch 'staging' of https://github.com/joomla/joomla-cms into staging

commit 24e6c45
Merge: 962b424 c1b0295
Author: Brian Teeman <brian@teeman.net>
Date:   Fri Aug 19 21:08:30 2016 +0100

    Merge branch 'staging' of https://github.com/joomla/joomla-cms into staging

commit 962b424
Merge: 14f5b1c 4c539c4
Author: Brian Teeman <brian@teeman.net>
Date:   Thu Aug 18 12:06:49 2016 +0100

    Merge branch 'staging' of https://github.com/joomla/joomla-cms into staging

commit 14f5b1c
Merge: 2baa00b edb70c2
Author: Brian Teeman <brian@teeman.net>
Date:   Mon Aug 15 10:06:07 2016 +0100

    Merge branch 'staging' of https://github.com/joomla/joomla-cms into staging

commit 2baa00b
Merge: 97d1fb7 f827dfc
Author: Brian Teeman <brian@teeman.net>
Date:   Sun Aug 14 22:38:02 2016 +0100

    Merge branch 'staging' of https://github.com/joomla/joomla-cms into staging

commit 97d1fb7
Author: Brian Teeman <brian@teeman.net>
Date:   Sun Aug 14 16:28:13 2016 +0100

    Revert "toolbar"

    This reverts commit 8f995f1.

commit 8f995f1
Author: Brian Teeman <brian@teeman.net>
Date:   Sun Aug 14 16:27:57 2016 +0100

    toolbar

* Two search modules on same page: Invalid HTML. (#11229)

* Add postfix for unique id ($module->id)

* Respect postfixes for unique id in mod_search

* Reduce use of JFactory::getConfig() where practical

* Allow registering callback functions for the debug console. Fixes #11700

* Allow adding script options without inline JavaScript. Fixes #11671

* Adding "category on fly" functionality when create/edit contact. Fixes #11354

* New method for retrieving the strings from the store. Fixes #11692

* [html5] Hathor administrator template. Fixes #10634

* [Optimize] Generate thumbnail image method to avoid pixelated error in thumbnails. Fixes #7919

* Fix since tag

* Normalise Block this User button styling. Fixes #11421

* [html5] System administrator template. Fixes #10638

* URL checking improved in com_wrapper. Fixes #4670

    When adding the scheme to an URL use correct scheme (http or https) and port.
    Checking for "http" or "https" via strstr() in the URL matched also these strings embedded in the URL (e.g. in /static/http/index.html), due to that checks changed to strpos().

* Update en-GB.com_users.ini (#11909)

* Templates are in the scope of JDocument. Fixes #10847

* Small review/cleanup in JHtml. Fixes #10771

* Fix form field unit tests. Fixes #11910 Fixes #11413

* Improvements to article modals (with Create Article button). Fixes #11830

* [com_content] - Allow captcha when submit article. Fixes #10976

* Proxy JData to the Framework. Fixes #11588

* [newsfeed modal field] Adds Create News Feed button and other improvements. Fixes #11862

* Allow force refreshing the cache when getting fields in JTable. Fixes #11046

* Allow a custom page title to be defined for an article without a menu item. Fixes #10838

* Code review on com_content component. Fixes #10851

* [category modal field] Adds Create Category button and other improvements. Fixes #11857

* Joomla.JText uses scriptOptions 'joomla.jtext'. Fixes #11690

* Remove legacy frame breaking js code. Fixes #11679

* [contact modal field] Adds Create Contact button and other improvements. Fixes #11858

* Support collection of custom stats in admin stats module. Fixes #10870

* Use intro_image in newsfeed. Fixes #11402

* [com_tags] - Add count and link to tagged items. Fixes #10895

* Allow the vote plugin's position to be configured. Fixes #11375

* Return a 403 status code instead of a 404 for a not accessible category. Fixes #11624

* Add Sort by Modified Date in the Module mod_articles_news (#11128)

* Update mod_articles_news.xml

At present the sorting by date has the options to sort the articles by Published Up date and Created Date.  Adding another sort option to sort the articles by the Modified Date has been added.  This addition would be of help to list the articles that are modified recently.

* Update en-GB.mod_articles_news.ini

Added the following language string that would be used in the xml file of the module mod_articles_news.
MOD_ARTICLES_NEWS_FIELD_ORDERING_MODIFIED_DATE="Modified Date"

* Update mod_articles_news.xml

The value a.modified has been added to the Direction

* Cleanup deprecated unused files. Fixes #11762

* Add Polyfill js for legacy browsers (adds events and classlist polyfills). Fixes #11686

* [com_content] Add icons layout. Fixes #10423

* [3.7.x] Fixes issues with the category article view after #11624 (#11943)

* Update category.php

* Update category.php

* Fixing missing getItems in mock JMenu for (routing) unittests. Fixes #11936

* Enable caching of menu data in JMenuSite (#10797)

* Enable caching of menu data in JMenuSite

* Use a lambda function for the query instead

* Add Microseconds to JDate('now') (#11890)

* Update date.php

* Update date.php

* cleaner code

* simplify

* Update date.php

* Router options (#11962)

* Router options

* switch sentences

* [unit tests] Just need to check one microsecond now (3.7.x Branch) (#11966)

* Update JHtmlDateTest.php

* Update JFactoryTest.php

* Fix button classes (#11971)

* Fix javascript tests (#11993)

* fix javascript tests

* typo

* change the order to test Joomla.optionsStorage = null

* ordering again

* Add chosen to module order field (#11992)

* remove crap, add chosen

* s

* New Routing: Fix category routing without menu items

* [category item modal field] Apply on more fields for categories. Fixes #11920

* Patch #6712 - FieldCheckbox attribute default (#6794)

* Patch 6712 - FieldCheckbox attribute default

Checkbox field does not allow defining a value without being checked
#6712

* fix code style

* Added a clean line

Added a clean line befor the if @zero-24

* IS (list views) - Replace html/pagination.php::pagination_list_footer() by JLayouts. Fixes #11246

* Fix no menu item pages giving wrong links (#12020)

* Fix routing for non-sef menu items with Modern Routing (#12021)

* Phase out JString calls in libraries (#12058)

* Admin app - JString -> StringHelper (#12056)

* Site app & Plugins - JString -> StringHelper (#12057)

* New Feature, Multilanguage: Add the possibility of displaying associations in article info and in articles list. Replaces #11935 (#12042)

* Replaces

* Modifying to fit Thomas proposal

* modifying fetching flags param

* adding showon + some

* [JAccess] Improve ACL asset preloading performance/memory consumption (#12028)

* improve component asset preload speed

* Update user.php

* Update access.php

* Update access.php

* Update access.php

* Update access.php

* not convinced yet, but revert changes in juser

* make sure that components are always preloaded

* only a logged users (with user id) can be root.

* [com_content] - add articles ordering by votes, ratings (#11225)

* Add setDocumentTitle() function in JViewLegacy (#11399)

* setDocumentTitle() function in JViewLegacy

* PHPCS

* set new counts too center

* fir for  #11225

* There is no need for the extra spaces at the end of the line :)

* fix typo

fixed typo

* allow to hide session too in plugin system debug

* deprecate keychain for 3.0

* deprecate fof

* deprecate fof

* Update include.php

* deprecate old ciphers

* Fix Travis error in keychain (#12157)

* fix travis

* space

* Allow JHtmlDate::relative to set a custom format (#12164)

* Updated installation language files.

* Fix typo in cache memcached storage (#12150)

* div doesn't support type=button (#12131)

* JFile - error fix "Cannot pass parameter 2 by reference" (#11952)

* Fix of an error "Only variables should be passed by reference"

If you pass a string to methods ````append```` or ````write````, you will have an error ````Only variables should be passed by reference````

* Update file.php

* Update file.php

* Custom calendar is not applied to version history preview and compare dates (#12138)

* Custom calendar is not applied to version history preview and compare

* simplify code. Thanks Thomas.

* Update preview.php

* Update compare.php

* Update MediaElement.js to 2.23.0 (#11981)

* Allow JHtmlDate::relative to set a custom format

* Add doc block comment

* Proposed onAfterRenderModules event in modules rendering (#10113)

* Updated pull request #3105 to latest stage (2016-04-24) inclusive unit test

* CS fix

* Update JDocumentRendererHtmlModulesTest.php

* fix expected value for the unit test

in #10113 a unit test was added but failed, this is a fix

* Deprecate web router classes

* Localise the format for the calendar formfield (#12102)

* Localise the format for the calendar formfield

* Adding comment

* Support all formats

* Label - Mass Mail Users v2 (#12084)

* Added optional suffix text to Mass Mail Form page (#12078)

* Add Unpublished Content Language on Language Package Install (#11867)

* initial commit

* Update language.php

* Update en-GB.lib_joomla.ini

* Update en-GB.lib_joomla.ini

* ups

* Update language.php

* Update language.php

* Update language.php

* change native to $siteLanguageManifest['name']

* allow to install published content languages on install 1

* allow to install published content languages on install 2

* solve remaining issues

* cs

* fix language names and simplify

* cs

* improve code and deprecate unneed code

* fix title issues (as possible with current xml scenario)

* remove non existent metadata values

* shoudl not be row, it should be tableLanguage

* don't fallback to en-GB native title

* tinyMCE use document "scriptoptions", and allow to override tinyMCE Javascript parameters (#11157)

* tinymce initialization, use addScriptOptions and tinymce-init.js

* Finalize tinymce-init.js

* Small improve for code duplication

* Allow multiple editors with diferent options

* Setup default options for the editor script only once

* Minified version of tinymce-init

* code style

* Improve a bit

* Reply to email (#11015)

*  Reply to email

* Reply to email: configuration file chnages resolved

* #11015 Reply to email: suggested changes fixed

* Media form field bootstrapped with static preview (#10889)

* Bootstrap popup with mootols compatibility

* restore static preview

* 💩

* 😡

* fixes

- Delete extra </div>
- Move preview under the input field
- respect landscape/portrait images

* typo

* Utilise unionAll element in the select query, previously it was always being ignored. (#10817)

Rearrange union > unionAll > order to render a valid query when all these three are used together in a query.
Fix return type in method doc blocks.

Update test case for the JDatabaseQuery::toString method to test all the element for select query.

* Introduce new method isClient($identifier) in JApplicationCms class (#8971)

* Introduce new method isClient($identifier) in JApplicationCms class as a substitute for isSite and isAdmin methods.

Hence, remove usage of descendant class reference in the JApplication (legacy) and JApplicationCms for better OO structure and support more extensibility.

* Added unit tests for JApplicationCms::isClient($identifier);

* Fix, null == 0 passes. Avoiding strict check to allow use of '0' or '1' as string as well as integer.

* Removed support for integer argument which matched client_id as discussed with @mbabker, thanks.

* fix com_finder regression (#12236)

* Core.js AJAX method (#11585)

* Core.js even listeners

* Core.js: method for ajax requests

* Code style

* Some example and minified version

* Core.js even listeners, use IE fallback

* Core.js remove even listeners fallback

* 370: solving #11225 merge regression (#12238)

* 3.7.x: Porting #11225 to beez (#12240)

* Move keepalive to external js (#8545)

* Keepalive with data attributes

* cs

* cs

* cs empty line

* Not seconds ...

* object

* No double entities

We have to use JRoute without xhtml or else the admin keep alive URL get
double entities `&amp;amp;?`

* From chocolate to vanilla ...

Works with vanilla js!
Works if onload event is already fired when script is executed.
This way the js file can be loaded on render, asyncronous or deferered
to after the onload event.
Should be cross-browser compatible.

* improvements

* cs

* default options, move to jui folder, asynchronous loading

* simple correct to work with new script attributes PR (11289). Adds auto version hash.

* update to match #11289 JHtml script behaviour

* use __DEPLOY_VERSION__

* cs and simplify

* Update behavior.php

* Update keepalive.js

* Update keepalive.min.js

* Update keepalive.js

* Update keepalive.min.js

* fix conflicts 1

* use new addScriptOptions and Joomla.request methods

* fix unit tests

* fix last unit test

* [menu item modal field] Adds Create Menu Item button and other improvements (3.7.x branch) (#11916)

* Update modal.php

* Update edit.php

* Update view.html.php

* Update item_alias.xml

* Update default.xml

* Update logout.xml

* Update mod_login.xml

* Update mod_login.xml

* Update mod_menu.xml

* Update item.php

* Update menu.php

* Update menu.php

* Update en-GB.com_menus.ini

* minor cs

* corrections

* solve no item text issue

* New show_info option (hide/show) in com_contact and some minor changes (#8607)

* several improvments

* lang changes

* minor changes

* fix conflicts

* fix conflicts 2

* revert

* fix conflicts final

* [3.7.x] Lets use the correct API to get this string translated (com_postinstall) (#12247)

* add files joomla

* lets make the languagestring checker happy

* cs

* add missing string (#12246)

* fix missing string (#12245)

* Deprecate MooTools based helpers (#12268)

* Deprecate MooTools based helpers

* PHPCS sucks...

* fix redirect plugin messages (#12280)

* remove dublicate message (#12279)

* Allow users to share sessions between apps (#12068)

* Allow users to share sessions between apps

* Address all metadata related stuff

* warning (#12285)

merged on review

* [3.7.x] Fix Regression #12277: language selector blocked on edit when there are no associations (multilanguage) (#12283)

* category edit: check if there are associations

* contact edit: check if there are associations

* articles edit: check if there are associations

* menus edit: check if there are associations

* newsfeed edit: check if there are associations

* Admin - Simplify instantiation of Registry (#12270)

* [j3.7] New Feature Contact editor-xtd plugin (#12252)

* New editor-xtd contact plugin

* docs

* update sql

* add contact icon

* prevent loading in com_banners where it is useless

* Installation sql

* correct installation

* extra line feed

* __DEPLOY_VERSION__

* __DEPLOY_VERSION__

* com_admin script

* Update contact.php

* Update contact.php

* Update contact.php

* Update contact.xml

* Update en-GB.plg_editors-xtd_contact.sys.ini

* Update en-GB.plg_editors-xtd_contact.ini

* Update 3.7.0-2016-10-01.sql

* Update 3.7.0-2016-10-01.sql

* Update 3.7.0-2016-10-01.sql

* Routing: Remove IDs from SEF URLs (#11320)

Also fixes various bugs in the new router

* Run SEF plugin also when SEF URLs are not enabled (#11035)

* remove menu button

* Update note.xml

* string, not array

* Redo Isis flat repaint (Closes #11832) (#12319)

* Isis flat repaint - Initial commit

* Tags field refinement

* Fixed field height inconsistency

* RTL support added

* Minor fixes

* Installation flat repaint

* Revert install flat repaint

* Chzn flat styling separated to chzn-override.less

* Missing the in language string

* TinyMCE xtd-button close (again, really) and drop jquery (#12324)

* drop jquery, fix jModalClose()

* classList polyfill not needed here

* window.width (seriously?), merge options

* use Joomla.extend()

* my bad

* IE<9

* Add attribs to the script tag, add version to JHtml script methods and deprecate MD5SUM (alternative to 8540) (#11289)

* new method to add attrbibs to the script tag

* corrections

* defaultJsMimes

* add deprecated comment

* travis

* further simplify

* remove extra space

* forgot to convert mime to type

* add UTF-8, ENT_COMPAT to htmlspecialchars (like previous done in all other places)

* cs line size fix

* better coding

* small typo

* elseif

* deprecate MD5SUM and don't allow two version hashes

* add JLog deprected warnings for new method signatures

* cs line size

* fix conflicts 1

* fix conflicts 2

* refactor JHtml script method signature

* deprecate addScriptVersion add options for version and conditional statements

* Update head.php

* cs

* cs fix

* Change all self::getMd5Version to static::getMd5Version

* has changed

* has changed

* fix conflicts - part one

* fix conflicts

* correct unit test

* [3.7] Readme updates (#12387)

* [languages] Organize and new metadata (Native language and calendar type) (#12036)

* Update en-GB.xml

* Update en-GB.xml

* Update en-GB.xml

* Update en-GB.xml

* Update en-GB.xml

* Update en-GB.xml

* Update en-GB.xml

* fix unit tests

* add to install.xml in unit tests

* correct unit tests

* remove extra tab

* ident with tabs, not spaces!

* installation should have en-GB in name

* en-GB ...

* correct db jos_languages csv stub also

* add missing pkg_en-GB extension to extension stub and correct language extension names

* correct sql files

* correct sql files

* correct sql files

* add en-GB, instead of UK, to batch test

* correct JTableLanguageTest::testStore

* Update install.xml

* Update install.xml

* same replacements in test stub

* Update en-GB.com_languages.ini

* correct last unit test

* Update en-GB.xml

* Update JLanguageTest.php

* Update en-GB.xml

* Update en-GB.xml

* use the new nativeName is exists

* Make language flags in backend optional (#12051)

* Allow to select none image in language

* admin menu module: fall back to a label if no image is selected or image doesn't exist

* "Default" buttons in template styles and menuitems list views

* remove unneeded variable

* Remove empty flag span

* Show language code instead of flag in associations tooltip if no image is selected

* show language label instead of flag if no images is assigned

* Adjust Hathor overrides

* Codestyle fixes

* Missed contact JHtmlContact::association()

* Use a popover for the association tooltips

* Taking care of mod_languages

* Fix flag preview

* show sef in module assignments.

* Fixing frontend Associations

* Fixing menu assignment modal

* a e

* a i

* a o

* a u

* a a - javascript

* js

* Replace uses of JRegistry

* Simplify instantiation of Registry objects

* [3.7] Isis Flat Repaint - Minor Fixes (#12349)

* Removed text shadow

* Remove text-shadow

* Modal save mouseover fix

* Changed to individual removal of text-shadow

* sidebar-nav margin fix

* Fix hover color on all BS btn

* Re-align permissions chzn

* Show configured upload limit when uploading files (redo of #11255) (#12396)

* * Show configured upload limit when uploading installer package. Otherwise when uploading a larger file than the configured limit, the page reloads without any information about what went wrong.
* Show upload limits for file input everywhere. Refactor the calculation part to JUtility class.

* Honour template manager configuration to display upload size limit

* In Hathor: Honour template manager configuration to display upload size limit

* Add deprecated message that in 4.0 the html5 property will be default true (#12430)

* Will be replaced by $html5 and the default value will be true.

* Update html.php

* CodeMirror 5.19 (#12300)

* corrections/improvements (#12429)

* Fixing notice for non-existing views (#12434)

* [3.7.x] Admin login language field fix (#12442)

* Admin login lang fix

* Admin login lang field alignment

* New xtd_contact lang files missing in install.xml (#12452)

* Make more use of the autoloader (#12060)

* Fix error in mergeHeadData method for html document (#12013)

* Extend test for document html links

* Fix mergeHeadData method for html document->_links

* correct table html errors (#12129)

* [users list modal] ismoo parameter need to still exist after form submit (solve #12122) (#12137)

* ismoo parameter need to exist after form submit

* int

* default to 1

* Replaced rand() with mt_rand() projectwide (#12169)

* Replaced rand() with mt_rand() projectwide

* session package is from the framework so we need to revert that change at this point

* fof is an external lib so we need to revert that change at this point

* fof is an external lib so we need to revert that change at this point

* Use global as default option (#12186)

* Solving 12214 Plugin tooltip (#12215)

* JLayoutFile wrong type hint (#12231)

* JLayoutFile wrong type hint

* CS

* CS / Review for the editor plugins (#12260)

* cs review for the editor plugin

* cs

* Update image.php

* Call to undefined method stdClass::get()

* use the warning and error (#12265)

* error not notice (#12273)

* Remove deprecated function (#12296)

* Minor language string change for com_contact (#12339)

* Redo Isis flat repaint Installation (Closes #11917) (#12342)

* Installation flat repaint - Initial commit

* Install flat repaint - Initial commit

* Add missing period (#12356)

* Change language string (#12364)

* Allow loading plugin language strings from extension folder (#12403)

* some cs changes after #12396 (#12431)

* [3.7.x] Update js polyfills to 3.13.0 (#12513)

* Update polyfill.event-uncompressed.js

* Update polyfill.event.js

* update classlist polyfill

* Update polyfill.classlist.js

* minor changes

* minor changes in doc block

* move jquery to template (#12521)

* fixing typo in the comment (#12523)

Just a small typo in the comment.

* Update CREDITS (#12534)

* Update CREDITS

Removing old content that has been moved to a dedicated page on the Joomla! Documentation and adding a link to new contributors page on GitHub.

* Update CREDITS

* Updated installation language files

* 2fa handeling for mcrypt and openssl (#12497)

* handeling for mcrypt and openssl

* Language changes suggested bei Brian

* Prepare 3.6.4 Stable Release

* Mark _autoload function as public and not private. (#12478)

* Mark _autoload function public.

*  whitespace was hanging out

* Revert _load to private

* issing language strings in frontend lib.joomla.ini (#12468)

* forum link to https (#12467)

* [a11y] Protostar back to top (#12446)

* [a11y] Protostar - back to top link

* Oops Andre was right

* add anchor for non-js enabled browsers

* [3.7.x] Convert installation template to html5 (also move inline scripts to js) (#12444)

* convert to html5, use the api for inline scripts

* stupid mistake

* ok let's remove all that inline js ...

* Fix early exit from foreach in JForm::removeGroup (#11856)

* Fix early exit from foreach in JForm::removeGroup

The method is supposed to remove all instances of <fields> element but it exits the loop on first iteration only. Looks like a quick copy-paste from removeField may have caused this.

* Never returns false

* keepalive for editing forms (#12163)

* Remove retina 2x sprite (#12528)

* Set a proper default value for getParams always (#12463)

* Correct spelling (#12564)

* Remove JFilter mock (#12484)

We don't need JFilter hanging out in the JInstaller Adapter tests

* Stop allowing failures on PHP 7.1 (#12599)

* Improvements in the Associations Edit Workflow (#12344)

* changes in model preprocessForm to allow all associations fields to be dumped

* adjustement

* there is no need to block the language field now

* simplify association tab in the templates files

* let's make the layout more dynamic

* add the js behaviours

* solve one of strange bug ...

* improvements and allow associations on create

* correct language string

* render a warning message

* solve categoies issue

* add new language methods getContentLanguages and getInstalledLanguages

* let's now load all content languages, including the unpublished ones

* correct label for bug in categories modal field! all other model fields have this

* ups correction in js

* default pivot is language code

* doc blocks corrections

* cs

* language correction thanks brian

* fix conflicts final

* When $this->cursor is false, throw an Exception (#12359)

A call to pg_result_error_field() when $this->cursor is false from a query failing will result in an error `pg_result_error_field() expects parameter 1 to be resource, boolean given`

Try to get a valid error message and throw a JDatabaseExceptionExecuting Exception

* Implement a check / notification for an invalid or missing access file (#12608)

* Implement a check / notification for an invalid or missing access file

* Add language string for invalid or missing access file notification

* Add language string for invalid or missing access file notification

* Reduce log message as suggested by mbabker

* Reduce log message for #12608 as suggested by mbabker

* Reduce log message for #12608 as suggested by mbabker

* Change string to match actual translation text

* Grid within well changed to row-fluid (#11995)

* update doc block (#12569)

* Folder icons in front end (#12551)

* Add folder size to protostar .less

* compiled protostar

* rename folder value (#12579)

* [3.7.x] Regression Hathor modules and users manager (#12412)

* Native language (adjustments after 12036 merge) (#12394)

* restore native language

* remvoe space

* correct

* simplify

* improve code

* ups

* native language in unit test too

* Add detachObserver (#11037)

* Add detachObserver

Adds ability to detach observers

* Simple CS fix

* 3.6.4 Sample data: Escape quota in json data (#12501)

* [fix] new extensions not installed on already existing packages (#12545)

* $menu->params is already a Registry object. (#12557)

* Overridden strings in both back-end and front-end (#12576)

* [imp] remove hardcoded published column (#12585)

* Fix JUri path in language filter plugin (#12600)

* Custom fields (#11833)

* Update gallery.xml

* Update fields.php

* Update internal.php

* Update field.php

* Update dprules.php

* Update section.php

* Update base.php

* Update view.html.php

* Update view.html.php

* Update render.php

* Update modal_article.php

* Update sql.php

* Update fields.php

* Remove commented debug code

* Update fields.php

* #14 fixed Joomla Coding Standards and added function dock blocks code

* #14 fixed Joomla Conding Standards and added function dock blocks

* #14 Fixed class dock block mistake

* we did not require this any more

* #14 fixed Joomla Coding Standards and added function dock block in helper file at back-end

* #14 Fixed only Joomla Coding Standards in FieldsHelper file

* #14 removed where function, added dock blocks and fixed dock bocks coding standards errors

* #14 formatted as the function doc blocks

* #14 formatted as the function doc blocks

* Check the active menu correct

Closes #72

* Move the label field to the options tab

Closes #22

* Label has it's own field and must not stay in params

Regression from #22

* Backport from Digital-Peak/DPFields#32

* Fix the save and copy action

Closes #37

* Store data on reload

Closes #76

* Don't add always the All language to the query

Closes #38

* Count the items in the category manager from com_fields

Closes #61

* Corrected colspan when fields are assigned to a language

* #14 fixed conflict

* Don't save the All category

Closes #19

* Minor language updates

* Fix "Show On" tooltip's description

The tooltip's description for the 'Show On' field is not showing because it is currently looking for the label.

* Don't hardcode com_content.article

Closes #80

* Load the types form when the data is an array

* Create the links correct for the count item feature

Closes #82

* Show the value from com_fields instead of the the users helper

Closes #81

* Set the language correct on the fields cache

Closes #47

* Removed string conversion error

Closes #47

* Changed links to 3.7

* Remove legacy DPFields code

* Get data from state correctly

* Add joins to the com_fields in search plugin (#83)

Add joins to com_fields in the content search plugin

* Add new core rule core.edit.value (#75)

* Add 'onFieldBeforePrepare' and 'onFieldAfterPrepare' events

* Rename "Field Category" to "Field Group"

Closes #91

* Add option to disable custom fields per component

Closes #87

* Use select box to define the images directory

Closes #97

* Truncate correctly

Closes #101

* Change description field to plain textarea

Closes #94
CLoses #99

* Parameters are more clear and improved comment

Adapted change from
32c9048

* onFieldBeforePrepare and onFieldAfterPrepare events now triggered even when custom field value is empty

* Cast before access

* Create params even when they are empty

* Add com_fields menu entries on back end

Closes #109

* Extract the context correctly

Closes #112

* Add custom fields for contact

* Add inline group create

Closes #114

* Add simple context mapping

Closes #117

* Dont assign a not existing category when a field is saved with no catid

* Rename string with group and not category

Closes #124

* Category strings should be named Field Groups

Closes #126

* Show the fields on the blog listing

Closes #108

* Installer crashes somehow

Closes #132

* Merge the types set up into JFormField (#104)

* Merge field types into JFormFields

* Converting the rest of the fields

* Merge DP Field Rendering with Joomla Form Fields

* Remove the gallery scripts

* Rename the interface to JFormDomfieldinterface for auto loading

* Add article field as demo how a component can add fields

* Removing mustache, will be replaced later with a new parser

See #12 for the discussion

* Fixing composer setup, reverting to 3.6.x branch

* Fixing code style errors

Closes #14

* Rename upgrade file to 3.7

* Strip slashes from description

Related to #139

* Removing Simplepie from the database installer script

Reverts 8381e46
See comments for more information

* Show field group description in form

Closes #139

* List field changed key to value and value to name

Closes #121

* Use the first category as field filter when creating an article

Closes #144

* Dont show a user field on the front end

Closes #149

* Add always the fields path when adding the custom fields

Closes #150

* Added hint (placeholder) option

Closes #151

* Correct redirect after checkin action

Closes #154

* Check for group access levels when getting the fields (#153)

* Consider field group state

Closes #155

* Added missing language strings

Closes #129

* JArrayHelper => ArrayHelper

* reduce model method (#160)

* Fixing permission inheritance to edit the value of a field in the form (#157)

* Correct path for parameters folder when not in Joomla libraries

* Type selection (#162)

Closes #134

* Display class attributes (#143)

* User home (#161)

* Add home parameter to media field

* Correct path for paramneters folder when not in Joomla libraries

* Fixing code style errors

* Add new context for com_contact for contact form fields (#115)

* Add new context for com_contact for contact form fields

* Prepare the value on com_contact mail

* Fixing travis code style errors

* Use the correct variable name

Closes #163

* Show the all label when no category is assigned

Closes #165

* Don't set 0 as default hint when not present

Closes #166

* Fix Sniffer Whitespace errors

* Fix Sniffer Whitespace errors (#167)

* Cleanup field model

* Support fields plugins

* Add gallery plugin

* Moved since tag to 3.7

* Some brushup

* Update controller.php

* Update field.php

* Update fields.php

* Update controller.php

* Update fields.php

* Update internal.php

* Update fields.php

* Update fields.xml

* Update field.php

* Update fields.php

* Update type.php

* Update section.php

* Update field.php

* Update field.xml

* Update filter_fields.xml

* Update field.php

* Update view.html.php

* Update edit.php

* Update modal_options.php

* Update view.html.php

* Update default.php

* Update default_batch_body.php

* Update modal.php

* Update field.xml

* Update en-GB.com_fields.sys.ini

* Update en-GB.com_fields.ini

* Update en-GB.plg_fields_gallery.ini

* Update en-GB.plg_fields_gallery.sys.ini

* Update en-GB.plg_system_fields.ini

* Update en-GB.plg_system_fields.sys.ini

* Update modal_article.php

* Update controller.php

* Update field.php

* Update default_custom.php

* Update captcha.php

* Update editor.php

* Update media.php

* Update user.php

* Update editor.xml

* Update media.xml

* Update user.xml

* Update usergrouplist.xml

* Update abstractlist.php

* Update domfieldinterface.php

* Update field.php

* Update email.php

* Update file.php

* Update imagelist.php

* Update sql.php

* Update tel.php

* Update textarea.php

* Update url.php

* Update calendar.xml

* Update checkboxes.xml

* Update imagelist.xml

* Update integer.xml

* Update list.xml

* Update radio.xml

* Update sql.xml

* Update textarea.xml

* Update url.xml

* Update gallery.xml

* plugin

* plugin2

* typo

* Change to uft8mb4

* Add new extensions to the script file

* Revert merge conflict composer changes

* No needed changes

* Library form fields should be unaware of com_fields

* Default to https

* Order the tables correct

* Cleanup language strings

* Code errors from cleanup

* Remove tags support

* Add category filter

* Display fielg group label when editing a group

* Display all fields which are assigned to all languages correct

* Don't show fields on categories as it is not ready yet

* Update fields.php

* Don't transofrm the category name

* Correct quote name function used

* Revert "Display fielg group label when editing a group"

This reverts commit 1331332.

* Disable tags on custom field groups

* Don't include category state in filter on back end

* Remove debug code

* CS fix

* Shortening the line length

* Install SQL files for postgres

* Use JDatabaseQuery

* Option to show the user custom fields on the front on the contact view

* Comment for item_id table column

* Remove class for textareas

* Fix no menu item pages giving wrong links (#12020)

* [plg_system_logout] Load language files only when needed (#11736)

* Update logout.php

* cs and stuff

* Update logout.php

* Adding Options Button (#12033)

* fix paths (#12032)

* Fix routing for non-sef menu items with Modern Routing (#12021)

* [com_banners] - publishing time does not honor timezone (#11978)

* [com_banners ] -  publishing time does not honor timezone

* impress only when needed

impress only when needed

* CS fix

cs fix

* Order stylesheet attributes the same as link attributes (#12052)

* use joomla-projects docker

* Phase out JString calls in libraries (#12058)

* Admin app - JString -> StringHelper (#12056)

* Site app & Plugins - JString -> StringHelper (#12057)

* New Feature, Multilanguage: Add the possibility of displaying associations in article info and in articles list. Replaces #11935 (#12042)

* Replaces

* Modifying to fit Thomas proposal

* modifying fetching flags param

* adding showon + some

* [JAccess] Improve ACL asset preloading performance/memory consumption (#12028)

* improve component asset preload speed

* Update user.php

* Update access.php

* Update access.php

* Update access.php

* Update access.php

* not convinced yet, but revert changes in juser

* make sure that components are always preloaded

* only a logged users (with user id) can be root.

* [com_contact] - moved the captchaEnabled var from default to view (#11964)

* [com_contact] - moved the captchaEnabled var out of the default.php file to the view.html.php file

moved the captchaEnabled var out of the default.php file to the view.html.php file.

* moved captchaEnabled to the view

moved captchaEnabled to the view

* missed var  declarationi/initialization

missed var   $captchaSet  declarationi/initialization

* Session interaction refactoring (#10905)

* Allow lazy starting a session

* Defer starting sessions in the installer

* Defer starting session in JApplicationCms

* Deprecate creating sessions in JFactory

* Start restructuring session load sequence in JApplicationCms

* Add JSession object to onAfterSessionStart event trigger

* Override afterSessionStart for install app to not store the user

* Expand the database storage object for better API

* Fix session listener declaration

* Restructure session bootup and when the session metadata operations run

* 3.5 -> 3.6

* Remove option, out of scope

* Tweak things so the behavior is closer to current API

* Undefined variable

* Get store name from session object

* Remove this, out of scope

* PHPCS fix

* Deep rooted application dependencies are my absolute favorite

* Move comment, doc blocks, consistent method signature

* Again on the consistency, we don't like E_STRICT errors

* Nevermind, confused myself with checkSession, carry on...

* Until the day the unit tests no longer follow the doc block code styles...

* Lost line in merge

* One more merge conflict fix

* This internal coupling is addressed

* Fix query from merge

* [com_content] - add articles ordering by votes, ratings (#11225)

* Add setDocumentTitle() function in JViewLegacy (#11399)

* setDocumentTitle() function in JViewLegacy

* PHPCS

* JED turned to https (#12076)

* JED truned to https

JED truned to https
Minor fixes on proper use of Joomla!

* Update README.txt

Same as #12076

* JED turned https

* JED turned https

* JED turned https

* JED turned https

* JED turned https

* JED turned https

* JED turned https

* JED turned https

* JED turned https

* JED turned https

* JED turned https

* JED turned https

* JED turned https

* JED and community turned https

* JED, community and org turned https

* JED and community turned https

* JED and community turned https

* correct/add quotename (#12070)

* Label: Users Options: Login name > Username (#12073)

The language label "Change Login Name" is not consistent with the front-end label "Username".

This PR changes the language label to "Change Username" and the decription to "Allow users to change their Username when editing their profile."

The front-end login screens use the label "Username"
Login Component:
![login-component](https://cloud.githubusercontent.com/assets/1217850/18627996/579510ca-7e5e-11e6-9161-6268e9ccb213.png)

Login Module:
![login-module](https://cloud.githubusercontent.com/assets/1217850/18627997/579595ae-7e5e-11e6-8920-edf34631a3c7.png)

### Testing Instructions
#### Before the PR
Users > Manage > [Options] > [User Options]
The last entry is "Change Login Name" 
+ hover description "Allow users to change their Login name when editing their profile."

![login-back-end-options](https://cloud.githubusercontent.com/assets/1217850/18627995/5791ac32-7e5e-11e6-8b18-94a34372c422.png)


#### After the PR
Users > Manage > [Options] > [User Options]
The last entry is "Change Username" 
+ hover description "Allow users to change their Username when editing their profile."

![login-back-end-options-after](https://cloud.githubusercontent.com/assets/1217850/18627998/5799ceb2-7e5e-11e6-9a5e-234dcf2db14e.png)

* Update .travis.yml (#12079)

* Add vote order check

* [a11y] Protostar back to top (#12446)

* [a11y] Protostar - back to top link

* Oops Andre was right

* add anchor for non-js enabled browsers

* Added missing com_fields component from last merge

* Replace Platform version numbers in libraries/legacy (#12242)

* Remove variable declaration (Fix #12619)

* Misc. fixes

* Test fixes
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment