обновил не чего не изменилось
Я этой функцией вообще не пользовался никогда. Сейчас проверил, работает: J2.5.17, VM2.0.26a, Beez2 - Default.
Посмотрел, а раньше и не должно было работать. Смотрел в VM2.0.18. Раньше на FE jQuery UI не подгружалась. Плюс в ссылке иконки ненужный "#" был, до исполнения javascript'а перезагрузка по action формы шла.
Сейчас исправлено, работает.
Что не нравится: при сохранении перенаправляет на главную VM. А если я хочу дальше другие товары редактировать? Делать 1-N кликов до нужной категории?
Можно так (но при обновлении слетит, лучше плагином оформить):
/components/com_virtuemart/views/productdetails/
view.html.phpстр.237
$edit_link = JURI::root(). 'index.php?option=com_virtuemart&tmpl=component&view=product&task=edit&virtuemart_product_id=' . $product->virtuemart_product_id;
заменить на
$edit_link = JURI::root(). 'index.php?option=com_virtuemart&tmpl=component&view=product&task=edit&virtuemart_product_id='.$product->virtuemart_product_id.'&virtuemart_category_id='.$product->virtuemart_category_id;
/administrator/components/com_virtuemart/helpers/
vmview.phpВ static function
getToolbar($vmView) после
$document->addCustomTag(...);
добавить
$j = '
jQuery(function($) {
//to replace following image with bigger
$("body").append("<img src=\"/components/com_virtuemart/assets/images/facebox/loading.gif\" id=\"vm_preloader\" style=\"display:none; width:250px; height:250px; position:fixed; top:50%; left:50%; margin-left:-125px; margin-top:-125px; z-index:100000;\" />");
$("#toolbar-save a").click(function(){
$("#vm_preloader").show();
$("#adminForm input[name=\'task\']").val("save");
$.ajax($("#adminForm").attr("action"), {
type: "POST",
data: $("#adminForm").serialize(),
success: function(){
window.location.href = "'.JURI::root().'index.php?option=com_virtuemart&view=category&virtuemart_category_id='.JRequest::getVar('virtuemart_category_id','').'";
},
error: function(jqXHR, textStatus){
$("#vm_preloader").hide();
alert("textStatus = " + textStatus + " Code = " + jqXHR.status);
}
});
});
})';
$document->addScriptDeclaration ( $j);
Так после сохранения будем попадать в ту категорию, товар из которой только что редактировали.