29.03.2017 11:22:52 am
Делал для себя уведомления, решил поделиться, возможно, кому то будет интересно.
Файл: module/notification/static/css/default/default/view.css с содержимым:
Файл: module/notification/static/jscript/view.js, содержит в себе:
В файле module/notification/include/component/ajax/ajax.class.php, заменил функцию delete таким образом:
После этого необходимо почистить кэш движка и обозревателя.
Готово.
Файл: module/notification/static/css/default/default/view.css с содержимым:
.notification_holder {
margin-bottom: 10px;
padding: 0;
}
.is_new {
background: #FFFFDF;
}
.notification_block {
border: 1px solid #DFDFDF;
border-radius: 3px;
margin: 3px;
padding: 6px 6px 6px 60px;
position: relative;
min-height: 50px;
}
.notification_avatar {
position: absolute;
top: 5px;
left: 5px;
}
.notification_delete {
display: none;
position: absolute;
top: 5px;
right: 5px;
}
Файл: module/notification/static/jscript/view.js, содержит в себе:
$Behavior.notificationDeleteLink = function() {
if ($Core.exists('.notification_holder')) {
$('.notification_holder li').mouseover(function() {
$(this).find('.notification_delete').show();
});
$('.notification_holder li').mouseout(function() {
$(this).find('.notification_delete').hide();
});
};
};
В файле module/notification/include/component/ajax/ajax.class.php, заменил функцию delete таким образом:
public function delete()
{
Phpfox::isUser(true);
if (Phpfox::getService('notification.process')->deleteById($this->get('id')))
{
$this->call('var block = $(\'#js_notification_' . $this->get('id') . '\'); var ancestor = block.parent(); if (ancestor.find(\'.notification_block\').length <= 1) { ancestor.hide(\'slow\', function() { $(this).remove(); }); } else { block.slideUp(\'slow\', function() { $(this).remove(); }); };');
}
}
После этого необходимо почистить кэш движка и обозревателя.
Готово.
- Жалоба