PageRenderTime 60ms CodeModel.GetById 25ms RepoModel.GetById 0ms app.codeStats 0ms

/source/plugin/qqconnect/template/module.htm

https://github.com/kuaileshike/upload
HTML | 768 lines | 635 code | 30 blank | 103 comment | 0 complexity | cd5900c3f5af9d65c8861ae592f9aef4 MD5 | raw file
  1. {eval
  2. function tpl_global_login_extra() {
  3. global $_G;
  4. }
  5. <!--{block return}-->
  6. <div class="fastlg_fm y" style="margin-right: 10px; padding-right: 10px">
  7. <p><a href="$_G[connect][login_url]&statfrom=login_simple"><img src="{IMGDIR}/qq_login.gif" class="vm" alt="{lang qqconnect:connect_header_login}" /></a></p>
  8. <p class="hm xg1" style="padding-top: 2px;">{lang qqconnect:connect_header_login_tip}</p>
  9. </div>
  10. <!--{/block}-->
  11. <!--{eval return $return;}-->
  12. {eval
  13. }
  14. function tpl_global_usernav_extra1() {
  15. global $_G;
  16. }
  17. <!--{block return}-->
  18. <!--{if $_G['connectguest']}-->
  19. <span class="pipe">|</span><a href="member.php?mod=connect" target="_blank" title="{lang qqconnect:connect_member_register_button_tip}">{lang qqconnect:connect_register_profile}</a><span class="pipe">|</span><a href="member.php?mod=connect&ac=bind" target="_blank" title="{lang qqconnect:connect_member_loginbind_button_tip}">{lang qqconnect:connect_register_bind}</a>
  20. <!--{else}-->
  21. <span class="pipe">|</span><a href="connect.php?mod=config" target="_blank"><img src="{IMGDIR}/qq_bind_small.gif" class="qq_bind" align="absmiddle" alt="{lang qqconnect:connect_config}" /></a>
  22. <!--{/if}-->
  23. <!--{/block}-->
  24. <!--{eval return $return;}-->
  25. {eval
  26. }
  27. function tpl_global_footer($loadJs) {
  28. }
  29. <!--{block return}-->
  30. <!--{if $loadJs['qsharejs']}-->
  31. <script type="text/javascript" src="{$loadJs['qsharejs']['jsurl']}"></script><script type="text/javascript">_share_tencent_weibo(null, {$loadJs['qsharejs']['func']}("t_f", null, "td"), "{$_G['siteurl']}", "{$loadJs['qsharejs']['appkey']}", "{$loadJs['qsharejs']['sitename']}");</script>
  32. <!--{/if}-->
  33. <!--{if $loadJs['feedjs']}-->
  34. <script type="text/javascript">_attachEvent(window, 'load', function () { appendscript('{$loadJs[feedjs][jsurl]}', '', 1, 'utf-8') }, document);</script>
  35. <!--{/if}-->
  36. <!--{if $loadJs['cookieloginjs']}-->
  37. <script type="text/javascript">var cookieLogin = Ajax("TEXT");cookieLogin.get("{$loadJs['cookieloginjs']['jsurl']}", function() {});</script>
  38. <!--{/if}-->
  39. <!--{if $loadJs['guestloginjs']}-->
  40. <script type="text/javascript">_attachEvent(window, 'load', function () { appendscript('{$loadJs[guestloginjs][jsurl]}', '', 1, 'utf-8') }, document);</script>
  41. <!--{/if}-->
  42. <!--{if $loadJs['syncpostjs']}-->
  43. <script type="text/javascript">_attachEvent(window, 'load', function () { appendscript('{$loadJs[syncpostjs][jsurl]}', '', 1, 'utf-8') }, document);</script>
  44. <!--{/if}-->
  45. <!--{/block}-->
  46. <!--{eval return $return;}-->
  47. {eval
  48. }
  49. function tpl_login_bar() {
  50. global $_G;
  51. }
  52. <!--{block return}-->
  53. <!--{if !$_G['connectguest']}-->
  54. <a href="$_G[connect][login_url]&statfrom=login" target="_top" rel="nofollow"><img src="{IMGDIR}/qq_login.gif" class="vm" /></a>
  55. <!--{/if}-->
  56. <!--{/block}-->
  57. <!--{eval return $return;}-->
  58. {eval
  59. }
  60. function tpl_index_status_extra() {
  61. global $_G;
  62. }
  63. <!--{block return}-->
  64. <iframe id="connectlike" allowtransparency="true" scrolling="no" border="0" width="280" height="25" frameborder="0"></iframe>
  65. <script type="text/javascript">_attachEvent(window, 'load', function () { $('connectlike').src = 'api/connect/like.php';}, document);</script>
  66. <!--{/block}-->
  67. <!--{eval return $return;}-->
  68. {eval
  69. }
  70. function tpl_sync_method($allowconnectfeed, $allowconnectt, $cssextra = '') {
  71. global $_G;
  72. }
  73. <!--{block return}-->
  74. <!--{if $allowconnectfeed || $allowconnectt}-->
  75. <script type="text/javascript">
  76. var _allow_qq = {if $allowconnectfeed}true{else}false{/if};
  77. var _allow_t = {if $allowconnectt}true{else}false{/if};
  78. var _syn_qq = {if intval($_G['cookie']['connect_not_sync_feed'])}false{else}{if $_G['member']['conisbind'] && $_G['member']['conispublishfeed']}true{else}false{/if}{/if};
  79. var _syn_t = {if intval($_G['cookie']['connect_not_sync_t'])}false{else}{if $_G['member']['conisbind'] && $_G['member']['conispublisht']}true{else}false{/if}{/if};
  80. var _is_oauth_user = {if $_G['member']['conisbind']}true{else}false{/if};
  81. var _is_feed_auth = {if $_G['member']['conuinsecret'] && $_G['member']['is_feed']}true{else}false{/if};
  82. var _is_token_outofdate = {if $_G['member']['conuinsecret']}false{else}true{/if};
  83. function connect_post_init() {
  84. if (_allow_qq && _syn_qq) {
  85. if (_is_feed_auth && !_is_token_outofdate) {
  86. $('connectPost_synQQ').className = 'syn_qq_check';
  87. $('connectPost_synQQ').title = '{lang qqconnect:connect_post_sync_qzone1}';
  88. $('connect_publish_feed').value = 1;
  89. } else {
  90. $('connectPost_synQQ').className = 'syn_qq';
  91. $('connectPost_synQQ').title = '{lang qqconnect:connect_post_sync_qzone2}';
  92. $('connect_publish_feed').value = 0;
  93. }
  94. }
  95. if (_allow_t && _syn_t) {
  96. if (_is_feed_auth && !_is_token_outofdate) {
  97. $('connectPost_synT').className = 'syn_tqq_check';
  98. $('connectPost_synT').title = '{lang qqconnect:connect_post_sync_t1}';
  99. $('connect_publish_t').value = 1;
  100. } else {
  101. $('connectPost_synT').className = 'syn_tqq';
  102. $('connectPost_synT').title = '{lang qqconnect:connect_post_sync_t2}';
  103. $('connect_publish_t').value = 0;
  104. }
  105. }
  106. if (_allow_qq) {
  107. $('connectPost_synQQ').onclick = function () {
  108. connect_syn_option_toggle(this);
  109. }
  110. }
  111. if (_allow_t) {
  112. $('connectPost_synT').onclick = function () {
  113. connect_syn_option_toggle(this);
  114. }
  115. }
  116. if (getcookie('connect_synpost_tip')) {
  117. connect_post_tip();
  118. }
  119. }
  120. function connect_syn_option_toggle(opt) {
  121. if (_is_feed_auth && !_is_token_outofdate) {
  122. if ($(opt.getAttribute('rel')).value == 1) {
  123. opt.className = opt.className.replace('_check', '');
  124. opt.title = opt.title.replace('{lang qqconnect:connect_post_sync_yes}', '{lang qqconnect:connect_post_sync_no}');
  125. $(opt.getAttribute('rel')).value = 0;
  126. } else {
  127. $(opt.getAttribute('rel')).value = 1;
  128. opt.className += '_check';
  129. opt.title = opt.title.replace('{lang qqconnect:connect_post_sync_no}', '{lang qqconnect:connect_post_sync_yes}');
  130. }
  131. } else {
  132. var _auth_text = '{lang qqconnect:connect_post_sync_unauthorized_desc}';
  133. if (_is_token_outofdate) {
  134. _auth_text = '{lang qqconnect:connect_access_token_out_of_date_feed}';
  135. var _button = '{lang qqconnect:connect_access_token_outofdate_button}';
  136. showDialog(_auth_text, 'notice', null, null, 0, null, null, _button);
  137. return;
  138. } else if (!_is_oauth_user) {
  139. _auth_text = '{lang qqconnect:connect_post_sync_not_bind_desc}';
  140. }
  141. showDialog(_auth_text, 'notice', '{lang qqconnect:connect_post_sync_unauthorized_title}', 'connect_goto_setting()', 0, null, null, '{lang qqconnect:connect_modify_authorization_button}');
  142. }
  143. }
  144. function connect_post_tip() {
  145. if ($('fastpostform')) {
  146. return;
  147. }
  148. if (_is_token_outofdate) {
  149. if ($('synnotice')) {
  150. $('synnotice').style.display = 'none';
  151. }
  152. return;
  153. }
  154. var r = document.getElementById('rstnotice');
  155. var c = document.createElement('div');
  156. c.setAttribute('id', 'synnotice');
  157. c.setAttribute('class', 'ntc_l bbs');
  158. if(BROWSER.ie) {
  159. c.id = 'synnotice';
  160. c.className = 'ntc_l bbs';
  161. }
  162. c.style.display = 'block';
  163. r.parentNode.insertBefore(c, r.nextSibling);
  164. c.innerHTML = '<a href="javascript:void(0);" title="{lang qqconnect:connect_post_sync_tip_close}" class="d y" onclick="connect_syn_tip_hide();">close</a>{lang qqconnect:connect_post_sync_tip}&nbsp;&nbsp;<a class="xi2" href="javascript:void(0);" onclick="connect_syn_cancel();" title="{lang qqconnect:connect_post_sync_cancel_tip}"><strong>{lang qqconnect:connect_post_sync_cancel}</strong></a>';
  165. }
  166. function connect_syn_tip_hide() {
  167. setcookie('connect_synpost_tip', '', '-1');
  168. $('synnotice').style.display = 'none';
  169. }
  170. function connect_syn_cancel() {
  171. ajaxget('{$_G['siteurl']}connect.php?mod=config&op=synconfig', '');
  172. $('connectPost_synQQ').className = 'syn_qq';
  173. $('connectPost_synQQ').title = '{lang qqconnect:connect_post_sync_qzone2}';
  174. $('connect_publish_feed').value = 0;
  175. $('connectPost_synT').className = 'syn_tqq';
  176. $('connectPost_synT').title = '{lang qqconnect:connect_post_sync_t2}';
  177. $('connect_publish_t').value = 0;
  178. $('synnotice').style.display = 'none';
  179. }
  180. function connect_goto_setting() {
  181. var _url = "{$_G['siteurl']}home.php?mod=spacecp&ac=plugin&id=qqconnect:spacecp";
  182. hideMenu('fwin_dialog', 'dialog')
  183. var _newWindow = window.open(_url, 'newWindow');
  184. _newWindow.focus();
  185. }
  186. _attachEvent(window, 'load', function(){
  187. connect_post_init();
  188. });
  189. </script>
  190. <!--{if $allowconnectfeed}-->
  191. <a title="{lang qqconnect:connect_post_sync_qzone2}" class="syn_qq" href="javascript:void(0);" id="connectPost_synQQ" rel="connect_publish_feed">{lang qqconnect:connect_viewthread_share_to_qzone}</a>
  192. <input type="hidden" name="connect_publish_feed" id="connect_publish_feed" value="0" />
  193. <!--{/if}-->
  194. <!--{if $allowconnectt}-->
  195. <a title="{lang qqconnect:connect_post_sync_t2}" class="syn_tqq" href="javascript:void(0);" id="connectPost_synT" rel="connect_publish_t">{lang qqconnect:connect_viewthread_share_to_t}</a>
  196. <input type="hidden" name="connect_publish_t" id="connect_publish_t" value="0" />
  197. <!--{/if}-->
  198. <!--{/if}-->
  199. <!--{/block}-->
  200. <!--{eval return $return;}-->
  201. {eval
  202. }
  203. function tpl_infloat_sync_method($allowconnectfeed, $allowconnectt) {
  204. global $_G;
  205. }
  206. <!--{block return}-->
  207. <!--{if $allowconnectfeed}-->
  208. <a title="{lang qqconnect:connect_post_sync_qzone2}" class="syn_qq" href="javascript:void(0);" id="connectPost_synQQ_infloat" rel="connect_publish_feed_infloat">{lang qqconnect:connect_viewthread_share_to_qzone}</a>
  209. <input type="hidden" name="connect_publish_feed" id="connect_publish_feed_infloat" value="0" />
  210. <!--{/if}-->
  211. <!--{if $allowconnectt}-->
  212. <a title="{lang qqconnect:connect_post_sync_t2}" class="syn_tqq" href="javascript:void(0);" id="connectPost_synT_infloat" rel="connect_publish_t_infloat">{lang qqconnect:connect_viewthread_share_to_t}</a>
  213. <input type="hidden" name="connect_publish_t" id="connect_publish_t_infloat" value="0" />
  214. <!--{/if}-->
  215. <!--{if $allowconnectfeed || $allowconnectt}-->
  216. <script type="text/javascript" reload="1">
  217. var _allow_qq_infloat = {if $allowconnectfeed}true{else}false{/if};
  218. var _allow_t_infloat = {if $allowconnectt}true{else}false{/if};
  219. var _syn_qq_infloat = {if intval($_G['cookie']['connect_not_sync_feed'])}false{else}{if $_G['member']['conisbind'] && $_G['member']['conispublishfeed']}true{else}false{/if}{/if};
  220. var _syn_t_infloat = {if intval($_G['cookie']['connect_not_sync_t'])}false{else}{if $_G['member']['conisbind'] && $_G['member']['conispublisht']}true{else}false{/if}{/if};
  221. var _is_oauth_user_infloat = {if $_G['member']['conisbind']}true{else}false{/if};
  222. var _is_feed_auth_infloat = {if $_G['member']['conuinsecret'] && $_G['member']['is_feed']}true{else}false{/if};
  223. var _is_token_outofdate = {if $_G['member']['conuinsecret']}false{else}true{/if};
  224. function connect_post_init_infloat() {
  225. if (_allow_qq_infloat && _syn_qq_infloat) {
  226. if (_is_feed_auth_infloat && !_is_token_outofdate) {
  227. $('connectPost_synQQ_infloat').className = 'syn_qq_check';
  228. $('connectPost_synQQ_infloat').title = '{lang qqconnect:connect_post_sync_qzone1}';
  229. $('connect_publish_feed_infloat').value = 1;
  230. } else {
  231. $('connectPost_synQQ_infloat').className = 'syn_qq';
  232. $('connectPost_synQQ_infloat').title = '{lang qqconnect:connect_post_sync_qzone2}';
  233. $('connect_publish_feed_infloat').value = 0;
  234. }
  235. }
  236. if (_allow_t_infloat && _syn_t_infloat) {
  237. if (_is_feed_auth_infloat && !_is_token_outofdate) {
  238. $('connectPost_synT_infloat').className = 'syn_tqq_check';
  239. $('connectPost_synT_infloat').title = '{lang qqconnect:connect_post_sync_t1}';
  240. $('connect_publish_t_infloat').value = 1;
  241. } else {
  242. $('connectPost_synT_infloat').className = 'syn_tqq';
  243. $('connectPost_synT_infloat').title = '{lang qqconnect:connect_post_sync_t2}';
  244. $('connect_publish_t_infloat').value = 0;
  245. }
  246. }
  247. if (_allow_qq_infloat) {
  248. $('connectPost_synQQ_infloat').onclick = function () {
  249. connect_syn_option_toggle_infloat(this);
  250. }
  251. }
  252. if (_allow_t_infloat) {
  253. $('connectPost_synT_infloat').onclick = function () {
  254. connect_syn_option_toggle_infloat(this);
  255. }
  256. }
  257. if (getcookie('connect_synpost_tip')) {
  258. connect_post_tip_infloat();
  259. }
  260. }
  261. function connect_syn_option_toggle_infloat(opt) {
  262. if (_is_feed_auth_infloat && !_is_token_outofdate) {
  263. if ($(opt.getAttribute('rel')).value == 1) {
  264. opt.className = opt.className.replace('_check', '');
  265. opt.title = opt.title.replace('{lang qqconnect:connect_post_sync_yes}', '{lang qqconnect:connect_post_sync_no}');
  266. $(opt.getAttribute('rel')).value = 0;
  267. } else {
  268. $(opt.getAttribute('rel')).value = 1;
  269. opt.className += '_check';
  270. opt.title = opt.title.replace('{lang qqconnect:connect_post_sync_no}', '{lang qqconnect:connect_post_sync_yes}');
  271. }
  272. } else {
  273. var _auth_text = '{lang qqconnect:connect_post_sync_unauthorized_desc}';
  274. if (_is_token_outofdate) {
  275. _auth_text = '{lang qqconnect:connect_access_token_out_of_date_feed}';
  276. var _button = '{lang qqconnect:connect_access_token_outofdate_button}';
  277. showDialog(_auth_text, 'notice', null, null, 0, null, null, _button);
  278. return;
  279. } else if (!_is_oauth_user_infloat) {
  280. _auth_text = '{lang qqconnect:connect_post_sync_not_bind_desc}';
  281. }
  282. showDialog(_auth_text, 'notice', '{lang qqconnect:connect_post_sync_unauthorized_title}', 'connect_goto_setting_infloat()', 0, null, null, '{lang qqconnect:connect_modify_authorization_button}');
  283. }
  284. }
  285. function connect_post_tip_infloat() {
  286. if ($('fastpostform')) {
  287. return;
  288. }
  289. var r = document.getElementById('rstnotice');
  290. var c = document.createElement('div');
  291. c.setAttribute('id', 'synnotice');
  292. c.setAttribute('class', 'ntc_l bbs');
  293. if(BROWSER.ie) {
  294. c.id = 'synnotice';
  295. c.className = 'ntc_l bbs';
  296. }
  297. c.style.display = 'block';
  298. r.parentNode.insertBefore(c, r.nextSibling);
  299. c.innerHTML = '<a href="javascript:void(0);" title="{lang qqconnect:connect_post_sync_tip_close}" class="d y" onclick="connect_syn_tip_hide_infloat();">close</a>{lang qqconnect:connect_post_sync_tip}&nbsp;&nbsp;<a class="xi2" href="javascript:void(0);" onclick="connect_syn_cancel_infloat();" title="{lang qqconnect:connect_post_sync_cancel_tip}"><strong>{lang qqconnect:connect_post_sync_cancel}</strong></a>';
  300. }
  301. function connect_syn_tip_hide_infloat() {
  302. setcookie('connect_synpost_tip', '', '-1');
  303. $('synnotice').style.display = 'none';
  304. }
  305. function connect_syn_cancel_infloat() {
  306. ajaxget('{$_G['siteurl']}connect.php?mod=config&op=synconfig', '');
  307. $('connectPost_synQQ_infloat').className = 'syn_qq';
  308. $('connectPost_synQQ_infloat').title = '{lang qqconnect:connect_post_sync_qzone2}';
  309. $('connect_publish_feed_infloat').value = 0;
  310. $('connectPost_synT_infloat').className = 'syn_tqq';
  311. $('connectPost_synT_infloat').title = '{lang qqconnect:connect_post_sync_t2}';
  312. $('connect_publish_t_infloat').value = 0;
  313. $('synnotice').style.display = 'none';
  314. }
  315. function connect_goto_setting_infloat() {
  316. var _url = "{$_G['siteurl']}home.php?mod=spacecp&ac=plugin&id=qqconnect:spacecp";
  317. hideMenu('fwin_dialog', 'dialog')
  318. var _newWindow = window.open(_url, 'newWindow');
  319. _newWindow.focus();
  320. }
  321. connect_post_init_infloat();
  322. </script>
  323. <!--{/if}-->
  324. <!--{/block}-->
  325. <!--{eval return $return;}-->
  326. {eval
  327. }
  328. function tpl_viewthread_share_method($jsurl) {
  329. global $_G;
  330. if (!$_G['setting']['connect']['allow']) return;
  331. $connect_thread_subject = addslashes(strip_tags($_G['thread']['subject']));
  332. }
  333. <!--{block return}-->
  334. <!--{if $_G['member']['conisbind'] && $_G['member']['conuinsecret']}-->
  335. <a href="javascript:void(0);" ref="{$_G[connect][qzone_share_url]}" id="k_qqshare" title="{lang qqconnect:connect_viewthread_share_to_qzone}"><i><img src="{IMGDIR}/qzone.gif" alt="{lang qqconnect:connect_viewthread_share_to_qzone}" />{lang qqconnect:connect_viewthread_share_to_qzone}</i></a>
  336. <a href="javascript:void(0);" ref="{$_G[connect][weibo_share_url]}" id="k_weiboshare" title="{lang qqconnect:connect_viewthread_share_to_t}"><i><img src="{IMGDIR}/weibo.png" alt="{lang qqconnect:connect_viewthread_share_to_t}" />{lang qqconnect:connect_viewthread_share_to_t}</i></a>
  337. <a href="javascript:void(0);" ref="{$_G[connect][pengyou_share_url]}" id="k_pengyoushare" title="{lang qqconnect:connect_viewthread_share_to_pengyou}"><i><img src="{IMGDIR}/pengyou.png" alt="{lang qqconnect:connect_viewthread_share_to_pengyou}" />{lang qqconnect:connect_viewthread_share_to_pengyou}</i></a>
  338. <script type="text/javascript">
  339. var _is_oauth_user = {if $_G['member']['conuinsecret']}true{else}false{/if};
  340. var _is_share_token_outofdate = {if $_G['member']['conuinsecret']}false{else}true{/if};
  341. var _is_feed_auth = {if $_G['member']['conuinsecret'] && $_G['member']['is_feed']}true{else}false{/if};
  342. _is_feed_auth = true;
  343. var _share_buttons = ['k_qqshare', 'k_weiboshare', 'k_pengyoushare'];
  344. function connect_share_init() {
  345. for (var i = 0; i < _share_buttons.length; i++) {
  346. $(_share_buttons[i]).onclick = function () {
  347. connect_share_form(this);
  348. return false;
  349. }
  350. }
  351. }
  352. function connect_share_form(obj) {
  353. if (_is_oauth_user && _is_feed_auth) {
  354. var _url = obj.getAttribute('ref');
  355. showWindow(obj.id, _url, 'get', 1);
  356. } else {
  357. if (_is_share_token_outofdate) {
  358. var _text = '{lang qqconnect:connect_access_token_out_of_date_share}';
  359. var _button = '{lang qqconnect:connect_access_token_outofdate_button}';
  360. showDialog(_text, 'notice', null, null, 0, null, null, _button);
  361. } else if (!_is_oauth_user) {
  362. var _text = '{lang qqconnect:connect_share_unbind}';
  363. var _button = '{lang qqconnect:connect_share_unbind_know_button}';
  364. showDialog(_text, 'notice', null, 'connect_goto_setting()', 0, null, null, _button);
  365. } else if (!_is_feed_auth) {
  366. var _title = '{lang qqconnect:connect_post_sync_unauthorized_title}';
  367. var _text = '{lang qqconnect:connect_share_unauthorized}';
  368. var _button = '{lang qqconnect:connect_modify_authorization_button}';
  369. showDialog(_text, 'notice', _title, 'connect_goto_setting()', 0, null, null, _button);
  370. }
  371. }
  372. }
  373. function connect_goto_setting() {
  374. if (_is_oauth_user) {
  375. var _url = "{$_G['siteurl']}home.php?mod=spacecp&ac=plugin&id=qqconnect:spacecp";
  376. hideMenu('fwin_dialog', 'dialog');
  377. var _newWindow = window.open(_url, 'newWindow');
  378. _newWindow.focus();
  379. } else {
  380. hideMenu('fwin_dialog', 'dialog');
  381. }
  382. }
  383. _attachEvent(window, 'load', function(){
  384. connect_share_init();
  385. });
  386. </script>
  387. <!--{else}-->
  388. <a href="javascript:void(0);" id="k_qqshare" onclick="postToQzone();" title="{lang qqconnect:connect_viewthread_share_to_qzone}"><i><img src="{IMGDIR}/qzone.gif" alt="{lang qqconnect:connect_viewthread_share_to_qzone}" />{lang qqconnect:connect_viewthread_share_to_qzone}</i></a>
  389. <a href="javascript:void(0)" onclick="postToWb();" id="k_weiboshare" title="{lang qqconnect:connect_viewthread_share_to_t}"><i><img src="{IMGDIR}/weibo.png" alt="{lang qqconnect:connect_viewthread_share_to_t}" />{lang qqconnect:connect_viewthread_share_to_t}</i></a>
  390. <a href="javascript:void(0);" onclick="postToPengyou();" id="k_pengyoushare" title="{lang qqconnect:connect_viewthread_share_to_pengyou}"><i><img src="{IMGDIR}/pengyou.png" alt="{lang qqconnect:connect_viewthread_share_to_pengyou}" />{lang qqconnect:connect_viewthread_share_to_pengyou}</i></a>
  391. <script type="text/javascript">
  392. function postToWb(){
  393. var _t = encodeURI(document.title);
  394. var _url = encodeURIComponent(document.location);
  395. var _appkey = encodeURI("{$_G['connect']['weibo_appkey']}");
  396. var _pic = "{$_G['connect']['share_images']}";
  397. var _site = encodeURIComponent("{$_G['setting']['bbname']}");
  398. var _from = 'discuz';
  399. var _u = 'http://v.t.qq.com/share/share.php?url='+_url+'&appkey='+_appkey+'&site='+_site+'&pic='+_pic+'&title='+_t+'&from='+_from;
  400. window.open( _u,'', 'width=700, height=680, top=0, left=0, toolbar=no, menubar=no, scrollbars=no, location=yes, resizable=no, status=no' );
  401. }
  402. function postToQzone(){
  403. var _url = encodeURIComponent(document.location.href);
  404. var _site = encodeURIComponent("{$_G['setting']['bbname']}");
  405. var _title = encodeURIComponent("{$connect_thread_subject}");
  406. var _pics = "{$_G['connect']['share_images']}";
  407. var _from = 'discuz';
  408. var _u = '{$_G[connect][qzone_public_share_url]}?url='+_url+'&site='+_site+'&title='+_title+'&pics='+_pics+'&from='+_from;
  409. window.open(_u);
  410. }
  411. function postToPengyou(){
  412. var _url = encodeURIComponent(document.location.href);
  413. var _site = encodeURIComponent("{$_G['setting']['bbname']}");
  414. var _title = encodeURIComponent("{$connect_thread_subject}");
  415. var _pics = "{$_G['connect']['share_images']}";
  416. var _from = 'discuz';
  417. var _u = '{$_G[connect][qzone_public_share_url]}?to=pengyou&url='+_url+'&site='+_site+'&title='+_title+'&pics='+_pics+'&from='+_from;
  418. window.open(_u);
  419. }
  420. </script>
  421. <!--{/if}-->
  422. <!--{if $jsurl}-->
  423. <script type="text/javascript">_attachEvent(window, 'load', function () { appendscript('{$jsurl}', '', 1, 'utf-8') }, document);</script>
  424. <!--{/if}-->
  425. <!--{/block}-->
  426. <!--{eval return $return;}-->
  427. {eval
  428. }
  429. function tpl_viewthread_bottom($jsurl) {
  430. global $_G;
  431. }
  432. <!--{block return}-->
  433. <script type="text/javascript">
  434. var connect_qzone_share_url = '{$_G[connect][qzone_share_url]}';
  435. var connect_weibo_share_url = '{$_G[connect][weibo_share_url]}';
  436. var connect_thread_info = {
  437. thread_url: '{$_G['siteurl']}{$GLOBALS['canonical']}',
  438. thread_id: '{$_G[tid]}',
  439. post_id: '{$_G[connect][first_post][pid]}',
  440. forum_id: '{$_G[fid]}',
  441. author_id: '{$_G[connect][first_post][authorid]}',
  442. author: '{$_G[connect][first_post][author]}'
  443. };
  444. connect_autoshare = '{$_GET[connect_autoshare]}';
  445. connect_isbind = '{$_G[member][conisbind]}';
  446. if(connect_autoshare == 1 && connect_isbind) {
  447. _attachEvent(window, 'load', function(){
  448. connect_share(connect_weibo_share_url, connect_openid);
  449. });
  450. }
  451. </script>
  452. <!--{if $_G['member']['conisbind']}-->
  453. <div id="connect_share_unbind" style="display: none;">
  454. <div class="c hm">
  455. <div style="font-size:14px; margin:10px 0;">{lang qqconnect:connect_post_unbind}</div>
  456. <div><a href="connect.php?mod=config&connect_autoshare=1" target="_blank"><img src="{IMGDIR}/qq_bind.gif" align="absmiddle" style="margin-top:5px;" /></a></div>
  457. </div>
  458. <input type="hidden" id="connect_thread_title" name="connect_thread_title" value="$_G[forum_thread][subject]" />
  459. </div>
  460. <!--{/if}-->
  461. <!--{if $jsurl}-->
  462. <script type="text/javascript">_attachEvent(window, 'load', function () { appendscript('{$jsurl}', '', 1, 'utf-8') }, document);</script>
  463. <!--{/if}-->
  464. <!--{/block}-->
  465. <!--{eval return $return;}-->
  466. {eval
  467. }
  468. function tpl_sync_post_viewthread_bottom($jsurl) {
  469. }
  470. <!--{block return}-->
  471. <div style="display:none;"><iframe src='{$jsurl}' style="display:none;"></div>
  472. <!--{/block}-->
  473. <!--{eval return $return;}-->
  474. {eval
  475. }
  476. function tpl_register_input() {
  477. global $_G;
  478. $connect_app_id = $_G['qc']['connect_app_id'];
  479. $connect_openid = $_G['qc']['connect_openid'];
  480. }
  481. <!--{block return}-->
  482. <!--{if $connect_app_id && $connect_openid}-->
  483. <div class="rfm">
  484. <table>
  485. <tr>
  486. <th>{lang qqconnect:connect_register_avatar}:</th>
  487. <td>
  488. <img src="{$_G[connect][avatar_url]}/$connect_app_id/$connect_openid" width="48" height="48" />
  489. <p>
  490. <label for="use_qzone_avatar"><input type="checkbox" name="use_qzone_avatar" id="use_qzone_avatar" class="pc" value="1" checked="checked" tabindex="1" /> {lang qqconnect:connect_register_use_qzone_avatar}</label>
  491. &nbsp;
  492. <label for="use_qqshow"><input type="checkbox" name="use_qqshow" id="use_qqshow" class="pc" value="1" checked="checked" tabindex="1" /> {lang qqconnect:connect_register_use_qqshow}</label>
  493. </p>
  494. </td>
  495. </tr>
  496. </table>
  497. </div>
  498. <!--{/if}-->
  499. <input type="hidden" id="auth_hash" name="auth_hash" value="{$_G['qc']['connect_auth_hash']}" />
  500. <input type="hidden" id="is_notify" name="is_notify" value="{$_G['qc']['connect_is_notify']}" />
  501. <input type="hidden" id="is_feed" name="is_feed" value="{$_G['qc']['connect_is_feed']}" />
  502. <!--{/block}-->
  503. <!--{eval return $return;}-->
  504. {eval
  505. }
  506. function tpl_register_bottom() {
  507. global $_G;
  508. $loginhash = 'L'.random(4);
  509. $change_qq_url = $_G['connect']['discuz_change_qq_url'];
  510. $qq_nick = $_G['qc']['qq_nick'];
  511. }
  512. <!--{block js2}-->
  513. <!--{if $_GET['ac'] == 'bind'}-->
  514. <div class="bm_h bbs">
  515. <h3 class="xs2">{lang qqconnect:connect_register_bind}</h3>
  516. </div>
  517. <div class="rfm" id="connect_member_loginbind_tip">
  518. <table>
  519. <tr>
  520. <th><img src="{IMGDIR}/connect_qq.gif" alt="QQ" class="mtn" /></th>
  521. <td>{lang qqconnect:connect_member_loginbind_tip}</td>
  522. </tr>
  523. </table>
  524. </div>
  525. <!--{elseif $_G['setting']['regconnect']}-->
  526. <div class="bm_h bbs" id="main_hnav">
  527. <h3 id="layer_reginfo_t" class="xs2">
  528. {lang qqconnect:connect_register_profile}
  529. </h3>
  530. </div>
  531. <div class="rfm" id="connect_member_register_tip" style="display:block;">
  532. <table>
  533. <tr>
  534. <th><img src="{IMGDIR}/connect_qq.gif" alt="QQ" class="mtn" /></th>
  535. <td>{lang qqconnect:connect_member_register_tip}</td>
  536. </tr>
  537. </table>
  538. </div>
  539. <!--{/if}-->
  540. <!--{/block}-->
  541. {eval
  542. $js2 = str_replace(array("'", "\r", "\n"), array("\'", '', ''), $js2);
  543. }
  544. <!--{block return}-->
  545. <div class="b1lr">
  546. <form method="post" autocomplete="off" name="login" id="loginform_$loginhash" class="cl"{if $_G['setting']['regconnect']} style="display:none"{/if} onsubmit="ajaxpost('loginform_$loginhash', 'returnmessage4', 'returnmessage4', 'onerror');return false;" action="member.php?mod=connect&action=login&loginsubmit=yes{if !empty($_GET['handlekey'])}&handlekey=$_GET[handlekey]{/if}&loginhash=$loginhash">
  547. <div class="c cl bm_c">
  548. <input type="hidden" name="formhash" value="{FORMHASH}" />
  549. <input type="hidden" name="referer" value="{$_G['qc']['dreferer']}" />
  550. <input type="hidden" id="auth_hash" name="auth_hash" value="{$_G['qc']['connect_auth_hash']}" />
  551. <input type="hidden" id="is_notify" name="is_notify" value="{$_G['qc']['connect_is_notify']}" />
  552. <input type="hidden" id="is_feed" name="is_feed" value="{$_G['qc']['connect_is_feed']}" />
  553. <!--{if $_G['qc']['uinlimit']}-->
  554. <!--<div class="bm xi1 xw1"><div class="bm_c"><img src="{IMGDIR}/connect_qq.gif" alt="QQ" class="vm" />&nbsp;{lang qqconnect:connect_uin_limit}</div></div>-->
  555. <div class="rfm">
  556. <table>
  557. <tr>
  558. <th><img src="{IMGDIR}/connect_qq.gif" alt="QQ" class="mtn" /></th>
  559. <td>
  560. {lang qqconnect:connect_uin_limit}
  561. </td>
  562. </tr>
  563. </table>
  564. </div>
  565. <!--{/if}-->
  566. <div class="rfm">
  567. <table>
  568. <tr>
  569. <th>
  570. <!--{if $_G['setting']['autoidselect']}-->
  571. <label for="username">{lang login_id}:</label>
  572. <!--{else}-->
  573. <span class="login_slct">
  574. <select name="loginfield" style="float: left;" width="45" id="loginfield_$loginhash">
  575. <option value="username">{lang username}</option>
  576. <option value="uid">{lang uid}</option>
  577. <option value="email">{lang email}</option>
  578. </select>
  579. </span>
  580. <!--{/if}-->
  581. </th>
  582. <td><input type="text" name="username" id="username_$loginhash" autocomplete="off" size="36" class="txt" tabindex="1" value="$username" /></td>
  583. </tr>
  584. </table>
  585. </div>
  586. <div class="rfm">
  587. <table>
  588. <tr>
  589. <th><label for="password3_$loginhash">{lang login_password}:</label></th>
  590. <td><input type="password" id="password3_$loginhash" name="password" size="36" class="txt" tabindex="1" /></td>
  591. </tr>
  592. </table>
  593. </div>
  594. <div class="rfm">
  595. <table>
  596. <tr>
  597. <th>{lang security_q}:</th>
  598. <td><select id="loginquestionid_$loginhash" width="213" name="questionid" onchange="if($('loginquestionid_$loginhash').value > 0) $('loginanswer_row_$loginhash').style.display=''; else $('loginanswer_row_$loginhash').style.display='none'">
  599. <option value="0">{lang security_question}</option>
  600. <option value="1">{lang security_question_1}</option>
  601. <option value="2">{lang security_question_2}</option>
  602. <option value="3">{lang security_question_3}</option>
  603. <option value="4">{lang security_question_4}</option>
  604. <option value="5">{lang security_question_5}</option>
  605. <option value="6">{lang security_question_6}</option>
  606. <option value="7">{lang security_question_7}</option>
  607. </select></td>
  608. </tr>
  609. </table>
  610. </div>
  611. <div class="rfm" id="loginanswer_row_$loginhash" style="display:none">
  612. <table>
  613. <tr>
  614. <th>{lang security_a}:</th>
  615. <td><input type="text" name="answer" id="loginanswer_$loginhash" autocomplete="off" size="36" class="txt" tabindex="1" /></td>
  616. </tr>
  617. </table>
  618. </div>
  619. <div class="rfm">
  620. <table>
  621. <tr>
  622. <th></th>
  623. <td>
  624. <p><label for="use_qqshow_bind"><input type="checkbox" name="use_qqshow" id="use_qqshow_bind" class="pc" value="1" checked="checked" tabindex="1" /> {lang qqconnect:connect_register_use_qqshow}</label></p>
  625. </td>
  626. </tr>
  627. </table>
  628. </div>
  629. </div>
  630. <div class="rfm mbw bw0">
  631. <table>
  632. <tr>
  633. <th>&nbsp;</th>
  634. <td><button class="pn pnc" type="submit" name="loginsubmit" value="true" tabindex="1"><strong>{lang qqconnect:connect_register_bind_window_button}</strong></button></td>
  635. </tr>
  636. </table>
  637. </div>
  638. </form>
  639. </div>
  640. <script type="text/javascript">
  641. <!--{if $_G['setting']['regconnect']}-->
  642. $('reginfo_a').parentNode.className = '';
  643. $('{$_G['setting']['reginput']['password']}').parentNode.parentNode.parentNode.parentNode.parentNode.style.display = 'none';
  644. $('{$_G['setting']['reginput']['username']}').outerHTML += '$js1';
  645. $('{$_G['setting']['reginput']['password']}').required = 0;
  646. $('{$_G['setting']['reginput']['password2']}').parentNode.parentNode.parentNode.parentNode.parentNode.style.display = 'none';
  647. $('{$_G['setting']['reginput']['password2']}').required = 0;
  648. $('main_hnav').outerHTML = '$js2';
  649. function connect_switch(op) {
  650. $('returnmessage4').className='';
  651. $('returnmessage4').innerHTML='';
  652. if(op == 1) {
  653. $('loginform_$loginhash').style.display='none';$('registerform').style.display='block';
  654. } else {
  655. $('loginform_$loginhash').style.display='block';$('registerform').style.display='none';
  656. }
  657. }
  658. function connect_use_available(value) {
  659. $('{$_G['setting']['reginput']['username']}').value = value;
  660. checkusername(value);
  661. }
  662. <!--{if !$_G['setting']['regconnect'] || $_GET['ac'] == 'bind'}-->
  663. connect_switch(2);
  664. <!--{/if}-->
  665. <!--{if $_G['qc']['uinlimit']}-->
  666. $('registerformsubmit').disabled = true;
  667. <!--{/if}-->
  668. <!--{if $_GET[action] != 'activation'}-->
  669. $('registerformsubmit').innerHTML = '<span>{lang qqconnect:connect_register_finish}</span>';
  670. <!--{/if}-->
  671. <!--{else}-->
  672. $('layer_reginfo_t').innerHTML = '{lang qqconnect:connect_register_bind}';
  673. <!--{/if}-->
  674. <!--{if $_GET[action] != 'activation'}-->
  675. <!--{if !$_G['setting']['autoidselect']}-->
  676. simulateSelect('loginfield_$loginhash');
  677. <!--{/if}-->
  678. <!--{/if}-->
  679. <!--{if $_G['setting']['regconnect'] && $_GET['ac'] != 'bind'}-->
  680. function connect_get_user_info() {
  681. var x = new Ajax();
  682. x.get('connect.php?mod=user&op=get&hash={FORMHASH}&inajax=1&_r='+Math.random(), function(s){
  683. var nick = s;
  684. if(nick) {
  685. document.getElementById('{$_G['setting']['reginput']['username']}').value = nick;
  686. }
  687. });
  688. }
  689. window.load=connect_get_user_info();
  690. <!--{/if}-->
  691. </script>
  692. <!--{/block}-->
  693. <!--{eval return $return;}-->
  694. {eval
  695. }
  696. function tpl_spacecp_profile_bottom() {
  697. global $_G;
  698. }
  699. <!--{block return}-->
  700. <script type="text/javascript">
  701. function connect_handle_get_weibosign(response, ajax) {
  702. // 返回值形如: errCode=XX&result=XX
  703. if (typeof(response) == "string" && response.indexOf("&") > 0) {
  704. var errCode = response.substring(0, response.indexOf("&"));
  705. errCode = errCode.substring(errCode.indexOf("=") + 1);
  706. var result = response.substring(response.indexOf("&") + 1);
  707. result = result.substring(result.indexOf("=") + 1);
  708. response = {"errCode" : errCode, "result" : result};
  709. } else {
  710. return false;
  711. }
  712. if (response.errCode == '0') {
  713. seditor_insertunit('sightml', response.result);
  714. } else {
  715. // 请求失败
  716. showDialog('{lang qqconnect:connect_wbsign_no_account}');
  717. }
  718. }
  719. function connect_get_weibosign() {
  720. var sign_url = '{$_G['siteurl']}connect.php?mod=config&op=weibosign&hash={FORMHASH}&_r='+Math.random();
  721. var get_weibosign_ajax = Ajax("HTML", null);
  722. get_weibosign_ajax.get(sign_url, connect_handle_get_weibosign);
  723. }
  724. if($('sightmlsml')) {
  725. var a = document.createElement('a');
  726. a.href = 'javascript:void(0);';
  727. a.style.background = 'url(' + STATICURL + 'image/common/weibo.png) no-repeat 0 2px';
  728. a.onmouseover = function () { showTip(this); };
  729. a.onclick = connect_get_weibosign;
  730. a.setAttribute('tip', '{lang qqconnect:connect_wbsign_tip}');
  731. $('sightmlsml').parentNode.appendChild(a);
  732. }
  733. </script>
  734. <!--{/block}-->
  735. <!--{eval return $return;}-->
  736. {eval
  737. }
  738. }