Enable Joomla Post-installation messages
Enter manually URL /administrator/index.php?option=com_postinstall&eid=800
Click on menu Components - Post-installation messages
You should see Joomla core post-installation messages.
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
Joomla 3.3.3 fresh installation.
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.
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.
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);
toINSERT 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?
@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
@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.
Status | New | ⇒ | Closed |
Closed_Date | 0000-00-00 00:00:00 | ⇒ | 2014-08-27 10:12:57 |
Labels |
Added:
?
|
@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.