⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 cms.js

📁 Hippo CMS是一个以信息为中心的开源内容管理系统。Hippo CMS目标是供中,大型企业来管理其发布在互连网
💻 JS
字号:
/*
* Copyright 2001-2007 Hippo (www.hippo.nl)
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
*   http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/

function WebApp() {
  if(!Cfx.Class.IsDefined(WebApp)) {
    Cfx.Class.New(WebApp, baseComponent);
  
    if(Cfx.Class.IsInitializing(WebApp)) {
       WebApp.Method(init);
       WebApp.Method(initialized);
       WebApp.Method(queueAsBusy);
       WebApp.Method(unqueueAsBusy);
       WebApp.Method(setPointer);
       WebApp.Method(resetPointer);

       return;
    }
  }

  // Setup instance data.
  this.InitInstance();
  
  this.waitingqueue = 0;
  
  // Return instance.
  return this;
   
  function init() {
    if(this.log.debugging()) {
      this.log.debug("Initializing WebApp");
    }
    
    //Register self as event listener
    this.sm.lookup("framework.eventmanager").addEventListener(this);
  
    this.initServices();

    //TODO: some deprecated code still uses the global workbench reference. Refactor!
    workbench = this.sm.lookup("cms.workbench");   
  }

  function initialized(){
    return this.sm.lookup("cms.workbench").initialized(); 
  }
  
  function queueAsBusy(win) {
    if (++this.waitingqueue == 1) {
      var focusWindow = win
      this.setPointer(window);
    }
  }

  function unqueueAsBusy() {
    this.waitingqueue = 0;
    this.resetPointer(window);
  }
  
  function setPointer(win) {
    document.getElementById('waitImage').style.visibility = "visible";
    
    //[TODO] Zolang queue onder nul kan, wil dit wel eens mis gaan
    for (var j=0;j < win.frames.length; j++) {
      try {
        if (win.frames[j].document.body != null) {
          win.frames[j].document.body.previouscursor = win.frames[j].document.body.style.cursor;
          win.frames[j].document.body.style.cursor = 'wait';
        }
        if (win.frames[j].frames.length) {
          this.setPointer(win.frames[j]);
        }
      } catch(e) {
        /*
         An exception "Permission denied to get property HTMLDocument.body" can occur
         if a perspective contains a custom iframe which has a page on a different
         domain loaded. We need not set the cursor for this iframe so the exception
         can be ignored safely.
         */
      }
    }
  }
  
  function resetPointer(win) {
    document.getElementById('waitImage').style.visibility = "hidden";

    for (var j=0;j < win.frames.length; j++) {
      try{
        if (win.frames[j].document.body != null) {  //FIXME: cannot get body of iframe!!
          if (win.frames[j].document.body.previouscursor) {
            win.frames[j].document.body.style.cursor = win.frames[j].document.body.previouscursor;
          }
          else {
            win.frames[j].document.body.style.cursor = 'default';
          }
        }
        if (win.frames[j].frames.length) {
          this.resetPointer(win.frames[j]); //FIXME: cannot get body of iframe!!
        }
      }catch(e){}
    }

    tmpmouseinit = false;
  }
  
}


⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -