?
avatar n3t
n3t
21 Aug 2014

Steps to reproduce the issue

Enable Joomla Post-installation messages
Enter manually URL /administrator/index.php?option=com_postinstall&eid=800
Click on menu Components - Post-installation messages

Expected result

You should see Joomla core post-installation messages.

Actual result

You will see No messages
To see again Joomla core post-installtion messges you have to enter manually URL /administrator/index.php?option=com_postinstall&eid=700

System information (as much as possible)

Joomla 3.3.3 fresh installation.

Additional comments

This is issue, when trying to implement 3rd party post-installation messages, according to idea here http://joomlacode.org/gf/project/joomla/tracker/?action=TrackerItemEdit&tracker_item_id=31977

Solution would be, if the menu link points to /administrator/index.php?option=com_postinstall&eid=700 so it resets eid parameter back to Joomla.

avatar n3t n3t - open - 21 Aug 2014
avatar Bakual
Bakual - comment - 22 Aug 2014

@nikosdion Sounds like the eid is taken from session instead of using the default value?

Imho, best would be to have a dropdown on the page where you can filter from available extension messages. In a new installation it would only show "Joomla" and a "- select extension -" entry. If another extension also uses postinstall messages, that extension would be listed as well. That would solve the issue here and even adds more flexibility to the view.

But there may also be better solutions.

avatar nikosdion
nikosdion - comment - 22 Aug 2014

Actually, it's a bit more complicated. The eid is read using FOFModel::getState which will try to either read the cached value in the session or a new value from the request. The bug is that once it's populated it will never read that value from the request again. Let me write a patch.

avatar nikosdion
nikosdion - comment - 22 Aug 2014

Actually, I was wrong. The problem is that the menu item doesn't specify the eid. We should change this:
INSERT INTO `#__menu` (`menutype`, `title`, `alias`, `note`, `path`, `link`, `type`, `published`, `parent_id`, `level`, `component_id`, `checked_out`, `checked_out_time`, `browserNav`, `access`, `img`, `template_style_id`, `params`, `lft`, `rgt`, `home`, `language`, `client_id`) VALUES
('main', 'com_postinstall', 'Post-installation messages', '', 'Post-installation messages', 'index.php?option=com_postinstall', 'component', 0, 1, 1, 32, 0, '0000-00-00 00:00:00', 0, 1, 'class:postinstall', 0, '', 45, 46, 0, '*', 1);

to
INSERT INTO `#__menu` (`menutype`, `title`, `alias`, `note`, `path`, `link`, `type`, `published`, `parent_id`, `level`, `component_id`, `checked_out`, `checked_out_time`, `browserNav`, `access`, `img`, `template_style_id`, `params`, `lft`, `rgt`, `home`, `language`, `client_id`) VALUES
('main', 'com_postinstall', 'Post-installation messages', '', 'Post-installation messages', 'index.php?option=com_postinstall&eid=700', 'component', 0, 1, 1, 32, 0, '0000-00-00 00:00:00', 0, 1, 'class:postinstall', 0, '', 45, 46, 0, '*', 1);

Regarding your other question, @Bakual we can put a drop-down just fine without any changes in the component. It would simply POST a form with a different eid. Would you like me to implement this feature?

avatar Bakual
Bakual - comment - 22 Aug 2014

@nikosdion I would love to see such a drop-down, yes. I think if we can make that view more flexible and helpful for 3rd parties it would be a good gain.
I think if there is such a drop-down, then we also don't need to change the menu item. Because the user would be able to change it back to Joomla easy and intuitive.
If you change the menu item to include the eid, it would reset the filter each time the user clicks the menu. Which may or may not be what we want :smile:

avatar n3t
n3t - comment - 22 Aug 2014

@nikosdion To modify the menu item was my first thought. However when I created some real messages for my component, I found one more strange behavior. If Post-install messages is opened with eid lets say 800, it shows my message. If i disable that message, "No messages screen is displayed", however the link to renew messages point to eid 700. So clicking on it does nothing (at least on current screen). Also iframe with Joomla release news is displayed, as this was eid 700.

I guess the problem is in view.html.php, where eid is not read from model but directly from input with default value 700.

avatar zero-24 zero-24 - close - 27 Aug 2014
avatar brianteeman
brianteeman - comment - 27 Aug 2014

I am closing this in favour of #4180 so the conversation is in just one place

avatar brianteeman brianteeman - change - 27 Aug 2014
Status New Closed
Closed_Date 0000-00-00 00:00:00 2014-08-27 10:12:57
avatar brianteeman brianteeman - close - 27 Aug 2014
avatar zero-24 zero-24 - change - 7 Jul 2015
Labels Added: ?

Add a Comment

Login with GitHub to post a comment