Index: branches/RC/core/admin_templates/js/script.js =================================================================== diff -u -r11538 -r11546 --- branches/RC/core/admin_templates/js/script.js (.../script.js) (revision 11538) +++ branches/RC/core/admin_templates/js/script.js (.../script.js) (revision 11546) @@ -245,7 +245,6 @@ { // var $url = getScriptURL('admin/editor/editor_new.php'); var $url = getScriptURL('admin/index.php', 'popups/editor'); -// alert($url); $url = $url+'&TargetForm='+TargetForm+'&TargetField='+TargetField+'&destform=popup'; if(extra_env.length>0) $url += extra_env; openwin($url,'html_edit',800,575); @@ -292,7 +291,6 @@ { // $help_link.match('http://(.*).lv/in-commerce/admin(.*)'); -// alert(RegExp.$2); openwin($help_link,'HelpPopup',750,400); } @@ -416,18 +414,14 @@ return ; - - // prevent window from opening larger, then screen resolution on user's computer (to Kostja) - // alert('openwin: name = ['+$name+']'); var left = Math.round((screen.width - $width)/2); var top = Math.round((screen.height - $height)/2); cur_x = is.ie ? window.screenLeft : window.screenX; cur_y = is.ie ? window.screenTop : window.screenY; -// alert('current X,Y: '+cur_x+','+cur_y+' target x,y: '+left+','+top); var $window_params = 'left='+left+',top='+top+',width='+$width+',height='+$height+',status=yes,resizable=yes,menubar=no,scrollbars=yes,toolbar=no'; return window.open($url,$name,$window_params); } @@ -479,11 +473,14 @@ // invalid responce was received, may be php fatal error during AJAX request $responce = $default_size; } + open_popup($prefix_special, $event, $t, $responce, $onAfterOpenPopup); } + $pm.GetSize($t); return ; } + $window_size = $default_size; } @@ -568,6 +565,7 @@ set_hidden_field('main_prefix', $prefix); set_hidden_field('dst_field', $dst_field); +// alert('openSelector(' + $prefix + ', ' + $event + ', ' + $t + ', ' + $window_size + ')'); open_popup( $prefix, $event, $t, $window_size, function() { @@ -1371,14 +1369,27 @@ try { // will be error, when other site is opened in parent window var $i = 0; - while ($main_window.opener) { + var $opener; + + do { if ($i == 10) { break; } - $main_window = $main_window.opener; + // get popup opener + $opener = $main_window.opener; + + if (!$opener) { + // when no opener found, then try parent window + $opener = $main_window.parent; + } + + if ($opener) { + $main_window = $opener; + } + $i++; - } + } while ($opener); } catch (err) { // catch Access/Permission Denied error @@ -1539,6 +1550,73 @@ return [curleft,curtop]; } +function scrollbarWidth() { + // Scrollbalken im Body ausschalten + var $overflow_backup = document.body.style.overflow; + document.body.style.overflow = 'hidden'; + + var width = document.body.clientWidth; + + // Scrollbalken + document.body.style.overflow = 'scroll'; + width -= document.body.clientWidth; + + // Der IE im Standardmode + if (!width) { + width = document.body.offsetWidth - document.body.clientWidth; + } + + // urspr?ngliche Einstellungen + document.body.style.overflow = $overflow_backup; + + return width; +} + +function maximizeElement($selector, $max_height) { + if ($max_height === undefined) { + $max_height = false; + } + + var $element = $($selector); + if ($element.length == 0) { + return ; + } + + $element.width('100%'); + + var $container_id = $element.attr('id') + '_container'; + var $container = $( jq('#' + $container_id) ); + + if ($container.length == 0) { + // don't create same container twice + + // all