class ControllerComicComic{ constructor(p){ this.ctag_type_id = 1; this.tool = new Tool(); this.ViewComicComic = new ViewComicComic(); this.ModelOc = new ModelOc(); this.render(); } render(){ var self = this; this.ViewComicComic.render(); if(isLogged){ this.ViewComicComic.handleRating(function(ele){ let score = $(ele).data('v'); let p = {}; p['action'] = 'editScore'; let postData = {}; postData['score'] = score; postData['gk_id'] = comic_data['gk_id']; self.ModelOc.any(p,postData,function(rs){ if(rs['success']){ comic_data['isVoted'] = 1; comic_data['yourScore'] = rs['yourScore']; comic_data['turnout'] = rs['turnout']; comic_data['score'] = rs['score']; let html = self.ViewComicComic.render_rating(); $('.star-area').html(html); } }); }); } var loadCtags_def = function(){ //Load Customer Private Tags var postData = { comic_id : comic_data['comic_id'], ctag_type_id : self.ctag_type_id, } var param = { "action" : 'getLeftJoinCtagsByComicID' } self.ModelOc.any(param,postData,function(data){ if(data.success){ let tree = self.tool.buildTree(data.return['ctags']); self.ViewComicComic.setCtags(tree); self.ViewComicComic.render_ctag_list(tree); self.ViewComicComic.render_ctag_parent_select(tree); } }); }; this.ViewComicComic.handleFav(function(action){ let p = {}; p['action'] = action; let postData = {}; postData['gk_id'] = comic_data['gk_id']; self.ModelOc.any(p,postData,function(rs){ if(rs.success){ if(action == 'addFavorite'){ is_favorite = 1; }else{ is_favorite = 0; } self.ViewComicComic.changeFavStatue(); if(is_favorite){ self.ViewComicComic.showCtagForm(loadCtags_def); //$('.ctagFormBtn').click(); } }else{ console.log(rs.message); } }); }); this.ViewComicComic.handleCtagFormBtn(loadCtags_def); this.ViewComicComic.handleCtagList(); this.ViewComicComic.handleCtagResetBtn(); this.ViewComicComic.handleCtagComicSubmit(this,function(self){ var ctag_ids = []; $('#private_tag_list > tr').each(function( index , element ){ $(element).data('checked'); if($(element).data('checked')){ var ctag_id = $(element).data('ctag_id'); ctag_ids.push(ctag_id); } }); var postData = { comic_id : comic_data['comic_id'], } postData['ctag_ids'] = ctag_ids; var param = {}; param['action'] = 'addComicCustomerTags'; self.ModelOc.any(param,postData,function(data){ if(data.success){ self.ViewComicComic.hideCtagForm(); }else{ alert(data['message']); } }); }); this.ViewComicComic.handleCtagSubmit(this,function(self){ var ctag_id = $('#form_ctag_id').val(); var name = $('#form_name').val(); var parent_id = $('#form_parent').val(); if(name != ''){ }else{ return; } if( ctag_id == 0 ){ ctag_id = ''; } var postData = { ctag_id :ctag_id, name :name, parent_id : parent_id, ctag_type_id : self.ctag_type_id, } var param = {}; param['action'] = 'editCtag'; //var self = this; if(ctag_id != ''){ self.ModelOc.any(param,postData,function(data){ if(data.success){ //self.loadData(); }else{ //self.loadData(); } self.loadCtags(); }); } else { var param = {}; param['action'] = 'addCTag'; self.ModelOc.any(param , postData,function(data){ if(data.success){ //self.loadData(); }else{ //self.loadData(); } self.loadCtags(); }); } }); self.ViewComicComic.handleCategoryBtn(function(param){ if(param['action'] == 'addCategoryVote' || param['action'] == 'delCategoryVote' ){ let p = {}; p['action'] = param['action']; let postData = {}; postData['category_id'] = param['category_id']; postData['gk_id'] = comic_data['gk_id']; self.ModelOc.any(p,postData,function(rs){ if( rs['success'] ){ let ret = {}; ret['category_id'] = param['category_id']; ret['customer_score'] = rs['customer_score']; ret['score'] = rs['score']; self.ViewComicComic.changeCategoryVoteBtn(ret); }else{ toastr.options = { "closeButton": false, "debug": false, "newestOnTop": true, "progressBar": true, "positionClass": "toast-top-right", "preventDuplicates": true, "onclick": null, "showDuration": 300, "hideDuration": 100, "timeOut": 15000, "extendedTimeOut": 5000, "showEasing": "swing", "hideEasing": "linear", "showMethod": "fadeIn", "hideMethod": "fadeOut" } toastr["error"](rs['message']); } }); } }); this.ViewComicComic.handleTagBtn(function(param){ if(param['action'] == 'addTagFav' || param['action'] == 'delTagFav' ){ let p = {}; p['action'] = param['action']; let postData = {}; postData['tag_id'] = param['tag_id']; postData['gk_id'] = param['gk_id']; postData['gt_id'] = param['gt_id']; postData['e_id'] = param['e_id']; postData['cover_extension'] = param['cover_extension']; postData['cover_server_id'] = param['cover_server_id']; self.ModelOc.any(p,postData,function(rs){ //console.log(rs); if( rs['success'] ){ let ret = {}; ret['tag_id'] = postData['tag_id']; if( param['action'] == 'addTagFav' ){ ret['direction'] = 'del'; }else{ ret['direction'] = 'add'; } self.ViewComicComic.changeTagFavBtn(ret); }else{ } }); } }); } loadCtags(){ var self = this; var postData = { comic_id : comic_data['comic_id'], ctag_type_id : self.ctag_type_id, } var param = { "action" : 'getLeftJoinCtagsByComicID' } self.ModelOc.any(param,postData,function(data){ if(data.success){ let tree = self.tool.buildTree(data.return['ctags']); self.ViewComicComic.setCtags(tree); self.ViewComicComic.render_ctag_list(tree); $('#ctag_reset_form').click(); } }); } }