/* TODO: избавиться от ненужных параметров при открытии форм подбора */ var selection_windows = new Array(); var selection_prefix = ''; //префикс назначается при открытии окна из родительской формы var wnd_count = 0; var selection_row; var filter_lists = new Array(); var filter_curr_list = false; var filter_iteration = 0; var filter_value_iteration = 0; var filter_date_initializations = new Array(); //Общие функции function in_array(what, where){ for(var i=0; i 3 ){ j = j % 3; } else{ j = 0; } km = (j ? i.substr(0, j) + thousands_sep : ""); kw = i.substr(j).replace(/(\d{3})(?=\d)/g, "$1" + thousands_sep); kd = (decimals ? dec_point + Math.abs(number - i).toFixed(decimals).replace(/-/, 0).slice(2) : ""); return km + kw + kd; } function getBrowserName(){ IE = (document.all); // Internet Explorer? NC = (document.layers); // Netscape? Opera = (document.getElementById); // Opera? if(IE){return 'ie';} if(NC){return 'nc';} if(Opera){return 'opera';} return 'n/a'; } /*function getHeight(){ // Определение браузера IE = (document.all); // Internet Explorer? NC = (document.layers); // Netscape? Opera = (document.getElementById); // Opera? if (IE || Opera) send = document.body.clientHeight; if (NC) send = window.innerHeight; return send; } function getWidth(){ // Определение браузера IE = (document.all); // Internet Explorer? NC = (document.layers); // Netscape? Opera = (document.getElementById); // Opera? if (IE || Opera) send = document.body.clientWidth; if (NC) send = window.innerWidth; return send; }*/ //Функции AJAX function getXmlHttp(){ var xmlhttp; try { xmlhttp = new ActiveXObject("Msxml2.XMLHTTP"); } catch (e) { try { xmlhttp = new ActiveXObject("Microsoft.XMLHTTP"); } catch (E) { xmlhttp = false; } } if (!xmlhttp && typeof XMLHttpRequest!='undefined') { xmlhttp = new XMLHttpRequest(); } return xmlhttp; } function AJAX(aMethod,aHREF,aDest){ //alert(aMethod+', '+aHREF+', '+aDest); var xmlhttp = getXmlHttp(); var response; var done = false; if(aDest!=''){ getObj(aDest).innerHTML = ''; } //xmlhttp.setRequestHeader('Content-Type', 'text/html; charset=utf-8'); xmlhttp.open(aMethod, aHREF, false); //xmlhttp.setRequestHeader('Charset', 'windows-1251'); xmlhttp.send(null); if(xmlhttp.status == 200) { resp = xmlhttp.responseText; done = true; if (aDest == ''){ response = resp; } else{ contentDiv = document.getElementById(aDest); contentDiv.innerHTML = resp; } } return response; } function DIVStyle(aDIV,aAJAXDIV,aHREF,aMethod){ var DIV = document.getElementById(aDIV); var AJAXDIV = document.getElementById(aAJAXDIV); if (AJAXDIV.style.display == 'none') { AJAXDIV.style.display = 'block'; AJAX(aMethod,aHREF,aAJAXDIV); } else { AJAXDIV.style.display = 'none'; } } function generate_GUID(){ var new_GUID = new Date(); new_GUID = new_GUID.getHours().toString()+ new_GUID.getMinutes().toString()+ new_GUID.getSeconds().toString()+ new_GUID.getMilliseconds().toString(); return new_GUID; } function on_form_load(){ /*if(document.GUID == null){ var new_GUID = generate_GUID(); document.GUID = new_GUID; }*/ } function elem_visibility(a_elem_id) { if (getObj(a_elem_id).style.display=='none') {getObj(a_elem_id).style.display = 'block';return;} if (getObj(a_elem_id).style.display=='block'){getObj(a_elem_id).style.display = 'none';return;} } function submit_form(a_form) { var f = document.getElementById(a_form); f.submit(); } function return_enum_html_combo(a_enum_id,a_multi_combo,a_name) { url = 'http://udb.timecode.ru/ajax_results.php?rec='+a_enum_id+'&multi='+a_multi_combo+'&name='+a_name; res = AJAX('get',url,''); return res; } //Клонирование строки таблицы function clone_row(a_table_id,a_pattern_id){ var v_table; var v_pattern; var v_row; var selection_wnd = parent.frames[1].document; v_table = selection_wnd.getElementById(a_table_id); if(v_table!=null){ if((v_table.hasChildNodes)&&(v_table.firstChild.tagName=='TBODY')){ v_table = v_table.firstChild; }; v_pattern = selection_wnd.getElementById(a_pattern_id); if(v_pattern!=null){ v_row = v_pattern.cloneNode(true); if(v_row!=null){ v_table.appendChild(v_row); v_row.style.display = 'block'; } } } return v_row; } function clone_row_ex(a_document,a_table,a_pattern_id){ var v_table; var v_pattern; var v_row; v_table = a_table; if((v_table.hasChildNodes)&&(v_table.firstChild.tagName=='TBODY')){ v_table = v_table.firstChild; }; v_pattern = a_document.getElementById(a_pattern_id); if(v_pattern!=null){ v_row = v_pattern.cloneNode(true); if(v_row!=null){ v_table.appendChild(v_row); v_row.style.display = 'block'; } } return v_row; } //Функция нужна, чтобы вернуть названия элементов реквизита //a_object - либо рисунок "delete_value" либо function return_ctrl_values(a_object){ var result = new Array(); result['type_id'] = ''; result['link_type_id'] = ''; result['value'] = ''; result['view'] = ''; result['ctrl_name'] = ''; result['v_type_id'] = ''; result['v_link_type_id'] = ''; result['v_value'] = ''; result['v_view'] = ''; root_node_name = a_object.nodeName; var ctrl_values = ''; switch (root_node_name){ case 'IMG': ctrl_values = a_object.parentNode.parentNode.firstChild; result['v_value'] = ctrl_values.childNodes.item(2).value; result['v_view'] = ctrl_values.childNodes.item(3).value; result['value'] = ctrl_values.childNodes.item(2).name; result['view'] = ctrl_values.childNodes.item(3).name; break case 'SELECT': ctrl_values = a_object.parentNode; result['v_value'] = a_object.value; result['v_view'] = a_object.value; result['value'] = a_object.name; result['view'] = a_object.name; break; case 'INPUT': ctrl_values = a_object.parentNode; result['v_value'] = a_object.value; result['v_view'] = a_object.value; result['value'] = a_object.name; result['view'] = a_object.name; break; case 'TEXTAREA': ctrl_values = a_object.parentNode; result['v_value'] = a_object.value; result['v_view'] = a_object.value; result['value'] = a_object.name; result['view'] = a_object.name; //alert(ctrl_values.innerHTML); break; } result['type_id'] = ctrl_values.children[0].name; result['link_type_id'] = ctrl_values.children[1].name; result['v_type_id'] = ctrl_values.children[0].value; result['v_link_type_id'] = ctrl_values.children[1].value; res = ctrl_values.children[0].name; result['ctrl_name'] = res.substring(res.indexOf('type_id_')+String('type_id_').length); return result; } function alert_windows(a_selection_windows){ res = document.title; if(a_selection_windows.length<=0){ alert(res+'\r\nНет окон'); return 0; } for (var i=0;i <= a_selection_windows.length-1;i++){ res +='\r\nwin=' + a_selection_windows[i]['win'] + ', ctrl=' + a_selection_windows[i]['destination_ctrl']; } alert(res); } //a_dest_url - url скрипта, который выведет форму подбора //a_destination_ctrl - идентификатор таблицы или одиночного реквизита, в которую занесется подобранный элемент/ы //P.S. Если a_select_type >= 10, то a_destination_ctrl обязан быть таблицей //a_select_type (прим. далее: подбор = множественный выбор) // 10 - подбор только элементов // 1 - выбор только элементов // 20 - подбор только групп справочника // 2 - выбор только групп справочника // 30 - любой подбор из справочника // 3 - любой выбор из справочника // 40 - любой подбор из документа // 4 - любой выбор из документа //a_field_link_type_id - если a_link_type_id=0, то массив структуры ("системный тип"=>"объектный тип") // пример ( // '1','1', // '6','', // '7','' // ) - Если 'a_use_meta'= false, то "Справочник объектного типа 1, Дата, Строка", // Если 'a_use_meta'='ИД типа', то выбор типов данных доступных для данного объектного типа function open_selector_form(a_object, a_dest_url, a_type_id, a_link_type_id, a_destination_ctrl, a_select_type){ ctrl_values = return_ctrl_values(a_object); try{ if(a_link_type_id==0){ //Реквизит составной new_window = window.open('http://udb.timecode.ru/type_select.php'); return; } //alert('new window'); wnd_count++; new_window = window.open( 'http://udb.timecode.ru/form_select.php?dest_url='+a_dest_url+ '?action=select*type_id='+ctrl_values['v_link_type_id']+ '*select_type='+a_select_type+ '*ctrl_elem='+ctrl_values['ctrl_name'],'','_blank'); rs = false; try_count = 0; rss = ''; /*while(!rs){ ready_state = new_window.document.readyState; if((ready_state=='complete')||(ready_state=='loaded')||(ready_state==4)){rs = true;rss+= ', '+ready_state;break;} sleep(150); try_count++; rss+= ', '+ready_state; }*/ selection_windows[wnd_count] = new Array(); selection_windows[wnd_count]['win'] = new_window; selection_windows[wnd_count]['destination_ctrl'] = ctrl_values['ctrl_name']; selection_windows[wnd_count]['select_type'] = a_select_type; new_window.focus(); } catch(e){ try{new_window.close();}catch(e){}; alert('Ошибка подбора! Код: 2. \r\n Обратитесь к администратору! \r\n'+e); } } function open_multi_selector_form(a_dest_url, a_link_type_id, a_destination_ctrl, a_select_type, a_col_num, a_prefix){ try{ wnd_count++; new_window = window.open('http://udb.timecode.ru/form_select.php?dest_url='+a_dest_url+'?action=select*type_id='+a_link_type_id+'*select_type='+a_select_type+'*ctrl_elem='+a_destination_ctrl,'selwnd'+wnd_count); rs = false; while(!rs){ if((new_window.document.readyState=='complete')||(new_window.document.readyState==4)){rs = true;} } selection_windows[wnd_count] = new Array(); selection_windows[wnd_count]['win'] = new_window; selection_windows[wnd_count]['destination_ctrl'] = a_destination_ctrl; selection_windows[wnd_count]['select_type'] = a_select_type; selection_windows[wnd_count]['col_num'] = a_col_num; new_window.focus(); new_window.frames[0].selection_prefix = a_prefix; } catch(e){ try{new_window.close();}catch(e){}; alert('Ошибка подбора! Код: 3. \r\n Обратитесь к администратору! \r\n'+e); } } //Эта функция вызывается во фреймовой форме в первом фрейме(фрейме списка справочника или журнала документов) //Сначала элемент, который только что подобрали переносится во второй фрейм формы подбора (selected_elements) //и в нем провоится проверка - надо ли закрывать форму после подбора (если select_type > 10, то форму закрываем) //a_sel_id, a_sel_type, a_sel_view - это параметры подобранного объекта из первого фрейма формы подбора function select_elem(a_sel_id, a_sel_type_id, a_sel_link_type_id, a_sel_view, a_sel_state, a_sel_is_group, a_destination_ctrl){ var selection_wnd = parent.frames[1].document; var select_pattern = selection_wnd.getElementById('select_pattern'); var parent_window = parent.opener.document; //ищем в родительском окне переменные подбора - //мы находимся во фрейме - не забываем об этом! sel_windows = parent.opener.selection_windows; found = false; for(var i = 1; i<= sel_windows.length; i++){ if((parent === sel_windows[i]['win'])&&(a_destination_ctrl==sel_windows[i]['destination_ctrl'])){ found = true; destination_ctrl = sel_windows[i]['destination_ctrl']; select_type = sel_windows[i]['select_type']; break; } } if(!found){ return ''; } //alert_windows(sel_windows); //проверка на выбор группы справочника if(select_type>=10){ //МНОЖЕСТВЕННЫЙ подбор множества элементов/документов: заносим в таблицу подбора фреймовой формы подбора row = clone_row('selected_elements','select_pattern'); //alert(row); if(row!=null){ cell = row.firstChild.firstChild.firstChild.firstChild.firstChild; var ctrl_type_id = cell.childNodes.item(0); var ctrl_link_type_id = cell.childNodes.item(1); var ctrl_value = cell.childNodes.item(2); var ctrl_view = cell.childNodes.item(3); ctrl_type_id.value = a_sel_type_id; ctrl_link_type_id.value = a_sel_link_type_id; ctrl_value.value = a_sel_id; ctrl_view.value = a_sel_view; } else{ alert('Ошибка подбора! Код: 4. \r\n Обратитесь к администратору!'); } } else{ //ОДИНОЧНЫЙ выбор элемента/документа var ctrl_type_id = parent_window.getElementById('type_id_' +destination_ctrl); var ctrl_link_type_id = parent_window.getElementById('link_type_id_' +destination_ctrl); var ctrl_value = parent_window.getElementById('value_' +destination_ctrl); var ctrl_view = parent_window.getElementById('view_' +destination_ctrl); ctrl_type_id.value = a_sel_type_id; ctrl_link_type_id.value = a_sel_link_type_id; ctrl_value.value = a_sel_id; ctrl_view.value = a_sel_view; parent.opener.selection_windows[i]['win'] = ''; parent.close(); } } function return_max_obj_index(a_table,a_obj_col_num){ a_table = a_table.firstChild;//позиционируемся на TBODY max_index = 0; for (var i=0;i < a_table.childNodes.length;i++) { curr_row = a_table.childNodes[i]; if (curr_row.nodeType != 1) {continue;} cell = curr_row.firstChild.firstChild.firstChild.firstChild.firstChild; var ctrl_obj_index = cell.childNodes.item(a_obj_col_num); if(ctrl_obj_index.value > max_index){ max_index = ctrl_obj_index.value; } } max_index++; return max_index; } /** Возвращает кол-во строк в любой таблице TABLE **/ function return_row_count(a_table){ a_table = a_table.firstChild;//позиционируемся на TBODY row_count = 0; for (var i=0;i < a_table.childNodes.length;i++) { curr_row = a_table.childNodes[i]; if (curr_row.nodeType == 1) {row_count++;} } return row_count; } function return_selection_destination_table(a_tab_name, a_width, a_style){ var result = '
'+ '
'+ '

'+ ''; //alert(result); return result; } //процедура запускается в ОКНЕ ПОДБОРА //в ГЛАВНОЕ ОКНО (parent_window) переносятся подобранные элементы function transfer_selected(){ var selection_table = document.getElementById('selected_elements'); var parent_window = parent.opener.document; var parent_window_ex = parent.opener; new_selection_prefix = parent.frames[0].selection_prefix; if(new_selection_prefix != ''){ new_selection_prefix = new_selection_prefix; } sel_windows = parent.opener.selection_windows; //ищем в родительском окне переменные подбора found = false; for(var i = 1; i<= sel_windows.length; i++){ if(parent == sel_windows[i]['win']){ found = true; destination_ctrl = sel_windows[i]['destination_ctrl']; select_type = sel_windows[i]['select_type']; parent.opener.selection_windows[i]['win'] = ''; break; } } if(!found) {return '';} var destination_table = parent_window.getElementById(destination_ctrl); parent_window_ex.filter_value_iteration = parent_window_ex.filter_value_iteration+1; obj_index = parent_window_ex.filter_value_iteration; //перебираем selection_table и переносим значения из нее в destination_table selection_table = selection_table.firstChild;//позиционируемся на TBODY for (var i=0;i < selection_table.childNodes.length;i++) { curr_row = selection_table.childNodes[i]; if (curr_row.nodeType != 1) {continue;} cell = curr_row.firstChild.firstChild.firstChild.firstChild.firstChild; var ctrl_type_id = cell.childNodes.item(0); var ctrl_link_type_id = cell.childNodes.item(1); var ctrl_value = cell.childNodes.item(2); var ctrl_view = cell.childNodes.item(3); if(ctrl_type_id.value==-1){continue;} row = clone_row_ex(parent_window, destination_table, 'select_pattern'); if(row!=null){ new_cell = row.firstChild.firstChild.firstChild.firstChild.firstChild; dest_ctrl_obj_index = new_cell.childNodes.item(0); dest_ctrl_type_id = new_cell.childNodes.item(1); dest_ctrl_link_type_id = new_cell.childNodes.item(2); dest_ctrl_value = new_cell.childNodes.item(3); dest_ctrl_view = new_cell.childNodes.item(4); dest_ctrl_obj_index.value = obj_index; dest_ctrl_type_id.id = ''+dest_ctrl_type_id.id + obj_index + '_' + new_selection_prefix; dest_ctrl_link_type_id.id = ''+dest_ctrl_link_type_id.id + obj_index + '_' + new_selection_prefix; dest_ctrl_value.id = ''+dest_ctrl_value.id + obj_index + '_' + new_selection_prefix; dest_ctrl_view.id = ''+dest_ctrl_view.id + obj_index + '_' + new_selection_prefix; dest_ctrl_type_id.name = dest_ctrl_type_id.id; dest_ctrl_link_type_id.name = dest_ctrl_link_type_id.id; dest_ctrl_value.name = dest_ctrl_value.id; dest_ctrl_view.name = dest_ctrl_view.id; dest_ctrl_type_id.value = ctrl_type_id.value; dest_ctrl_link_type_id.value = ctrl_link_type_id.value; dest_ctrl_value.value = ctrl_value.value; dest_ctrl_view.value = ctrl_view.value; obj_index++; } } parent_window_ex.filter_value_iteration = obj_index; parent.close(); } function delete_sc_value(a_object,a_ctrl_name){ a_ctrl_name = return_ctrl_values(a_object)['ctrl_name']; ctrl_value = getObj('value_'+a_ctrl_name);ctrl_value.value = '1'; ctrl_view = getObj('view_'+a_ctrl_name);ctrl_view.value = ''; } function delete_enum_value(a_object,a_ctrl_name){ a_ctrl_name = return_ctrl_values(a_object)['ctrl_name']; ctrl_value = getObj('value_'+a_ctrl_name);ctrl_value.value = '1'; ctrl_view = getObj('view_'+a_ctrl_name);ctrl_view.selectedIndex = '0'; } function change_type_id() { var select_type_combo = document.getElementById('select_type'); var select_link_type_combo = document.getElementById('select_link_type'); select_link_type_combo.selectedIndex = select_type_combo.selectedIndex; } function type_select() { var select_type_combo = document.getElementById('select_type'); var select_link_type_combo = document.getElementById('select_link_type'); selected_type = new Array(); selected_type['type_id'] = select_type_combo.value; selected_type['link_type_id'] = select_link_type_combo.value; return selected_type; } //проверка корректности реквизитов типа "Строка","Дата","Число" и запись изменений в поле value //при изменении поля view_"a_name" должно меняться скрытое поле value_"a_name" function change_value(a_object, a_name,a_type) { aa_name = return_ctrl_values(a_object)['ctrl_name']; var view_elem = getObj('view_'+aa_name); var value_elem = getObj('value_'+aa_name); //alert(value_elem+', '+'value_'+aa_name); value_elem.value = view_elem.value; } function change_enum(a_object, a_name) { a_name = return_ctrl_values(a_object)['ctrl_name']; var view_elem = document.getElementById('view_'+a_name); var value_elem = document.getElementById('value_'+a_name); value_elem.value = view_elem.value; } function operate_navigation_menu(){ var nav1 = document.getElementById("navigation1"); var nav_menu_h = document.getElementById("nav_menu"); if(nav1.style.display=='block'){ nav1.style.display = 'none'; nav_menu.innerHTML = 'Показать навигационное меню'; } else{ nav1.style.display = 'block'; nav_menu.innerHTML = 'Свернуть навигационное меню'; } }//function operate_navigation_menu() function add_nonobject_select(a_type){ var pre_pref = 'filter_pref_'; if(a_type==6){ } } function filter_change_select_type(a_script_name, a_field, a_field_id, a_type, a_link_type_id) { var pre_pref = 'filter_pref_'; source_td = document.getElementById('filter_source_'+a_field_id); filter_option = a_field.value; //alert(filter_option); //Структура массива: // filter_lists[i] // ['filed_id'] = ИД_Поля // ['type'] = Тип подбора (in, not in, =, и т.д) // ['value'] = Текущие значения подбора для данного типа(таблица или реквизит) //Сначала запоминаем старые значения для данного типа фильтра list_found = false; if(typeof(filter_curr_list) == 'object') { for(var i=0; i <= filter_lists.length-1; i++) { if((filter_lists[i]['field_id']==filter_curr_list['field_id']) &&(filter_lists[i]['type']==filter_curr_list['type'])){ list_found = true; filter_lists[i]['value'] = filter_curr_list['source_td'].innerHTML; break; } } } if(((!list_found)) && (typeof(filter_curr_list) == 'object')){ filter_lists.push(new Array()); filter_lists[filter_lists.length-1]['field_id'] = filter_curr_list['field_id']; filter_lists[filter_lists.length-1]['type'] = filter_curr_list['type']; filter_lists[filter_lists.length-1]['value'] = filter_curr_list['source_td'].innerHTML; } //Берем значения фильтра из filter_lists, если он там есть. //Если его там нет, то создаем новый фильтр list_found = false; list_index = 0; for(var i=0; i <= filter_lists.length-1; i++) { if((filter_lists[i]['field_id']==a_field_id) &&(filter_lists[i]['type']==filter_option)){ list_found = true; list_index = i; source_td.innerHTML = filter_lists[i]['value']; break; } } if(!list_found){ filter_lists[filter_lists.length] = new Array(); list_index = filter_lists.length-1; filter_lists[list_index]['field_id'] = a_field_id; filter_lists[list_index]['type'] = filter_option; filter_lists[list_index]['value'] = ''; } else{ filter_curr_list = new Array(); filter_curr_list['field_id'] = a_field_id; filter_curr_list['type'] = filter_option; filter_curr_list['value'] = source_td.innerHTML; filter_curr_list['source_td'] = source_td; return 0; } if(filter_option==0){ source_td.innerHTML = ' '; } //наращиваем глобальный индекс итерации filter_iteration++; //создаем префикс для нового значения фильтра //<ИДПоля>_<ТипПодбора>_<Итератор>, например view_filter_pref_in_6_10 (т.е. поле fd_7 фильтруется по вхождению в список) filter_prefix = pre_pref+filter_option+'_'+filter_iteration+'_'+a_field_id; if((filter_option=='in')||(filter_option=='notin')) { destination_table = document.getElementById('filter_pattern_table'); v_row = destination_table.cloneNode(true); table_id = 'filter_source_'+filter_option+'_'+a_field_id; v_row.id = table_id; if(v_row!=null){ source_td.appendChild(v_row); v_row.style.display = "block"; } if((a_type==5)||(a_type==6)||(a_type==7)){ source_td.innerHTML = ''+ return_selection_destination_table(table_id,'100%','display:block;'); } else{ if(a_type==3){ source_td.innerHTML = return_enum_html_combo(a_link_type_id,true,filter_prefix); } else{ source_td.innerHTML = ''+ return_selection_destination_table(table_id,'100%','display:block;'); } } } else{ if((a_type==5)||(a_type==7)||(a_type==10)){ source_td.innerHTML = ''+ '
'+ ''+ ''+ ''+ '
'; } if ((a_type==1)||(a_type==2)){ source_td.innerHTML = ''+ ''+ ''+ ''+ '
'+ ''+ ''+ ''+ 'Выбрать значениеПросмотр/редактирование объектаОчистить значение
'; } if(a_type==3){ source_td.innerHTML = return_enum_html_combo(a_link_type_id,false,filter_prefix); } if(a_type==6){ source_td.innerHTML = '
'+ ' '+ ' '+ ' '+ /*' '+*/ ''+ /*' '+*/ '
'; } } filter_curr_list = new Array(); filter_curr_list['field_id'] = a_field_id; filter_curr_list['type'] = filter_option; filter_curr_list['value'] = source_td.innerHTML; filter_curr_list['source_td'] = source_td; }//function filter_change_select_type(a_field,a_field_id,a_type,a_link_type_id) function ajax_return_children_groups(a_parent_id,a_sc_id,a_level) { var target_div = document.getElementById('group_'+a_parent_id); if((target_div.innerHTML=='')||(target_div.innerHTML==undefined)){ AJAX('get','http://udb.timecode.ru/ajax_results.php?parent_id='+a_parent_id+'&sc_id='+a_sc_id+'&level='+a_level,'group_'+a_parent_id); } else{ target_div.innerHTML = ''; } } function set_user_filter(a_form){ var f = document.getElementById(a_form); submit_form(a_form); } function load_user_filter(a_table){ var t = document.getElementById(a_table); var a = document.getElementById('new_filter_text'); t.innerHTML = a.value; } function ret_user_filter(a_form_id, a_filter_block, a_submit_name){ var fb = document.getElementById(a_filter_block); //var a = document.getElementById('new_filter_text'); var f = document.getElementById(a_form_id); var div = document.getElementById('highslide_new_filter_div'); //a.value = fb.innerHTML; div.innerHTML = fb.innerHTML; f.innerHTML = f.innerHTML + ''; //set_names(0); submit_form(a_form_id); } function ret_user_filter2(a_div_id, a_area_id){ var a_div_id = document.getElementById(a_div_id); var a_area_id = document.getElementById(a_area_id); a_area_id.value = a_div_id.innerHTML; } function print_list(){ /*getObj('test').value = getObj('test1').innerHTML; if(getObj('the-table')){ alert('print'); getObj('the-table').id = 'print_the_table'; } else{ if(getObj('print-the-table')){ alert('view'); getObj('print-the-table').id = 'the_table'; } }*/ //alert('Пока в разработке'); } /*addon - childNodes исправлено на children children.item(i) на children[i]*/ function add_line_to_table(a_table_id, a_pattern){ var SYS_TABID_PREFIX = 'tabid_'; var SYS_TAB_FIELD_PREFIX = 'tabfield_'; var table = document.getElementById(a_table_id); rows = table.children[0]; row_count = 0; for (var i=0;i < rows.children.length;i++) { if (rows.children[i].nodeName=='TR'){ row_count++; } } new_row_index = row_count - 1; row = clone_row_ex(document, table, a_pattern); for (var i=0;i < row.children.length;i++) { if (row.children[i].id.indexOf(SYS_TAB_FIELD_PREFIX) > -1) { ctrl_values = row.children[i].children[0].children[0].children[0].children[0]; for (var k=0; k < ctrl_values.children.length; k++) { if ((ctrl_values.children[k].nodeName=='INPUT')||(ctrl_values.children[k].nodeName=='SELECT')){ ctrl_values.children[k].name = ctrl_values.children[k].name +'_'+new_row_index; ctrl_values.children[k].id = ctrl_values.children[k].name; } } } } row.children[0].children[0].innerHTML = new_row_index; } /*addon - childNodes исправлено на children children.item(i) на children[i] Исправить removeNode на удобоваримый метод */ function delete_row_from_table(a_elem){ var tr = a_elem.parentNode.parentNode; var table_body = tr.parentNode; //-2 потому что первая строка в реальной таблице заголовочная //а вторая - пустая и невидимая строка клонирования curr_index = -2; found = false; for (var i=0;i < table_body.children.length;i++) { if(table_body.children[i] == tr){ found = true; continue; } curr_index++; if(found){ table_body.children[i].children[0].children[0].innerHTML = curr_index; } } tr.removeNode(true); } function table_visibility(a_table_id,a_image_id){ elem_visibility(a_table_id); var img = document.getElementById(a_image_id); if (img.src == 'http://udb.timecode.ru/images/collapse.gif'){ img.src = 'http://udb.timecode.ru/images/expand.gif'; } else{ img.src = 'http://udb.timecode.ru/images/collapse.gif'; } } function operate_filter_block(){ elem_visibility('user_filter_div'); } function user_filter_show_list(href,a_link_type_id){ AJAX('GET',href+'ajax_results.php?user_filters_get=1&link_type_id='+a_link_type_id,'user_filters_selector_span'); } function user_filter_load(href){ AJAX('GET',href+'ajax_results.php?user_filters_get=1&link_type_id='+a_link_type_id,'user_filter_div'); } function user_filter_save(){ } function view_object(a_obj, a_href){ /**/ //alert(a_obj.parentNode.parentNode.children[0].children[2].value); view_object = a_obj.parentNode.parentNode.children[0].children[2].value; type_id = a_obj.parentNode.parentNode.children[0].children[1].value; href = a_href+'?view_object='+view_object+'&type_id='+type_id; if((view_object > 1) && (type_id>0)){ new_window = window.open(href,'','_blank,scrollbars=1,resizable=1'); }else{ alert('В поле ничего не записано!'); } }