false,
'per_page' => 20,
'is_category_page' => '',
'no_write' => ''
);
add_option('amumu_board_options', $amumu_board_options);
$options = get_option( 'amumu_board_options' );
/*
if ( empty( $options['is_allow'] ) || $options['is_allow'] == false )
return;
*/
add_action( 'wp_head', 'amumu_board_head' );
add_action( 'admin_head', 'amumu_board_head' );
wp_enqueue_script("jquery");
}
function amumu_sns_init() {
$amumu_sns_options = array('is_allow' => false,
'amumu_sns_api_key' => '',
'facebook_app_id' => '',
'allow_page' => '',
);
// No options yet?
add_option('amumu_sns_options', $amumu_sns_options);
$options = get_option( 'amumu_sns_options' );
if ( empty( $options['facebook_app_id'] ) )
return;
add_action( 'wp_head', 'amumu_sns_head' );
add_action( 'admin_head', 'amumu_sns_head' );
//wp_enqueue_script("jquery");
}
function amumu_board_activate() {
//WordPress Amumu Board Create Table
amumu_board_install();
}
function amumu_deactivation(){
}
function amumu_board_install() {
global $wpdb,$amumu_board_ver;
$table_name = $wpdb->prefix . "amumu_board";
$table_name2 = $wpdb->prefix . "amumu_board_comments";
$sql = "CREATE TABLE IF NOT EXISTS ". $table_name." (
id bigint(20) unsigned NOT NULL auto_increment,
`subject` varchar(255) NOT NULL default '',
`author_id` varchar(255) default '0',
`parent_id` bigint(20) NOT NULL,
`author_email` varchar(255) NOT NULL default '',
`author_name` varchar(50) default '',
`author_pic` varchar(255) default '',
`author_url` varchar(255) default '',
`date` datetime NOT NULL default '0000-00-00 00:00:00',
`text` text,
category int(11),
passwd varchar(50) default '',
file_name varchar(255) default '',
is_secret boolean not null default 0,
is_notice boolean not null default 0,
views int(11) NOT NULL default '0',
PRIMARY KEY (id),
FULLTEXT(`text`),
FULLTEXT(`subject`)
) ENGINE=MYISAM DEFAULT CHARACTER SET = utf8;";
$sql2 = "CREATE TABLE IF NOT EXISTS ". $table_name2 ." (
`id` bigint(20) NOT NULL auto_increment,
`parent_id` bigint(20) NOT NULL,
`parent_comment_id` bigint(20) NOT NULL,
`author_id` varchar(255) default '0',
`author_email` varchar(255) NOT NULL default '',
`author_name` varchar(50) NOT NULL default '',
`author_pic` varchar(255) default '',
`author_url` varchar(255) default '',
`date` datetime NOT NULL default '0000-00-00 00:00:00',
`text` text,
`like` int(11) NOT NULL default '0',
PRIMARY KEY (id),
FULLTEXT(`text`)
) ENGINE=MYISAM DEFAULT CHARACTER SET = utf8;";
require_once(ABSPATH . 'wp-admin/includes/upgrade.php');
dbDelta($sql);
dbDelta($sql2);
add_option("amumu_board_db_version", $amumu_board_ver);
}
function amumu_board_uninstall(){
global $wpdb;
$drop_table = "DROP TABLE `".$wpdb->prefix."amumu_board`,`".$wpdb->prefix."amumu_board_comments`";
$wpdb->query($drop_table);
}
function amumu_board_submit_dialog($message, $post_ID, $error = false, $back = '') {
if ($error) {
$class = 'error amumu-board-submit';
}
else {
$class = 'updated amumu-board-submit';
}
if($back == "back"){
echo '
".$posts->author_name."
".$posts->date." 조회수 : ".$posts->views."
".stripslashes($posts->subject)."
";
$content .= "
";
}else{
$content .= "
".get_avatar( $posts->author_email, $size = '48' )."".$posts->author_name."".$posts->date." 조회수 : ".$posts->views."
".stripslashes($posts->subject)."
";
$content .= "";
}
$content .= "
";
$content .= stripslashes(nl2br($posts->text));
//$txt = amumu_my_nl2br($txt);
$content .= "
";
$attachment = "";
if($posts->file_name != ''){
$attachment = "
첨부파일 : ".urldecode($posts->file_name)."
";
}
$content .= $attachment;
$action_del = get_amumu_board_link('del_post',$post_ID,$pid,true);
$action_edit = get_amumu_board_link('edit_post',$post_ID,$pid,true);
$input_passwd_del = "
";
$input_passwd_edit = "
";
$content .= "";
$no_table = true;
$reply_list = amumu_get_reply_content($pid);
if(sizeof($reply_list) == 0) $no_table = false;
$content .="
";
if($no_table){
for($i = 0; $i < sizeof($reply_list); $i++){
$content .= "
";
$content .= "
";
if($reply_list[$i]->author_pic != ""){
$content .= "
".$reply_list[$i]->author_name."";
}else{
$content .= "
".get_avatar( $reply_list[$i]->author_email, $size = '48' )." ".$reply_list[$i]->author_name."";
}
$content .= "
".$reply_list[$i]->date."";
if($amumu_sns_facebook != null){
$content .= "
답글";
}
$content .= amumu_board_menu_reply($pid,$reply_list[$i]->author_id,$reply_list[$i]->id);
$content .= "
확인취소";
$content .= "
";
$content .= "
";
$content .= "
".nl2br(stripslashes($reply_list[$i]->text))."
";
$content .= "
";
$content .= "
";
$content .= "
";
$content .= "
";
$reply_reply_list = amumu_get_reply_reply_content($pid,$reply_list[$i]->id);
if(sizeof($reply_reply_list) != 0){
for($j = 0; $j < sizeof($reply_reply_list); $j++){
$content .= "";
}
}
}
};
$content .="
";
if($amumu_sns_facebook != 0 || current_user_can('manage_options')){
$amumu_sns_email = "";
if(current_user_can('manage_options')){
$amumu_sns_facebook = $user_ID;
$amumu_sns_name = $user_login;
$amumu_sns_pic = "";
$amumu_sns_email = $user_email;
$amumu_sns_email_hash = md5( $user_email );
}
$content .= "
";
$content .= "
";
}else{
$content .= "
댓글 작성은 로그인 후에 이용 가능 합니다.
";
$content .= "
";
}
$content .= "
";
}else{
// 시간순정렬관련
$orderby = isset( $_REQUEST['orderby'] ) ? strip_tags($_REQUEST['orderby']) : 'DESC';
$keyword = isset( $_REQUEST['keyword'] ) ? strip_tags($_REQUEST['keyword']) : '';
$addsql = "";
$addsql = $keyword == '' ? "" : " AND ( `subject` like '%$keyword%' OR `text` like '%$keyword%' )";
// 카테고리 명
$category = $post->ID;
// paging
$this_page = isset( $_REQUEST['this_page'] ) ? strip_tags($_REQUEST['this_page']) : 1;
$page_id = isset( $_REQUEST['page_id'] ) ? strip_tags($_REQUEST['page_id']) : '';
$total_count = amumu_get_list_count($category,$addsql);
$num_per_page = $options['per_page'];
$paging = new amumu_paging( $total_count, $this_page, array( 'page_id' => $page_id, 'orderby' => $orderby, 'keyword' => $keyword ), $num_per_page, 5 );
$no = $paging->no;
// 출력데이터
$data = amumu_get_list("AND category = ".$post->ID." AND is_notice =0 AND parent_id = 0".$addsql, "id ".$orderby, $paging->offset, $paging->size, $no);
// 알림글 리스트업 고정 시작
$notice_list = amumu_get_notice_list($post_ID);
$allow_page = explode(",",$options['is_category_page']);
$post_ID = $post->ID;
$is_allow = in_array($post_ID,$allow_page);
$amumu_board_plugin_url = WP_PLUGIN_URL."/amumu-board/";
$num_post = sizeof($data);
$num_notice = sizeof($notice_list);
if( $num_post != 0 || $num_notice != 0 ){
$content .= amumu_board_menu_login();
$content .= "
";
$content .= "";
$content .= "";
$content .= "";
$content .= "";
$content .= "";
$content .= "";
$content .= "";
$content .= "| No | 제목 | 작성자 | 날짜 | 조회수 |
";
if(sizeof($notice_list) != 0 ){
for ($i=0; $i date);
if($notice_list[$i]->is_secret) $is_secret = true;
$content .= "
| ★ | ";
$content .= " id)."'>".amumu_str_to_limit(stripslashes($notice_list[$i]->subject),25)."".amumu_get_reply_count($notice_list[$i]->id)." | ";
$content .= " ".$notice_list[$i]->author_name." |
".$date[0]." |
".$notice_list[$i]->views." |
";
}
}
// 알림글 리스트업 고정 끝
for($i = 0; $i < $num_post ; $i++){
$date = explode(" ",$data[$i]->date);
$is_secret = false;
if($data[$i]->is_secret) $is_secret = true;
$attachment = "";
if($data[$i]->file_name != '') $attachment = "
";
$author_name = amumu_str_to_limit($data[$i]->author_name,15);
$content .= "
| ".$no." | ";
if($is_secret){
$content .= " 비밀글 : id)."'>".amumu_str_to_limit(stripslashes($data[$i]->subject),25)."".amumu_get_reply_count($data[$i]->id).$attachment."- ".$author_name." | ";
}else{
$content .= " id)."'>".amumu_str_to_limit(stripslashes($data[$i]->subject),25)."".amumu_get_reply_count($data[$i]->id).$attachment."- ".$author_name." | ";
}
$content .= " ".$author_name." |
".$date[0]." |
".$data[$i]->views." |
";
$content_reply_list = amumu_get_content_reply_list($post_ID,$data[$i]->id);
if(sizeof($content_reply_list) != 0){
for($j = 0; $j < sizeof($content_reply_list); $j++){
$reply_author_name = amumu_str_to_limit($content_reply_list[$j]->author_name,15);
$date = explode(" ",$content_reply_list[$j]->date);
$content .= "
| ";
if($is_secret){
$content .= " 비밀글 : id)."'>".amumu_str_to_limit($content_reply_list[$j]->subject,20)."".amumu_get_reply_count($content_reply_list[$j]->id)."- ".$reply_author_name." | ";
}else{
$content .= " id)."'>".amumu_str_to_limit($content_reply_list[$j]->subject,20)."".amumu_get_reply_count($content_reply_list[$j]->id)."- ".$reply_author_name." | ";
}
$content .= " ".$reply_author_name." |
".$date[0]." |
".$content_reply_list[$j]->views." |
";
}
}
$no--;
}
$content .= "";
$content .= "
";
$content .= "
".$paging->amumu_get_paging()."
";
$content .= "";
$content .= "
";
}else{
// 작성된 글이 없을 경우
$content .= amumu_board_menu_login();
$content .= "
";
$content .= "";
$content .= "";
$content .= "";
$content .= "";
$content .= "";
$content .= "";
$content .= "";
$content .= "| No | 제목 | 작성자 | 날짜 | 조회수 |
";
$content .= "
| 작성된 글이 없습니다. |
";
$content .= "";
$content .= "
";
$content .= "
".$paging->amumu_get_paging()."
";
$content .= "";
$content .= "
";
}
}
}
return $content;
}
function amumu_sns_comment($content) {
global $post, $amumu_sns_facebook;
$options = get_option( 'amumu_sns_options' );
//$amumu_sns_facebook = isset($_SESSION['amumu_sns_facebook']) ? $_SESSION['amumu_sns_facebook'] : null;
$allow_page = explode(",",$options['allow_page']);
$is_allow = in_array($post->ID,$allow_page);
if( is_single() == 1 && ( $post->post_type !="page" && is_home() == 0) || $is_allow ) {
if ($options['is_allow']) {
$amumu_sns_thumbnail = amumu_getImg($content);
//$amumu_sns_comment_excerpt = amumu_sns_excerpt_max_charlength(140);
$amumu_sns_post_id = $post->ID;
$amumu_sns_plugin_url = WP_PLUGIN_URL.'/amumu-board/';
$amumu_sns_comment = '
소셜계정으로 로그인 후 작성하세요
powered by AMUMUSNS
전체댓글수'.$post->comment_count.'
';
$amumu_sns_comment .= $amumu_sns_last_comment = amumu_sns_content($amumu_sns_post_id);
$amumu_sns_comment .= '
Loading...
';
if($amumu_sns_thumbnail != ''){
echo "
";
}else{
echo "
";
}
$content .= $amumu_sns_comment;
}
}
return $content;
}
function amumu_board_menu_login(){
$menu = "";
$menu .= "
";
return $menu;
}
function amumu_board_menu_reply($pid= '', $author_id = '', $reply_id){
global $amumu_sns_facebook;
$menu = "";
if (($amumu_sns_facebook != 0 && $amumu_sns_facebook == $author_id) || current_user_can('manage_options')) {
$menu .= "";
}
return $menu;
}
function amumu_board_insert_comment(){
global $wpdb;
$wpdb->show_errors();
$table_name = $wpdb->prefix."amumu_board_comments";
$content = $_POST['text'];
$author_id = $_POST['author_id'];
$author_name = $_POST['author_name'];
$author_pic = $_POST['author_pic'];
$author_email = $_POST['author_email'];
$parent_id = $_POST['parent_id'];
$parent_comment_id = $_POST['parent_comment_id'];
$rows_affected = $wpdb->query( $wpdb->prepare(
"
INSERT INTO $table_name
( parent_id, parent_comment_id, author_id, author_name, author_pic, author_email, date, text, `like` )
VALUES ( %d, %d, %s, %s, %s, %s, %s, %s, %d )
",
$parent_id,
$parent_comment_id,
$author_id,
$author_name,
$author_pic,
$author_email,
current_time('mysql'),
$content,
0
) );
$reply_data = $wpdb->get_row("SELECT id, date FROM ".$table_name." ORDER BY id DESC LIMIT 1");
$reply_id = $reply_data->id;
$date = $reply_data->date;
if($rows_affected){
echo json_encode(array("result"=> 1, "reply_id" => $reply_id, "parent_comment_id" => $parent_comment_id, "date" => $date));
die();
}else{
echo json_encode(array("result"=> 0));
die();
}
}
add_action('wp_ajax_nopriv_amumu_board_insert_comment','amumu_board_insert_comment');
add_action('wp_ajax_amumu_board_insert_comment','amumu_board_insert_comment');
function amumu_board_delete_comment(){
global $wpdb;
$table_name = $wpdb->prefix."amumu_board_comments";
$comment_ID = strip_tags($_POST['comment_ID']);
$reply_author_id = $wpdb->get_var("SELECT author_id FROM ".$table_name." WHERE id = ".$comment_ID);
if($_SESSION['amumu_sns_facebook'] == $reply_author_id || current_user_can('manage_options')){
$result = $wpdb->query("DELETE FROM ".$table_name." WHERE id =".$comment_ID);
$wpdb->query("DELETE FROM ".$table_name." WHERE parent_comment_id =".$comment_ID);
}else{
$result = FALSE;
}
if($result){
echo json_encode(array("result"=> 1));
die();
}else{
echo json_encode(array("result"=> 0));
die();
}
}
add_action('wp_ajax_nopriv_amumu_board_delete_comment','amumu_board_delete_comment');
add_action('wp_ajax_amumu_board_delete_comment','amumu_board_delete_comment');
function amumu_board_update_comment(){
global $wpdb;
$table_name = "wp_amumu_board_comments";
$wpdb->show_errors();
$content = $_POST['text'];
$reply_id = $_POST['reply_id'];
$rows_affected = $wpdb->query( $wpdb->prepare(
"
UPDATE $table_name
SET text = %s, date = %s
WHERE id = %d
",
$content,
current_time('mysql'),
$reply_id
) );
if($rows_affected){
echo json_encode(array("result"=> 1));
die();
}else{
echo json_encode(array("result"=> 0));
die();
}
}
add_action('wp_ajax_nopriv_amumu_board_update_comment','amumu_board_update_comment');
add_action('wp_ajax_amumu_board_update_comment','amumu_board_update_comment');
function amumu_get_board_content($pid){
global $wpdb;
if($pid){
$posts = $wpdb->get_row("SELECT * FROM ".$wpdb->prefix."amumu_board WHERE id = ".$pid);
return $posts;
}else{
return false;
}
}
function amumu_get_reply_content($pid = ''){
global $wpdb;
return $wpdb->get_results("SELECT * FROM ".$wpdb->prefix."amumu_board_comments WHERE parent_id = ".$pid." AND parent_comment_id = 0 ORDER BY `date` ASC");
}
function amumu_get_reply_reply_content($pid = '', $parent_comment_id){
global $wpdb;
return $wpdb->get_results("SELECT * FROM ".$wpdb->prefix."amumu_board_comments WHERE parent_id = ".$pid." AND parent_comment_id = ".$parent_comment_id." ORDER BY `date` ASC");
}
function amumu_my_nl2br($string){
$string = str_replace("\n", "
", $string);
if(preg_match_all('/\
(.*?)\<\/pre\>/', $string, $match)){
foreach($match as $a){
foreach($a as $b){
$string = str_replace(''.$b.'
', "".str_replace("
", "", $b)."", $string);
}
}
}
return $string;
}
function amumu_get_password(){
global $user_ID, $amumu_sns_facebook;
$out = "";
if($amumu_sns_facebook == 0){
$out = "
| 비밀번호 |
|
";
}
return $out;
}
function amumu_get_secret(){
$out = "";
if(!current_user_can('manage_options')){
$out = "
| 비밀글 |
|
";
}
return $out;
}
function amumu_get_notice(){
$out = "";
if(current_user_can('manage_options')){
$out = "
| 알림글 |
|
";
}
return $out;
}
function amumu_get_upload_file(){
global $amumu_sns_facebook;
$out = "";
if($amumu_sns_facebook != 0 || current_user_can('manage_options')){
$out = "
| 첨부파일 |
|
";
}
return $out;
}
function amumu_board_menu(){
global $post;
$options = get_option('amumu_board_options');
$no_write = explode(",",$options['no_write']);
if(!in_array($post->ID, $no_write) || current_user_can('manage_options')){
$menu = "";
$menu .= "";
}else{
$menu = "";
}
return $menu;
}
function amumu_board_search(){
global $post;
$menu ="";
return $menu;
}
function amumu_board_menu_in($pid= '', $author_id = '', $parent_id = 0){
global $post,$amumu_sns_facebook;
$menu = "";
if (($amumu_sns_facebook != 0 && $amumu_sns_facebook == $author_id) || (current_user_can('manage_options') && $pid != '')) {
if(current_user_can('manage_options') && $pid != '' && $parent_id == 0) {
$menu .= "";
}
$menu .= "";
$menu .= "";
}else if($amumu_sns_facebook == 0 && $author_id == 0){
$menu .= "";
$menu .= "";
}
return $menu;
}
function get_amumu_board_link($action, $post_ID = 0, $pid = 0, $is_member = false, $is_reply = false){
$options = get_option('permalink_structure');
if($options['option_value'] == ''){
$permalink_option = "&";
}else{
$permalink_option = "?";
}
switch ($action) {
case "view":
return get_permalink($post_ID).$permalink_option."action=view&pid=".$pid;
break;
case "post_list":
return get_permalink($post_ID);
break;
case "add_post":
if($is_reply){
return get_permalink($post_ID).$permalink_option."action=add_post&rid=".$pid;
}else{
return get_permalink($post_ID).$permalink_option."action=add_post";
}
break;
case "edit_post":
if($is_member){
return get_permalink($post_ID).$permalink_option."action=edit_post&pid=".$pid."&passwd=passwd";
}else{
return get_permalink($post_ID).$permalink_option."action=edit_post&pid=".$pid;
}
case "del_post":
if($is_member){
return get_permalink($post_ID).$permalink_option."action=del_post&pid=".$pid."&passwd=passwd";
}else{
return get_permalink($post_ID).$permalink_option."action=del_post&pid=".$pid;
}
break;
case "del_reply":
return get_permalink($post_ID).$permalink_option."action=del_reply&pid=".$pid;
break;
default :
return get_permalink($post_ID);
}
}
function get_amumu_permal_link(){
$options = get_option('permalink_structure');
if($options['option_value'] == ''){
$permalink_option = "&";
}else{
$permalink_option = "?";
}
return $permalink_option;
}
function amumu_get_reply_count($id){
global $wpdb;
$count = $wpdb->get_var("SELECT COUNT(id) FROM ".$wpdb->prefix."amumu_board_comments WHERE parent_id = ".(int)$id);
if(!$count) {
$count = "";
}else{
$count = " [".$count."]";
}
return $count;
}
function amumu_board_list($post_ID){
global $wpdb;
$options = get_option('amumu_board_options');
$board_list = explode(",",$options['is_category_page']);
$board_nav = "
";
for ($i=0; $i
get_var("SELECT post_title FROM ".$wpdb->prefix."posts WHERE id =".$board_list[$i]);
$board_count = $wpdb->get_var("SELECT COUNT(id) FROM ".$wpdb->prefix."amumu_board WHERE category =".$board_list[$i]);
if($post_ID == $board_list[$i]){
$board_nav .= " ".$board_title."[".$board_count."] ,";
}else{
$board_nav .= " ".$board_title."[".$board_count."] |";
}
}
$board_nav = substr($board_nav,0,strlen($board_nav) -2);
$board_nav .= "";
return $board_nav;
}
function amumu_board_page_list(){
global $wpdb;
$page_list = $wpdb->get_results("SELECT post_title,ID FROM ".$wpdb->prefix."posts WHERE post_type='page'");
$output = "
\n";
echo $output;
}
function amumu_board_nowrite_list(){
global $wpdb;
$option = get_option('amumu_board_options');
$page_list = $wpdb->get_results("SELECT post_title,ID FROM ".$wpdb->prefix."posts WHERE post_type='page' AND ID in (".$option['is_category_page'].")");
$output = "
\n";
echo $output;
}
function amumu_board_list_admin(){
global $wpdb;
$option = get_option('amumu_board_options');
$where_in = $option['is_category_page'];
$page_list = $wpdb->get_results("SELECT post_title,ID FROM ".$wpdb->prefix."posts WHERE post_type='page' AND ID in (".$where_in.")");
$output = "
\n";
echo $output;
}
function amumu_sns_insert_comment(){
global $wpdb;
$insert_date = time();
$return_date = date('Y-m-d H:i:s',$insert_date);
$table_name = "wp_comments";
$table_name_meta = "wp_commentmeta";
$comment_post_ID = strip_tags($_POST['page_ID']);
$comment_author = strip_tags($_POST['name']);
$comment_author_email = "";
$comment_author_url = strip_tags($_POST['profile_link']);
$comment_author_IP = "";
$comment_date = $return_date;
$comment_date_gmt = $return_date;
$comment_content = strip_tags($_POST['comment']);
$comment_karma = "";
$comment_approved = 1;
$comment_agent = strip_tags($_POST['comment_author']);
$comment_type = strip_tags($_POST['comment_type']);
$comment_parent = 0;
$user_id = 0;
$wpdb->show_errors();
$rows_affected = $wpdb->insert( $table_name, array( 'comment_post_ID' => $comment_post_ID , 'comment_author' => $comment_author, 'comment_author_email' => $comment_author_email, 'comment_author_url' => $comment_author_url, 'comment_date' => $comment_date, 'comment_date_gmt' => $comment_date_gmt, 'comment_content' => $comment_content, 'comment_karma' => $comment_karma , 'comment_approved' => $comment_approved , 'comment_agent' => $comment_agent , 'comment_type' => $comment_type , 'comment_parent' => $comment_parent , 'user_id' => $user_id ) );
if($wpdb->insert_id){
wp_update_comment_count( $comment_post_ID );
$table_name = "wp_commentmeta";
$meta_key = "amumu-sns-pic";
$meta_value = strip_tags($_POST['pic']);
$comment_id = $wpdb->insert_id;
$rows_affected_meta = $wpdb->insert( $table_name_meta, array( 'meta_key' => $meta_key , 'meta_value' => $meta_value, 'comment_id' => $comment_id ) );
}
echo json_encode(array("result"=> 1, "plugins_url"=>WP_PLUGIN_URL."/amumu-board/", "date"=>$return_date, "comment_id"=>$comment_id));
die();
}
add_action('wp_ajax_nopriv_amumu_sns_insert_comment','amumu_sns_insert_comment');
add_action('wp_ajax_amumu_sns_insert_comment','amumu_sns_insert_comment');
function amumu_sns_delete_comment(){
global $wpdb, $amumu_sns_facebook;
//$amumu_sns_facebook = isset($_SESSION['amumu_sns_facebook']) ? $_SESSION['amumu_sns_facebook'] : null;
$table_name = "wp_comments";
$table_name_meta = "wp_commentmeta";
$comment_ID = $_POST['comment_ID'];
$comment_id = $_POST['comment_ID'];
if($amumu_sns_facebook != 0 || current_user_can('manage_options')){
if(wp_delete_comment($comment_ID)){
$result = delete_comment_meta($comment_id,'amumu-sns-pic');
}
}else{
$result = FALSE;
}
if($result){
echo json_encode(array("result"=> 1));
die();
}else{
echo json_encode(array("result"=> 0));
die();
}
}
add_action('wp_ajax_nopriv_amumu_sns_delete_comment','amumu_sns_delete_comment');
add_action('wp_ajax_amumu_sns_delete_comment','amumu_sns_delete_comment');
function amumu_sns_more_comment(){
global $wpdb, $amumu_sns_facebook;
//$amumu_sns_facebook = isset($_SESSION['amumu_sns_facebook']) ? $_SESSION['amumu_sns_facebook'] : null;
$offset = $_POST['page_offset'].",10";
$output_reply = "";
$comment_post_ID = $_POST['page_ID'];
$wpdb->show_errors();
$data = $wpdb->get_results(
"SELECT comment.*, meta.meta_value AS 'comment_pic'
FROM wp_comments AS `comment`
JOIN
wp_commentmeta AS meta
ON comment.comment_ID = meta.comment_id
WHERE comment.comment_post_ID = ".$comment_post_ID." and comment.comment_approved = 1 ORDER BY comment_date_gmt DESC LIMIT ".$offset
);
if(sizeof($data) == 0){
echo "nohave";
die();
}else{
for ($i=0; $i < sizeof($data); $i++) {
$output_reply .= '

';
$output_reply .= '
';
$output_reply .= '

';
$output_reply .= '

'.$data[$i]->comment_author.'
'.$data[$i]->comment_date_gmt.'';
if($amumu_sns_facebook == $data[$i]->comment_agent || current_user_can('manage_options')){
$output_reply .= '
삭제';
}
$output_reply .= '
';
$output_reply .= amumu_sns_nl2br($data[$i]->comment_content);
$output_reply .= '
';
}
echo $output_reply;
die();
}
}
add_action('wp_ajax_nopriv_amumu_sns_more_comment','amumu_sns_more_comment');
add_action('wp_ajax_amumu_sns_more_comment','amumu_sns_more_comment');
function amumu_sns_logout(){
unset($_SESSION['amumu_sns_facebook']);
unset($_SESSION['amumu_sns_name']);
unset($_SESSION['amumu_sns_email']);
unset($_SESSION['amumu_sns_type']);
unset($_SESSION['amumu_sns_pic']);
unset($_SESSION['amumu_sns_url']);
$result = WP_PLUGIN_URL."/amumu-board/image/img_ssome.gif";
if($result){
echo json_encode(array("result"=> 1, "url"=> $result, "amumu_sns_facebook"=> $_SESSION['amumu_sns_facebook']));
die();
}else{
echo json_encode(array("result"=> 0));
die();
}
}
add_action('wp_ajax_nopriv_amumu_sns_logout','amumu_sns_logout');
add_action('wp_ajax_amumu_sns_logout','amumu_sns_logout');
function amumu_sns_login(){
$amumu_sns_type = $_POST['amumu_sns_type'];
$amumu_sns_id = $_POST['amumu_sns_id'];
$amumu_sns_name = $_POST['amumu_sns_name'];
$amumu_sns_email = $_POST['amumu_sns_email'];
$amumu_sns_pic = $_POST['amumu_sns_pic'];
$amumu_sns_url = $_POST['amumu_sns_url'];
if($amumu_sns_type == 'facebook') {
$_SESSION['amumu_sns_type'] = $amumu_sns_type;
$_SESSION['amumu_sns_facebook'] = $amumu_sns_id;
$_SESSION['amumu_sns_name'] = $amumu_sns_name;
$_SESSION['amumu_sns_email'] = $amumu_sns_email;
$_SESSION['amumu_sns_pic'] = $amumu_sns_pic;
$_SESSION['amumu_sns_url'] = $amumu_sns_url;
}
if(isset($_SESSION['amumu_sns_facebook'])){
echo json_encode(array("result"=> 1));
die();
}else{
echo json_encode(array("result"=> 0));
die();
}
}
add_action('wp_ajax_nopriv_amumu_sns_login','amumu_sns_login');
add_action('wp_ajax_amumu_sns_login','amumu_sns_login');
function amumu_sns_page_list(){
global $wpdb;
$page_list = $wpdb->get_results("SELECT post_title,ID FROM wp_posts WHERE post_type='page'");
$output = "
\n";
echo $output;
}
function amumu_getImg($content) {
$img = "";
preg_match("
![]()
]*>", $content, $imgTag);
if($imgTag[0]){
if( stristr($imgTag[0], "http://") ) {
preg_match("/http:\/\/.*\.(jp[e]?g|gif|png)/Ui", $imgTag[0], $imgName);
$img = $imgName[0];
} else {
preg_match("/.*\.(jp[e]?g|gif|png)/Ui", $imgTag[0], $imgName);
$img = $imgName[0];
}
}
/*
if($imgTag) {
if( stristr($imgTag[2], "http://") ) {
preg_match("/http:\/\/.*\.(jp[e]?g|gif|png)/Ui", $imgTag[2], $imgName);
$img = $imgName[0];
} else {
preg_match("/.*\.(jp[e]?g|gif|png)/Ui", $imgTag[2], $imgName);
$img = $imgName[0];
}
}
*/
return $img;
}
function amumu_sns_excerpt_max_charlength($charlength) {
global $post,$wpdb;
$content = $post->post_content;
$excerpt = sanitize_text_field($content);
$charlength++;
if ( mb_strlen( $excerpt ) > $charlength ) {
$subex = mb_substr( $excerpt, 0, $charlength - 5 );
$exwords = explode( ' ', $subex );
$excut = - ( mb_strlen( $exwords[ count( $exwords ) - 1 ] ) );
if ( $excut < 0 ) {
$excerpt = mb_substr( $subex, 0, $excut );
} else {
$excerpt = $subex;
}
return $excerpt."[...]";
} else {
return $excerpt;
}
}
function amumu_sns_content($post_ID){
global $wpdb, $amumu_sns_facebook;
$data = $wpdb->get_results(
"SELECT comment.*, meta.meta_value AS 'comment_pic'
FROM wp_comments AS `comment`
JOIN
wp_commentmeta AS meta
ON comment.comment_ID = meta.comment_id
WHERE comment.comment_post_ID = ".$post_ID." and comment.comment_approved = 1 ORDER BY comment_date_gmt DESC LIMIT 10"
);
for ($i=0; $i < sizeof($data); $i++) {
$output_reply .= '

';
$output_reply .= '
';
$output_reply .= '

';
$output_reply .= '
'.$data[$i]->comment_author.''.$data[$i]->comment_date_gmt.'';
if($amumu_sns_facebook == $data[$i]->comment_agent || current_user_can('manage_options')){
$output_reply .= '
삭제';
}
$output_reply .= '
';
$output_reply .= amumu_sns_nl2br($data[$i]->comment_content);
$output_reply .= '
';
}
return $output_reply;
}
function amumu_sns_comment_count($comment_post_ID){
global $wpdb;
$result = $wpdb->get_var( $wpdb->prepare( "SELECT COUNT(*) FROM $wpdb->comments WHERE comment_post_ID = ".$comment_post_ID." and comment_approved = 1;" ) );
echo $result;
}
function amumu_sns_nl2br($string){
$string = str_replace("\n", "
", $string);
if(preg_match_all('/\
(.*?)\<\/pre\>/', $string, $match)){
foreach($match as $a){
foreach($a as $b){
$string = str_replace(''.$b.'
', "".str_replace("
", "", $b)."", $string);
}
}
}
return $string;
}
function amumu_sns_close_wp_comments($comments) {
return null;
}
add_filter('comments_array','amumu_sns_close_wp_comments');
function amumu_sns_set_wp_comment_status ( $posts ) {
$options = get_option('amumu_sns_options');
$allow_page = explode(",",$options['allow_page']);
$post_ID = $posts[0]->ID;
$is_allow = in_array($post_ID,$allow_page);
if($is_allow){
if ( ! empty( $posts ) && is_singular() ) {
$posts[0]->comment_status = 'open';
$posts[0]->post_status = 'open';
}
}
return $posts;
}
add_filter( 'the_posts', 'amumu_sns_set_wp_comment_status' );
function amumu_board_head() {
echo '';
echo '';
echo '';
}
function amumu_sns_head() {
$options = get_option( 'amumu_sns_options' );
if ( empty( $options['facebook_app_id'] ) )
return;
$args = apply_filters( 'amumu_sns_init', array(
'appId' => $options['facebook_app_id'],
//'channelUrl' => add_query_arg( 'fb-channel-file', 1, site_url( '/' ) ),
'channelUrl' => '//'+window.location.hostname+'/channel',
'status' => true,
'cookie' => true,
'xfbml' => true
) );
echo '';
echo '';
echo '';
echo '";
echo '';
//add_action( 'wp_footer', 'fb_root' );
}
?>