From a6e83d087bb7d465fd126595b9746a67a3fefd00 Mon Sep 17 00:00:00 2001 From: devjin Date: Tue, 7 Aug 2012 12:59:18 +0000 Subject: [PATCH] issue 1314 add function that read communication on mobile. git-svn-id: http://xe-core.googlecode.com/svn/branches/1.5.3.2@10993 201d5d3c-b55e-5fd7-737f-ddc643e51545 --- .../communication.admin.controller.php | 10 +- .../communication.admin.view.php | 6 +- .../communication/communication.mobile.php | 68 ++++++++++ modules/communication/communication.model.php | 1 + .../m.skins/default/css/mcommunication.css | 127 ++++++++++++++++++ .../m.skins/default/img/member.png | Bin 0 -> 1043 bytes .../m.skins/default/img/read.png | Bin 0 -> 3714 bytes .../m.skins/default/img/unread.png | Bin 0 -> 1069 bytes .../m.skins/default/messages.html | 17 +++ .../m.skins/default/read_message.html | 12 ++ .../communication/m.skins/default/skin.xml | 18 +++ modules/communication/tpl/index.html | 8 ++ 12 files changed, 262 insertions(+), 5 deletions(-) create mode 100644 modules/communication/communication.mobile.php create mode 100644 modules/communication/m.skins/default/css/mcommunication.css create mode 100644 modules/communication/m.skins/default/img/member.png create mode 100644 modules/communication/m.skins/default/img/read.png create mode 100644 modules/communication/m.skins/default/img/unread.png create mode 100644 modules/communication/m.skins/default/messages.html create mode 100644 modules/communication/m.skins/default/read_message.html create mode 100644 modules/communication/m.skins/default/skin.xml diff --git a/modules/communication/communication.admin.controller.php b/modules/communication/communication.admin.controller.php index 2c38d2683..c544a5e2b 100644 --- a/modules/communication/communication.admin.controller.php +++ b/modules/communication/communication.admin.controller.php @@ -19,11 +19,13 @@ **/ function procCommunicationAdminInsertConfig() { // get the default information - $args = Context::gets('skin','colorset','editor_skin','editor_colorset'); + $args = Context::gets('skin','colorset','editor_skin','editor_colorset', 'mskin'); + + if(!$args->skin) $args->skin = 'default'; + if(!$args->colorset) $args->colorset = 'white'; + if(!$args->editor_skin) $args->editor_skin = 'default'; + if(!$args->mskin) $args->mskin = 'default'; - if(!$args->skin) $args->skin = "default"; - if(!$args->colorset) $args->colorset = "white"; - if(!$args->editor_skin) $args->editor_skin = "default"; // create the module module Controller object $oModuleController = &getController('module'); $output = $oModuleController->insertModuleConfig('communication',$args); diff --git a/modules/communication/communication.admin.view.php b/modules/communication/communication.admin.view.php index 4129fc9d7..75720f418 100644 --- a/modules/communication/communication.admin.view.php +++ b/modules/communication/communication.admin.view.php @@ -28,10 +28,14 @@ Context::set('editor_skin_list', $oEditorModel->getEditorSkinList() ); // get a list of communication skins Context::set('communication_skin_list', $oModuleModel->getSkins($this->module_path) ); + // get a list of communication skins + Context::set('communication_mobile_skin_list', $oModuleModel->getSkins($this->module_path, 'm.skins') ); + $security = new Security(); $security->encodeHTML('communication_config..'); $security->encodeHTML('editor_skin_list..'); - $security->encodeHTML('communication_skin_list..title'); + $security->encodeHTML('communication_skin_list..title'); + $security->encodeHTML('communication_mobile_skin_list..title'); // specify a template $this->setTemplatePath($this->module_path.'tpl'); diff --git a/modules/communication/communication.mobile.php b/modules/communication/communication.mobile.php new file mode 100644 index 000000000..eeb13ede6 --- /dev/null +++ b/modules/communication/communication.mobile.php @@ -0,0 +1,68 @@ +communication_config = $oCommunicationModel->getConfig(); + $skin = $this->communication_config->mskin; + + Context::set('communication_config', $this->communication_config); + + $tpl_path = sprintf('%sm.skins/%s', $this->module_path, $skin); + $this->setTemplatePath($tpl_path); + } + + function dispCommunicationMessages() + { + // Error appears if not logged-in + if(!Context::get('is_logged')) + { + return $this->stop('msg_not_logged'); + } + + $logged_info = Context::get('logged_info'); + if(!array_key_exists('dispCommunicationMessages', $logged_info->menu_list)) + { + return $this->stop('msg_invalid_request'); + } + + // Set the variables + $message_srl = Context::get('message_srl'); + $message_type = 'R'; + Context::set('message_type', $message_type); + + $oCommunicationModel = &getModel('communication'); + // extract contents if message_srl exists + if($message_srl) + { + $templateFile = 'read_message'; + $columnList = array('message_srl', 'sender_srl', 'receiver_srl', 'message_type', 'title', 'content', 'readed', 'regdate'); + $message = $oCommunicationModel->getSelectedMessage($message_srl, $columnList); + if($message->message_srl == $message_srl && ($message->receiver_srl == $logged_info->member_srl) ) + { + stripEmbedTagForAdmin($message->content, $message->sender_srl); + Context::set('message', $message); + } + } + else + { + $templateFile = 'messages'; + } + // Extract a list + $columnList = array('message_srl', 'readed', 'title', 'member.member_srl', 'member.nick_name', 'message.regdate', 'readed_date'); + $output = $oCommunicationModel->getMessages($message_type, $columnList); + + // set a template file + Context::set('total_count', $output->total_count); + Context::set('total_page', $output->total_page); + Context::set('page', $output->page); + Context::set('message_list', $output->data); + Context::set('page_navigation', $output->page_navigation); + + $oSecurity = new Security(); + $oSecurity->encodeHTML('message_list..nick_name'); + + $this->setTemplateFile($templateFile); + } +} diff --git a/modules/communication/communication.model.php b/modules/communication/communication.model.php index e603044ec..b4ee804ca 100644 --- a/modules/communication/communication.model.php +++ b/modules/communication/communication.model.php @@ -25,6 +25,7 @@ if(!$communication_config->skin) $communication_config->skin = 'default'; if(!$communication_config->colorset) $communication_config->colorset = 'white'; if(!$communication_config->editor_skin) $communication_config->editor_skin = 'default'; + if(!$communication_config->mskin) $communication_config->mskin = 'default'; return $communication_config; } diff --git a/modules/communication/m.skins/default/css/mcommunication.css b/modules/communication/m.skins/default/css/mcommunication.css new file mode 100644 index 000000000..e236dcad9 --- /dev/null +++ b/modules/communication/m.skins/default/css/mcommunication.css @@ -0,0 +1,127 @@ +@charset "utf-8"; +/* Mobile XE (/modules/board/m.skins/default) */ +body{margin:0;background:#fff;color:#000;word-wrap:break-word} +body,input,textarea,select,button,table{font-family:Tahoma,Geneva,sans-serif} +img{border:0} +em{font-style:normal} +form{margin:0;padding:0} +fieldset{margin:0;padding:0;border:0} +textarea{resize:vertical} +input[type=checkbox], +input[type=radio]{width:13px;height:13px;margin:0;padding:0} +/* Common */ +.fl{float:left} +.fr{float:right} +/* Background */ +.rp li li, +.rp .answer, +.rp .btn, +/* Body */ +.bd{background:#f8f8f8;padding:1px 0} +.co{margin:10px;line-height:1.4;font-size:14px;color:#333} +.co:after{content:"";display:block;clear:both;zoom:1} +/* Hx */ +.hx{position:relative;border-bottom:1px solid #ccc8be;padding:8px 10px;margin:0} +.hx:after{content:"";margin:0 -10px;position:relative;top:10px;display:block;clear:both;height:1px;background:#fff} +.hx.h2{background:#e5e5e5;text-shadow:1px 1px 0 #fff;padding-right:40px} +.hx.h2 em{font-size:12px;color:#6352d2} +.hx.h3{background:#868686;color:#fff} +.hx.h3 em{font-size:12px} +.hx h2, .hx h3{margin:0 10px 0 0;display:inline} +.hx h2{font-size:16px;line-height:1.4} +.hx h3{font-size:14px} +.hx a{color:#000} +.hx .ex{font-size:12px} +.hx .tg{position:absolute;top:0;left:0;width:100%;height:100%;margin:0;padding:0;overflow:visible;border:0;cursor:pointer;opacity:0;background:none} +.hx .ca{font-size:12px;text-decoration:underline;color:#333} +.hx .ca:after{content:"";display:inline-block;position:relative;left:4px;width:0;height:0;border:4px solid;border-color:transparent;border-left-color:#8d7de1;margin:0 -8px 0 0} +.hx .write{position:absolute;top:8px;right:10px;background-position:0 0;display:inline-block;width:28px;height:27px;font-size:0;overflow:hidden;text-indent:-28px} +/* Global Navigation */ +.gn{margin:0;padding:0;list-style:none;background:#d3d1cc;text-shadow:1px 1px 0 #fff} +.gn li{background:#c3c3c3;border:1px solid #a3a09a;border-left:0;border-right:0;margin:0 0 -1px 0} +.gn li li{background:#f8f8f8;border:1px solid #c9c9c9;border-left:0;border-right:0} +.gn li li li{background:#e8e8e8} +.gn ul{margin:0 0 -1px 0;padding:0;list-style:none} +.gn a{position:relative;text-decoration:none;display:block;padding:10px;font-size:16px} +.gn li a{color:#333} +.gn li a:after{position:absolute;top:7px;right:10px;content:"›";color:#888;font-size:18px;font-weight:bold;font-family:Verdana, Geneva, sans-serif} +.gn li li a:before{content:"";display:inline-block;width:6px;height:6px;border:1px dotted #666;border-top:0;border-right:0;margin:0 4px 0 0;vertical-align:top} +.gn li li a{padding-left:15px} +.gn li li li a{padding-left:30px} +.gn li li li li a{padding-left:45px} +.gn li li li li li a{padding-left:60px} +.gn em{color:#6352d2;font-size:12px} +/* List */ +.lt{margin:0;padding:0;list-style:none;background:#f8f8f8;font-size:14px} +.lt li{border-bottom:1px solid #ccc8be;overflow:hidden} +.lt .read{background:url(../img/read.png) no-repeat 10px center;padding:5px 5px 5px 52px} +.lt .unread{background:url(../img/unread.png) no-repeat 10px center;padding:5px 5px 5px 52px} +.lt a{float:left;display:inline-block;text-decoration:none;color:#000;padding:5px} +.lt .memberInfo{float:right;padding:5px 5px 5px 34px;background:url(../img/member.png) no-repeat 10px center;} +.lt .notice{display:inline-block;background:#a06acd;font-weight:bold;color:#fff;font-size:12px;padding:1px;border-radius:2px;-moz-border-radius:2px;-webkit-border-radius:2px} +.lt .title{display:block;margin:0 0 5px 0} +.lt .title strong{font-size:14px;font-weight:bold} +.lt .title em{font-size:12px;color:#333;color:#6352d2} +.lt .auth{display:block;font-size:12px} +.lt .auth .time{padding:0 5px;border-left:1px solid #bfbfbf} +/* Toggle Open */ +.tgo{display:none;background:#f8f8f8;color:#333;margin:0;padding:0;list-style:none;font-size:14px;color:#333} +.tgo.open{display:block} +.file{margin:0;padding:0;list-style:none} +.file li{border-top:1px solid #c9c9c9;border-bottom:1px solid #c9c9c9;margin:0 0 -1px 0} +.file a{text-decoration:none;display:block;padding:10px 0 10px 10px;color:#333} +.file .size{font-size:12px;border-left:1px solid #bfbfbf;margin:0 5px;padding:0 10px;color:#666} +.rp ul{margin:10px 0 -11px -10px;padding:0;list-style:none} +.rp li{border-top:1px solid #c9c9c9;border-bottom:1px solid #c9c9c9;padding:10px 0 10px 10px;margin:0 0 -1px 0} +.rp .xe_content, .rp p{margin:0 0 5px 0} +.rp ul ul{margin-left:-25px} +.rp ul ul ul{margin-left:-40px} +.rp ul ul ul ul{margin-left:-55px} +.rp ul ul ul ul ul{margin-left:-70px} +.rp ul ul ul ul ul ul{margin-left:-85px} +.rp li li, +.rp .answer{padding-left:25px;background-position:10px -145px} +.rp li li li{padding-left:40px;background-position:25px -145px} +.rp li li li li{padding-left:55px;background-position:40px -145px} +.rp li li li li li{padding-left:70px;background-position:55px -145px} +.rp li li li li li li{padding-left:85px;background-position:70px -145px} +.rp .btn{display:inline-block;width:15px;height:15px;overflow:hidden;vertical-align:middle;text-indent:15px} +.rp .btn.ed{background-position:0 -32px} +.rp .btn.de{background-position:-15px -32px} +.rp .btn.re{background-position:-30px -32px} +.rp .auth{font-size:12px} +.rp .auth .time{padding:0 5px;border-left:1px solid #bfbfbf} +/* Form Field */ +.origin{padding:10px 0;margin:0 10px;font-size:14px} +.ff{margin:0;padding:10px 0} +.ff ul{margin:0 10px 10px 10px;padding:10px 0 0 0;list-style:none} +.ff li{margin:0 0 5px 0;padding:0} +.ff label{margin-right:10px} +.ff label+input[type=text], +.ff label+input[type=password], +.ff label+textarea, +.ff label+select{display:block;width:96%;font-size:14px;margin:0 0 5px 0} +.ff label+input[type=text], +.ff label+input[type=password], +.ff label+textarea{padding:5px} +/* Button Area */ +.bna{text-align:center;padding:0 10px;margin:10px 0;zoom:1} +.bna:after{content:"";display:block;clear:both} +.bn{display:inline-block;line-height:26px !important;padding:0 10px;font-size:12px;font-weight:bold;border:1px solid;text-decoration:none;border-radius:5px;-moz-border-radius:5px;-webkit-border-radius:5px;cursor:pointer;vertical-align:middle} +.bn[type=submit], +.bn[type=button]{height:28px} +.bn[href]{height:26px} +.bn.dark{border-color:#666;background:#777 -webkit-gradient(linear,0% 0%,0% 100%,from(#7e7c78),to(#5c5b58));background:#777 -moz-linear-gradient(top,#7e7c78,#5c5b58);background-color:#777;color:#fff;box-shadow:0 0 1px #fff inset;-moz-box-shadow:0 0 1px #fff inset;-webkit-box-shadow:0 0 1px #fff inset} +.bn.white{border-color:#b5b5b5;background:#1b1b1b -webkit-gradient(linear,0% 0%,0% 100%,from(#fff),to(#f6f6f6),color-stop(0.5,#f0f0f0),color-stop(0.5,#e4e4e4));background:#1b1b1b -moz-linear-gradient(top,#fff,#e4e4e4);background-color:#fff;color:#000} +/* Pagination */ +.pn{font-size:12px;text-align:center;background:#f2f0ec;padding:15px 0;border-top:1px solid #fff} +.pn a{color:#333;text-decoration:none} +.pn strong{margin:0 10px} +.pn .prev:before{content:"";display:inline-block;width:0;height:0;margin:0 4px 0 0;border:4px solid;border-color:transparent;border-right-color:#999} +.pn .next:after{content:"";display:inline-block;width:0;height:0;margin:0 0 0 4px;border:4px solid;border-color:transparent;border-left-color:#999} +/* Search */ +.sh{border:1px solid #bfbfbf;border-left:0;border-right:0;background:#e8e8e8;padding:10px;text-align:center} +.sh *{vertical-align:top} +.sh select{width:80px;font-size:14px;margin:0 0 5px 0} +.sh input[type=text]{width:160px;margin:0;font-size:14px;padding:5px} +.sh .shbn{width:28px;height:28px;border:1px solid #666;background:#777 url(../img/mx.png) no-repeat 5px -60px;box-shadow:0 0 1px #fff inset;-moz-box-shadow:0 0 1px #fff inset;-webkit-box-shadow:0 0 1px #fff inset;border-radius:5px;-moz-border-radius:5px;-webkit-border-radius:5px;cursor:pointer} diff --git a/modules/communication/m.skins/default/img/member.png b/modules/communication/m.skins/default/img/member.png new file mode 100644 index 0000000000000000000000000000000000000000..03263ff69f16d2600ccfe1d4e638919c1c0ec571 GIT binary patch literal 1043 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 literal 0 HcmV?d00001 diff --git a/modules/communication/m.skins/default/img/unread.png b/modules/communication/m.skins/default/img/unread.png new file mode 100644 index 0000000000000000000000000000000000000000..0c7a31b478277a71c55789fcd83597655b3bd90f GIT binary patch literal 1069 zcmV+|1k(G7P){-N`h5Sn^qCgpoa18-1s{2Q5}^I?`sW`x`1cGfeNHejU1I*E33#MLwQs)t8trcL zS>U7oEq;IVXTwPK*BX6KKmXzkZ+`m&UwwIjM!ou^@afFP)!PAHzIws0{u**20H$W3 zb=bt;|6HTjX~U|R`-hUYF=K46XC2SO=yrcHPcA?KM%&Y=yltuKOjP~AA!&2&I;Z{#W0qf!XhmL7hAFrA%=*=`DY!} zt5#V7$UkK@ki(lz>3PmrZFruhP>KSIQ{?HW(ZJ1c49EAEE$iN7DixB#cK&Z>I~Y#h zQ(ZM-==z53G!sHgDFwXf%*L?HWjbyKV_ckd(P&uP0btu{_%I{*_&rVz4q#~dmTk7G zJ5hfMFMQc`S(J{$dL7sO5gf;dq9}zaB7lv10zMc{D0&1JIp1~h4FTAhg8S(>AQAuG zj9@z+6bgMl1$g!OZUt`=+%)uZo4Z~{Vr!JmFpjBi7U*=3@%DOz`P?PXi&0Q8o!aPA zs(QUP5*{OnqEdTV1X2|GK-sw@Uc~SsALnNs%pDiHu23r-;%Mfg-EPWtlgS;0-iA@p zB>42SC8H&VuIgo*XSofL2}rjU#Aysa4kX-mJ$POKokGhLRihO&JZ} z59ywb%kxty!qPc(Wm81D>Y#iX0c`aFF%q8SaF^Ps=LS^0%W~H>m87fE<7HKEZUf&7 z<-JSM(X3=wxjJeJdzIE}{+;IsJw(XIKuCyg=<_x}eTEo2v zEXea92_-!6BX|T?N)AqZVN5-shA3G0tZbZ*0>zZKe zm#8KdyRI+c7rib5H)FCzRAoghTZq`+%@BrZ-lPJdc9~q9}o3YEN<; zOA@m0C(_ZuXd=`rnjg8pQZBx`y6$7KSUmmDqz{0qsw|G9Ac(wQ*yZJAjc#|vsq9%# n<#bA;IbolE8~*PF{3pNwMSX~YE$^hd00000NkvXXu0mjf$SL&^ literal 0 HcmV?d00001 diff --git a/modules/communication/m.skins/default/messages.html b/modules/communication/m.skins/default/messages.html new file mode 100644 index 000000000..485a3105f --- /dev/null +++ b/modules/communication/m.skins/default/messages.html @@ -0,0 +1,17 @@ + +
+
+

{$lang->message_box['R']}

+
+
    +
  • + {$val->title} + {$val->nick_name} ({zdate($val->regdate,"Y-m-d")}) +
  • +
+
+ + {$page} / {$page_navigation->last_page} + +
+
diff --git a/modules/communication/m.skins/default/read_message.html b/modules/communication/m.skins/default/read_message.html new file mode 100644 index 000000000..26f5a2bd4 --- /dev/null +++ b/modules/communication/m.skins/default/read_message.html @@ -0,0 +1,12 @@ + + +
+

{$message->title}

{$message->nick_name} | {zdate($message->regdate, "Y.m.d H:i")} +
+
+
{$message->content}
+
+ + diff --git a/modules/communication/m.skins/default/skin.xml b/modules/communication/m.skins/default/skin.xml new file mode 100644 index 000000000..cf4f2addc --- /dev/null +++ b/modules/communication/m.skins/default/skin.xml @@ -0,0 +1,18 @@ + + + XE 커뮤니케이션 모바일 기본 스킨 + + XE 커뮤니케이션 모바일 기본 스킨입니다. + NHN (developers@xpressengine.com) + + 0.1 + 2012-08-07 + + + NHN + NHN + NHN + NHN + + + diff --git a/modules/communication/tpl/index.html b/modules/communication/tpl/index.html index 372764b57..d5a403f96 100644 --- a/modules/communication/tpl/index.html +++ b/modules/communication/tpl/index.html @@ -39,6 +39,14 @@ {$lang->colorset}
+ + {$lang->mobile_skin} + + + +