cert.php 4.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119
  1. <?php
  2. // by 请勿倒卖,已申请软著,否则追究法律责任
  3. namespace app\upload;
  4. use PclZip;
  5. class cert
  6. {
  7. function open()
  8. {
  9. if (!isAdminLogin()) {
  10. exit(iframe_message("请先登录管理中心!"));
  11. }
  12. $_var_0 = SafeRequest("dir", "get");
  13. $_var_1 = SafeRequest("ext", "get");
  14. ?> <!DOCTYPE html >
  15. <html lang="">
  16. <head>
  17. <meta http-equiv="Content-Type" content="text/html; charset=<?php echo IN_CHARSET;?>"/>
  18. <title>上传证书</title>
  19. <link href="/static/pack/upload/uploadify.css" rel="stylesheet" type="text/css"/>
  20. </head>
  21. <body>
  22. <div id="fileQueue">
  23. <div class="uploadifyQueueItem uploadifySuccess" style="display:none">
  24. <div class="cancel">
  25. <a href="javascript:cancle()">
  26. <img src="/static/pack/upload/cancel.png" border="0"></a></div>
  27. <span class="fileName"></span><span class="percentage"></span>
  28. <div class="uploadifyProgress">
  29. <div class="uploadifyProgressBar"></div>
  30. </div>
  31. </div>
  32. <div class="uploadifyQueueItem uploadifyError" style="display:none"></div>
  33. </div>
  34. <input type="file" id="uploadify" onchange="uploadify()" style="display:none">
  35. <img src="/static/pack/upload/up.png" style="cursor:pointer" onclick="$('#uploadify').click()">
  36. <script src="/static/pack/layer/jquery.js"></script>
  37. <script src="/static/pack/upload/uploadify.js"></script>
  38. <script>
  39. var in_php = '/upload/cert/uplog';
  40. var ext = "<?php echo $_var_1;?>";
  41. var in_post = JSON.stringify({
  42. dir: "<?php echo $_var_0;?>", ext,
  43. _aid: "<?php echo $_COOKIE["in_adminid"];?>",
  44. _apw: "<?php echo $_COOKIE["in_adminpassword"];?>"
  45. });
  46. console.log(in_post);
  47. var in_size = 1;
  48. function return_response(response) {
  49. if (response == -1) {
  50. $(".uploadifySuccess").hide();
  51. $(".uploadifyError").show().text("文件不规范,请选择{.<?php echo $_var_1;?>}格式的文件!");
  52. } else if (response == -2) {
  53. $("#fileQueue").html('<div class="uploadifyQueueItem">Access denied</div>');
  54. } else {
  55. var data = eval('(' + response + ')');
  56. data.ext = ext;
  57. parent.uploadComplate(data);
  58. }
  59. }
  60. </script>
  61. </body>
  62. </html>
  63. <?php
  64. }
  65. function uplog()
  66. {
  67. $_var_2 = json_decode(stripslashes($_POST["post"]), true);
  68. $_var_3 = $_var_2["dir"];
  69. $_var_4 = intval($_var_2["_aid"]);
  70. $_var_5 = $_var_2["_apw"];
  71. $_var_6 = $_var_2["ext"];
  72. if (!db("admin")->where("in_adminid", $_var_4)->value("in_adminid") || db("admin")->where("in_adminid", $_var_4)->value("in_adminpassword") !== $_var_5) {
  73. exit("-2");
  74. }
  75. $_var_7 = IN_CERT_PATH . $_var_3 . ".zip";
  76. $_var_8 = IN_TMP_PATH . $_var_3 . "/";
  77. creatdir($_var_8);
  78. if (is_file($_var_7)) {
  79. $_var_9 = new PclZip($_var_7);
  80. $_var_9->extract(PCLZIP_OPT_PATH, $_var_8);
  81. }
  82. if (!empty($_FILES)) {
  83. $_var_10 = pathinfo($_FILES["file"]["name"]);
  84. $_var_11 = strtolower($_var_10["extension"]);
  85. if ($_var_11 == "mobileprovision" && $_var_6 == "mobileprovision") {
  86. $_var_12 = $_var_8 . $_var_3 . ".mobileprovision";
  87. @move_uploaded_file($_FILES["file"]["tmp_name"], $_var_12);
  88. $_var_13 = @file_get_contents($_var_12);
  89. $_var_14 = preg_match("/<key>application-identifier<\\/key>([\\s\\S]+?)<string>([\\s\\S]+?)<\\/string>/", $_var_13, $_var_15) ? $_var_15[2] : NULL;
  90. $_var_16 = substr($_var_14, 0, 10);
  91. $_var_17 = preg_match("/<key>TeamName<\\/key>([\\s\\S]+?)<string>([\\s\\S]+?)<\\/string>/", $_var_13, $_var_15) ? mb_convert_encoding($_var_15[2], set_chars(), "HTML-ENTITIES") : NULL;
  92. if (strpos($_var_13, "ProvisionedDevices")) {
  93. $_var_18 = "Developer";
  94. } else {
  95. $_var_18 = "Distribution";
  96. }
  97. $_var_19 = @file_get_contents(IN_ROOT . "static/app/cert.plist");
  98. $_var_19 = str_replace(array("[iden]", "[idens]", "\r"), array($_var_14, $_var_16, ""), $_var_19);
  99. @fwrite(fopen($_var_8 . $_var_3 . ".plist", "w"), $_var_19);
  100. $_var_20 = @file_get_contents(IN_ROOT . "static/app/cert.sh");
  101. $_var_20 = str_replace(array("[name]", "[cert]", "[lei]", "\r"), array($_var_17, $_var_3, $_var_18, ""), $_var_20);
  102. @fwrite(fopen($_var_8 . $_var_3 . ".sh", "w"), $_var_20);
  103. echo "{'iden':'" . $_var_14 . "','name':'" . $_var_17 . "','dir':'" . $_var_3 . "'}";
  104. } else {
  105. if ($_var_11 == "p12" && $_var_6 == "p12") {
  106. $_var_12 = $_var_8 . $_var_3 . ".p12";
  107. @move_uploaded_file($_FILES["file"]["tmp_name"], $_var_12);
  108. reJSON(1);
  109. } else {
  110. echo "-1";
  111. }
  112. }
  113. }
  114. }
  115. }