﻿// JScript 文件
Ext.onReady(function(){
    Ext.QuickTips.init();
     var importButton =Ext.get('import-button');
     importButton.on('mouseover',function(e){
       importButton.dom.style.background='#739BE0';
     });
     importButton.on('mouseout',function(e){
       importButton.dom.style.background='';
     });
     importButton.on('click',function(e){
             var store = new Ext.data.SimpleStore({
                          fields: ['bvalue', 'btype'],
                          data : Ext.addtoodata.types // from states.js
                });
             importDlg = new Ext.Window({
                //el:'win',
               
                layout:'table',
                width:325,
                height:320,
                //closeAction:'hide',
                modal :true,
                plain: true,
                title:'导入书签',
                border:false,
                bodyBorder:false,
                resizable:false,
                labelWidth:0, 
                defaults: {
                        // applied to each contained panel
                        //bodyStyle:'padding:1px'
                    },
                layoutConfig: {
                    // The total column count must be specified here
                    columns: 1
                },    
                items: [
                           new Ext.FormPanel({
                            id:'form-upload',
                            labelWidth: 100,
                            border: false,
                            url:'data/import_bookmark.aspx',
                            frame:true,
                            fileUpload: true, // STEP 2
                            items: [{
                                     xtype:'textfield',
                                     id: 'file',
                                     fieldLabel:'浏览导入文件',
                                     allowBlank:false,
                                     blankText:'请选择要导入的书签文件',
                                     labelSeparator:'：',
                                     inputType: 'file'
                                    },{
                                     xtype:'combo',
                                     id:'type', 
                                     fieldLabel:'导入书签类型',
                                     labelSeparator:'：',
                                     store: store,
                                     displayField:'btype',
                                     typeAhead: false,
                                     mode: 'local',
                                     readOnly:true,
                                     triggerAction: 'all',
                                     width:185 
                                    },{
                                     xtype:'hidden',
                                     id:'folder',
                                     value:'0'
                                  }]
                            }),
                            {
                                html: '<p style="text-align:left;border-right: #CAD9EC 2px solid;border-left: #CAD9EC 2px solid;border-top: #CAD9EC 10px solid;background-color: #CAD9EC;">请选择导入收藏夹的目标文件夹：</p>',
                                border:false 
                            },
                        {
                            xtype: 'treepanel',
                            id:'importDlg-tree',
                            autoScroll:true,
                            animate:true,
                            enableDD:true,
                            enableDrag:true, 
                            singleExpand:true,
                            width:312,
                            height:150,
                            loader: new Ext.tree.TreeLoader({
                                        dataUrl:'data/get_folders.aspx'
                                    }),
                            root: new Ext.tree.AsyncTreeNode({
                                        text: '收藏夹 ',
                                        iconCls:'addtoo-star',
                                        draggable:false,
                                        id:'0' 
                                    })
                      
                        }],
                
                buttons: [{
                    text:'创建文件夹', 
                    handler:createBntClick
                },{
                    text:'确定',
                    handler:onClick
                },{
                    text: '取消',
                    handler: function(){
                        importDlg.close();
                       
                    }
                }]
            }); 
           
      importDlg.show(this);
      importDlg.getComponent('form-upload').getComponent('type').setValue('从IE浏览器导出的收藏'); 
      var importDlgTree=importDlg.getComponent('importDlg-tree');
      importDlgTree.root.expand();
      importDlgTree.root.select();
      importDlgTree.on('click',function(node,e){
          importDlg.getComponent('form-upload').getComponent('folder').setValue(node.id);
         });
      importDlg.getComponent('form-upload').el.enctype = 'multipart/form-data'; // STEP 3 
     });
   function onClick(){
      if(!importDlg.getComponent('form-upload').getComponent('file').validate()){
         return;
      }
      importDlg.getComponent('form-upload').form.submit(
                {
                    waitMsg:'正在上传，请等待...',
                    failure: function(form_instance_create, action) {
                             Ext.MessageBox.show({
                                        title: '错误提示',
                                        msg: action.result.Msg,
                                        buttons: Ext.MessageBox.OK,
                                        animEl: 'mb9',
                                        //fn: showResult,
                                        icon: Ext.MessageBox.ERROR
                                   });  
                         },  
                    success: function(form_instance_create, action) { 
                             Ext.example.msg('爱读提示您', action.result.Msg);
                             //Ext.MessageBox.alert('导出成功', action.result.Msg);  
                             importDlg.close();
                             Ext.get('item-number').load({
                                   url: 'data/get_number.aspx',
                                   //scripts:true,
                                   params: 'need=yes',
                                   text: 'Loading...'
                                 });
                             Ext.getCmp('left-tree').root.reload();    
                             Ext.getCmp('left-tree').root.select();
                             Ext.getCmp('right-tree').root.id='0';
                             Ext.getCmp('right-tree').root.reload();   
                         }  
                }
              );
       
   }
   function createBntClick(){    
         createFolderDialog = new Ext.Window({
                   
                    layout:'form',
                    width:305,
                    height:120,
                    closeAction:'close',
                    modal :true,
                    plain: true,
                    title:'创建文件夹',
                    border:false,
                    bodyBorder:false,
                    resizable:false,
                    labelWidth:80, 
                    defaults: {
                            // applied to each contained item
                            width:200
                           
                        },
                    
                   items:[{
                          xtype:'textfield',
                          id: 'folderNameTextBox',
                          fieldLabel: '文件夹名称',
                          allowBlank:false,
                          blankText:'请输入文件夹名称',
                          selectOnFocus:true,
                          labelSeparator:'：'
                 },{ 
                          xtype:'textfield',
                          id: 'folderDescriptionTextBox',
                          fieldLabel: '文件夹描述',
                          labelSeparator:'：' 
                     }],
    
                    buttons: [{
                        text:'确定',
                        handler:createNewFolder
                    },{
                        text: '取消',
                        handler: function(){
                            createFolderDialog.close();
                        }
                    }]
         
            });

	         createFolderDialog.show(this); 
	} 
	function createNewFolder(){
      var folderNameTextBox=createFolderDialog.getComponent('folderNameTextBox');
      var folderDescriptionTextBox=createFolderDialog.getComponent('folderDescriptionTextBox'); 
      var folderName=folderNameTextBox.getValue();
      var folderDescription=folderDescriptionTextBox.getValue();
      if(!folderNameTextBox.validate()){
        return;
      }
     createFolderDialog.close(); 
     var importDlgTree=importDlg.getComponent('importDlg-tree');
      Ext.MessageBox.show({
                       msg: '正在保存，请等待...',
                       width:250,
                       wait:true,
                       animEl: 'mb7'
                   });
      Ext.Ajax.request({
		        url: 'data/create_folder.aspx',
		        params: {node:importDlgTree.getSelectionModel().getSelectedNode().id,name:folderName,description:folderDescription},
		       
		        callback: function(options,success,response){
		           
		           
		           var oResponse = Ext.decode(response.responseText);
		           if(oResponse.success){
		               //alert(oResponse.response); 
		               Ext.example.msg('爱读提示您', oResponse.response);

		               var newNode = new Ext.tree.TreeNode({
		                                id: oResponse.folderId, 
		                                text: folderName, 
		                                leaf: true,
		                                iconCls:'addtoo-folder',
		                                qtip:folderDescription
		                             });
	                   importDlgTree.getSelectionModel().getSelectedNode().leaf=false;
	                   importDlgTree.getSelectionModel().getSelectedNode().appendChild(newNode);
	                   importDlgTree.getSelectionModel().getSelectedNode().expand();
	                   
		           }
		           else{
		              Ext.MessageBox.show({
                            title: '错误提示',
                            msg: oResponse.response,
                            buttons: Ext.MessageBox.OK,
                            animEl: 'mb9',
                            //fn: showResult,
                            icon: Ext.MessageBox.ERROR
                       });
		           }
		          
		        },
		        success:function(){
		           Ext.MessageBox.hide();
		        },
        		failure:function(){
        		    Ext.MessageBox.show({
                    title: '错误提示',
                    msg: '通信失败！请检查网络。',
                    buttons: Ext.MessageBox.OK,
                    animEl: 'mb9',
                    //fn: showResult,
                    icon: Ext.MessageBox.ERROR
                  });
        		}
	         });   
   };   
}); 