亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? topic.js

?? 個人寫的Blog系統
?? JS
字號:
var removeTopicCategory,removeTopic;
var topicCategoryLoader=Global.topicCategoryLoader;
/**
 * 日志目錄
 */
TopicCategoryManage=function()
{
this.storeMapping=["id","name","intro",{name:"op",mapping:"id"}	];
this.operationRender=function(obj){
	return !obj||obj=="-1"?"":"<a href='javascript:removeTopicCategory("+obj+")'>刪除</a>";
	};
this.store=new Ext.data.JsonStore({		
  		id:"id",
  		url:"topicCategory.ejf?cmd=getCategory&pageSize=-1",  		
  		root:"result",
  		totalProperty:"rowCount",
  		remoteSort:true,  		
    	fields:this.storeMapping
  		});
this.cm=new Ext.grid.ColumnModel([
		new Ext.grid.RowNumberer({header:"序號",width:40,sortable:true}),
		{header: "分類名稱",width:120,dataIndex:"name",editor: new Ext.form.TextField({				   
	               allowBlank: false
	           })},
		{header: "簡介",dataIndex:"intro",editor:new Ext.form.TextField()},	
		{header: "操作", sortable:false,width: 80, dataIndex:"op",renderer:this.operationRender}
		]);	
this.store.paramNames.sort="orderBy";//改變排序參數名稱
this.store.paramNames.dir="orderType";//改變排序類型參數名稱
this.cm.defaultSortable=true;
this.grid=new Ext.grid.EditorGridPanel({
			id:"topicCategoryGrid",	
 			store:this.store,
  			cm:this.cm, 
        	loadMask: true,
        	clicksToEdit:1,
        	autoExpandColumn:2,
        	frame:true,
 			region:"center"
		});
this.grid.on("afteredit",this.afterEdit,this);
this.tree=new  Ext.tree.TreePanel({title:"日志分類",
 			region:"west",
 			width:150, 			
 			root:new Ext.tree.AsyncTreeNode({
 				id:"root",
   				text:"日志分類",   	
   				expanded:true,
   				loader:topicCategoryLoader   		
   				})
 			});
this.tree.on("click",function(node,eventObject){
	var id=(node.id!='root'?node.id:"");
	this.store.baseParams.id=id;
	this.store.removeAll();
	this.store.load();
},this);			
TopicCategoryManage.superclass.constructor.call(this, {
		id:"topicCategoryPanel",
		title:"日志分類管理",
		closable: true,
  		autoScroll:true,
  		layout:"border",
  		tbar: [
				'操作: ',' ',{                 
                   text:"新增分類",
                   handler:this.addCategory,
                   scope:this                 
				}, {                 
                   text:"刪除分類",
                   handler:this.removeCategory,
                   scope:this      
				},' ',new Ext.Toolbar.Fill(),"查詢"
            ],
 		items:[this.tree, 			
 			this.grid
 		]           
   	 });
this.store.load();
}; 
Ext.extend(TopicCategoryManage, Ext.Panel,{
	addCategory:function(){
	    var create=Ext.data.Record.create(this.storeMapping);
	  	var obj=new create({id:'-1',name:'',intro:''});
		this.grid.stopEditing();
		this.store.insert(this.store.getCount(),obj);	
		this.grid.startEditing(this.store.getCount()-1, 0);
   	},
    removeCategory:function(id){
    	var tree=this.tree;
    	var store=this.store;
	   	var m=Ext.MessageBox.confirm("刪除提示","是否真的要刪除數據?",function(ret){
			if(ret=="yes"){
				topicCategoryService.delTopicCategory(id,function(ret){				
					store.remove(store.getById(id));	
					var node=tree.getNodeById(id);
					var parent=node.parentNode;				
					parent.removeChild(node);				
					if(!parent.childNodes){
					 node.parentNode.getUI().removeClass('x-tree-node-expanded');
	              	 node.parentNode.getUI().addClass('x-tree-node-leaf');
					}			
				});				
			}
		}
		);
   	},
   	afterEdit:function(obj){
	   	var r=obj.record;
		var id=r.get("id");
		var name=r.get("name");
		var c=this.record2obj(r);
		var tree=this.tree;
		var node=tree.getSelectionModel().getSelectedNode();	
		if(node && node.id!="root")c.parentId=node.id;
		if(id=="-1" && name!=""){					
			topicCategoryService.addTopicCategory(c,function(id){				
				if(id)r.set("id",id);
				if(!node)node=tree.root;
				node.appendChild(new Ext.tree.TreeNode({
                    id:id,
                    text:c.name,
                    leaf:true
                }));
                node.getUI().removeClass('x-tree-node-leaf');
                node.getUI().addClass('x-tree-node-expanded');
                node.expand();
			});
		}
		else if(name!="")
		{	
			topicCategoryService.updateTopicCategory(r.get("id"),c,function(ret){	
				if(ret)tree.getNodeById(r.get("id")).setText(c.name);
			});
		}
   	},
   	record2obj:function(r)
	{
		return {name:r.get("name"),
		intro:r.get("intro")		
		};
	}
});


/**
日志菜單
*/
TopicMenuPanel=function()
{	
	TopicMenuPanel.superclass.constructor.call(this, {
        autoScroll:true,
        animate:true,
        border:false,
        rootVisible:false,
        root:new Ext.tree.TreeNode({
        text: '日志管理菜單',
        draggable:false,
       	expanded:true
   	 })        
    });
   this.root.appendChild(new Ext.tree.TreeNode({
   		text:"寫新日志",
   		listeners:{'click':function(){
   			var panel=Ext.getCmp("writeTopicPanel");
   			if(!panel){
   				panel=new WriteTopicPanel();
   			}
   			main.openTab(panel);
   			}}	
   		})); 
   this.root.appendChild(new Ext.tree.TreeNode({
   		text:"分類管理",
   		listeners:{'click':function(){
   			var panel=Ext.getCmp("topicCategoryPanel");
   			if(!panel){
   				panel=new TopicCategoryManage();
   				removeTopicCategory=function(id){panel.removeCategory(id);};
   			}
   			main.openTab(panel);
   			}
   		}	
   		}));
 
   var categoryNode=new Ext.tree.AsyncTreeNode({
   		id:"root",
   		text:"日志內容管理",   	
   		loader:topicCategoryLoader
   		});
   this.root.appendChild(categoryNode);
   this.on("click",function(node,eventObject)
   {
   	if(node==categoryNode||categoryNode.contains(node)){
   		var panel=Ext.getCmp("topicListPanel");
   		if(!panel){
   				panel=new TopicListManage();
   				removeTopic=function(id){
   					panel.grid.getSelectionModel().selectRecords([panel.store.getById(id)]);
   					panel.removeData();};
   				editTopic=function(id){
   					panel.grid.getSelectionModel().selectRecords([panel.store.getById(id)]);
   					panel.edit();
   					};
   			}
   		main.openTab(panel);
   		panel.store.baseParams.categoryId=(node.id!='root'?node.id:"");
   		panel.store.removeAll();
   		panel.store.reload();
   	}
   });
}
Ext.extend(TopicMenuPanel, Ext.tree.TreePanel,{});

/**
 * 書寫新日志或添加日志
 */
WriteTopicPanel=Ext.extend(Ext.Panel,{
	id:"writeTopicPanel",
	title:"書寫日志",
	closable: true,
  	autoScroll:true,
  	layout:"fit",  			
	saveTopic:function()
	{	
		var id=this.fp.form.findField("id").getValue();
		this.fp.form.submit({
				waitMsg:'正在保存。。。',
	            url:"topic.ejf?cmd="+(id?"update":"save"),
	            method:'POST',
	            success:function(){
	            var main=Ext.getCmp("main");
	            Ext.Msg.alert("提示信息","數據保存成功!",function(){
	           	main.closeTab(this);
	           	var panel=Ext.getCmp("topicListPanel");
	           	if(!panel)panel=new TopicListManage();
	           	main.openTab(panel);
	           	panel.refresh();},this);
	            },
	            scope:this
		});
	},
	createFormPanel:function(){
		return  new Ext.form.FormPanel({		
		buttonAlign:"center",
		labelAlign:"right",
		bodyStyle:'padding:25px',
		defaults:{width:650},
		autoWidth:true, 
		frame:false,
		bodyBorder:false,
		border:true,
		labelWidth:60,
		items:[	
			{xtype:"hidden",name:"id"},	   
		    {xtype:"textfield",
			 name:"title",
			 fieldLabel:"主題"},
			{xtype:"treecombo",
			 fieldLabel:"所屬欄目",
			 name:"category",
			 hiddenName:"category",
			 tree:new Ext.tree.TreePanel({
 				root:new Ext.tree.AsyncTreeNode({
 				id:"root",
   				text:"日志分類",   	
   				expanded:true,
   				loader:Global.topicCategoryLoader
   				})
 			})},
		  	{
		  	xtype:"textarea",
		  	name:"intro",
		  	fieldLabel:"摘要"},
  			{
  			xtype:"htmleditor",
  			height:330,
	  		name:"content",
	  		fieldLabel:"日志內容"
	  		}],
  		buttons:[{text:"提交",
  				  handler:this.saveTopic,
  				  scope:this},
  				  {text:"清空",
  				   handler:function(){this.fp.form.reset();},
  				   scope:this  				   
  				  },
  				  {text:"取消",
  				   handler:function(){Ext.getCmp("main").closeTab(this);},
  				   scope:this  				   
  				  }]
   	 });
   	 },
	initComponent : function(){
	WriteTopicPanel.superclass.initComponent.call(this);
	this.fp=this.createFormPanel();
	this.add(this.fp);	
	}
});
/**
 * 日志列表
 */
TopicListManage=Ext.extend(EasyJF.Ext.CrudPanel,{
	id:"topicListPanel",
	title:"日志內容管理",
	baseUrl:"topic.ejf",
	gridViewConfig: {
            forceFit:true,
            enableRowBody:true,
            showPreview:true,
            getRowClass : function(record, rowIndex, p, store){
                if(this.showPreview){
                    p.body = '<p>摘要:'+record.data.intro+'</p><br/>';
                    return 'x-grid3-row-expanded';
                }
                return 'x-grid3-row-collapsed';
            }
        },
    create:function()
	{
		var main=Ext.getCmp("main");
		var panel=Ext.getCmp("writeTopicPanel");
   			if(!panel){
   				panel=new WriteTopicPanel();
   			}
   		main.openTab(panel);
	},
	edit:function()
	{
		var record=this.grid.getSelectionModel().getSelected();
		if(!record){
			Ext.Msg.alert("提示","請先選擇要編輯的行!");
			return;
		}
	    var id=record.get("id");
	   	var main=Ext.getCmp("main");
	   	var panelId="writeTopicPanel"+id;
	  	var writePanel=Ext.getCmp(panelId);
	   	if(!writePanel)writePanel=new WriteTopicPanel({id:panelId,title:"編輯日志:"+record.data.title});
	   	main.openTab(writePanel);
	   	writePanel.fp.form.loadRecord(record);
	},
	topicRender:function(value, p, record){    
    	return String.format('<b><a href="portal.ejf?cmd=topicShow&id={0}" target="_blank">{1}</a></b><br/>',record.id,value)
    },    
    operationRender:function(obj){
	return !obj||obj=="-1"?"":"<a href='javascript:editTopic("+obj+")'>編輯</a> <a href='javascript:removeTopic("+obj+")'>刪除</a>";
	}, 
	categoryRender:function(value,p,record)
	{
		if(!value)return "";
		else return value.name;
	},
	commentsRender:function(value, p, record){   
    	return value?value.length:0;
    },   
	storeMapping:["id","title","intro","readTimes","category","inputTime","comments","content",{name:"op",mapping:"id"}
	],	
    toggleDetails:function(btn, pressed){
        var view = this.grid.getView();
        view.showPreview = pressed;
        view.refresh();
    },
    initComponent : function(){
  	this.cm=new Ext.grid.ColumnModel([{        
           header: "主題",
           dataIndex: 'title',
           width:250,
           renderer:this.topicRender
        },{
           header: "所屬欄目",
           dataIndex: 'category',
           width: 100,
           renderer:this.categoryRender
        }
        ,{
           header: "點擊數",
           dataIndex: 'readTimes',
           width: 70,
           align: 'center'
        },{
           header: "評論數",
           dataIndex: 'comments',
           width: 70 ,
           renderer:this.commentsRender         
        },{          
           header: "發表時間",
           dataIndex: 'inputTime',
           width: 150
        },
        {header: "操作", sortable:false,width: 80, dataIndex:"op",renderer:this.operationRender}]);  
		TopicListManage.superclass.initComponent.call(this);
	}
});

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
国产suv精品一区二区883| 另类的小说在线视频另类成人小视频在线 | 99精品国产91久久久久久| 欧美精品粉嫩高潮一区二区| 国产精品你懂的| 久久精工是国产品牌吗| 欧美性受xxxx黑人xyx性爽| 在线播放91灌醉迷j高跟美女| 日韩一区欧美一区| 丁香婷婷综合色啪| 日韩免费观看高清完整版| 1024精品合集| 丰满亚洲少妇av| 久久综合久色欧美综合狠狠| 午夜精品久久久| 在线观看成人小视频| 国产精品国产三级国产专播品爱网 | 亚洲高清不卡在线| 99国产精品一区| 久久久精品国产免费观看同学| 性久久久久久久| 欧美午夜精品免费| 亚洲黄色小视频| 成人毛片视频在线观看| 国产亚洲一区字幕| 国产一区二区不卡在线| 精品免费日韩av| 久久精品噜噜噜成人av农村| 欧美老女人在线| 日韩黄色一级片| 欧美精品色综合| 日本一不卡视频| 6080日韩午夜伦伦午夜伦| 日日夜夜精品视频天天综合网| 在线观看国产91| 亚洲成人av在线电影| 色婷婷av一区二区| 亚洲午夜电影网| 7777精品伊人久久久大香线蕉经典版下载 | 欧美视频一区二区三区| 亚洲成人资源网| 69p69国产精品| 日韩精品一级中文字幕精品视频免费观看 | jvid福利写真一区二区三区| 中文字幕不卡的av| 色综合久久精品| 午夜不卡在线视频| 久久综合九色综合97_久久久| 国产精品自在欧美一区| 中文字幕在线播放不卡一区| 色天天综合久久久久综合片| 五月婷婷色综合| 久久这里只有精品视频网| 国产成人亚洲精品狼色在线 | 精品久久人人做人人爰| 国产成人精品综合在线观看| 亚洲精品国产品国语在线app| 欧美视频在线一区二区三区 | 色八戒一区二区三区| 亚洲美女偷拍久久| www.视频一区| 日韩激情视频网站| 蜜桃久久久久久| 久久66热偷产精品| 亚洲天堂精品视频| 色综合天天综合给合国产| 国产精品美女久久久久aⅴ国产馆 国产精品美女久久久久av爽李琼 国产精品美女久久久久高潮 | 三级在线观看一区二区| 欧美蜜桃一区二区三区| 日韩av电影免费观看高清完整版 | 日韩小视频在线观看专区| 久久精品国产久精国产| 国产亚洲欧洲997久久综合| 高清不卡在线观看| 亚洲美女精品一区| 欧美放荡的少妇| 国产精品12区| 亚洲另类在线一区| 欧美一级国产精品| 成人爱爱电影网址| 婷婷中文字幕综合| 日本一区二区三区在线观看| 91在线视频官网| 日韩av一区二| 国产精品盗摄一区二区三区| 欧美亚洲愉拍一区二区| 国产在线视频不卡二| 亚洲国产日韩一级| 中文字幕av在线一区二区三区| 欧美性高清videossexo| 国产一区二区三区四区五区入口| 国产精品久久久久久亚洲毛片 | 中文字幕国产精品一区二区| 色国产综合视频| 激情成人午夜视频| 一区二区三区中文字幕精品精品| 精品国产污网站| 色吧成人激情小说| 国产成人av一区二区三区在线观看| 一区二区不卡在线播放 | 高清久久久久久| 六月丁香综合在线视频| 樱花影视一区二区| 欧美国产日韩a欧美在线观看| 欧美色综合久久| 粉嫩嫩av羞羞动漫久久久| 天天综合色天天综合| 中文字幕在线一区二区三区| 日韩欧美一二三四区| 欧美日韩一区二区三区四区五区 | 欧美高清视频一二三区 | 国产一区二区三区免费在线观看 | 免费在线观看成人| 亚洲一区二区欧美| 国产精品福利影院| 精品国产一二三区| 91精品国产免费| 欧美精品一二三四| 色老头久久综合| 美女视频一区二区三区| 中文字幕五月欧美| 国产亚洲一本大道中文在线| 日韩精品一区二区三区中文不卡 | 欧美一区二区精品| 欧美精品1区2区| 国产.精品.日韩.另类.中文.在线.播放| 国产真实乱偷精品视频免| 免费在线欧美视频| 无码av免费一区二区三区试看| 亚洲精品成人a在线观看| 亚洲欧洲av色图| 国产精品久久久久久久蜜臀| 欧美国产日韩a欧美在线观看 | 欧美二区三区91| 一本到不卡免费一区二区| 久久精品国产在热久久| 精品一区二区三区av| 国产在线一区观看| 天涯成人国产亚洲精品一区av| 麻豆国产欧美日韩综合精品二区 | 亚洲欧美日韩在线不卡| 中文字幕亚洲在| 亚洲色图20p| 亚洲图片欧美色图| 一区二区三区四区乱视频| 亚洲欧美日韩在线不卡| 亚洲色图欧美偷拍| 亚洲成人精品一区| 裸体健美xxxx欧美裸体表演| 日韩国产在线观看| 成人黄动漫网站免费app| 91免费在线视频观看| 91久久精品国产91性色tv| 欧美日韩免费观看一区三区| 欧美一区二区三区在线观看 | 国产一区二区不卡| 91视视频在线观看入口直接观看www| 成人av在线网| 欧美日韩一区二区不卡| 欧美电影精品一区二区| 久久精品免视看| 一区在线观看视频| 蜜芽一区二区三区| 国产 日韩 欧美大片| 色婷婷狠狠综合| 欧美精品777| 亚洲国产精品成人综合色在线婷婷| 中文字幕一区二区三区av| 五月天欧美精品| 国产99一区视频免费| 欧美中文字幕不卡| 久久久久久久综合狠狠综合| 亚洲精品亚洲人成人网 | 亚洲视频电影在线| 国产精品一区久久久久| 日本道在线观看一区二区| 欧美一区二区三区在线观看视频 | 久久久久久久久久久电影| 一区二区中文字幕在线| 日韩一区精品字幕| 成人深夜在线观看| 在线成人高清不卡| 欧美成人一区二区三区在线观看| 亚洲一区二区三区美女| 国产在线精品不卡| 欧美日韩dvd在线观看| 国产精品乱码一区二区三区软件| 一区二区三区日本| 国产制服丝袜一区| 欧美另类变人与禽xxxxx| 国产精品第四页| 日韩国产欧美在线视频| 欧美日韩中文字幕一区| 中文字幕在线观看不卡| 美女尤物国产一区| 日本高清视频一区二区| 国产日韩一级二级三级| 免费精品视频在线| 欧美日韩在线电影| 亚洲色图视频网站|