submit.php 6.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164
  1. <?php
  2. if ($templateMode) {
  3. include('./includes/header.php');
  4. }
  5. ?>
  6. <br /><br />
  7. <div class="mdui-card mdui-hoverable" style="border-radius: 16px">
  8. <div class="mdui-card-primary">
  9. <div class="mdui-card-primary-title">立即表白</div>
  10. <div class="mdui-card-primary-subtitle">快向你喜欢的TA表白吧!</div>
  11. </div>
  12. <div class="mdui-divider"></div>
  13. <div class="mdui-card-content">
  14. <div class="mdui-textfield">
  15. <label class="mdui-textfield-label">你的QQ</label>
  16. <textarea id="qq" class="mdui-textfield-input" placeholder="2333333333"></textarea>
  17. </div>
  18. <div class="mdui-textfield">
  19. <label class="mdui-textfield-label">你的名字</label>
  20. <textarea id="name" class="mdui-textfield-input" placeholder="镜音连"></textarea>
  21. </div>
  22. <div class="mdui-textfield">
  23. <label class="mdui-textfield-label">TA的名字</label>
  24. <textarea id="taName" class="mdui-textfield-input" placeholder="镜音铃"></textarea>
  25. </div>
  26. <div class="mdui-textfield">
  27. <label class="mdui-textfield-label">表白配图(可选)</label>
  28. <?php
  29. if ($UPLOAD_IMAGE) {
  30. ?>
  31. <div class="mdui-row">
  32. <div class="mdui-col-md-10 mdui-col-sm-10 mdui-col-xs-7">
  33. <textarea id="image" class="mdui-textfield-input" placeholder="https://kagamine.top/img.png"></textarea>
  34. </div>
  35. <div class="mdui-col-md-2 mdui-col-sm-2 mdui-col-xs-5">
  36. <a href="javascript:;" id="upload" class="mdui-color-theme-accent a-upload mr10"><input type="file" name="" id="upload-image">选择文件</a>
  37. </div>
  38. </div>
  39. <?php
  40. } else {
  41. ?>
  42. <textarea id="image" class="mdui-textfield-input" placeholder="https://kagamine.top/img.png"></textarea>
  43. <?php
  44. }
  45. ?>
  46. </div>
  47. <div class="mdui-textfield">
  48. <label class="mdui-textfield-label">一句话介绍一下TA</label>
  49. <textarea id="introduceTA" class="mdui-textfield-input" placeholder="镜音铃是一个元气的二次元少女"></textarea>
  50. </div>
  51. <div class="mdui-textfield">
  52. <label class="mdui-textfield-label">你要对TA说的话</label>
  53. <textarea id="toTA" class="mdui-textfield-input" rows="4" placeholder="我喜欢你..."></textarea>
  54. </div>
  55. </div>
  56. <div class="mdui-card-actions">
  57. <button id="submitbtn" style="border-radius: 8px" class="mdui-btn mdui-color-theme-accent mdui-ripple mdui-float-right" onclick="submit()">
  58. 发射!
  59. </button>
  60. </div>
  61. <script>
  62. function submit() {
  63. url = $("#url").val();
  64. if (<?php if ($IMAGE_VERIFICATION) echo 'true';
  65. else echo 'false'; ?>) {
  66. imageVerification(function(answer) {
  67. request(answer)
  68. })
  69. } else {
  70. request('0000');
  71. }
  72. }
  73. $("#upload").on("change", "input[type='file']", function() {
  74. var data = new FormData();
  75. data.append('file', $(this).prop('files')[0]);
  76. $('#upload-image').attr("disabled", "disabled")
  77. $("#isLoading").show(100)
  78. $.ajax({
  79. type: 'POST',
  80. url: "<?php echo $UPLOAD_API ?>",
  81. data: data,
  82. cache: false,
  83. processData: false,
  84. contentType: false,
  85. success: function(rdata) {
  86. $("#isLoading").hide(100)
  87. $("#image").val(rdata.path)
  88. $('#upload-image').removeAttr("disabled")
  89. mdui.snackbar({
  90. message: rdata.msg,
  91. position: 'right-top',
  92. })
  93. },
  94. error: function(data) {
  95. $("#image").val("")
  96. $('#upload-image').removeAttr("disabled")
  97. $(disableBtnId).attr("disabled", false)
  98. mdui.snackbar({
  99. message: "请求接口[upload]时,出现了一个致命错误!",
  100. position: 'right-top'
  101. })
  102. }
  103. })
  104. });
  105. function imageVerification(callback) {
  106. mdui.dialog({
  107. title: '请输入图片中的验证码',
  108. content: '<center><div class="mdui-row"> <div class="mdui-col-xs-9"> <div class="mdui-textfield"> <input class="mdui-textfield-input" id="answer" type="text" placeholder="请输入您的答案" /></div> </div> <div class="mdui-col-xs-3"> <img style="position: relative;top:15px" id="vcode" src="/api/vcode.php" /> </div> </div></center>',
  109. modal: true,
  110. buttons: [{
  111. text: '取消'
  112. },
  113. {
  114. text: '确认',
  115. onClick: function(inst) {
  116. callback($('#answer').val());
  117. }
  118. }
  119. ]
  120. });
  121. }
  122. function request(vCode) {
  123. var contact = $("#qq").val();
  124. var name = $("#name").val();
  125. var taName = $("#taName").val();
  126. var image = $("#image").val();
  127. var introduceTA = $("#introduceTA").val();
  128. var toTA = $("#toTA").val();
  129. var timestamp = this.timestamp = Date.parse(new Date()) / 1000;
  130. var key = $.md5(
  131. 'Kagamine Yes!' +
  132. contact +
  133. name +
  134. taName +
  135. image +
  136. introduceTA +
  137. toTA +
  138. timestamp)
  139. requestApi("submit", {
  140. key: key,
  141. timestamp: timestamp,
  142. contact: contact,
  143. name: name,
  144. taName: taName,
  145. image: image,
  146. introduceTA: introduceTA,
  147. toTA: toTA,
  148. vCode: vCode
  149. }, function(data) {
  150. $("#qq").val("");
  151. $("#name").val("");
  152. $("#taName").val("");
  153. $("#image").val("");
  154. $("#introduceTA").val("");
  155. $("#toTA").val("");
  156. }, true, true, "#submitbtn")
  157. }
  158. </script>
  159. </div>
  160. <br /><br />