coop.php 6.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182
  1. <style>
  2. #coop_selector_title{
  3. margin-top: 15px;
  4. padding-top: 10px;
  5. border-top: 1px solid var(--border-line-color);
  6. }
  7. #coop_u_list li{
  8. display:flex;
  9. justify-content: space-between;
  10. }
  11. </style>
  12. <?php
  13. /*
  14. *
  15. list (doc_id)
  16. add (doc_id ,userid)
  17. del (doc_id, userid)
  18. set (doc_id ,userid ,value)
  19. *
  20. */
  21. require_once "../path.php";
  22. require_once "../public/_pdo.php";
  23. require_once "../public/function.php";
  24. require_once "../public/load_lang.php";
  25. require_once "../ucenter/function.php";
  26. require_once "../group/function.php";
  27. $userid="";
  28. $isLogin=false;
  29. if($_COOKIE["userid"]){
  30. $userid=$_COOKIE["userid"];
  31. $isLogin = true;
  32. }
  33. if($_GET["do"]){
  34. $_do=$_GET["do"];
  35. }
  36. else{
  37. echo "Error:缺乏必要的参数 do";
  38. exit;
  39. }
  40. if($_GET["doc_id"]){
  41. $_doc_id=$_GET["doc_id"];
  42. }
  43. else{
  44. echo "Error:缺乏必要的参数 doc_id";
  45. exit;
  46. }
  47. $powerlist["10"] = "仅阅读";
  48. //$powerlist["20"] = "建议";
  49. $powerlist["30"] = "可修改";
  50. //$powerlist["40"] = "管理员";
  51. PDO_Connect("sqlite:"._FILE_DB_FILEINDEX_);
  52. echo "<input id='doc_coop_docid' type='hidden' value='{$_doc_id}' />";
  53. $query = "SELECT * from fileindex where id = ? ";
  54. $Fetch = PDO_FetchAll($query,array($_doc_id));
  55. $iFetch=count($Fetch);
  56. if($iFetch>0){
  57. $owner = $Fetch[0]["user_id"];
  58. $uid = $_COOKIE["uid"];
  59. if($owner==$uid){
  60. //自己的文档
  61. switch($_do){
  62. case "list":
  63. break;
  64. case "add":
  65. $query="INSERT INTO power ('id','doc_id','user','power','status','create_time','modify_time','receive_time','type')
  66. VALUES (?,?,?,?,?,?,?,?,?)";
  67. $stmt = $PDO->prepare($query);
  68. $stmt->execute(
  69. array(UUID::v4(),
  70. $_GET["doc_id"],
  71. $_GET["user_id"],
  72. 10,
  73. 1,
  74. mTime(),
  75. mTime(),
  76. mTime(),
  77. $_GET["type"]
  78. )
  79. );
  80. if (!$stmt || ($stmt && $stmt->errorCode() != 0)) {
  81. $error = PDO_ErrorInfo();
  82. echo "error - $error[2] <br>";
  83. }
  84. break;
  85. case "del":
  86. $query="DELETE FROM power WHERE doc_id = ? AND user = ? ";
  87. $stmt = $PDO->prepare($query);
  88. $stmt->execute(
  89. array($_GET["doc_id"],
  90. $_GET["user_id"])
  91. );
  92. if (!$stmt || ($stmt && $stmt->errorCode() != 0)) {
  93. $error = PDO_ErrorInfo();
  94. echo "error - $error[2] <br>";
  95. }
  96. break;
  97. case "set":
  98. $query="UPDATE power SET power = ? , modify_time = ? WHERE doc_id = ? AND user = ? ";
  99. $stmt = $PDO->prepare($query);
  100. $stmt->execute(
  101. array($_GET["value"],
  102. mTime(),
  103. $_GET["doc_id"],
  104. $_GET["user_id"])
  105. );
  106. if (!$stmt || ($stmt && $stmt->errorCode() != 0)) {
  107. $error = PDO_ErrorInfo();
  108. echo "error - $error[2] <br>";
  109. }
  110. break;
  111. }
  112. $query = "SELECT * from power where doc_id = ? ";
  113. $Fetch = PDO_FetchAll($query,array($_doc_id));
  114. echo "<ul id='coop_u_list'>";
  115. foreach($Fetch as $row){
  116. echo "<li>";
  117. echo "<span>";
  118. if($row["type"]==0){
  119. //个人
  120. echo "<svg class='icon' style='margin: 0 5px;'>";
  121. echo '<use xlink:href="./svg/icon.svg#ic_person"></use>';
  122. echo "</svg>";
  123. echo ucenter_getA($row["user"],"username");
  124. }
  125. else if($row["type"]==1){
  126. //群组
  127. echo "<svg class='icon' style='margin: 0 5px;'>";
  128. echo '<use xlink:href="./svg/icon.svg#ic_two_person"></use>';
  129. echo "</svg>";
  130. echo group_get_name($row["user"]);
  131. }
  132. echo "</span>";
  133. echo "<span>";
  134. echo "<select onchange=\"coop_power_change('{$row["user"]}',this)\">";
  135. foreach($powerlist as $key=>$value){
  136. echo "<option value='{$key}' ";
  137. if($row["power"]==$key){
  138. echo "selected";
  139. }
  140. echo ">{$value}</option>";
  141. }
  142. echo "</select>";
  143. echo "<button onclick=\"coop_del('{$row["user"]}')\">".$_local->gui->delete."</button>";
  144. echo "</span>";
  145. echo "</li>";
  146. }
  147. echo "</ul>";
  148. ?>
  149. <div id="coop_selector_title">
  150. <?php echo $_local->gui->add." ".$_local->gui->cooperators; ?>
  151. <input type="radio" id="cooperator_type_user" name="cooperator_type" checked><?php echo $_local->gui->person; ?>
  152. <input type="radio" id="cooperator_type_group" name="cooperator_type"><?php echo $_local->gui->group; ?>
  153. </div>
  154. <div id="wiki_search" style="width:100%;">
  155. <div><input id="username_input" type="input" placeholder="<?php echo $_local->gui->username; ?>" onkeyup="username_search_keyup(event,this)"/></div>
  156. <div id="search_result">
  157. </div>
  158. </div>
  159. <?php
  160. }
  161. else{
  162. //别人的的文档
  163. echo "<a href='fork.php?doc_id={$doc_id}'>[复刻]</a>";
  164. }
  165. }
  166. ?>