User tests: Successful: Unsuccessful:
Pull Request for Improvement.
This PR does for stylesheets what was done for script in #11289
Ie, adds the ability to add add media version and IE conditional statements to the stylesheets link tag using JDocument::addStyleSheet()
and JHtml::stylesheet()
methods.
Also deprecates JDocument::addSyleSheetVersion()
method.
Please test this in all possible scenarios.
Any problem will get stylesheets not loading.
// JDocument B/C tests
/* addStyleSheet($url, $type = 'text/css', $media = null, $attribs = array()) */
$this->addStyleSheet('/path/to/external/bcaddStyleSheet1.css');
$this->addStyleSheet('/path/to/external/bcaddStyleSheet2.css', '', null, array());
$this->addStyleSheet('/path/to/external/bcaddStyleSheet3.css', 'text/css', 'all', array('scriptid' => 1));
/* addStyleSheetVersion($url, $version = null, $type = 'text/css', $media = null, $attribs = array()) */
$this->addStyleSheetVersion('/path/to/external/bcaddStyleSheetVersion1.css');
$this->addStyleSheetVersion('/path/to/external/bcaddStyleSheetVersion2.css', null, '', null, array());
$this->addStyleSheetVersion('/path/to/external/bcaddStyleSheetVersion3.css', 'version-string', 'text/css', 'all', array('scriptid' => 1));
// JDocument new method signature tests
/* addStyleSheet($url, $options = array(), $attribs = array()) */
$this->addStyleSheet('/path/to/external/addStyleSheet0.css');
$this->addStyleSheet('/path/to/external/addStyleSheet1.css', array(), array('id' => 'stylesheetid'));
$this->addStyleSheet('/path/to/external/addStyleSheet2.css', array(), array('id' => 'stylesheetid', 'data-test' => 1));
$this->addStyleSheet('/path/to/external/addStyleSheet3.css', array(), array('data-attrib' => 'original-value'));
$this->addStyleSheet('/path/to/external/addStyleSheet4.css', array(), array('data-attrib' => 'final-value'));
$this->addStyleSheet('/path/to/external/addStyleSheet5.css', array(), array('data-attrib' => array('item1' => 'value1', 'item2' => 'value2')));
$this->addStyleSheet('/path/to/external/addStyleSheet6.css', array('version' => 'auto'), array('data-attrib' => array('item1' => 'value1', 'item2' => 'value2')));
$this->addStyleSheet('/path/to/external/addStyleSheet7.css', array('version' => 'version-string'), array('media' => 'all', 'data-attrib' => array('item1' => 'value1', 'item2' => 'value2')));
$this->addStyleSheet('/path/to/external/addStyleSheet8.css', array('version' => 'auto', 'conditional' => 'lf IE 9'), array('data-attrib' => array('item1' => 'value1', 'item2' => 'value2')));
// JHTML B/C Tests
/* stylesheet($file, $attribs = array(), $relative = false, $path_only = false, $detect_browser = true, $detect_debug = true) */
JHtml::_('stylesheet', 'media/system/css/jquery.Jcrop.min.css');
JHtml::_('stylesheet', 'system/frontediting.css', array('id' => 'stylesheetid'), true, false, false, false);
// JHtml new method signature tests
/* stylesheet($file, $options = array(), $attribs = array()) */
JHtml::_('stylesheet', 'media/com_finder/css/indexer.css', array(), array('data-attrib' => array('item1' => 3, 'item2' => 'value2')));
JHtml::_('stylesheet', 'system/adminlist.css', array('relative' => true), array('data-attrib' => array('item1' => 3, 'item2' => 'value2')));
JHtml::_('stylesheet', 'system/calendar-jos.css', array('relative' => true, 'version' => 'auto'), array('data-attrib' => array('item1' => 3, 'item2' => 'value2')));
JHtml::_('stylesheet', 'system/mootree.css', array('relative' => true, 'version' => 'version-string'), array('media' => 'all', 'data-attrib' => array('item1' => 3, 'item2' => 'value2')));
JHtml::_('stylesheet', 'system/mootree_rtl.css', array('relative' => true, 'version' => 'version-string', 'conditional' => 'lf IE 9'), array('media' => 'all', 'data-attrib' => array('item1' => 3, 'item2' => 'value2')));
From a B/C perspective i think there are no issues, but mantainers please check.
Status | New | ⇒ | Pending |
Category | ⇒ | Libraries |
Labels |
Added:
?
|
Title |
|
Labels |
Added:
?
Removed: ? |
Sorry - never saw this. Will add it to my todo
Labels |
Added:
?
|
Category | Libraries | ⇒ | Libraries Unit Tests |
I have tested this item
only thing I have noticed, that some IDE interpret addStyleSheet and addScript as deprecated, that really can confuse people
?
i can change it to note on both after this is merged
@andrepereiradasilva @Fedik actually this is good, devs should use ONLY JHtml
well, it seems correct way
http://softwareengineering.stackexchange.com/questions/229644/how-to-annotate-method-signature-changes
so all fine here
Milestone |
Added: |
Tested successfully
no sha again @mbabker
Whomever keeps breaking my app, please stop.
I have tested this item
thanks @brianteeman !
@jeckodevelopment RTC this one too?
Status | Pending | ⇒ | Ready to Commit |
Labels |
RTC
Labels |
Added:
?
|
Labels |
Removed:
?
|
thanks!
Labels |
Added:
?
|
Labels |
Removed:
?
|
Labels |
Added:
?
|
Labels |
Removed:
?
|
Labels |
Added:
?
|
Labels |
Removed:
?
|
oh no! this one is crazy too now!
Labels |
Added:
?
|
Labels |
Removed:
?
|
can't understand why the bot is playing with the Unit/system test label.
Labels |
Added:
?
|
Labels |
Removed:
?
|
Labels |
Added:
?
|
Labels |
Removed:
?
|
Labels |
Added:
?
|
Labels |
Labels |
Removed:
?
|
Labels |
Added:
?
|
Labels |
Removed:
?
|
Labels |
Added:
?
|
Labels |
Removed:
?
|
Labels |
Added:
?
|
Labels |
Removed:
?
|
Labels |
Added:
?
|
Labels |
Removed:
?
|
Labels |
Added:
?
|
Labels |
Added:
?
Removed: ? |
Labels |
Added:
?
|
Labels |
Removed:
?
|
Labels |
Added:
?
|
Labels |
Removed:
?
|
Labels |
Added:
?
|
Labels |
Removed:
?
|
Labels |
Added:
?
|
Labels |
Removed:
?
|
Labels |
Added:
?
|
Labels |
Removed:
?
|
Labels |
Added:
?
|
Labels |
Removed:
?
|
Labels |
Added:
?
|
Labels |
Removed:
?
|
Labels |
Added:
?
|
Labels |
Removed:
?
|
loop
Labels |
Added:
?
|
Labels |
Removed:
?
|
Labels |
Added:
?
|
Labels |
Removed:
?
|
Labels |
Added:
?
|
Labels |
Removed:
?
|
The only thing i see is the name of the PR too long :D
Labels |
Added:
?
|
Labels |
Removed:
?
|
Labels |
Added:
?
|
Labels |
Removed:
?
|
Labels |
Added:
?
|
Labels |
Removed:
?
|
Labels |
Added:
?
|
Labels |
Removed:
?
|
Labels |
Added:
?
|
Labels |
Removed:
?
|
Labels |
Added:
?
|
Labels |
Removed:
?
|
Labels |
Added:
?
|
Labels |
Removed:
?
|
Labels |
Added:
?
|
Labels |
Removed:
?
|
Labels |
Added:
?
|
Labels |
Removed:
?
|
Labels |
Added:
?
|
Labels |
Removed:
?
|
Labels |
Added:
?
|
Labels |
Removed:
?
|
bot's code ...
while (1)
{
add label;
remove label;
}
Labels |
Added:
?
|
Labels |
Removed:
?
|
Labels |
Added:
?
|
Labels |
Removed:
?
|
Labels |
Added:
?
|
Labels |
Removed:
?
|
Labels |
Added:
?
|
Labels |
Removed:
?
|
Labels |
Added:
?
|
Labels |
Removed:
?
|
Labels |
Added:
?
|
Labels |
Removed:
?
|
Labels |
Added:
?
|
Labels |
Removed:
?
|
Labels |
Added:
?
|
Labels |
Removed:
?
|
Labels |
Added:
?
|
Labels |
Removed:
?
|
Opened an issue joomla/jissues#906
Labels |
Added:
?
|
Labels |
Removed:
?
|
Labels |
Added:
?
|
Labels |
Removed:
?
|
Labels |
Added:
?
|
Labels |
Removed:
?
|
Labels |
Added:
?
|
Labels |
Removed:
?
|
Labels |
Added:
?
|
Labels |
Removed:
?
|
Labels |
Added:
?
|
Labels |
Removed:
?
|
Labels |
Added:
?
|
Labels |
Removed:
?
|
Labels |
Added:
?
|
Labels |
Removed:
?
|
Labels |
Added:
?
|
Labels |
Removed:
?
|
Labels |
Added:
?
|
Labels |
Removed:
?
|
Labels |
Added:
?
|
If all of you would stop breaking my bots I would greatly appreciate it.
Labels |
Removed:
?
|
Labels |
Added:
?
|
Labels |
Removed:
?
|
Labels |
Added:
?
|
Labels |
Removed:
?
|
Labels |
Added:
?
|
Labels |
Removed:
?
|
Labels |
Added:
?
|
Labels |
Removed:
?
|
Labels |
Added:
?
|
Labels |
Removed:
?
|
Labels |
Added:
?
|
Labels |
Removed:
?
|
Labels |
Added:
?
|
Labels |
Removed:
?
|
Labels |
Added:
?
|
Labels |
Removed:
?
|
Labels |
Added:
?
|
Tell us how we can avoid breaking it :)
Labels |
Removed:
?
|
Labels |
Added:
?
|
Labels |
Removed:
?
|
Labels |
Added:
?
|
Labels |
Removed:
?
|
Labels |
Added:
?
|
Labels |
Removed:
?
|
Labels |
Added:
?
|
Labels |
Removed:
?
|
Labels |
Added:
?
|
Labels |
Removed:
?
|
Labels |
Added:
?
|
Labels |
Removed:
?
|
Labels |
Added:
?
|
Labels |
Removed:
?
|
Labels |
Added:
?
|
Labels |
Removed:
?
|
Labels |
Added:
?
|
Tell us how we can avoid breaking it :)
Well if I knew that there wouldn't be 50 label events on this here item. Either way the pull request listener won't act on labeled events anymore. Guess I'm gonna have to move up my weekend rewriting that entire subsystem.
Status | Ready to Commit | ⇒ | Fixed in Code Base |
Closed_Date | 0000-00-00 00:00:00 | ⇒ | 2016-11-04 08:31:30 |
Closed_By | ⇒ | rdeutz |
can anyone review test this so we can have similiar API for script (js) and style (css).
don't want this kind of changes to be a late merge than can cause problems after.
Also after this is tested/merged it will allow to add version to css files so they are not cached uin browser after joomla updates, which with all isis template changes in 3.7.0 would be advised.
@dgt41 @C-Lodder @Fedik @brianteeman @zero-24 @infograf768 need testers here please