This commit is contained in:
shim
2023-04-17 11:06:08 +09:00
parent d0b393aa97
commit 76264e09ad
4686 changed files with 552713 additions and 0 deletions

View File

@@ -0,0 +1,124 @@
function setPostTrendChart(ctx,uid,mod,unit,start) {
$.post(rooturl+'/?r='+raccount+'&m=post&a=get_postTrend',{
uid : uid,
mod : mod,
unit : unit,
d_start : start
},function(response,status){
if(status=='success'){
var result = $.parseJSON(response);
var type=result.type;
var data=result.data;
var options=result.options;
var postChart = new Chart(ctx, {
type: type,
data: data,
options: options
});
$('[data-role="canvas"]').removeClass('d-none');
$('[data-role="loader"]').addClass('d-none');
} else {
alert(status);
}
});
}
page_post_analytics_hit.on('show.rc.page', function(event) {
var modal = modal_post_analytics;
var uid = modal.attr('data-uid');
var page = $(this);
var ctx = page.find('canvas');
var mod = 'hit';
var start = modal.attr('data-start');
page.find('[data-role="canvas"]').addClass('d-none');
page.find('[data-role="loader"]').removeClass('d-none');
setTimeout(function(){
setPostTrendChart(ctx,uid,mod,'day',start);
}, 400);
})
page_post_analytics_referer.on('show.rc.page', function(event) {
var modal = modal_post_analytics;
var uid = modal.attr('data-uid');
var page = $(this);
var ctx = page.find('canvas');
var mod = 'referer';
var start = modal.attr('data-start');
page.find('[data-role="canvas"]').addClass('d-none');
page.find('[data-role="loader"]').removeClass('d-none');
setTimeout(function(){
setPostTrendChart(ctx,uid,mod,'day',start);
}, 400);
})
page_post_analytics_device.on('show.rc.page', function(event) {
var modal = modal_post_analytics;
var uid = modal.attr('data-uid');
var page = $(this);
var ctx = page.find('canvas');
var mod = 'device';
var start = modal.attr('data-start');
page.find('[data-role="canvas"]').addClass('d-none');
page.find('[data-role="loader"]').removeClass('d-none');
setTimeout(function(){
setPostTrendChart(ctx,uid,mod,'day',start);
}, 400);
})
page_post_analytics_side.on('show.rc.page', function(event) {
var modal = modal_post_analytics;
var uid = modal.attr('data-uid');
var page = $(this);
var ctx = page.find('canvas');
var mod = 'side';
var start = modal.attr('data-start');
page.find('[data-role="canvas"]').addClass('d-none');
page.find('[data-role="loader"]').removeClass('d-none');
setTimeout(function(){
setPostTrendChart(ctx,uid,mod,'day',start);
}, 400);
})
page_post_analytics_likes.on('show.rc.page', function(event) {
var modal = modal_post_analytics;
var uid = modal.attr('data-uid');
var page = $(this);
var ctx = page.find('canvas');
var mod = 'likes';
var start = modal.attr('data-start');
page.find('[data-role="canvas"]').addClass('d-none');
page.find('[data-role="loader"]').removeClass('d-none');
setTimeout(function(){
setPostTrendChart(ctx,uid,mod,'day',start);
}, 400);
})
page_post_analytics_dislikes.on('show.rc.page', function(event) {
var modal = modal_post_analytics;
var uid = modal.attr('data-uid');
var page = $(this);
var ctx = page.find('canvas');
var mod = 'dislikes';
var start = modal.attr('data-start');
page.find('[data-role="canvas"]').addClass('d-none');
page.find('[data-role="loader"]').removeClass('d-none');
setTimeout(function(){
setPostTrendChart(ctx,uid,mod,'day',start);
}, 400);
})
page_post_analytics_comment.on('show.rc.page', function(event) {
var modal = modal_post_analytics;
var uid = modal.attr('data-uid');
var page = $(this);
var ctx = page.find('canvas');
var mod = 'comment';
var start = modal.attr('data-start');
page.find('[data-role="canvas"]').addClass('d-none');
page.find('[data-role="loader"]').removeClass('d-none');
setTimeout(function(){
setPostTrendChart(ctx,uid,mod,'day',start);
}, 400);
})

View File

@@ -0,0 +1,76 @@
function getPostBest(settings) {
var start = settings.start;
var d_start = settings.d_start;
var wrapper = settings.wrapper;
var sort=settings.sort; // sort
var orderby=settings.orderby; // orderby
var recnum=settings.recnum; // recnum
var markup_file = settings.markup;
var none = settings.none;
var paging = settings.paging; //페이징 타입
var currentPage =1; // 처음엔 무조건 1, 아래 더보기 진행되면서 +1 증가
wrapper.loader({ position: 'inside' });
$.post(rooturl+'/?r='+raccount+'&m=post&a=get_postBest',{
start: start,
d_start : d_start,
sort : sort,
recnum : recnum,
p : currentPage,
markup_file : markup_file
},function(response,status){
if(status=='success'){
var result = $.parseJSON(response);
var list=result.list;
var num=result.num;
var totalPage=result.tpg
wrapper.loader('hide');
if (list) wrapper.html(list);
else wrapper.html(none);
wrapper.find('[data-plugin="timeago"]').timeago();
if (paging=='infinit') {
//무한 스크롤
wrapper.closest('.content').infinitescroll({
dataSource: function(helpers, callback){
var nextPage = parseInt(currentPage)+1;
if (totalPage>currentPage) {
$.post(rooturl+'/?r='+raccount+'&m=post&a=get_postBest',{
start: start,
d_start : d_start,
sort: sort,
recnum : recnum,
markup_file : markup_file,
p : nextPage
},function(response) {
var result = $.parseJSON(response);
var error = result.error;
var list=result.list;
if(error) alert(result.error);
callback({ content: list });
currentPage++; // 현재 페이지 +1
console.log(currentPage+'페이지 불러옴')
wrapper.find('[data-plugin="timeago"]').timeago();
//wrapper.find('[data-plugin="markjs"]').mark(keyword); // marks.js
});
} else {
callback({ end: true });
console.log('더이상 불러올 페이지가 없습니다.')
}
},
appendToEle : wrapper,
percentage : 95, // 95% 아래로 스크롤할때 다움페이지 호출
hybrid : true // true: 버튼형, false: 자동
});
}
} else {
alert(status);
}
});
}

View File

@@ -0,0 +1,79 @@
function getPostCategory(settings) {
var wrapper = settings.wrapper;
var category=settings.category; // category
var sort=settings.sort; // sort
var orderby=settings.orderby; // orderby
var recnum=settings.recnum; // recnum
var totalPage = settings.totalPage;
var totalNUM = settings.totalNUM;
var markup_file = settings.markup;
var start = settings.start;
var none = settings.none;
var currentPage =1; // 처음엔 무조건 1, 아래 더보기 진행되면서 +1 증가
var prevNUM = currentPage * recnum;
var moreNUM = totalNUM - prevNUM ;
wrapper.loader();
$.post(rooturl+'/?r='+raccount+'&m=post&a=get_postCategory',{
sort : sort,
cat : category,
recnum : recnum,
p : currentPage,
markup_file : markup_file,
orderby :orderby,
start : start
},function(response,status){
if(status=='success'){
var result = $.parseJSON(response);
var list=result.list;
var num=result.num;
wrapper.loader('hide');
if (num) wrapper.html(list)
else wrapper.html(none)
wrapper.find('[data-plugin="timeago"]').timeago();
//무한 스크롤
wrapper.closest('.content').infinitescroll({
dataSource: function(helpers, callback){
var nextPage = parseInt(currentPage)+1;
if (totalPage>currentPage) {
$.post(rooturl+'/?r='+raccount+'&m=post&a=get_postKeyword',{
sort: sort,
keyword : keyword,
recnum : recnum,
markup_file : markup_file,
p : nextPage,
start : start
},function(response) {
var result = $.parseJSON(response);
var error = result.error;
var list=result.list;
if(error) alert(result.error);
callback({ content: list });
currentPage++; // 현재 페이지 +1
console.log(currentPage+'페이지 불러옴')
wrapper.find('[data-plugin="timeago"]').timeago();
//wrapper.find('[data-plugin="markjs"]').mark(keyword); // marks.js
});
} else {
callback({ end: true });
console.log('더이상 불러올 페이지가 없습니다.')
}
},
appendToEle : wrapper,
percentage : 95, // 95% 아래로 스크롤할때 다움페이지 호출
hybrid : false // true: 버튼형, false: 자동
});
} else {
alert(status);
}
});
}

File diff suppressed because it is too large Load Diff

View File

@@ -0,0 +1,124 @@
function getPostFeed(settings) {
var start = settings.start;
var wrapper = settings.wrapper;
var sort=settings.sort; // sort
var orderby=settings.orderby; // orderby
var recnum=settings.recnum; // recnum
var totalPage = settings.totalPage;
var totalNUM = settings.totalNUM;
var markup_file = settings.markup;
var none = settings.none;
var paging = settings.paging; //페이징 타입
var currentPage =1; // 처음엔 무조건 1, 아래 더보기 진행되면서 +1 증가
var prevNUM = currentPage * recnum;
var moreNUM = totalNUM - prevNUM ;
wrapper.removeClass('animated fadeIn');
wrapper.loader({ position: 'inside' });
$.post(rooturl+'/?r='+raccount+'&m=post&a=get_postFeed',{
start: start,
sort : sort,
recnum : recnum,
p : currentPage,
markup_file : markup_file
},function(response,status){
if(status=='success'){
var result = $.parseJSON(response);
var list=result.list;
var num=result.num;
var totalPage=result.tpg;
wrapper.loader('hide');
if (list) wrapper.html(list).addClass('animated fadeIn');
else wrapper.html(none);
wrapper.find('[data-plugin="timeago"]').timeago();
if (paging=='infinit') {
//무한 스크롤
wrapper.closest('.content').infinitescroll({
dataSource: function(helpers, callback){
var nextPage = parseInt(currentPage)+1;
if (totalPage>currentPage) {
$.post(rooturl+'/?r='+raccount+'&m=post&a=get_postFeed',{
start: start,
sort: sort,
recnum : recnum,
markup_file : markup_file,
p : nextPage
},function(response) {
var result = $.parseJSON(response);
var error = result.error;
var list=result.list;
if(error) alert(result.error);
callback({ content: list });
currentPage++; // 현재 페이지 +1
console.log(currentPage+'페이지 불러옴')
wrapper.find('[data-plugin="timeago"]').timeago();
//wrapper.find('[data-plugin="markjs"]').mark(keyword); // marks.js
});
} else {
callback({ end: true });
console.log('더이상 불러올 페이지가 없습니다.')
}
},
appendToEle : wrapper,
percentage : 95, // 95% 아래로 스크롤할때 다움페이지 호출
hybrid : false // true: 버튼형, false: 자동
});
} else {
//수동 페이징
if (totalPage>currentPage) {
$(document).on('click','[data-toggle="morePage"]',function(){
var button = $(this);
var nextPage = parseInt(currentPage)+1;
console.log(nextPage+' 페이지 불러옴');
console.log('전체페이지'+totalPage)
return false
//
// $.post(rooturl+'/?r='+raccount+'&m=post&a=get_postAll',{
// start: start,
// sort: sort,
// recnum : recnum,
// markup_file : markup_file,
// p : nextPage
// },function(response) {
// var result = $.parseJSON(response);
// var error = result.error;
// var list=result.list;
// if(error) alert(result.error);
//
// currentPage++; // 현재 페이지 +1
// console.log(currentPage+'페이지 불러옴')
// wrapper.find('[data-plugin="timeago"]').timeago();
// wrapper.append(list);
//
// });
});
wrapper.append('<div class="content-padded"><button type="button" class="btn btn-link btn-block text-muted" data-toggle="morePage"><i class="material-icons">expand_more</i></button></div>');
} else {
wrapper.append('<div class="infinitescroll-end"></div>');
console.log('피드에서 더이상 불러올 페이지가 없습니다.')
}
}
} else {
alert(status);
}
});
}

View File

@@ -0,0 +1,78 @@
function getPostKeyword(settings) {
var wrapper = settings.wrapper;
var keyword=settings.keyword; // keyword
var sort=settings.sort; // sort
var orderby=settings.orderby; // orderby
var recnum=settings.recnum; // recnum
var totalPage = settings.totalPage;
var totalNUM = settings.totalNUM;
var markup_file = settings.markup;
var start = settings.start;
var none = settings.none;
var currentPage =1; // 처음엔 무조건 1, 아래 더보기 진행되면서 +1 증가
var prevNUM = currentPage * recnum;
var moreNUM = totalNUM - prevNUM ;
wrapper.loader();
$.post(rooturl+'/?r='+raccount+'&m=post&a=get_postKeyword',{
sort : sort,
keyword : keyword,
recnum : recnum,
p : currentPage,
markup_file : markup_file,
start : start
},function(response,status){
if(status=='success'){
var result = $.parseJSON(response);
var list=result.list;
var num=result.num;
wrapper.loader('hide');
if (num) wrapper.html(list)
else wrapper.html(none)
wrapper.find('[data-plugin="timeago"]').timeago();
//무한 스크롤
wrapper.closest('.content').infinitescroll({
dataSource: function(helpers, callback){
var nextPage = parseInt(currentPage)+1;
if (totalPage>currentPage) {
$.post(rooturl+'/?r='+raccount+'&m=post&a=get_postKeyword',{
sort: sort,
keyword : keyword,
recnum : recnum,
markup_file : markup_file,
p : nextPage,
start : start
},function(response) {
var result = $.parseJSON(response);
var error = result.error;
var list=result.list;
if(error) alert(result.error);
callback({ content: list });
currentPage++; // 현재 페이지 +1
console.log(currentPage+'페이지 불러옴')
wrapper.find('[data-plugin="timeago"]').timeago();
//wrapper.find('[data-plugin="markjs"]').mark(keyword); // marks.js
});
} else {
callback({ end: true });
console.log('더이상 불러올 페이지가 없습니다.')
}
},
appendToEle : wrapper,
percentage : 95, // 95% 아래로 스크롤할때 다움페이지 호출
hybrid : false // true: 버튼형, false: 자동
});
} else {
alert(status);
}
});
}

View File

@@ -0,0 +1,91 @@
function getPostLiked(settings) {
var start = settings.start;
var wrapper = settings.wrapper;
var sort=settings.sort; // sort
var orderby=settings.orderby; // orderby
var recnum=settings.recnum; // recnum
var markup_file = settings.markup;
var none = settings.none;
var currentPage =1; // 처음엔 무조건 1, 아래 더보기 진행되면서 +1 증가
wrapper.removeClass('animated fadeIn');
wrapper.loader();
$.post(rooturl+'/?r='+raccount+'&m=post&a=get_postLiked',{
start: start,
sort : sort,
recnum : recnum,
p : currentPage,
markup_file : markup_file
},function(response,status){
if(status=='success'){
var result = $.parseJSON(response);
var list=result.list;
var num=result.num;
var totalPage=result.tpg;
wrapper.loader('hide');
if (num) wrapper.html(list).addClass('animated fadeIn');
else wrapper.html(none);
wrapper.find('[data-plugin="timeago"]').timeago();
//무한 스크롤
wrapper.closest('.content').infinitescroll({
dataSource: function(helpers, callback){
var nextPage = parseInt(currentPage)+1;
if (totalPage>currentPage) {
$.post(rooturl+'/?r='+raccount+'&m=post&a=get_postLiked',{
start: start,
sort: sort,
recnum : recnum,
markup_file : markup_file,
p : nextPage
},function(response) {
var result = $.parseJSON(response);
var error = result.error;
var list=result.list;
if(error) alert(result.error);
callback({ content: list });
currentPage++; // 현재 페이지 +1
console.log(currentPage+'페이지 불러옴')
wrapper.find('[data-plugin="timeago"]').timeago();
//wrapper.find('[data-plugin="markjs"]').mark(keyword); // marks.js
});
} else {
callback({ end: true });
console.log('더이상 불러올 페이지가 없습니다.')
}
},
appendToEle : wrapper,
percentage : 95, // 95% 아래로 스크롤할때 다움페이지 호출
hybrid : false // true: 버튼형, false: 자동
});
// edgeEffect
var wrapper_startY = 0;
wrapper.closest('.content').on('touchstart',function(event){
wrapper_startY = event.originalEvent.changedTouches[0].pageY;
});
wrapper.closest('.content').on('touchmove',function(event){
var wrapper_moveY = event.originalEvent.changedTouches[0].pageY;
var wrapper_contentY = $(this).scrollTop();
if (wrapper_contentY === 0 && wrapper_moveY > wrapper_startY) {
if (wrapper_moveY-wrapper_startY>50) {
edgeEffect(wrapper.closest('.page'),'top','show'); // 스크롤 상단 끝
}
}
if( (wrapper_moveY < wrapper_startY) && ($(this).scrollTop() + $(this).innerHeight() >= $(this)[0].scrollHeight)) {
if (wrapper_startY-wrapper_moveY>50) {
edgeEffect(wrapper.closest('.page'),'bottom','show');
}
}
});
} else {
alert(status);
}
});
}

View File

@@ -0,0 +1,78 @@
function getPostListAll(settings) {
var wrapper = settings.wrapper;
var start = settings.start;
var sort=settings.sort; // sort
var orderby=settings.orderby; // orderby
var recnum=settings.recnum; // recnum
var totalPage = settings.totalPage;
var totalNUM = settings.totalNUM;
var markup_file = settings.markup;
var none = settings.none;
var currentPage =1; // 처음엔 무조건 1, 아래 더보기 진행되면서 +1 증가
var prevNUM = currentPage * recnum;
var moreNUM = totalNUM - prevNUM ;
wrapper.loader();
$.post(rooturl+'/?r='+raccount+'&m=post&a=get_listAll',{
sort : sort,
recnum : recnum,
p : currentPage,
markup_file : markup_file
},function(response,status){
if(status=='success'){
var result = $.parseJSON(response);
var list=result.list;
var num=result.num;
wrapper.loader('hide');
if (num) {
wrapper.html(list);
console.log(start)
wrapper.find('[data-toggle="page"]').attr('data-start',start);
} else {
wrapper.html(none)
}
wrapper.find('[data-plugin="timeago"]').timeago();
//무한 스크롤
wrapper.closest('.content').infinitescroll({
dataSource: function(helpers, callback){
var nextPage = parseInt(currentPage)+1;
if (totalPage>currentPage) {
$.post(rooturl+'/?r='+raccount+'&m=post&a=get_listAll',{
sort: sort,
recnum : recnum,
markup_file : markup_file,
p : nextPage
},function(response) {
var result = $.parseJSON(response);
var error = result.error;
var list=result.list;
if(error) alert(result.error);
callback({ content: list });
currentPage++; // 현재 페이지 +1
console.log(currentPage+'페이지 불러옴')
wrapper.find('[data-role="item"]').attr('data-start',start);
wrapper.find('[data-plugin="timeago"]').timeago();
});
} else {
callback({ end: true });
console.log('더이상 불러올 페이지가 없습니다.')
}
},
appendToEle : wrapper,
percentage : 95, // 95% 아래로 스크롤할때 다움페이지 호출
hybrid : false // true: 버튼형, false: 자동
});
} else {
alert(status);
}
});
}

View File

@@ -0,0 +1,72 @@
function getPostListview(settings) {
var listid = settings.listid;
var wrapper = settings.wrapper;
var sort=settings.sort; // sort
var orderby=settings.orderby; // orderby
var recnum=settings.recnum; // recnum
var totalPage = settings.totalPage;
var totalNUM = settings.totalNUM;
var markup_file = settings.markup;
var none = settings.none;
var currentPage =1; // 처음엔 무조건 1, 아래 더보기 진행되면서 +1 증가
var prevNUM = currentPage * recnum;
var moreNUM = totalNUM - prevNUM ;
wrapper.loader();
$.post(rooturl+'/?r='+raccount+'&m=post&a=get_listview',{
listid : listid,
sort : sort,
recnum : recnum,
p : currentPage,
markup_file : markup_file
},function(response,status){
if(status=='success'){
var result = $.parseJSON(response);
var box=result.box;
var num=result.num;
wrapper.loader('hide');
wrapper.html(box)
wrapper.find('[data-plugin="timeago"]').timeago();
//무한 스크롤
wrapper.closest('.content').infinitescroll({
dataSource: function(helpers, callback){
var nextPage = parseInt(currentPage)+1;
if (totalPage>currentPage) {
$.post(rooturl+'/?r='+raccount+'&m=post&a=get_listview',{
listid : listid,
sort: sort,
recnum : recnum,
markup_file : markup_file,
p : nextPage
},function(response) {
var result = $.parseJSON(response);
var error = result.error;
var list=result.list;
if(error) alert(result.error);
callback({ content: list });
currentPage++; // 현재 페이지 +1
console.log(currentPage+'페이지 불러옴')
wrapper.find('[data-plugin="timeago"]').timeago();
});
} else {
callback({ end: true });
console.log('더이상 불러올 페이지가 없습니다.')
}
},
appendToEle : wrapper,
percentage : 95, // 95% 아래로 스크롤할때 다움페이지 호출
hybrid : false // true: 버튼형, false: 자동
});
} else {
alert(status);
}
});
}

View File

@@ -0,0 +1,169 @@
function getPostMore(uid) {
var wrapper = popup_post_postMore;
wrapper.find('[data-role="list"]').html('<div data-role="loader"><div class="d-flex justify-content-center align-items-center text-muted" style="height:30vh"><div class="spinner-border mr-2" role="status"></div></div></div>');
$.post(rooturl+'/?r='+raccount+'&m=post&a=get_postMenu',{
uid: uid
},function(response,status){
if(status=='success'){
var result = $.parseJSON(response);
var list=result.list;
var owner=result.owner;
var likes=result.likes;
var subject = result.subject.replace(/&quot;/g, '"');
var featured=result.featured;
var review=result.review;
var link=result.link;
var cid=result.cid;
wrapper.find('[data-role="list"]').html(list)
wrapper.find('[data-toggle="kakaoTalkSend"],[data-toggle="linkShare"]').attr('data-subject',subject).attr('data-review',review).attr('data-featured',featured).attr('data-link',link).attr('data-entry',cid);
if (owner) {
wrapper.find('[data-role="list"] [data-toggle="saved"]').closest('.table-view-cell').remove();
wrapper.find('[data-role="list"] [data-toggle="report"]').closest('.table-view-cell').remove();
}
if (!likes) {
wrapper.find('[data-role="list"] [data-toggle="opinionList"]').closest('.table-view-cell').remove();
}
} else {
alert(status);
}
});
}
popup_post_postMore.on('click','[data-toggle="listAdd"]',function(){
var button = $(this);
var uid = popup_post_postMore.attr('data-uid');
history.back();
setTimeout(function(){
if (memberid) {
sheet_post_listadd.attr('data-uid',uid).css('top','20vh');
sheet_post_listadd.sheet();
} else {
var title = button.attr('data-title')
var subtext = button.attr('data-subtext')
popup_login_guide.find('[data-role="title"]').text(title);
popup_login_guide.find('[data-role="subtext"]').text(subtext);
popup_login_guide.popup('show');
}
}, 200);
});
popup_post_postMore.on('click','[data-toggle="report"]',function(){
var button = $(this);
var uid = popup_post_postMore.attr('data-uid');
history.back();
setTimeout(function(){
if (memberid) {
popup_post_report.attr('data-uid',uid);
popup_post_report.popup();
} else {
var title = button.attr('data-title')
var subtext = button.attr('data-subtext')
popup_login_guide.find('[data-role="title"]').text(title);
popup_login_guide.find('[data-role="subtext"]').text(subtext);
popup_login_guide.popup('show');
}
}, 200);
});
popup_post_postMore.on('click','[data-toggle="saved"]',function(){
var button = $(this);
var uid = popup_post_postMore.attr('data-uid');
history.back();
setTimeout(function(){
if (memberid) {
setTimeout(function(){
$.post(rooturl+'/?r='+raccount+'&m=post&a=update_saved',{
uid : uid
},function(response,status){
if(status=='success'){
$.notify({message: '나중에 볼 동영상에 추가되었습니다.'},{type: 'default'});
} else {
alert(status);
}
});
}, 100);
} else {
var title = button.attr('data-title')
var subtext = button.attr('data-subtext')
popup_login_guide.find('[data-role="title"]').text(title);
popup_login_guide.find('[data-role="subtext"]').text(subtext);
popup_login_guide.popup('show');
}
}, 200);
});
popup_post_postMore.on('click','[data-toggle="postedit"]',function(){
var button = $(this);
var uid = button.attr('data-uid');
var title = button.attr('data-title');
var url = button.attr('data-url');
modal_post_write.attr('data-uid',uid);
history.back();
setTimeout(function(){
modal_post_write.modal({
title : title,
url : url
})
}, 200);
});
popup_post_postMore.on('click','[data-toggle="analytics"]',function(){
var button = $(this);
var uid = button.attr('data-uid');
modal_post_analytics.attr('data-uid',uid);
history.back();
setTimeout(function(){
modal_post_analytics.modal()
}, 200);
});
popup_post_postMore.on('click','[data-toggle="opinionList"]',function(){
var button = $(this);
var uid = popup_post_postMore.attr('data-uid');
modal_post_opinion.attr('data-uid',uid);
history.back();
setTimeout(function(){
modal_post_opinion.modal()
}, 200);
});
popup_post_postMore.on('click','[data-toggle="postdel"]',function(){
var button = $(this);
var uid = popup_post_postMore.attr('data-uid');
var title = button.attr('data-title');
var type = button.attr('data-type');
popup_post_delConfirm.attr('data-uid',uid);
history.back();
setTimeout(function(){
popup_post_delConfirm.popup({
title : title
})
}, 200);
});
// 카카오톡 링크 공유
popup_post_postMore.on('click','[data-toggle="kakaoTalkSend"]',function(){
var button = $(this);
var subject = button.attr('data-subject');
var review = button.attr('data-review');
var featured = button.attr('data-featured');
var link = button.attr('data-link');
history.back();
kakaoTalkSend({
subject : subject,
review : review,
featured : featured,
link : link
})
});

View File

@@ -0,0 +1,90 @@
function getMyHistory(settings) {
var start = settings.start;
var wrapper = settings.wrapper;
var sort=settings.sort; // sort
var orderby=settings.orderby; // orderby
var recnum=settings.recnum; // recnum
var markup_file = settings.markup;
var none = settings.none;
var currentPage =1; // 처음엔 무조건 1, 아래 더보기 진행되면서 +1 증가
wrapper.removeClass('animated fadeIn');
wrapper.loader({ position: 'inside' });
$.post(rooturl+'/?r='+raccount+'&m=post&a=get_myHistory',{
start: start,
sort : sort,
recnum : recnum,
p : currentPage,
markup_file : markup_file
},function(response,status){
if(status=='success'){
var result = $.parseJSON(response);
var list=result.list;
var num=result.num;
var totalPage=result.tpg;
wrapper.loader('hide');
if (num) wrapper.html(list).addClass('animated fadeIn');
else wrapper.html(none);
wrapper.find('[data-plugin="timeago"]').timeago();
//무한 스크롤
wrapper.closest('.content').infinitescroll({
dataSource: function(helpers, callback){
var nextPage = parseInt(currentPage)+1;
if (totalPage>currentPage) {
$.post(rooturl+'/?r='+raccount+'&m=post&a=get_myHistory',{
start: start,
sort: sort,
recnum : recnum,
markup_file : markup_file,
p : nextPage
},function(response) {
var result = $.parseJSON(response);
var error = result.error;
var list=result.list;
if(error) alert(result.error);
callback({ content: list });
currentPage++; // 현재 페이지 +1
console.log(currentPage+'페이지 불러옴')
wrapper.find('[data-plugin="timeago"]').timeago();
});
} else {
callback({ end: true });
console.log('더이상 불러올 페이지가 없습니다.')
}
},
appendToEle : wrapper,
percentage : 95, // 95% 아래로 스크롤할때 다움페이지 호출
hybrid : false // true: 버튼형, false: 자동
});
// edgeEffect
var wrapper_startY = 0;
wrapper.closest('.content').on('touchstart',function(event){
wrapper_startY = event.originalEvent.changedTouches[0].pageY;
});
wrapper.closest('.content').on('touchmove',function(event){
var wrapper_moveY = event.originalEvent.changedTouches[0].pageY;
var wrapper_contentY = $(this).scrollTop();
if (wrapper_contentY === 0 && wrapper_moveY > wrapper_startY) {
if (wrapper_moveY-wrapper_startY>50) {
edgeEffect(wrapper.closest('.page'),'top','show'); // 스크롤 상단 끝
}
}
if( (wrapper_moveY < wrapper_startY) && ($(this).scrollTop() + $(this).innerHeight() >= $(this)[0].scrollHeight)) {
if (wrapper_startY-wrapper_moveY>50) {
edgeEffect(wrapper.closest('.page'),'bottom','show');
}
}
});
} else {
alert(status);
}
});
}

View File

@@ -0,0 +1,90 @@
function getMyList(settings) {
var start = settings.start;
var wrapper = settings.wrapper;
var sort=settings.sort; // sort
var orderby=settings.orderby; // orderby
var recnum=settings.recnum; // recnum
var markup_file = settings.markup;
var none = settings.none;
var currentPage =1; // 처음엔 무조건 1, 아래 더보기 진행되면서 +1 증가
wrapper.loader({ position: 'inside' });
$.post(rooturl+'/?r='+raccount+'&m=post&a=get_myList',{
start: start,
sort : sort,
recnum : recnum,
p : currentPage,
markup_file : markup_file
},function(response,status){
if(status=='success'){
var result = $.parseJSON(response);
var list=result.list;
var num=result.num;
var totalPage=result.tpg;
if (num) wrapper.html(list)
else wrapper.html(none)
wrapper.find('[data-plugin="timeago"]').timeago();
//무한 스크롤
wrapper.closest('.content').infinitescroll({
dataSource: function(helpers, callback){
var nextPage = parseInt(currentPage)+1;
if (totalPage>currentPage) {
$.post(rooturl+'/?r='+raccount+'&m=post&a=get_myList',{
start: start,
sort: sort,
recnum : recnum,
markup_file : markup_file,
p : nextPage
},function(response) {
var result = $.parseJSON(response);
var error = result.error;
var list=result.list;
if(error) alert(result.error);
callback({ content: list });
currentPage++; // 현재 페이지 +1
console.log(currentPage+'페이지 불러옴')
wrapper.find('[data-plugin="timeago"]').timeago();
//wrapper.find('[data-plugin="markjs"]').mark(keyword); // marks.js
});
} else {
callback({ end: true });
console.log('더이상 불러올 페이지가 없습니다.')
}
},
appendToEle : wrapper,
percentage : 95, // 95% 아래로 스크롤할때 다움페이지 호출
hybrid : false // true: 버튼형, false: 자동
});
// edgeEffect
var wrapper_startY = 0;
wrapper.closest('.content').on('touchstart',function(event){
wrapper_startY = event.originalEvent.changedTouches[0].pageY;
});
wrapper.closest('.content').on('touchmove',function(event){
var wrapper_moveY = event.originalEvent.changedTouches[0].pageY;
var wrapper_contentY = $(this).scrollTop();
if (wrapper_contentY === 0 && wrapper_moveY > wrapper_startY) {
if (wrapper_moveY-wrapper_startY>50) {
edgeEffect(wrapper.closest('.page'),'top','show'); // 스크롤 상단 끝
}
}
if( (wrapper_moveY < wrapper_startY) && ($(this).scrollTop() + $(this).innerHeight() >= $(this)[0].scrollHeight)) {
if (wrapper_startY-wrapper_moveY>50) {
edgeEffect(wrapper.closest('.page'),'bottom','show');
}
}
});
} else {
alert(status);
}
});
}

View File

@@ -0,0 +1,91 @@
function getMyPost(settings) {
var start = settings.start;
var wrapper = settings.wrapper;
var sort=settings.sort; // sort
var orderby=settings.orderby; // orderby
var recnum=settings.recnum; // recnum
var markup_file = settings.markup;
var none = settings.none;
var currentPage =1; // 처음엔 무조건 1, 아래 더보기 진행되면서 +1 증가
wrapper.removeClass('animated fadeIn');
wrapper.loader();
$.post(rooturl+'/?r='+raccount+'&m=post&a=get_myPost',{
start: start,
sort : sort,
recnum : recnum,
p : currentPage,
markup_file : markup_file
},function(response,status){
if(status=='success'){
var result = $.parseJSON(response);
var list=result.list;
var num=result.num;
var totalPage=result.tpg;
wrapper.loader('hide');
if (num) wrapper.html(list).addClass('animated fadeIn');
else wrapper.html(none);
wrapper.find('[data-plugin="timeago"]').timeago();
//무한 스크롤
wrapper.closest('.content').infinitescroll({
dataSource: function(helpers, callback){
var nextPage = parseInt(currentPage)+1;
if (totalPage>currentPage) {
$.post(rooturl+'/?r='+raccount+'&m=post&a=get_myPost',{
start: start,
sort: sort,
recnum : recnum,
markup_file : markup_file,
p : nextPage
},function(response) {
var result = $.parseJSON(response);
var error = result.error;
var list=result.list;
if(error) alert(result.error);
callback({ content: list });
currentPage++; // 현재 페이지 +1
console.log(currentPage+'페이지 불러옴')
wrapper.find('[data-plugin="timeago"]').timeago();
//wrapper.find('[data-plugin="markjs"]').mark(keyword); // marks.js
});
} else {
callback({ end: true });
console.log('더이상 불러올 페이지가 없습니다.')
}
},
appendToEle : wrapper,
percentage : 95, // 95% 아래로 스크롤할때 다움페이지 호출
hybrid : false // true: 버튼형, false: 자동
});
// edgeEffect
var wrapper_startY = 0;
wrapper.closest('.content').on('touchstart',function(event){
wrapper_startY = event.originalEvent.changedTouches[0].pageY;
});
wrapper.closest('.content').on('touchmove',function(event){
var wrapper_moveY = event.originalEvent.changedTouches[0].pageY;
var wrapper_contentY = $(this).scrollTop();
if (wrapper_contentY === 0 && wrapper_moveY > wrapper_startY) {
if (wrapper_moveY-wrapper_startY>50) {
edgeEffect(wrapper.closest('.page'),'top','show'); // 스크롤 상단 끝
}
}
if( (wrapper_moveY < wrapper_startY) && ($(this).scrollTop() + $(this).innerHeight() >= $(this)[0].scrollHeight)) {
if (wrapper_startY-wrapper_moveY>50) {
edgeEffect(wrapper.closest('.page'),'bottom','show');
}
}
});
} else {
alert(status);
}
});
}

View File

@@ -0,0 +1,77 @@
function getPostOpinion(settings) {
var start = settings.start;
var wrapper = settings.wrapper;
var uid=settings.uid;
var opinion=settings.opinion;
var sort=settings.sort; // sort
var orderby=settings.orderby; // orderby
var recnum=settings.recnum; // recnum
var totalPage = settings.totalPage;
var totalNUM = settings.totalNUM;
var markup_file = settings.markup;
var none = settings.none;
var currentPage =1; // 처음엔 무조건 1, 아래 더보기 진행되면서 +1 증가
var prevNUM = currentPage * recnum;
var moreNUM = totalNUM - prevNUM ;
wrapper.loader({ position: 'inside' });
$.post(rooturl+'/?r='+raccount+'&m=post&a=get_opinionList',{
uid : uid,
opinion : opinion,
start: start,
sort : sort,
recnum : recnum,
p : currentPage,
markup_file : markup_file
},function(response,status){
if(status=='success'){
var result = $.parseJSON(response);
var list=result.list;
var num=result.num;
if (num) wrapper.html(list)
else wrapper.html(none)
wrapper.find('[data-plugin="timeago"]').timeago();
//무한 스크롤
wrapper.closest('.content').infinitescroll({
dataSource: function(helpers, callback){
var nextPage = parseInt(currentPage)+1;
if (totalPage>currentPage) {
$.post(rooturl+'/?r='+raccount+'&m=post&a=get_postSaved',{
start: start,
sort: sort,
recnum : recnum,
markup_file : markup_file,
p : nextPage
},function(response) {
var result = $.parseJSON(response);
var error = result.error;
var list=result.list;
if(error) alert(result.error);
callback({ content: list });
currentPage++; // 현재 페이지 +1
console.log(currentPage+'페이지 불러옴')
wrapper.find('[data-plugin="timeago"]').timeago();
//wrapper.find('[data-plugin="markjs"]').mark(keyword); // marks.js
});
} else {
callback({ end: true });
console.log('더이상 불러올 페이지가 없습니다.')
}
},
appendToEle : wrapper,
percentage : 95, // 95% 아래로 스크롤할때 다움페이지 호출
hybrid : false // true: 버튼형, false: 자동
});
} else {
alert(status);
}
});
}

View File

@@ -0,0 +1,115 @@
function getPostAll(settings) {
var start = settings.start;
var wrapper = settings.wrapper;
var page = wrapper.closest('.page');
var sort=settings.sort; // sort
var orderby=settings.orderby; // orderby
var recnum=settings.recnum; // recnum
var markup_file = settings.markup;
var none = settings.none;
var paging = settings.paging; //페이징 타입
var currentPage =1; // 처음엔 무조건 1, 아래 더보기 진행되면서 +1 증가
wrapper.removeClass('animated fadeIn');
wrapper.loader();
$.post(rooturl+'/?r='+raccount+'&m=post&a=get_postAll',{
start: start,
sort : sort,
recnum : recnum,
p : currentPage,
markup_file : markup_file
},function(response,status){
if(status=='success'){
var result = $.parseJSON(response);
var list=result.list;
var num=result.num;
var totalPage=result.tpg;
wrapper.loader('hide');
if (list) wrapper.html(list).addClass('animated fadeIn');
else wrapper.html(none)
wrapper.find('[data-plugin="timeago"]').timeago();
if (page.find('.snap-content').length) {
overScrollEffect(page.find('.snap-content'));
} else {
overScrollEffect(page);
}
if (paging=='infinit') {
pullToRefresh_post($(start));
//무한 스크롤
wrapper.closest('.content').infinitescroll({
dataSource: function(helpers, callback){
var nextPage = parseInt(currentPage)+1;
if (totalPage>currentPage) {
$.post(rooturl+'/?r='+raccount+'&m=post&a=get_postAll',{
start: start,
sort: sort,
recnum : recnum,
markup_file : markup_file,
p : nextPage
},function(response) {
var result = $.parseJSON(response);
var error = result.error;
var list=result.list;
if(error) alert(result.error);
callback({ content: list });
currentPage++; // 현재 페이지 +1
console.log(currentPage+'페이지 불러옴')
wrapper.find('[data-plugin="timeago"]').timeago();
//wrapper.find('[data-plugin="markjs"]').mark(keyword); // marks.js
});
} else {
callback({ end: true });
console.log('더이상 불러올 페이지가 없습니다.')
}
},
appendToEle : wrapper,
percentage : 85, // 95% 아래로 스크롤할때 다움페이지 호출
hybrid : false // true: 버튼형, false: 자동
});
} else {
//수동 페이징
if (totalPage>currentPage) {
$.post(rooturl+'/?r='+raccount+'&m=post&a=get_postAll',{
start: start,
sort: sort,
recnum : recnum,
markup_file : markup_file,
p : nextPage
},function(response) {
var result = $.parseJSON(response);
var error = result.error;
var list=result.list;
if(error) alert(result.error);
callback({ content: list });
currentPage++; // 현재 페이지 +1
console.log(currentPage+'페이지 불러옴')
wrapper.find('[data-plugin="timeago"]').timeago();
wrapper.append(list);
wrapper.append('<button type="button" class="btn btn-white btn-block">불러오기</button>');
});
} else {
console.log('더이상 불러올 페이지가 없습니다.')
}
}
} else {
alert(status);
}
});
}

View File

@@ -0,0 +1,91 @@
function getPostSaved(settings) {
var start = settings.start;
var wrapper = settings.wrapper;
var sort=settings.sort; // sort
var orderby=settings.orderby; // orderby
var recnum=settings.recnum; // recnum
var markup_file = settings.markup;
var none = settings.none;
var currentPage =1; // 처음엔 무조건 1, 아래 더보기 진행되면서 +1 증가
wrapper.removeClass('animated fadeIn');
wrapper.loader();
$.post(rooturl+'/?r='+raccount+'&m=post&a=get_postSaved',{
start: start,
sort : sort,
recnum : recnum,
p : currentPage,
markup_file : markup_file
},function(response,status){
if(status=='success'){
var result = $.parseJSON(response);
var list=result.list;
var num=result.num;
var totalPage=result.tpg;
wrapper.loader('hide');
if (num) wrapper.html(list).addClass('animated fadeIn');
else wrapper.html(none);
wrapper.find('[data-plugin="timeago"]').timeago();
//무한 스크롤
wrapper.closest('.content').infinitescroll({
dataSource: function(helpers, callback){
var nextPage = parseInt(currentPage)+1;
if (totalPage>currentPage) {
$.post(rooturl+'/?r='+raccount+'&m=post&a=get_postSaved',{
start: start,
sort: sort,
recnum : recnum,
markup_file : markup_file,
p : nextPage
},function(response) {
var result = $.parseJSON(response);
var error = result.error;
var list=result.list;
if(error) alert(result.error);
callback({ content: list });
currentPage++; // 현재 페이지 +1
console.log(currentPage+'페이지 불러옴')
wrapper.find('[data-plugin="timeago"]').timeago();
//wrapper.find('[data-plugin="markjs"]').mark(keyword); // marks.js
});
} else {
callback({ end: true });
console.log('더이상 불러올 페이지가 없습니다.')
}
},
appendToEle : wrapper,
percentage : 95, // 95% 아래로 스크롤할때 다움페이지 호출
hybrid : false // true: 버튼형, false: 자동
});
// edgeEffect
var wrapper_startY = 0;
wrapper.closest('.content').on('touchstart',function(event){
wrapper_startY = event.originalEvent.changedTouches[0].pageY;
});
wrapper.closest('.content').on('touchmove',function(event){
var wrapper_moveY = event.originalEvent.changedTouches[0].pageY;
var wrapper_contentY = $(this).scrollTop();
if (wrapper_contentY === 0 && wrapper_moveY > wrapper_startY) {
if (wrapper_moveY-wrapper_startY>50) {
edgeEffect(wrapper.closest('.page'),'top','show'); // 스크롤 상단 끝
}
}
if( (wrapper_moveY < wrapper_startY) && ($(this).scrollTop() + $(this).innerHeight() >= $(this)[0].scrollHeight)) {
if (wrapper_startY-wrapper_moveY>50) {
edgeEffect(wrapper.closest('.page'),'bottom','show');
}
}
});
} else {
alert(status);
}
});
}

View File

@@ -0,0 +1,584 @@
function getPostView(settings) {
var mod = settings.mod;
var wrapper = settings.wrapper;
var start = settings.start;
var format=settings.format;
var uid=settings.uid;
var list=settings.list;
var featured=settings.featured;
var provider = settings.provider;
var videoId = settings.videoId;
var url = settings.url;
var landing = settings.landing;
var ctheme=settings.ctheme?settings.ctheme:'_mobile/rc-default'; // 댓글테마
var template = '/modules/post/themes/'+post_skin_mobile+'/_html/view_'+format+'.html';
var list_collapse = settings.list_collapse;
if (!uid || !post_skin_mobile || !format) {
console.log('템플릿이 없어요')
setTimeout(function(){
history.back();
setTimeout(function(){ $.notify({message: ' 존재하지 않는 포스트 입니다.'},{type: 'default'}); }, 400);
return false
}, 300);
}
page_post_photo.find('.swiper-wrapper').html('') // 사진크게보기 영역 초기화
wrapper.load(template, function() {
var header_height = wrapper.find('.bar-nav').outerHeight();
var embed_height = wrapper.find('.embed-responsive').outerHeight();
var height = header_height + embed_height;
var window_height = $(window).height();
var content_height = window_height - height;
if (landing) {
wrapper.find('[data-role="hback"]').addClass('d-none');
wrapper.find('[data-role="gohome"]').removeClass('d-none');
}
if (mod=='page') {
wrapper.find('[data-role="buy"]').attr('data-toggle','page');
wrapper.find('[data-role="buy"]').attr('data-act','pauseVideo')
} else {
wrapper.find('[data-role="buy"]').attr('data-toggle','goods');
wrapper.find('[data-role="buy"]').removeAttr('data-act','pauseVideo')
}
wrapper.find('[data-toggle="linkShare"]').attr('data-link',url);
wrapper.find('.embed-responsive').css('background-image','url('+featured+')')
wrapper.find('.content').css('padding-top',height+'px')
wrapper.find('[data-role="goodsLink"]').addClass('d-none');
wrapper.find('[data-uid]').attr('data-uid',uid);
wrapper.find('[data-role="progress_yt"] .progress-bar').css('width',0);
if (format=='video') {
wrapper.find('.bar-standard').css('height',embed_height+'px')
wrapper.find('.bar-standard .embed-responsive').css('height',embed_height+'px')
if (provider=='YouTube') {
var player;
player = new YT.Player('player', {
height: '360',
width: '640',
videoId: videoId,
events: {
'onReady': onPlayerReady,
'onStateChange': onPlayerStateChange
}
});
function onPlayerReady(event) {
event.target.playVideo();
}
function onPlayerStateChange(event) {
var miniplayer = wrapper.find('.miniplayer-control');
var playerTimeDifference =0;
if (event.data == YT.PlayerState.PLAYING) {
console.log('재생중')
miniplayer.find('[data-toggle="play"]').addClass('active');
miniplayer.find('[data-toggle="play"] .material-icons').text('pause');
//재생 진행바
setTimeout(function(){
wrapper.find('[data-role="progress_yt"]').show();
}, 2000);
var playerTotalTime = player.getDuration();
timer_yt = setInterval(function() {
var playerCurrentTime = player.getCurrentTime();
var playerTimeDifference = (playerCurrentTime / playerTotalTime) * 100;
// console.log(playerTimeDifference)
wrapper.find('[data-role="progress_yt"] .progress-bar').css('width',playerTimeDifference+'%')
}, 1000);
} else {
wrapper.find('[data-role="progress_yt"]').hide();
}
if (event.data == YT.PlayerState.PAUSED) {
console.log('일시중지')
clearTimeout(timer_yt);
miniplayer.find('[data-toggle="play"]').removeClass('active');
miniplayer.find('[data-toggle="play"] .material-icons').text('play_arrow');
}
if (event.data == YT.PlayerState.ENDED) {
console.log('재생끝')
clearTimeout(timer_yt);
miniplayer.find('[data-toggle="play"]').removeClass('active');
miniplayer.find('[data-toggle="play"] .material-icons').text('replay');
}
}
wrapper.on('click','[data-toggle="play"]',function(){
if ($(this).hasClass('active')) {
player.pauseVideo();
$(this).find('.material-icons').text('play_arrow');
} else {
player.playVideo();
$(this).find('.material-icons').text('pause');
}
$(this).button('toggle')
})
wrapper.on('click','[data-act="pauseVideo"]',function(){
player.pauseVideo();
})
}
}
$.post(rooturl+'/?r='+raccount+'&m=post&a=get_postView',{
uid : uid,
list : list,
markup_file : 'view_'+format+'_content'
},function(response,status){
if(status=='success'){
var result = $.parseJSON(response);
var subject = result.subject.replace(/&quot;/g, '"');
var nic=result.nic;
var isperm=result.isperm;
var article=result.article;
var review=result.review;
var linkurl=result.linkurl;
var listCollapse=result.listCollapse;
var is_post_liked=result.is_post_liked;
var is_post_disliked=result.is_post_disliked;
var dis_like = result.dis_like;
var dis_rating = result.dis_rating;
var dis_comment = result.dis_comment;
var dis_listadd = result.dis_listadd;
var goods = result.goods;
var featured = result.featured_640;
var attachNum=result.attachNum;
var attachFileTheme = result.theme_attachFile;
var link=result.link;
var theme=result.theme;
var theme_css = '/modules/post/themes/'+theme+'/_main.css';
if (!$('link[href="'+theme_css+'"]').length)
$('<link/>', {
rel: 'stylesheet',
type: 'text/css',
href: theme_css
}).appendTo('head');
wrapper.find('[data-toggle="linkShare"]').attr('data-subject',subject).attr('data-link',url).attr('data-featured',featured);
wrapper.find('oembed').attr('url',linkurl);
wrapper.find('[data-role="subject"]').text(subject);
wrapper.find('[data-role="nic"]').text(nic);
wrapper.find('.miniplayer-control [data-toggle="play"]').removeClass('d-none');
wrapper.find('[data-role="review"]').removeClass('d-none');
if (provider!='YouTube') {
Iframely('oembed[url]') // oembed 미디어 변환
setTimeout(function(){
wrapper.find('.bar-media [data-role="featured"]').addClass('d-none')
wrapper.find('.embed-responsive').removeClass('d-none');
wrapper.find('.miniplayer-control [data-toggle="play"]').addClass('d-none');
}, 500);
}
wrapper.find('[data-role="box"]').html(article);
if (goods) {
wrapper.find('[data-role="goodsLink"]').removeClass('d-none');
setImageGoodsTag('figure.image') // 이미지상품태그 처리
}
if (format!='video') Iframely('oembed[url]') // oembed 미디어 변환
// 첨부파일이 있을 경우
if (attachNum) {
$.post(rooturl+'/?r='+raccount+'&m=mediaset&a=getAttachFileList',{
p_module : 'post',
uid : uid,
theme_file : attachFileTheme,
mod : 'view'
},function(response){
var result = $.parseJSON(response);
var photo=result.photo;
var photo_full=result.photo_full;
var video=result.video;
var audio=result.audio;
var file=result.file;
var zip=result.zip;
var doc=result.doc;
if (photo) { // 첨부 이미지가 있을 경우
wrapper.find('[data-role="attach-photo"]').removeClass('hidden').html(photo)
i=0;
wrapper.find('[data-role="attach-photo"] [data-toggle="page"]').each(function(i) {
$(this).attr('data-index',i);i=++i;
});
page_post_photo.find('.swiper-wrapper').html(photo_full)
}
if (video) { // 첨부 비디오가 있을 경우
wrapper.find('[data-role="attach-video"]').removeClass('hidden').html(video)
}
if (audio) { // 첨부 오디오가 있을 경우
wrapper.find('[data-role="attach-audio"]').removeClass('hidden').html(audio)
}
if (doc) { // 첨부 문서 있을 경우
wrapper.find('[data-role="attach-file"]').removeClass('hidden').html(doc)
}
if (zip) { // 첨부 압축파일이 있을 경우
page.find('[data-role="attach-file"]').removeClass('hidden').html(zip)
}
if (file) { // 첨부 기타파일이 있을 경우
wrapper.find('[data-role="attach-file"]').removeClass('hidden').html(file)
}
});
}
if (link) { // 첨부 링크가 있을 경우
wrapper.find('[data-role="attach-link"]').removeClass('hidden').html(link);
Iframely('oembed[url]') // oembed 미디어 변환
}
if (listCollapse) {
wrapper.find('[data-role="listCollapse"]').html(listCollapse);
if (format=='doc') {
if (!list) wrapper.find('.bar-header-secondary').addClass('d-none');
else wrapper.find('.bar-header-secondary').removeClass('d-none');
}
if (format=='video' && list_collapse ) setTimeout(function(){wrapper.find('#listCollapse').collapse('show');}, 3000);
var _window_height = $(window).height();
var list_height = wrapper.find('[data-role="listCollapse"]').outerHeight();
var _height = height + list_height - 1;
var content_height = _window_height - _height;
wrapper.find('.content').css('padding-top',_height+'px')
wrapper.find('#listCollapse > div').css('height',content_height+'px');
}
wrapper.find('[data-plugin="shorten"]').shorten({
moreText: '더보기',
lessText: ''
});
if (is_post_liked) wrapper.find('[data-role="btn_post_like_'+uid+'"]').addClass('active');
if (is_post_disliked) wrapper.find('[data-role="btn_post_dislike_'+uid+'"]').addClass('active');
wrapper.find('#collapseContent').on('show.rc.collapse', function () {
wrapper.find('[data-toggle="collapse"] [data-role="subject"]').removeClass('line-clamp-2')
})
wrapper.find('#collapseContent').on('hide.rc.collapse', function () {
wrapper.find('[data-toggle="collapse"] [data-role="subject"]').addClass('line-clamp-2')
})
if (dis_like) wrapper.find('[data-role="opinion"]').hide();
if (dis_listadd) wrapper.find('[data-role="listadd"]').hide();
if (review) wrapper.find('[data-role="review"]').removeClass('d-none');
else wrapper.find('[data-role="review"]').addClass('d-none');
if (!dis_comment) {
// 댓글 출력 함수 정의
var get_Rb_Comment = function(p_module,p_table,p_uid,theme){
wrapper.find('[data-role="comment_box"]').Rb_comment({
moduleName : 'comment', // 댓글 모듈명 지정 (수정금지)
parent : p_module+'-'+p_uid, // rb_s_comment parent 필드에 저장되는 형태가 p_modulep_uid 형태임 참조.(- 는 저장시 제거됨)
parent_table : p_table, // 부모 uid 가 저장된 테이블 (게시판인 경우 rb_bbs_data : 댓글, 한줄의견 추가/삭제시 전체 합계 업데이트용)
theme_name : theme, // 댓글 테마
containerClass :'', // 본 엘리먼트(#commentting-container)에 추가되는 class
recnum: 5, // 출력갯수
commentPlaceHolder : '공개 댓글 추가...',
noMoreCommentMsg : '댓글 없음 ',
commentLength : 200, // 댓글 입력 글자 수 제한
toolbar : ['imageUpload'] // 툴바 항목
});
}
// 댓글 출력 함수 실행
var p_module = 'post';
var p_table = 'rb_post_data';
var comment_theme_css = '/modules/comment/themes/'+ctheme+'/css/style.css';
if (!$('link[href="'+comment_theme_css+'"]').length)
$('<link/>', {
rel: 'stylesheet',
type: 'text/css',
href: comment_theme_css
}).appendTo('head');
get_Rb_Comment(p_module,p_table,uid,ctheme);
// 보기 에서 댓글이 등록된 이후에 ..
wrapper.find('[data-role="comment_box"]').on('saved.rb.comment',function(){
window.history.back(); //댓글작성 sheet 내림
var list_item = $(document).find('[data-role="item"] [data-uid="'+uid+'"]')
//var showComment_Ele_1 = page_allcomment.find('[data-role="total_comment"]'); // 댓글 숫자 출력 element
var showComment_Ele_2 = wrapper.find('[data-role="total_comment"]'); // 댓글 숫자 출력 element
var showComment_ListEle = list_item.find('[data-role="comment_'+uid+'"]'); // 댓글 숫자 출력 element
$.post(rooturl+'/?r='+raccount+'&m=post&a=get_postData',{
uid : uid
},function(response){
var result = $.parseJSON(response);
var total_comment=result.comment;
//$.notify({message: '댓글이 등록 되었습니다.'},{type: 'default'});
//showComment_Ele_1.text(total_comment); // 모달 상단 최종 댓글수량 합계 업데이트
showComment_Ele_2.text(total_comment); // 모달 상단 최종 댓글수량 합계 업데이트
showComment_ListEle.text(total_comment); // 포스트 목록 해당 항목의 최종 댓글수량 합계 업데이트
});
});
// 포스트 보기 모달에서 한줄의견이 등록된 이후에..
wrapper.find('[data-role="comment_box"]').on('saved.rb.oneline',function(){
window.history.back(); //댓글작성 sheet 내림
var uid = wrapper.find('[name="uid"]').val()
var list_item = $('[data-role="list"]').find('#item-'+uid)
//var showComment_Ele_1 = page_allcomment.find('[data-role="total_comment"]'); // 댓글 숫자 출력 element
var showComment_Ele_2 = wrapper.find('[data-role="total_comment"]'); // 댓글 숫자 출력 element
var showComment_ListEle = list_item.find('[data-role="total_comment"]'); // 댓글 숫자 출력 element
$.post(rooturl+'/?r='+raccount+'&m=post&a=get_postData',{
uid : uid
},function(response){
var result = $.parseJSON(response);
var total_comment=result.total_comment;
$.notify({message: '답글이 등록 되었습니다.'},{type: 'default'});
//showComment_Ele_1.text(total_comment); // 최종 댓글수량 합계 업데이트
showComment_Ele_2.text(total_comment); // 최종 댓글수량 합계 업데이트
showComment_ListEle.text(total_comment); // 포스트 목록 해당 항목의 최종 댓글수량 합계 업데이트
});
});
// 댓글이 수정된 후에..
wrapper.find('[data-role="comment_box"]').on('edited.rb.comment',function(){
setTimeout(function(){
history.back()
$.notify({message: '댓글이 수정 되었습니다.'},{type: 'default'});
}, 300);
})
// 한줄의견이 수정 후에
wrapper.find('[data-role="comment_box"]').on('edited.rb.oneline',function(){
setTimeout(function(){
history.back()
$.notify({message: '답글이 수정 되었습니다.'},{type: 'default'});
}, 300);
})
} else {
wrapper.find('[data-role="btn_comment"]').hide(); //댓글 바로가기 버튼 숨김
wrapper.find('[data-role="comment_box"]').html('<div class="text-muted pb-3 text-xs-center">댓글이 사용 중지되었습니다.</div>')
}
} else {
setTimeout(function(){
history.back();
setTimeout(function(){ $.notify({message: error+' 존재하지 않는 포스트 입니다.'},{type: 'default'}); }, 400);
return false
}, 300);
}
if (!isperm) wrapper.find('.bar-standard .embed-responsive').empty().removeAttr('style')
// edgeEffect
var wrapper_startY = 0;
wrapper.find('.content').on('touchstart',function(event){
wrapper_startY = event.originalEvent.changedTouches[0].pageY;
});
wrapper.find('.content').on('touchmove',function(event){
var wrapper_moveY = event.originalEvent.changedTouches[0].pageY;
var wrapper_contentY = $(this).scrollTop();
if (wrapper_contentY === 0 && wrapper_moveY > wrapper_startY) {
edgeEffect(wrapper,'top','show');
}
if( (wrapper_moveY < wrapper_startY) && ($(this).scrollTop() + $(this).innerHeight() >= $(this)[0].scrollHeight)) {
edgeEffect(wrapper,'bottom','show');
}
});
});
});
wrapper.off('click').on('click','[data-toggle="view"]',function(){
var button = $(this);
var _uid = button.attr('data-uid');
var _featured = button.attr('data-featured');
var _provider = button.attr('data-provider');
var _videoId = button.attr('data-videoId');
var _list = button.attr('data-list');
var _format = button.attr('data-format');
var list_collapse = button.attr('data-collapse');
var template = template?template:'/modules/post/themes/'+post_skin_mobile+'/_html/view_'+_format+'.html';
//wrapper.empty(); //초기화
wrapper.load('/modules/post/themes/'+post_skin_mobile+'/_html/view_'+_format+'.html', function() {
wrapper.attr('data-format',_format).attr('data-uid',_uid);
getPostView({
uid : _uid,
format : _format,
list : _list,
featured : _featured,
provider : _provider,
videoId : _videoId,
wrapper : wrapper,
list_collapse : list_collapse
});
});
});
page_post_photo.on('show.rc.page', function (e) {
var ele = $(e.relatedTarget)
var index = ele.attr('data-index');
var uid = ele.attr('data-uid');
var page = $(this);
var title = page_post_view.find('[data-role="title"]').text();
var subject = page_post_view.find('[data-role="subject"]').text();
page.find('[data-role="title"]').text(title);
page.find('[data-role="subject"]').text(subject);
page.find('[data-act="down"]').attr('data-uid',uid);
var bbs_photo_swiper = new Swiper('#page-post-photo .swiper-container', {
zoom: true,
initialSlide: index,
spaceBetween: 30,
pagination: {
el: '#page-post-photo .swiper-pagination',
type: 'fraction',
},
navigation: {
nextEl: '#page-post-photo .swiper-button-next',
prevEl: '#page-post-photo .swiper-button-prev',
},
on: {
init: function () {
page_post_photo.find('.swiper-container').css('height','100vh');
},
},
});
bbs_photo_swiper.on('slideChangeTransitionEnd', function () {
var uid = page_post_photo.find('.swiper-slide-active').attr('data-uid');
page_post_photo.find('[data-act="down"]').attr('data-uid',uid)
});
})
page_post_photo.on('hidden.rc.page', function () {
// swiper destroy
var bbs_photo_swiper = document.querySelector('#page-post-photo .swiper-container').swiper
bbs_photo_swiper.destroy(false, true);
// 줌상태 초기화
setTimeout(function(){
page_post_photo.find('.swiper-zoom-container').removeAttr('style');
page_post_photo.find('.swiper-zoom-container img').removeAttr('style');
}, 500);
})
} // getPostView
$(document).on('click','[data-toggle="view_listadd"]',function(){
var button = $(this);
var popup = $('#popup-login-guide');
var sheet = $('#sheet-post-listadd');
var uid = button.attr('data-uid');
var height = button.closest('.content').css('padding-top');
if (memberid) {
sheet.attr('data-uid',uid).css('top',height);
sheet.sheet();
} else {
var title = button.attr('data-title')
var subtext = button.attr('data-subtext')
popup.find('[data-role="title"]').text(title);
popup.find('[data-role="subtext"]').text(subtext);
popup.popup('show');
}
});
$(document).on('click','[data-toggle="view_tag"]',function(){
var button = $(this);
var keyword = button.attr('data-tag');
var page = $('#page-post-keyword');
page.attr('data-keyword',keyword);
page.find('[data-role="title"]').text(keyword);
window.history.back();
setTimeout(function(){ page.page({
start: '#page-main',
title : keyword
}); }, 300);
});
$(document).on('click','[data-toggle="view_opinion"]',function(){
var button = $(this);
var popup = $('#popup-login-guide');
var uid = button.attr('data-uid');
var opinion = button.attr('data-opinion');
var url = rooturl+'/?r='+raccount+'&m=post&a=opinion&opinion='+opinion+'&uid='+uid;
if (memberid) {
button.button('toggle');
getIframeForAction('');
frames.__iframe_for_action__.location.href = url;
} else {
var title = button.attr('data-title')
var subtext = button.attr('data-subtext')
popup.find('[data-role="title"]').text(title);
popup.find('[data-role="subtext"]').text(subtext);
popup.popup('show');
}
});
$(document).on('click','[data-toggle="view_report"]',function(){
var button = $(this);
var uid = button.attr('data-uid');
if (memberid) {
popup_post_report.attr('data-uid',uid);
popup_post_report.popup();
} else {
var title = button.attr('data-title')
var subtext = button.attr('data-subtext')
popup_login_guide.find('[data-role="title"]').text(title);
popup_login_guide.find('[data-role="subtext"]').text(subtext);
popup_login_guide.popup('show');
}
});
$(document).on('tap','[data-toggle="tag"]',function(){
var keyword= $(this).attr('data-tag');
page_post_keyword.attr('data-keyword',keyword)
history.back();
setTimeout(function(){
page_post_keyword.page({ start: '#page-main' });
}, 300);
})

View File

@@ -0,0 +1,893 @@
function setPostWrite(settings) {
var wrapper = settings.wrapper;
var uid=settings.uid;
if (!uid) var uid=wrapper.attr('data-uid');
// 상태 초기화
wrapper.find('[name="uid"]').val('');
wrapper.find('[data-role="display_label"]').text(uid?'':'전체공개');
popover_post_display.find('[data-toggle="display"] .badge').empty();
popover_post_display.find('[data-toggle="display"][data-display="5"] .badge').html('<span class="icon icon-check"></span>');
wrapper.find('[name="display"]').val(5);
wrapper.find('[name="category_members"]').val('');
wrapper.find('[name="list_members"]').val('');
wrapper.find('[name="upload"]').val('');
wrapper.find('[name="member"]').val('');
wrapper.find('[name="featured_img"]').val('');
wrapper.find('[name="review"]').val('');
wrapper.find('[name="format"]').val(1);
wrapper.find('[name="dis_rating"]').val(0);
wrapper.find('[name="dis_like"]').val(0);
wrapper.find('[name="dis_comment"]').val(0);
wrapper.find('[name="dis_listadd"]').val(0);
wrapper.find('[name="goods"]').val('');
wrapper.find('[data-role="linkNum"]').text('');
//wrapper.find('[data-role="attach-preview-photo"]').html('');
wrapper.find('[data-role="attach-preview-link"]').html('');
wrapper.find('[data-role="linkadd_input"]').val('');
wrapper.find('[data-toggle="switch"][data-role="dis_like"]').addClass('active');
wrapper.find('[data-toggle="switch"][data-role="dis_comment"]').addClass('active');
wrapper.find('[data-toggle="switch"][data-role="dis_listadd"]').addClass('active');
wrapper.find('.switch-handle').removeAttr("style");
wrapper.find('[data-toggle="collapse"]').addClass('collapsed');
wrapper.find('.collapse').removeClass('in');
wrapper.find('[data-role="goodsNum"]').text('');
wrapper.find('[name="uid"]').val(uid);
autosize.destroy(wrapper.find('[data-plugin="autosize"]'));
setTimeout(function(){
// 미디어셋 초기화
wrapper.find('[data-role="attach-files"]').RbUploadFile(post_upload_settings); // 아작스 폼+input=file 엘리먼트 세팅
wrapper.find('[data-role="attach-files"]').RbAttachTheme(post_attach_settings);
wrapper.find('[data-sortable="mediaset"]').sortable({
axis: 'y',
cancel: 'button',
delay: 250,
update: function( event, ui ) {
var attachfiles=wrapper.find('input[name="attachfiles[]"]').map(function(){return $(this).val()}).get();
var new_upfiles='';
if(attachfiles){
for(var i=0;i<attachfiles.length;i++) {
new_upfiles+=attachfiles[i];
}
}
$.post(rooturl+'/?r='+raccount+'&m=mediaset&a=modifygid',{
attachfiles : new_upfiles
})
}
});
// 에디터 초기화
DecoupledEditor
.create( document.querySelector( '[data-role="write"] [data-role="editor-body"]' ),{
placeholder: '본문 입력...',
toolbar: [ 'alignment:left','alignment:center','bulletedList','blockQuote','imageUpload','insertTable','undo'],
removePlugins: [ 'ImageToolbar', 'ImageCaption', 'ImageStyle',,'WordCount' ],
image: {},
language: 'ko',
extraPlugins: [rbUploadAdapterPlugin],
table: {
contentToolbar: [ 'tableColumn', 'tableRow', 'mergeTableCells' ]
},
mediaEmbed: {
extraProviders: [
{
name: 'other',
url: /^([a-zA-Z0-9_\-]+)\.([a-zA-Z0-9_\-]+)\.([a-zA-Z0-9_\-]+)/
},
{
name: 'another',
url: /^([a-zA-Z0-9_\-]+)\.([a-zA-Z0-9_\-]+)/
}
]
},
typing: {
transformations: {
include: [
'quotes',
'typography',
],
extra: [
// Add some custom transformations e.g. for emojis.
{ from: ':)', to: '🙂' },
{ from: ':+1:', to: '👍' },
{ from: ':tada:', to: '🎉' }
],
}
}
} )
.then( newEditor => {
console.log('editor_post init');
editor_post = newEditor;
wrapper.find('.toolbar-container').html(editor_post.ui.view.toolbar.element)
editor_post.editing.view.document.on( 'change:isFocused', ( evt, name, value ) => {
if (value) {
console.log('editor_post focus');
wrapper.addClass('editor-focused');
} else {
console.log('editor_post blur');
wrapper.removeClass('editor-focused');
}
} );
$.post(rooturl+'/?r='+raccount+'&m=post&a=get_category',{
uid : uid
},function(response,status){
if(status=='success'){
var result = $.parseJSON(response);
var error=result.error;
if (!error) {
var category_tree=result.category_tree;
page_post_edit_category.find('[data-role="box"]').html(category_tree);
} else {
page_post_edit_category.find('[data-role="box"]').html('<div class="text-xs-center p-3 text-muted">지정 권한이 없습니다.</div>');
}
} else {
alert(status);
}
});
if (uid) {
$.post(rooturl+'/?r='+raccount+'&m=post&a=get_postWrite',{
uid : uid
},function(response,status){
if(status=='success'){
var result = $.parseJSON(response);
var featured=result.featured;
var featured_img=result.featured_img;
var upload=result.upload;
var display=result.display;
var display_label=result.display_label;
var format=result.format;
var time=result.time;
var subject=result.subject;
var review=result.review;
var tag=result.tag;
var content=result.content;
var nic=result.nic;
var isperm=result.isperm;
var linkurl=result.linkurl;
var listCollapse=result.listCollapse;
var dis_like = result.dis_like;
var dis_comment = result.dis_comment;
var dis_listadd = result.dis_listadd;
var goods = result.goods;
var linkNum = result.linkNum;
var attachNum = result.attachNum;
var goodsNum = result.goodsNum;
var attachFileTheme = result.theme_attachFile;
wrapper.find('[data-role="display_label"]').text(display_label);
popover_post_display.find('[data-toggle="display"] .badge').empty();
popover_post_display.find('[data-toggle="display"][data-display="'+display+'"] .badge').html('<span class="icon icon-check"></span>');
wrapper.find('[name="display"]').val(display);
wrapper.find('[data-role="subject"]').val(subject);
wrapper.find('[data-role="time"]').text(time);
wrapper.find('[data-role="featured"]').attr('src',featured);
wrapper.find('[name="featured_img"]').val(featured_img);
wrapper.find('[name="upload"]').val(upload);
wrapper.find('[name="review"]').val(review);
wrapper.find('[name="tag"]').val(tag);
wrapper.find('[name="goods"]').val(goods);
wrapper.find('[name="dis_like"]').val(dis_like);
wrapper.find('[name="dis_comment"]').val(dis_comment);
wrapper.find('[name="dis_listadd"]').val(dis_listadd);
if (featured_img) wrapper.find('.media-left').removeClass('d-none');
else wrapper.find('.media-left').addClass('d-none');
if (linkNum) {
wrapper.find('[data-role="addlink_guide"]').addClass('d-none');
wrapper.find('[data-role="linkNum"]').text(linkNum);
wrapper.find('[data-role="attach-preview-link"]').removeClass('hidden').html(link)
}
if (attachNum) {
$.post(rooturl+'/?r='+raccount+'&m=mediaset&a=getAttachFileList',{
p_module : 'post',
uid : uid,
theme_file : attachFileTheme,
mod : 'upload'
},function(response){
var result = $.parseJSON(response);
var photo=result.photo;
var video=result.video;
var audio=result.audio;
var file=result.file;
var zip=result.zip;
var doc=result.doc;
wrapper.find('[name="featured_img"]').val(featured_img); // 대표이미지 셋팅
wrapper.find('[data-role="attach-preview-photo"]').html(photo);
wrapper.find('[data-role="attach-preview-video"]').html(video)
wrapper.find('[data-role="attach-preview-audio"]').html(audio)
wrapper.find('[data-role="attach-preview-file"]').html(file)
wrapper.find('[data-role="attachNum"]').text(attachNum)
});
} else {
$('[data-role="attach_guide"]').removeClass('d-none');
wrapper.find('[data-role="attachNum"]').text('');
}
if (goodsNum) {
wrapper.find('[data-role="goodsNum"]').text(goodsNum);
}
editor_post.setData(content);
wrapper.find('[name="format"]').val(format).prop("selected", true);
wrapper.find('[data-role="loader"]').addClass('d-none') //로더 제거
wrapper.find('form').removeClass('d-none')
if (dis_like) {
wrapper.find('[data-toggle="switch"][data-role="dis_like"]').removeClass('active');
} else {
wrapper.find('[data-toggle="switch"][data-role="dis_like"]').addClass('active');
}
if (dis_comment) {
wrapper.find('[data-toggle="switch"][data-role="dis_comment"]').removeClass('active');
} else {
wrapper.find('[data-toggle="switch"][data-role="dis_comment"]').addClass('active');
}
if (dis_listadd) {
wrapper.find('[data-toggle="switch"][data-role="dis_listadd"]').removeClass('active');
} else {
wrapper.find('[data-toggle="switch"][data-role="dis_listadd"]').addClass('active');
}
wrapper.find('.form-list.floating .input-row').addClass('active');
autosize(wrapper.find('[data-plugin="autosize"]'));
} else {
alert(status);
}
});
} else {
wrapper.find('[data-role="loader"]').addClass('d-none') //로더 제거
wrapper.find('form').removeClass('d-none')
autosize(wrapper.find('[data-plugin="autosize"]'));
}
})
.catch( error => {
console.error( error );
} );
}, 10);
wrapper.find('.form-list.floating .input-row textarea').on('keyup', function(event) {
if ($(this).val().length >= 1) {
$(this).parents('.input-row').addClass('active');
} else {
$(this).parents('.input-row').removeClass('active');
}
})
wrapper.find('.switch[data-role="dis_comment"]').on('changed.rc.switch', function () {
var _switch = $(this);
if (_switch.hasClass('active')) {
wrapper.find('[name="dis_comment"]').val(0);
} else {
wrapper.find('[name="dis_comment"]').val(1);
}
})
wrapper.find('.switch[data-role="dis_like"]').on('changed.rc.switch', function () {
var _switch = $(this);
if (_switch.hasClass('active')) {
wrapper.find('[name="dis_like"]').val(0);
} else {
wrapper.find('[name="dis_like"]').val(1);
}
})
wrapper.find('.switch[data-role="dis_listadd"]').on('changed.rc.switch', function () {
var _switch = $(this);
if (_switch.hasClass('active')) {
wrapper.find('[name="dis_listadd"]').val(0);
} else {
wrapper.find('[name="dis_listadd"]').val(1);
}
})
//연결상품 불러오기
// $.post(rooturl+'/?r='+raccount+'&m=shop&a=get_postAttachGoods',{
// markup_file: 'attach_goods_write_item',
// uid : uid,
// featured_size : '140x104'
// },function(response,status){
// if(status=='success'){
// var result = $.parseJSON(response);
// var list=result.list;
// page_post_edit_goodslist.find('[data-role="attach-goods"]').html(list);
// page_post_edit_goodslist.find('[data-sortable="goods"]').sortable({
// axis: 'y',
// cancel: 'button',
// delay: 250,
// update: function( event, ui ) {
// var attachGoods=$('input[name="attachGoods[]"]').map(function(){return $(this).val()}).get();
// var new_goods='';
// if(attachGoods){
// for(var i=0;i<attachGoods.length;i++) {
// new_goods+=attachGoods[i];
// }
// }
// $.post(rooturl+'/?r='+raccount+'&m=shop&a=modifygid',{
// attachfiles : new_goods
// })
//
// }
// });
// } else {
// alert(status);
// }
// });
} // getPostWrite
function savePost(f) {
var editorData = editor_post.getData();
var after = modal_post_write.attr('data-after');
var start = modal_post_write.attr('data-start')?modal_post_write.attr('data-start'):'#page-post-allpost';
// 카테고리 체크
var cat_sel=page_post_edit_category.find('input[name="tree_members[]"]');
var cat_sel_n=cat_sel.length;
var cat_arr=page_post_edit_category.find('input[name="tree_members[]"]:checked').map(function(){return $(this).val();}).get();
var cat_n=cat_arr.length;
// if(cat_sel_n>0 && cat_arr==''){
// alert('지정된 카테고리가 없습니다.\n적어도 하나이상의 카테고리를 지정해 주세요.');
// $('#advan').tab('show')
// return false;
// }
var s='';
for (var i=0;i <cat_n;i++) {
if(cat_arr[i]!='') s += '['+cat_arr[i]+']';
}
f.category_members.value = s;
// 리스트 체크
var list_sel=modal_post_write.find('input[name="postlist_members[]"]');
var list_arr=modal_post_write.find('input[name="postlist_members[]"]:checked').map(function(){return $(this).val();}).get();
var list_n=list_arr.length;
var l='';
for (var i=0;i <list_n;i++) {
if(list_arr[i]!='') l += '['+list_arr[i]+']';
}
modal_post_write.find('input[name="list_members"]').val(l);
// 대표이미지가 없을 경우, 첫번째 업로드 사진을 지정함
var featured_img_input = modal_post_write.find('input[name="featured_img"]'); // 대표이미지 input
var featured_img_uid = $(featured_img_input).val();
if(featured_img_uid ==0){ // 대표이미지로 지정된 값이 없는 경우
var first_attach_img_li = modal_post_write.find('[data-role="attach-preview-photo"] li:first'); // 첫번째 첨부된 이미지 리스트 li
var first_attach_img_uid = modal_post_write.find(first_attach_img_li).attr('data-id');
featured_img_input.val(first_attach_img_uid);
}
// 첨부파일 uid 를 upfiles 값에 추가하기
var attachfiles=modal_post_write.find('input[name="attachfiles[]"]').map(function(){return $(this).val()}).get();
var new_upfiles='';
if(attachfiles){
for(var i=0;i<attachfiles.length;i++) {
new_upfiles+=attachfiles[i];
}
modal_post_write.find('input[name="upload"]').val(new_upfiles);
}
// 공유회원 uid 를 members 값에 추가하기
var postmembers=modal_post_write.find('input[name="postmembers[]"]').map(function(){return $(this).val()}).get();
var new_members='';
if(postmembers){
for(var i=0;i<postmembers.length;i++) {
new_members+=postmembers[i];
}
modal_post_write.find('input[name="member"]').val(new_members);
}
// 첨부상품 uid 를 gooods 값에 추가하기
var postgoods=$('input[name="attachGoods[]"]').map(function(){return $(this).val()}).get();
var new_goods='';
if(postgoods){
for(var i=0;i<postgoods.length;i++) {
new_goods+=postgoods[i];
}
modal_post_write.find('input[name="goods"]').val(new_goods);
}
checkUnload = false;
$('[data-role="postsubmit"]').attr( 'disabled', true );
var form = modal_post_write.find('[name="writeForm"]')
var uid = form.find('[name="uid"]').val();
var category_members = form.find('[name="category_members"]').val();
var list_members = form.find('[name="list_members"]').val();
var member = form.find('[name="member"]').val();
var upload = form.find('[name="upload"]').val();
var goods = form.find('[name="goods"]').val();
var featured_img = form.find('[name="featured_img"]').val();
var html = form.find('[name="html"]').val();
var subject = form.find('[name="subject"]').val();
var display = form.find('[name="display"]').val();
var format = modal_post_write.find('[name="format"]').val();
var review = page_post_edit_review.find('[name="review"]').val();
var tag = page_post_edit_tag.find('[name="tag"]').val();
var dis_like = form.find('[name="dis_like"]').val();
var dis_comment = form.find('[name="dis_comment"]').val();
var dis_listadd = form.find('[name="dis_listadd"]').val();
if (!subject) {
$.notify({message: '제목 입력후 저장해 주세요.'},{type: 'default'});
modal_post_write.find('[data-act="submit"]').attr('disabled',false);
return false;
}
// if (editorData == '') {
// $.notify({message: '본문 입력후 저장해 주세요.'},{type: 'default'});
// modal_post_write.find('[data-act="submit"]').attr('disabled',false);
// return false;
// }
setTimeout(function(){
$.post(rooturl+'/?r='+raccount+'&m=post&a=write',{
send_mod : 'ajax',
content : editorData,
uid : uid,
category_members : category_members,
list_members : list_members,
member : member,
upload : upload,
featured_img : featured_img,
html : html,
subject : subject,
review : review,
tag : tag,
format : format,
goods : goods,
display : display,
dis_like : dis_like,
dis_comment : dis_comment,
dis_listadd : dis_listadd
},function(response,status){
if(status=='success'){
var result = $.parseJSON(response);
var error=result.error;
if (!error) {
var d_modify=result.d_modify;
form.find('[data-role="postsubmit"]').attr( 'disabled', false );
history.back();
setTimeout(function(){
if (uid) {
$.notify({message: '저장 되었습니다.'},{type: 'default'});
} else {
if (display<4) {
$('#page-post-mypost').page({ start: start, title : '내 포스트', url : 'dashboard?page=post' });
}
}
// 메인화면 목록 새로불러오기
getPostAll({
wrapper : $('[data-role="postFeed"] [data-role="list"]'),
start : start,
markup : 'post-row', // 테마 > _html > post-row-***.html
recnum : 5,
sort : 'gid',
none : $(start).find('[data-role="postFeed"] [data-role="none"]').html(),
paging : 'infinit'
})
}, 300);
} else {
history.back();
setTimeout(function(){
$.notify({message: error},{type: 'danger'}); // 작성권한 없음
return false
}, 300);
}
} else {
alert(status);
}
});
}, 200);
}
function saveTwit(display,content) {
var start = modal_post_twit.attr('data-start')?modal_post_twit.attr('data-start'):'#page-post-allpost';
setTimeout(function(){
$.post(rooturl+'/?r='+raccount+'&m=post&a=write',{
send_mod : 'ajax',
content : '',
subject : content,
display : display,
html : 'TEXT'
},function(response,status){
if(status=='success'){
var result = $.parseJSON(response);
var error=result.error;
if (!error) {
history.back(); // 작성모달 내리고
setTimeout(function(){
if (display==5) {
// 메인화면 목록 새로불러오기
getPostAll({
wrapper : $('[data-role="postFeed"] [data-role="list"]'),
start : start,
markup : 'post-row', // 테마 > _html > post-row-***.html
recnum : 5,
sort : 'gid',
none : '',
paging : 'infinit'
})
} else {
$('#page-post-mypost').page({ start: start });
}
}, 300);
} else {
history.back();
setTimeout(function(){
$.notify({message: error},{type: 'danger'}); // 작성권한 없음
return false
}, 300);
}
} else {
alert(status);
}
});
}, 200);
}
function savePostByLink(url,start) {
$.get('//embed.kimsq.com/oembed',{
url: url
}).done(function(response) {
var type = response.type;
var title = response.title;
var description = response.description?response.description:'.';
var description = linkifyStr(description,{ target: '_blank' });
var description = description.replace(/(?:\r\n|\r|\n)/g, '<br>');
var thumbnail_url = response.thumbnail_url;
var author = response.author;
var provider = response.provider_name;
var url = response.url;
var width = response.thumbnail_width;
var height = response.thumbnail_height;
var embed = response.html;
$('[name="subject"]').val(title);
if (type=='video') {
$.get('//embed.kimsq.com/iframely',{
url: url
}).done(function(response) {
var duration = response.meta.duration;
var _duration = moment.duration(duration, 's');
var formatted_duration = _duration.format("h:*m:ss");
$.post(rooturl+'/?r='+raccount+'&m=mediaset&a=saveLink',{
type : 9,
title : title,
theme : '_desktop/bs4-default-link',
description : description,
thumbnail_url : thumbnail_url,
author: author,
provider : provider,
url : url,
duration : duration?duration:'',
time : duration?formatted_duration:'',
width : width,
height : height,
embed : embed
},function(response){
var result=$.parseJSON(response);
var uid = result.last_uid
if(!result.error){
// 새 포스트 저장
var subject = title;
var content = description;
var upload = '['+uid+']';
var featured_img = uid;
var format = 2; //비디오 타입
var html = 'HTML';
$.post(rooturl+'/?r='+raccount+'&m=post&a=write',{
send_mod : 'ajax',
content : content,
upload : upload,
featured_img : featured_img,
html : html,
subject : subject,
format : format
},function(response,status){
if(status=='success'){
var result = $.parseJSON(response);
var error=result.error;
if (!error) {
var uid=result.last_uid;
var cid=result.last_cid;
history.back();
modal_post_write.attr('data-uid',uid).attr('data-after','mypost').attr('data-start',start);
setTimeout(function(){
modal_post_write.modal({
title : '포스트 수정',
url : '/post/write/'+cid
});
}, 300);
} else {
history.back();
setTimeout(function(){
$.notify({message: error},{type: 'danger'}); // 작성권한 없음
return false
}, 300);
}
} else {
alert(status);
}
});
}
});
});
} else {
$.post(rooturl+'/?r='+raccount+'&m=mediaset&a=saveLink',{
type : 8,
title : title,
saveDir : './files/post/',
theme : '_desktop/bs4-default-link',
description : description,
thumbnail_url : thumbnail_url,
author: author,
provider : provider,
url : url,
width : width,
height : height,
embed : embed
},function(response){
var result=$.parseJSON(response);
var uid = result.last_uid
if(!result.error){
// 새 포스트 저장
var subject = title;
var content = '<p>'+description+'</p>';
var upload = '['+uid+']';
var featured_img = uid;
if (provider=='Vimeo' || provider=='kakaoTV' || provider=='NAVERTV') {
var format = 2; //비디오 타입
} else {
var format = 1; //문서 타입
}
var html = 'HTML';
$.post(rooturl+'/?r='+raccount+'&m=post&a=write',{
send_mod : 'ajax',
content : content,
upload : upload,
featured_img : featured_img,
html : html,
subject : subject,
format : format
},function(response,status){
if(status=='success'){
var result = $.parseJSON(response);
var error=result.error;
if (!error) {
var uid=result.last_uid;
var cid=result.last_cid;
history.back();
modal_post_write.attr('data-uid',uid).attr('data-after','mypost').attr('data-start',start);
setTimeout(function(){
modal_post_write.modal({
title : '포스트 수정',
url : '/post/write/'+cid
});
}, 300);
} else {
history.back();
setTimeout(function(){
$.notify({message: error},{type: 'danger'}); // 작성권한 없음
return false
}, 300);
}
} else {
alert(status);
}
});
}
});
}
}).fail(function() {
$.notify({message: 'URL을 확인해주세요.'},{type: 'default'});
sheet_post_linkadd.find('[data-act="submit"]').attr('disabled',false );
textarea.attr('disabled',false).focus()
}).always(function() {
});
} // savePostByLink()
page_post_edit_review.on('shown.rc.page', function(event) {
var page = $(this)
var textarea = page.find('textarea')
setTimeout(function(){ textarea.focus() }, 300);
})
page_post_edit_review.on('hidden.rc.page', function(event) {
var page = $(this)
var textarea = page.find('textarea')
textarea.blur()
})
page_post_edit_tag.on('shown.rc.page', function(event) {
var page = $(this)
var textarea = page.find('textarea')
setTimeout(function(){ textarea.focus() }, 300);
})
page_post_edit_tag.on('hidden.rc.page', function(event) {
var page = $(this)
var textarea = page.find('textarea')
textarea.blur()
})
page_post_edit_imageGoodsTag.on('shown.rc.page', function(event) {
var page = $(this)
console.log('상품태그 기능추가');
var swiper = new Swiper('#page-post-edit-imageGoodsTag .swiper-container');
})
page_post_edit_imageGoodsTag.on('hidden.rc.page', function(event) {
var page = $(this)
var swiper = new Swiper('#page-post-edit-imageGoodsTag .swiper-container');
swiper.destroy();
})
page_post_edit_goodslist.on('shown.rc.page', function(event) {
var page = $(this)
var input = page.find('[name="keyword"]')
var uid = modal_post_write.attr('data-uid');
page.find('[data-role="backdrop"]').addClass('d-none')
page.find('[data-plugin="autocomplete"]').blur(function(){
page.find('[data-role="backdrop"]').addClass('d-none')
$(this).val('');
});
page.find('[data-plugin="autocomplete"]').on("change keyup paste", function() {
var currentVal = $(this).val();
if (currentVal) {
page.find('[data-role="backdrop"]').removeClass('d-none')
page.find('[data-role="keyword-reset"]').removeClass("d-none");
} else {
page.find('[data-role="backdrop"]').addClass('d-none');
page.find('[data-role="keyword-reset"]').addClass("d-none");
}
});
// 검색어 입력필드 초기화
page.on('click','[data-act="keyword-reset"]',function(){
page.find('[data-plugin="autocomplete"]').val('') // 입력필드 초기화
setTimeout(function(){
page.find('[data-plugin="autocomplete"]').blur().autocomplete('clear');; // 입력필드 포커싱
page.find('[data-role="keyword-reset"]').addClass("d-none"); // 검색어 초기화 버튼 숨김
}, 10);
});
//상품연결을 위한 상품명 검색
page.find('[data-plugin="autocomplete"]').autocomplete({
width : 320,
minChars:1,
showNoSuggestionNotice: true,
noSuggestionNotice : '결과가 없습니다.',
lookup: function (query, done) {
$.getJSON(rooturl+"/?m=shop&a=search_data", {q: query,featured_size : '140x104'}, function(res){
if (res.goodslist) {
var sg_goods = [];
var data_arr = res.goodslist.split(',');//console.log(data.usernames);
$.each(data_arr,function(key,goods){
var goodsData = goods.split('|');
var name = goodsData[0];
var uid = goodsData[1];
var featured_img = goodsData[2];
var price = goodsData[3];
sg_goods.push({"value":name,"data":{ 'uid': uid, 'featured_img': featured_img, 'price': price }});
});
var result = {
suggestions: sg_goods
};
done(result);
}
});
},
formatResult: function (suggestion,currentValue) {
return '<div class="media"><span class="media-left"><img src="' + suggestion.data.featured_img+'" class="media-object border mr-2" style="width:70px"/></span><div class="media-body" style="line-height: 1.2;"><h6 class="my-0 text-reset line-clamp-2">' + $.Autocomplete.formatResult(suggestion, currentValue) + '</h6><span class="text-muted f13">'+ suggestion.data.price+'</span></div></div>';
},
onSelect: function (suggestion) {
if (page.find('[data-plugin="autocomplete"]').val().length >= 1) {
console.log(suggestion.data.uid)
$(this).val('');
page.find('[data-role="backdrop"]').addClass('d-none')
page.find('[data-role="keyword-reset"]').addClass("d-none"); // 검색어 초기화 버튼 숨김
$.post(rooturl+'/?r='+raccount+'&m=shop&a=get_goodsData',{
markup_file: 'attach_goods_write_item',
uid : suggestion.data.uid,
featured_size : '140x104'
},function(response){
var result = $.parseJSON(response);
var item=result.item;
page.find('[data-role="attach-goods"]').append(item);
$.notify({message: '추가 되었습니다.'},{type: 'default'});
});
}
}
});
})
page_post_edit_goodslist.on('hidden.rc.page', function(event) {
var page = $(this);
var input = page.find('[name="keyword"]');
var goodsNum = page.find('[data-role="item"]').length
input.val('').blur()
page.find('[data-plugin="autocomplete"]').autocomplete('dispose');
page_post_edit_main.find('[data-role="goodsNum"]').text(goodsNum);
})
//연결상품 지우기
page_post_edit_goodslist.find('[data-role="attach-goods"]').on('tap','[data-act="del"]',function(){
var item = $(this).closest('[data-role="item"]')
item.remove();
});
page_post_edit_goodsview.on('show.rc.page', function(event) {
var page = $(this)
console.log('상품 상세보기')
})