| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206 |
- MWF.xApplication.TeamWork = MWF.xApplication.TeamWork || {};
- MWF.xApplication.TeamWork.ProjectSetting = new Class({
- Extends: MWF.xApplication.TeamWork.Common.Popup,
- options:{
- "closeByClickMask" : false
- },
- open: function (e) {
- //设置css 和 lp等
- var css = this.css;
- this.cssPath = "/x_component_TeamWork/$ProjectSetting/"+this.options.style+"/css.wcss";
- this._loadCss();
- if(css) this.css = Object.merge( css, this.css );
- this.lp = this.app.lp.projectSetting;
- this.fireEvent("queryOpen");
- this.isNew = false;
- this.isEdited = false;
- this._open();
- this.fireEvent("postOpen");
- },
- _createTableContent: function () {
- this.projectInfor(function(rs){
- this.groups = rs.groups;
- this.groupsArr = [];
- this.projectSettingTop = new Element("div.projectSettingTop",{styles:this.css.projectSettingTop}).inject(this.formTableArea);
- this.projectSettingTopText = new Element("div.projectSettingTopText",{styles:this.css.projectSettingTopText,text:this.lp.title}).inject(this.projectSettingTop);
- this.projectSettingTopClose = new Element("div.projectSettingTopClose",{styles:this.css.projectSettingTopClose}).inject(this.projectSettingTop);
- this.projectSettingTopClose.addEvents({
- click:function(){this.close()}.bind(this)
- });
- this.projectSettingBgText = new Element("div.projectSettingBgText",{styles:this.css.projectSettingBgText,"text":this.lp.projectSettingBgText}).inject(this.formTableArea);
- this.projectSettingBgContainer = new Element("div.projectSettingBgContainer",{styles:this.css.projectSettingBgContainer}).inject(this.formTableArea);
- this.projectSettingBgImg = new Element("div.projectSettingBgImg",{styles:this.css.projectSettingBgImg}).inject(this.projectSettingBgContainer);
- if(this.data.icon && this.data.icon!=""){
- this.projectSettingBgImg.setStyles({
- "background-image":"url('"+MWF.xDesktop.getImageSrc( this.data.icon )+"')"
- });
- }
- this.projectSettingBgUpload = new Element("div.projectSettingBgUpload",{styles:this.css.projectSettingBgUpload,text:this.lp.upload}).inject(this.projectSettingBgContainer);
- this.projectSettingBgUpload.addEvents({
- click:function(){
- var data = {};
- // var value ;
- // MWF.xDesktop.requireApp("Template", "widget.ImageClipper",null,false);
- // this.clipper = new MWF.xApplication.Template.widget.ImageClipper(this.app, {
- // "imageUrl": value ? MWF.xDesktop.getImageSrc( value ) : "",
- // "aspectRatio": this.options.aspectRatio || 0,
- // "ratioAdjustedEnable" : this.options.ratioAdjustedEnable || false,
- // "reference": this.options.reference,
- // "referenceType": this.options.referenceType,
- // "onChange": function () {
- // if( this.image )this.image.destroy();
- // if(this.imageWrap)this.imageWrap.destroy();
- // if( styles.imageWrapStyle ){
- // this.imageWrap = new Element("div", { styles : styles.imageWrapStyle}).inject( parent, "top" )
- // }
- // this.image = new Element("img", {
- // "src" : this.clipper.imageSrc
- // }).inject( this.imageWrap || parent, "top" );
- // if( styles.imageStyle )this.image.setStyles( styles.imageStyle );
- // this.image.addEvent("click",function(){
- // window.open( MWF.xDesktop.getImageSrc( this.imageId ), "_blank" );
- // }.bind(this));
- // this.imageId = this.module.imageId = this.clipper.imageId;
- // if( this.options.validImmediately ){
- // this.module.verify( true )
- // }
- // }.bind(this)
- // });
- // this.clipper.load();
- MWF.xDesktop.requireApp("TeamWork", "UploadImage", function(){
- var ui = new MWF.xApplication.TeamWork.UploadImage(this, data, {
- documentId : this.data.id ||"",
- onPostOk : function( id ){
- this.data.icon = id;
- this.projectSettingBgImg.setStyles({
- "background-image":"url('"+MWF.xDesktop.getImageSrc( id )+"')"
- });
- //window.open( MWF.xDesktop.getImageSrc( id ), "_blank" );
- }.bind(this)
- });
- ui.open()
- }.bind(this));
- }.bind(this)
- });
- this.projectSettingContainer = new Element("div.projectSettingContainer",{styles:this.css.projectSettingContainer}).inject(this.formTableArea);
- this.projectSettingTitleContainer = new Element("div.projectSettingTitleContainer",{styles:this.css.projectSettingTitleContainer}).inject(this.projectSettingContainer);
- this.projectSettingTitleText = new Element("div.projectSettingTitleText",{styles:this.css.projectSettingTitleText,text:this.lp.projectTitle}).inject(this.projectSettingTitleContainer);
- this.projectSettingTitleDiv = new Element("div.projectSettingTitleDiv",{styles:this.css.projectSettingTitleDiv}).inject(this.projectSettingTitleContainer);
- this.projectSettingTitleIn = new Element("input.projectSettingTitleIn",{styles:this.css.projectSettingTitleIn,value:rs.title || ""}).inject(this.projectSettingTitleDiv);
- // this.projectSettingContainer = new Element("div.projectSettingContainer",{styles:this.css.projectSettingContainer}).inject(this.formTableArea);
- this.projectSettingGroupContainer = new Element("div.projectSettingGroupContainer",{styles:this.css.projectSettingGroupContainer}).inject(this.projectSettingContainer);
- this.projectSettingGroupText = new Element("div.projectSettingGroupText",{styles:this.css.projectSettingGroupText,text:this.lp.projectGroup}).inject(this.projectSettingGroupContainer);
- this.projectSettingGroupDiv = new Element("div.projectSettingGroupDiv",{styles:this.css.projectSettingGroupDiv}).inject(this.projectSettingGroupContainer);
- this.projectSettingGroupDiv.addEvents({
- click:function(){
- var data = {groups:this.groups};
- MWF.xDesktop.requireApp("TeamWork", "GroupSelect", function(){
- var gs = new MWF.xApplication.TeamWork.GroupSelect(this.container, this.projectSettingGroupDiv, this.app, data, {
- axis : "y",
- nodeStyles : {
- "z-index" : "102"
- },
- onClose:function(d){
- if(d){
- this.actions.groupWithIds({ids:d},function(json){
- this.groups = json.data;
- var tmp = [];
- json.data.each(function(ddd){
- tmp.push(ddd.name);
- });
- this.projectSettingGroupValue.set("text",tmp.join())
- }.bind(this));
- }else{
- this.groups = [];
- }
- //this.newProjectGroupValue.set("text",d)
- }.bind(this)
- });
- gs.load()
- }.bind(this));
- }.bind(this)
- });
- this.projectSettingGroupValue = new Element("div.projectSettingGroupValue",{styles:this.css.projectSettingGroupValue}).inject(this.projectSettingGroupDiv);
- this.projectSettingGroupIcon = new Element("div.projectSettingGroupIcon",{styles:this.css.projectSettingGroupIcon}).inject(this.projectSettingGroupDiv);
- if(this.groups){
- this.groups.each(function(data){
- this.groupsArr.push(data.name);
- }.bind(this));
- }
- this.projectSettingGroupValue.set("text",this.groupsArr.join());
- this.projectSettingContainer = new Element("div.projectSettingContainer",{styles:this.css.projectSettingContainer}).inject(this.formTableArea);
- this.projectSettingContainer.setStyles({"height":"120px"});
- this.projectSettingDesText = new Element("div.projectSettingDesText",{styles:this.css.projectSettingDesText,text:this.lp.projectDes}).inject(this.projectSettingContainer);
- this.projectSettingDesContainer = new Element("div.projectSettingDesContainer",{styles:this.css.projectSettingDesContainer}).inject(this.projectSettingContainer);
- this.projectSettingDesIn = new Element("textarea.projectSettingDesIn",{styles:this.css.projectSettingDesIn,value:rs.projectDetail.description||""}).inject(this.projectSettingDesContainer);
- this.projectSettingContainer = new Element("div.projectSettingContainer",{styles:this.css.projectSettingContainer}).inject(this.formTableArea);
- this.projectSettingConfirm = new Element("div.projectSettingConfirm",{styles:this.css.projectSettingConfirm,text:this.lp.confirm}).inject(this.projectSettingContainer);
- this.projectSettingConfirm.addEvents({
- click:function(){
- if(this.projectSettingTitleIn.get("value").trim()=="") return;
- var groups = [];
- if(this.groups){
- this.groups.each(function(d){
- groups.push(d.id);
- });
- }
- var data = {
- "id":this.data.id,
- "icon":this.data.icon || "",
- "title":this.projectSettingTitleIn.get("value").trim(),
- "description":this.projectSettingDesIn.get("value"),
- "groups":groups
- };
- this.actions.projectSave(data,function(json){
- this.close();
- }.bind(this));
- }.bind(this)
- });
- this.projectSettingClose = new Element("div.projectSettingClose",{styles:this.css.projectSettingClose,text:this.lp.close}).inject(this.projectSettingContainer);
- this.projectSettingClose.addEvents({
- click:function(){
- this.close();
- }.bind(this)
- });
- //this.projectSettingAction = new Element("div.projectSettingAction",{styles:this.css.projectSettingAction,text:this.lp.confirm}).inject(this.formTableArea);
- }.bind(this));
- },
- projectInfor:function(callback){
- if(this.data.id){
- this.actions.projectGet(this.data.id,function(json){
- if(callback)callback(json.data)
- }.bind(this));
- }
- },
- groupInfor:function(ids){
- if(!ids) return;
- var resGroups = [];
- ids.each(function(data){
- this.actions.groupGet(data,function(json){
- }.bind(this))
- }.bind(this))
- }
- });
|