/*** for exFile previewing *****/

function PopupPreview(preview_url, size1, size2) {
    size1=size1+50;
    if (size1>850) {
        size1=850;
    }
    size2=size2+150;
    if (size2>650) {
        size2=650;
    };
    F = window.open(preview_url,"Popup","resizable=1,status=0,scrollbars=1,width=" + size1 +",height="+ size2 );
    F.focus();
}

/*** for inline script writes of global_content_menus *****/

var addNewLinkStr = '<li><a href="'
    +'|/createObject?type_name='
    +'|" onmouseup="if (activeButton != null) resetButton(activeButton);"><img src="'
    +'|" alt="" width="16" height="16" />'
    +'|</a>\</li>'


addNewLinkStr = addNewLinkStr.split('|')

var addNewBtnStr = '<li><a href="#" title="Add new items to this folder" onclick="return buttonClick(event, \'objectMenu\');"'
    + 'onmouseover="buttonMouseover(event, \'objectMenu\');" ><span>'
    + 'Add New Item</span></a><ul class="actionMenu" id="objectMenu" onmouseover="menuMouseover(event)">'

var insertBaseURL = ''
function insertAddNew(baseURL,ids){
    var s = addNewBtnStr, N = ids.length-1;
    if (N>0){
        insertBaseURL = baseURL
        for (var j=0; j<N; j++){
            if (availTypes[ids[j]]){
                var i=0, typeInfo = availTypes[ids[j]]
                s += addNewLinkStr[i++] + insertBaseURL + addNewLinkStr[i++] + ids[j] + addNewLinkStr[i++] + typeInfo.icon
                    + addNewLinkStr[i++] + typeInfo.title + addNewLinkStr[i++]

            }
        }
        document.write(s + '</ul></li>')
    }
}

/***** to handle what had been fonesize up/down alt styles *****/

var g_curFontSize = 70 /// see plone.css

function fontsizeDel(up) {
    var b = document.getElementsByTagName('body')[0]
    g_curFontSize += up? 10 : -10
    b.style.fontSize= g_curFontSize + '%'

}

function fontsizeMid(){

    var b = document.getElementsByTagName('body')[0]
    g_curFontSize = 70
    b.style.fontSize= g_curFontSize + '%'

}

/******* html string defs for inline writing of ready-made sitemap and edit 'windows' *****/


var pswin_html =  '<div id="panelBGtop" class="panelBGtop"><div id="panelBanner" class="panelBanner"><a href="javascript:void(closeFrameRemote())">Close</a></div><img src="pseudoWin_Images/top_left.png" width="50" height="40" /> '
    + '<img src="pseudoWin_Images/top_center.png" id="topmid_panelIMG" class="topmid_panelIMG"  width="569" height="40" /> '
    + '<img src="pseudoWin_Images/top_right.png" width="50" height="40" /></div><div id="panelBGmid" class="panelBGmid"> '
    + '<img src="pseudoWin_Images/left_center.png" id="midleft_panelIMG" class="midleft_panelIMG" width="50" height="320" /> '
    + '<img src="pseudoWin_Images/mid_center.png" id="midmid_panelIMG" class="midmid_panelIMG" width="569" height="320" /> '
    + '<img src="pseudoWin_Images/right_center.png" id="midright_panelIMG" class="midright_panelIMG" width="50" height="320" /></div>'
    + '<div id="panelBGbottom" class="panelBGbottom"> <img src="pseudoWin_Images/bottom_left.png" width="50" height="35" /> '
    + '<img src="pseudoWin_Images/bottom_center.png" id="botmid_panelIMG" class="botmid_panelIMG" width="569" height="35" /> '
    + '<img src="pseudoWin_Images/bottom_right.png" width="50" height="35" /></div>'
    + '<div id="panel_growbox" class="panel_growbox" style="left:8px;top:7px;width:649px;height:370px;">.</div>'
    + '<img src="pseudoWin_Images/grow_widget.png" id="panel_growWidget" class="panel_growWidget" style="top:363px;left:643px;" width="17" height="16" />'
    + '<iframe id="editFrame"  class="editFrame" style="padding:0;position:absolute;background:white;left:8px;top:41px;width:'
    + ( document.all? '653' : '648') + 'px;height:320px;" src="demo-in-iframe.html"></iframe>'


if (portal_url) { // anchor images to the site root
    pswin_html = pswin_html.split('src="').join('src="' + portal_url + '/')
}

if (document.all){ // use ms proprietary filters for png alpha trans
    pswin_html = pswin_html.split('<img src="').join('<img src="pseudoWin_Images/single_pixel.gif" style="margin:0 -4px -4px 0;padding:0;filter:progid:DXImageTransform.Microsoft.AlphaImageLoader(src=\'')
    pswin_html = pswin_html.split('.png').join('.png\',sizingMethod=\'scale\');" ')
}

var staticWinHTML = '<div id="panelBGWrapper" class="panelBGWrapper" style="position:'
    + ( document.all? 'absolute' : 'fixed') + ';display:block;top:400px;left:100px;visibility:hidden;">' + pswin_html + '</div>'
var editorHTML = staticWinHTML.split('id="').join('id="psedit_')
var browseHTML = staticWinHTML.split('id="').join('id="sitemap_')


/******* from kn_panels_icons.js --- utility scripts for panels folders only

*****/

var mimeTypeToHuman = new Array();

mimeTypeToHuman['application/msword'] = 'Microsoft Word Document'

var panelsBaseURL, curRowID, curColID;
var panelLinkFileIDs = new Array(), panelRowIDs = new Array(),panelColIDs = new Array(), panelRowN = -1, panelColN, panelObjN;



g_api_special_data_exists = true;   /// connects with nowrap main template for returning data to parent

function g_api_special_data() {

    this.dataType = 'panelsArrays'
    this.panelLinkFileIDs = panelLinkFileIDs
    this.panelRowIDs = panelRowIDs
    this.panelColIDs = panelColIDs
    
    return this
    
}

function hideMainEdit() {  /// just here to pacify default from plone_javascript.js... tabindex=1 is in main edit

    if (curRowID){
        if (toggleObjectEditing) window.setTimeout('toggleObjectEditing(0)', 200) // hide main edit-props if there are columns
    }
}

if (window.addEventListener) window.addEventListener("load",hideMainEdit,false);
else if (window.attachEvent) window.attachEvent("onload",hideMainEdit);

function setBase(base){
    if ((base + '|||').indexOf('/|||') > -1){
        base = (base + '|||').split('/|||').join('')
    }
    panelsBaseURL = base;
    
}


function setRowID(newRowID, end, start){
    curRowID = newRowID;
    panelLinkFileIDs[curRowID]  = new Array()
    panelColIDs[curRowID]  = new Array()
    panelRowIDs[++panelRowN] = curRowID
    panelColN = 0;
}

var onePanelTB1 = '<div class="panelEditTools">\r<a href="javascript:void(openEditForPanel(\'|BASE|/|ROW|/|COLDOC|/|ACTION|\'))" title="Edit This Pane\'s Content"><img src="|BASE|/pane_edit_icon.gif" width="16" height="16"></a><a href="javascript:void(openEditForPanel(\'|BASE|/deletePane?rowId=|ROW|&colId=|COL|\',1))" title="Delete this pane"><img src="|BASE|/panesfolder_trash.gif" width="11" height="13"></a>';

var onePanelTB_ML = '<a href="javascript:void(openEditForPanel(\'|BASE|/movePaneLeft?rowId=|ROW|&colId=|COL|\',1))"title="Move this pane to the left"><img src="|BASE|/panesfolder_arrowLeft.gif" width="9" height="9"></a>';

var onePanelTB_MR = '<a href="javascript:void(openEditForPanel(\'|BASE|/movePaneRight?rowId=|ROW|&colId=|COL|\',1))"title="Move this pane to the right"><img src="|BASE|/panesfolder_arrowRight.gif" width="9" height="9"></a>';

var oneLinkFileTempl = '<span class="panelEditItemTB"><a href="javascript:void(openEditForPanel(\'|BASE|/|ROW|/|COL|/links_files/|OBJ|/|ACTION|\'))" title="Edit This |TYPE|\'s Content"><img src="|BASE|/pane_edit_icon.gif" width="16" height="16"></a><a href="javascript:void(deleteLinkFile(\'|ROW|\',\'|COL|\',\'|OBJ|\'))" title="Delete this |TYPE|"><img src="|BASE|/panesfolder_trash.gif" width="11" height="13"></a></span>';

var oneLinksWidget = '<a class="panelEditLink" id="addLink" href="javascript:void(addLinkOrFile(\'|ROW|\',\'|COL|\',\'link\'))"  title="Add a link to Panel">Add a link</a><a class="panelEditLink" id="addFile" href="javascript:void(addLinkOrFile(\'|ROW|\',\'|COL|\',\'file\'))"  title="Add a new file-upload to this to Panel">Add a file</a><a class="panelEditLink" id="panelManageFolder" href="javascript:void(openContentsForPanel(\'|BASE|/|ROW|/|COL|/links_files/folder_contents_nowrap\'))"  title="Open a folder-contents view, to delete items etc">Manage links and files...</a>'


function insertPanelsToolbar(col, action, end, start) {

    var colDocID = col;
    
    if (col.indexOf('/') > -1){
        var temp = col.split('/')
        col = temp[0];
    }

    curColID = col;
    start = (panelColN == 0)
    panelLinkFileIDs[curRowID][col]  = new Array()
    panelColIDs[curRowID][panelColN++]  = col
    panelObjN = 0;
    
    var s = onePanelTB1 + ( end ? '' : onePanelTB_MR ) + ( start ? '' : onePanelTB_ML ) + '</div>'
    s = s.split('|BASE|').join(panelsBaseURL)
    s = s.split('|ACTION|').join(action)
    s = s.split('|ROW|').join(curRowID)
    s = s.split('|COL|').join(col)

    s = s.split('|COLDOC|').join(colDocID)

///alert(s)
    document.write( s )

}

function insertLinkTB(objID, type) {
    
    panelLinkFileIDs[curRowID][curColID][panelObjN++] = objID
    
    var s = oneLinkFileTempl
    s = s.split('|BASE|').join(panelsBaseURL)
    s = s.split('|ROW|').join(curRowID)
    s = s.split('|COL|').join(curColID)
    s = s.split('|OBJ|').join(objID)
    s = s.split('|ACTION|').join(type)
    s = s.split('|TYPE|').join('link')
    
    document.write( s )

}

function insertFileTB(objID, type) { /////// , fileSize, mimeType) {
    
    panelLinkFileIDs[curRowID][curColID][panelObjN++] = objID
    
    var s = oneLinkFileTempl
    s = s.split('|BASE|').join(panelsBaseURL)
    s = s.split('|ROW|').join(curRowID)
    s = s.split('|COL|').join(curColID)
    s = s.split('|OBJ|').join(objID)
    s = s.split('|ACTION|').join(type)
    s = s.split('|TYPE|').join('file-upload')
    
    document.write( s )

}

function insertLinksToolbar() {


    var s = oneLinksWidget
    s = s.split('|BASE|').join(panelsBaseURL)
    s = s.split('|ROW|').join(curRowID)
    s = s.split('|COL|').join(curColID)
    
    document.write( s )
    
}


if (document.location.href.indexOf('nowrap=true') > -1){
    document.write('<style>img{display:none;}</style>')

}


function PopupPreview(preview_url, size1, size2) {
    size1=size1+50;
    if (size1>850) {
        size1=850;
    }
    size2=size2+150;
    if (size2>650) {
        size2=650;
    };
    F = window.open(preview_url,"Popup","resizable=1,status=0,scrollbars=1,width=" + size1 +",height="+ size2 );
    F.focus();
}
