uc.html 11 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254
  1. {php $newUI = true;}
  2. {template 'common/header'}
  3. <script type="text/javascript">
  4. require(['angular'], function(angular){
  5. angular.module('app', []).controller('ucSetting', function($scope, $http) {
  6. $scope.uc = {php echo json_encode($uc);};
  7. });
  8. angular.bootstrap(document, ['app']);
  9. //处理快速录入
  10. $("#submit").click(function(){
  11. var textarea = $("#textarea").val();
  12. var arr = textarea.split(';');
  13. var data = new Array();
  14. for(var i in arr) {
  15. var index0 = arr[i].indexOf("UC");
  16. var index1 = arr[i].indexOf("', '");
  17. var index2 = arr[i].indexOf("')");
  18. var key = arr[i].substring(index0,index1);
  19. var value = arr[i].substring(index1+4,index2);
  20. data[key] = value;
  21. }
  22. var $scope = angular.element('#form1').scope();
  23. $scope.uc.connect = data['UC_CONNECT'];
  24. $scope.uc.appid = data['UC_APPID'];
  25. $scope.uc.key = data['UC_KEY'];
  26. $scope.uc.charset = data['UC_CHARSET'];
  27. $scope.uc.dbhost = data['UC_DBHOST'];
  28. $scope.uc.dbuser = data['UC_DBUSER'];
  29. $scope.uc.dbname = data['UC_DBNAME'];
  30. $scope.uc.dbpw = data['UC_DBPW'];
  31. $scope.uc.dbcharset = data['UC_DBCHARSET'];
  32. $scope.uc.dbtablepre = data['UC_DBTABLEPRE'];
  33. $scope.uc.dbconnect = data['UC_DBCONNECT'];
  34. $scope.uc.api = data['UC_API'];
  35. $scope.uc.ip = data['UC_IP'];
  36. $scope.$digest();
  37. });
  38. $("#form1").submit(function(){
  39. if($(':radio[name="status"]:checked').val()=='1'){
  40. if($.trim($(':text[name="title"]').val()) == '') {
  41. util.message('必须输入通行证名称.', '', 'error');
  42. return false;
  43. }
  44. var appid = parseInt($(':text[name="appid"]').val());
  45. if(isNaN(appid)) {
  46. util.message('必须输入UCenter应用的ID.', '', 'error');
  47. return false;
  48. }
  49. if($.trim($(':text[name="key"]').val()) == '') {
  50. util.message('必须输入与UCenter的通信密钥.', '', 'error');
  51. return false;
  52. }
  53. if($.trim($(':text[name="charset"]').val()) == '') {
  54. util.message('必须输入UCenter的字符集.', '', 'error');
  55. return false;
  56. }
  57. if($(':radio[name="connect"]:checked').val() == 'mysql') {
  58. if($.trim($(':text[name="dbhost"]').val()) == '') {
  59. util.message('必须输入UCenter数据库主机地址.', '', 'error');
  60. return false;
  61. }
  62. if($.trim($(':text[name="dbuser"]').val()) == '') {
  63. util.message('必须输入UCenter数据库用户名.', '', 'error');
  64. return false;
  65. }
  66. if($.trim($(':text[name="dbpw"]').val()) == '') {
  67. util.message('必须输入UCenter数据库密码.', '', 'error');
  68. return false;
  69. }
  70. if($.trim($(':text[name="dbname"]').val()) == '') {
  71. util.message('必须输入UCenter数据库名称.', '', 'error');
  72. return false;
  73. }
  74. if($.trim($(':text[name="dbcharset"]').val()) == '') {
  75. util.message('必须输入UCenter数据库字符集.', '', 'error');
  76. return false;
  77. }
  78. if($.trim($(':text[name="dbtablepre"]').val()) == '') {
  79. util.message('必须输入UCenter数据表前缀.', '', 'error');
  80. return false;
  81. }
  82. } else if($(':radio[name="connect"]:checked').val() == 'http'){
  83. if($.trim($(':text[name="api"]').val()) == '') {
  84. util.message('必须输入UCenter 服务端的URL地址.', '', 'error');
  85. return false;
  86. }
  87. if($.trim($(':text[name="ip"]').val()) == '') {
  88. util.message('必须输入UCenter的IP.', '', 'error');
  89. return false;
  90. }
  91. }
  92. }
  93. });
  94. });
  95. </script>
  96. <ul class="nav nav-tabs">
  97. <li class="active"><a href="{php echo url('mc/uc')}"><i class="icon-user"></i> UC站点整合</a></li>
  98. </ul>
  99. <div class="main">
  100. <form id="form1" action="{php echo url('mc/uc')}" method="post" class="form-horizontal form ng-cloak" ng-controller="ucSetting">
  101. <div class="panel panel-default">
  102. <div class="panel-heading">
  103. 设置UC参数
  104. </div>
  105. <div class="panel-body">
  106. <div class="alert alert-info">
  107. <p>
  108. 使用UC能够整合其他系统的会员信息. 如果你不清楚此功能的作用, 请咨询您的技术人员. <br />
  109. 1. 在UC系统中增加新的应用, 并填写[应用接口文件名称]为: uc.php?uniacid={$_W['uniacid']} <br />
  110. 2. 在下方启用UC, 并按照UC系统中新增的应用参数填写
  111. </p>
  112. </div>
  113. <div class="form-group">
  114. <label class="col-xs-12 col-sm-3 col-md-2 control-label">启用UC</label>
  115. <div class="col-sm-8 col-xs-12">
  116. <label class="radio-inline">
  117. <input type="radio" id="status1" name="status" ng-model="uc.status" value="1"/>
  118. 开启
  119. </label>
  120. <label class="radio-inline">
  121. <input type="radio" id="status0" name="status" ng-model="uc.status" value="0"/>
  122. 关闭
  123. </label>
  124. <span class="help-block">使用UC能够整合其他系统的会员信息. 如果你不清楚此功能的作用, 请咨询您的技术人员.</span>
  125. </div>
  126. </div>
  127. <div ng-show="uc.status == '1'">
  128. <div class="form-group">
  129. <label class="col-xs-12 col-sm-3 col-md-2 control-label">快速录入</label>
  130. <div class="col-sm-8 col-xs-12">
  131. <textarea class="form-control" rows="6" id="textarea"></textarea>
  132. <span class="help-block">你可以直接复制UC中的[应用的 UCenter 配置信息]来快速搞定配置参数.</span>
  133. </div>
  134. </div>
  135. <div class="form-group">
  136. <label class="col-xs-12 col-sm-3 col-md-2 control-label"></label>
  137. <div class="col-sm-8 col-xs-12">
  138. <input id="submit" type="button" class="btn btn-primary" value="一键录入">
  139. </div>
  140. </div>
  141. <div class="form-group">
  142. <label class="col-xs-12 col-sm-3 col-md-2 control-label">通行证名称</label>
  143. <div class="col-sm-8 col-xs-12">
  144. <input type="text" name="title" class="form-control" value="{{uc.title}}" autocomplete="off">
  145. <span class="help-block">请输入你的通行证名称, 方便与UC系统联系.比如: 你的论坛名字</span>
  146. </div>
  147. </div>
  148. <div class="form-group">
  149. <label class="col-xs-12 col-sm-3 col-md-2 control-label">应用ID</label>
  150. <div class="col-sm-8 col-xs-12">
  151. <input type="text" name="appid" class="form-control" value="{{uc.appid}}" autocomplete="off">
  152. </div>
  153. </div>
  154. <div class="form-group">
  155. <label class="col-xs-12 col-sm-3 col-md-2 control-label">通信密钥</label>
  156. <div class="col-sm-8 col-xs-12">
  157. <input type="text" name="key" class="form-control" value="{{uc.key}}" autocomplete="off"/>
  158. </div>
  159. </div>
  160. <div class="form-group">
  161. <label class="col-xs-12 col-sm-3 col-md-2 control-label">UCenter字符集</label>
  162. <div class="col-sm-8 col-xs-12">
  163. <input type="text" name="charset" class="form-control" value="{{uc.charset}}" autocomplete="off"/>
  164. </div>
  165. </div>
  166. <div class="form-group">
  167. <label class="col-xs-12 col-sm-3 col-md-2 control-label">通信方式</label>
  168. <div class="col-sm-8 col-xs-12">
  169. <label class="radio-inline">
  170. <input type="radio" name="connect" ng-model="uc.connect" value="mysql"/>
  171. MYSQL方式
  172. </label>
  173. <label class="radio-inline">
  174. <input type="radio" name="connect" ng-model="uc.connect" value="http"/>
  175. 远程方式HTTP
  176. </label>
  177. </div>
  178. </div>
  179. <div class="tb mysql" ng-show="uc.connect == 'mysql';">
  180. <div class="form-group">
  181. <label class="col-xs-12 col-sm-3 col-md-2 control-label">数据库主机</label>
  182. <div class="col-sm-8 col-xs-12">
  183. <input type="text" name="dbhost" class="form-control" value="{{uc.dbhost}}" autocomplete="off">
  184. </div>
  185. </div>
  186. <div class="form-group">
  187. <label class="col-xs-12 col-sm-3 col-md-2 control-label">数据库用户名</label>
  188. <div class="col-sm-8 col-xs-12">
  189. <input type="text" name="dbuser" class="form-control" value="{{uc.dbuser}}" autocomplete="off"/>
  190. </div>
  191. </div>
  192. <div class="form-group">
  193. <label class="col-xs-12 col-sm-3 col-md-2 control-label">数据库密码</label>
  194. <div class="col-sm-8 col-xs-12">
  195. <input type="text" name="dbpw" class="form-control" value="{{uc.dbpw}}" autocomplete="off"/>
  196. </div>
  197. </div>
  198. <div class="form-group">
  199. <label class="col-xs-12 col-sm-3 col-md-2 control-label">数据库名称</label>
  200. <div class="col-sm-8 col-xs-12">
  201. <input type="text" name="dbname" class="form-control" value="{{uc.dbname}}" autocomplete="off"/>
  202. </div>
  203. </div>
  204. <div class="form-group">
  205. <label class="col-xs-12 col-sm-3 col-md-2 control-label">数据库字符集</label>
  206. <div class="col-sm-8 col-xs-12">
  207. <input type="text" name="dbcharset" class="form-control" value="{{uc.dbcharset}}" autocomplete="off"/>
  208. </div>
  209. </div>
  210. <div class="form-group">
  211. <label class="col-xs-12 col-sm-3 col-md-2 control-label">表前缀</label>
  212. <div class="col-sm-8 col-xs-12">
  213. <input type="text" name="dbtablepre" class="form-control" value="{{uc.dbtablepre}}" autocomplete="off"/>
  214. </div>
  215. </div>
  216. <div class="form-group">
  217. <label class="col-xs-12 col-sm-3 col-md-2 control-label">是否持久连接</label>
  218. <div class="col-sm-8 col-xs-12">
  219. <label class="radio-inline">
  220. <input type="radio" name="dbconnect" value="1" ng-model="uc.dbconnect"/>
  221. </label>
  222. <label class="radio-inline">
  223. <input type="radio" name="dbconnect" value="0" ng-model="uc.dbconnect"/>
  224. </label>
  225. </div>
  226. </div>
  227. </div>
  228. <div class="tb http" ng-show="uc.connect != 'mysql';">
  229. <div class="form-group">
  230. <label class="col-xs-12 col-sm-3 col-md-2 control-label">服务端URL地址</label>
  231. <div class="col-sm-8 col-xs-12">
  232. <input type="text" name="api" class="form-control" value="{{uc.api}}" autocomplete="off"/>
  233. </div>
  234. </div>
  235. <div class="form-group">
  236. <label class="col-xs-12 col-sm-3 col-md-2 control-label">服务端IP</label>
  237. <div class="col-sm-8 col-xs-12">
  238. <input type="text" name="ip" class="form-control" value="{{uc.ip}}" autocomplete="off"/>
  239. </div>
  240. </div>
  241. </div>
  242. </div>
  243. </div>
  244. </div>
  245. <div class="form-group col-sm-12">
  246. <input type="submit" name="submit" value="提交" class="btn btn-primary col-lg-1" />
  247. <input type="hidden" name="token" value="{$_W['token']}" />
  248. </div>
  249. </form>
  250. </div>
  251. {template 'common/footer'}