Index: branches/unlabeled/unlabeled-1.2.2/core/admin_templates/js/script.js =================================================================== diff -u -r6906 -r6935 --- branches/unlabeled/unlabeled-1.2.2/core/admin_templates/js/script.js (.../script.js) (revision 6906) +++ branches/unlabeled/unlabeled-1.2.2/core/admin_templates/js/script.js (.../script.js) (revision 6935) @@ -313,42 +313,6 @@ } // in-portal compatibility functions: end -function openSelector($prefix, $url, $dst_field, $window_size, $event) -{ - var $kf = document.getElementById($form_name); - var $regex = new RegExp('(.*)\?env=(' + document.getElementById('sid').value + ')?-(.*?):(m[^:]+)'); - $regex = $regex.exec($url); - - var $t = $regex[3]; - var $window_name = 'select_'+$t.replace(/(\/|-)/g, '_'); -// set_hidden_field('return_m', $regex[4]); - - if (!isset($window_size)) $window_size = '750x400'; - - $window_size = $window_size.split('x'); - - if (!isset($event)) $event = ''; - processHooks('openSelector', hBEFORE); - - var $prev_action = $kf.action; - var $prev_opener = get_hidden_field('m_opener'); - - set_hidden_field('m_opener', 'p'); - set_hidden_field('main_prefix', $prefix); - set_hidden_field('dst_field', $dst_field); -// set_hidden_field('return_template', $kf.elements['t'].value); // where should return after popup is done - - openwin('', $window_name, $window_size[0], $window_size[1]); - $kf.action = $url; - $kf.target = $window_name; - - submit_event($prefix, $event, $t); - - processHooks('openSelector', hAFTER); - $kf.action = $prev_action; - set_hidden_field('m_opener', $prev_opener); -} - function InitTranslator(prefix, field, t, multi_line) { var $kf = document.getElementById($form_name); @@ -456,15 +420,15 @@ if (!$responce.match(/([\d]+)x([\d]+)/)) { // invalid responce was received, may be php fatal error during AJAX request $responce = $default_size; - } + } open_popup($prefix_special, $event, $t, $responce); } $pm.GetSize($t); return ; } $window_size = $default_size; } - + var $kf = document.getElementById($form_name); var $window_name = $t.replace(/(\/|-)/g, '_'); // replace "/" and "-" with "_" @@ -478,6 +442,33 @@ opener_action($prev_opener); // restore opener in parent window } +function openSelector($prefix, $url, $dst_field, $window_size, $event) +{ + // get template name from url + var $regex = new RegExp('(.*)\?env=(' + document.getElementById('sid').value + ')?-(.*?):(m[^:]+)'); + $regex = $regex.exec($url); + var $t = $regex[3]; + + // substitute form action with selector's url + var $kf = document.getElementById($form_name); + var $prev_action = $kf.action; + $kf.action = $url; + + // check parameter values + if (!isset($event)) $event = ''; + + // set variables need for selector to work + processHooks('openSelector', hBEFORE); + set_hidden_field('main_prefix', $prefix); + set_hidden_field('dst_field', $dst_field); + + open_popup($prefix, $event, $t); + + // restore form action back + processHooks('openSelector', hAFTER); + $kf.action = $prev_action; +} + function std_precreate_item(prefix_special, edit_template) { set_hidden_field(prefix_special+'_mode', 't');