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

/src/BITM/SEIP143979/Birthday/Birthday.php

https://gitlab.com/Sajibcse/ATOMIC_PROJECT_SEIP143979_SAJIB_B37
PHP | 402 lines | 319 code | 69 blank | 14 comment | 15 complexity | 6f7add44a35594e29a4c3de26287bb93 MD5 | raw file
  1. <?php
  2. /**
  3. * Created by PhpStorm.
  4. * User: DELL
  5. * Date: 11/16/2016
  6. * Time: 6:58 PM
  7. */
  8. namespace App\BITM\SEIP143979\Birthday;
  9. use App\BITM\SEIP143979\Message\Message;
  10. use App\BITM\SEIP143979\Utility\Utility;
  11. use App\BITM\SEIP143979\Model\Database as DB;
  12. use PDO;
  13. class Birthday extends DB
  14. {
  15. public $id="";
  16. public $name="";
  17. public $birthday="";
  18. public function __construct()
  19. {
  20. parent::__construct();
  21. }
  22. public function setData($data=null)
  23. {
  24. if(array_key_exists('id',$data)){
  25. $this->id=$data['id'];
  26. }
  27. if(array_key_exists('name',$data)){
  28. $this->name=$data['name'];
  29. }
  30. if(array_key_exists('birthday',$data)){
  31. $this->birthday=$data['birthday'];
  32. }
  33. if(array_key_exists('checkbox',$data))
  34. {
  35. $this->checkbox = $data['checkbox'];
  36. }
  37. }
  38. public function index($fetchMode='ASSOC')
  39. {
  40. $fetchMode = strtoupper($fetchMode);
  41. $DBH=$this->connection;
  42. $sth=$DBH->prepare("select * from birthday Where is_delete='0'");
  43. $sth->execute();
  44. if(substr_count($fetchMode,'OBJ') > 0)
  45. $sth->setFetchMode(PDO::FETCH_OBJ);
  46. else
  47. $sth->setFetchMode(PDO::FETCH_ASSOC);
  48. $all_birthday=$sth->fetchAll();
  49. return $all_birthday;
  50. }
  51. // end of index();
  52. public function view($id){
  53. $DBH=$this->connection;
  54. $sth=$DBH->prepare("select * from birthday Where id=$id");
  55. $sth->execute();
  56. $sth->setFetchMode(PDO::FETCH_ASSOC);
  57. $selected_person=$sth->fetch();
  58. return $selected_person;
  59. }
  60. public function update(){
  61. $dbh=$this->connection;
  62. $values=array($this->name,$this->birthday);
  63. //var_dump($values);
  64. $query='UPDATE birthday SET name = ? , birthday = ? where id ='.$this->id;
  65. // $query='UPDATE book_title SET book_title = ? , author_name = ? where id ='.$this->id;
  66. $sth=$dbh->prepare($query);
  67. $sth->execute($values);
  68. if($sth)
  69. { Message::message("<div id='msg'><h3 align='center'>[ name: $this->name ] ,
  70. [ Birthday: $this->birthday ] <br> Data Has Been Updated Successfully!</h3></div>");
  71. }
  72. else
  73. Message::message("<div id='msg'></div><h3 align='center'> <br> Data Hasn't Been Updated !</h3></div>");
  74. Utility::redirect('index.php');
  75. }
  76. public function delete($id){
  77. $DBH=$this->connection;
  78. $sth=$DBH->prepare("delete from birthday Where id=$id");
  79. $sth->execute();
  80. if($sth)
  81. { Message::message("<div id='msg'><h3 align='center'>
  82. <br> Data Has deleted Successfully!</h3></div>");
  83. }
  84. else
  85. Message::message("<div id='msg'></div><h3 align='center'> <br> Data Hasn't Been Inserted !</h3></div>");
  86. Utility::redirect('index.php');
  87. }
  88. public function store(){
  89. $dbh=$this->connection;
  90. $values=array($this->name,$this->birthday);
  91. $query="insert into birthday(name,birthday) VALUES (?,?)";
  92. $sth=$dbh->prepare($query);
  93. $sth->execute($values);
  94. if($sth)
  95. { Message::message("<div id='msg'><h3 align='center'>[ Name: $this->name ] ,
  96. [ birthday: $this->birthday ] <br> Data Has Been Inserted Successfully!</h3></div>");
  97. }
  98. else
  99. Message::message("<div id='msg'></div><h3 align='center'> <br> Data Hasn't Been Inserted !</h3></div>");
  100. Utility::redirect('index.php');
  101. }
  102. public function trash($id){
  103. $dbh=$this->connection;
  104. //var_dump($values);
  105. $query='UPDATE birthday SET is_delete = "1" where id ='.$id;
  106. $sth=$dbh->prepare($query);
  107. $sth->execute();
  108. if($sth)
  109. { Message::message("<div id='msg'><h3 align='center'>
  110. <br> Data Has Been trashed Successfully!</h3></div>");
  111. }
  112. else
  113. Message::message("<div id='msg'></div><h3 align='center'> <br> Data Hasn't Been trashed !</h3></div>");
  114. Utility::redirect('index.php');
  115. }
  116. //method 8
  117. public function trashed($fetchMode='ASSOC'){
  118. $fetchMode = strtoupper($fetchMode);
  119. $DBH=$this->connection;
  120. $sth=$DBH->prepare("select * from birthday WHERE is_delete='1'");
  121. $sth->execute();
  122. if(substr_count($fetchMode,'OBJ') > 0)
  123. $sth->setFetchMode(PDO::FETCH_OBJ);
  124. else
  125. $sth->setFetchMode(PDO::FETCH_ASSOC);
  126. $allData=$sth->fetchAll();
  127. return $allData;
  128. }//end of trashed method which show the trashed list
  129. //METHOD 9
  130. public function count($fetchMode='ASSOC'){
  131. $DBH=$this->connection;
  132. $query="SELECT COUNT(*) AS totalItem FROM `atomic_project_b37`.`birthday` WHERE `is_delete`=0 ";
  133. $sth=$DBH->prepare($query);
  134. $sth->execute();
  135. if(substr_count($fetchMode,'OBJ') > 0)
  136. $sth->setFetchMode(PDO::FETCH_OBJ);
  137. else
  138. $sth->setFetchMode(PDO::FETCH_ASSOC);
  139. $row=$sth->fetchAll();
  140. /* $result=mysqli_query($this->conn,$query);*/
  141. /* $row= mysqli_fetch_assoc($sth);*/
  142. return $row['totalItem'];
  143. }//end of count
  144. public function mulSoftDelete()
  145. {
  146. $checkbox = $_POST['checkbox'];
  147. for ($i = 0; $i < count($checkbox);$i++) {
  148. $query = $this->connection->prepare("UPDATE birthday SET is_delete='1' WHERE id='$checkbox[$i]'");
  149. var_dump($query);
  150. $query->execute();
  151. if ($query) {
  152. Message::message("<div class='alert alert-success' id='msg'><h3 align='center'> Data Has Been Deleted Successfully!</h3></div>");
  153. } else {
  154. Message::message("<div class='alert alert-danger' id='msg'><h3 align='center'> Data Has Not Been Deleted Successfully!</h3></div>");
  155. }
  156. Utility::redirect("multipleDelete.php");
  157. }
  158. }//end of multiple trash delete
  159. public function deleteMultiple($id)
  160. {
  161. $checkbox = $_POST['checkbox'];
  162. for ($i = 0; $i < count($checkbox);$i++)
  163. {
  164. $query =$this->connection->prepare("delete from birthday WHERE id='$checkbox[$i]'");
  165. var_dump($query);
  166. $query->execute();
  167. if ($query)
  168. {
  169. Message::message("<div class=\"alert alert-info\"><strong>Deleted!</strong> Selected Data has been deleted successfully.</div>");
  170. Utility::redirect("index.php");
  171. }
  172. else
  173. {
  174. Message::message("<div class=\"alert alert-info\"> <strong>Deleted!</strong> Selected Data has not been deleted successfully.</div>");
  175. Utility::redirect("index.php");
  176. }
  177. }
  178. }
  179. public function recover($id){
  180. $dbh=$this->connection;
  181. //var_dump($values);
  182. $query='UPDATE birthday SET is_delete = "0" where id ='.$id;
  183. $sth=$dbh->prepare($query);
  184. $sth->execute();
  185. if($sth)
  186. { Message::message("<div id='msg'><h3 align='center'>
  187. <br> Data Has Been recovered Successfully!</h3></div>");
  188. }
  189. else
  190. Message::message("<div id='msg'></div><h3 align='center'> <br> Data Hasn't Been recovered !</h3></div>");
  191. Utility::redirect('recovery.php');
  192. }///EOF recover
  193. public function mulRecover()
  194. {
  195. $checkbox = $_POST['checkbox'];
  196. /* var_dump($checkbox);die();*/
  197. for ($i = 0; $i < count($checkbox);$i++) {
  198. $query = $this->connection->prepare("UPDATE birthday SET is_delete='0' WHERE id='$checkbox[$i]'");
  199. var_dump($query);
  200. $query->execute();
  201. if ($query) {
  202. Message::message("<div class='alert alert-success' id='msg'><h3 align='center'> Data Has Been Recoverd Successfully!</h3></div>");
  203. } else {
  204. Message::message("<div class='alert alert-danger' id='msg'><h3 align='center'>[ BookTitle: $this->book_title ] , [ AuthorName: $this->author_name ] <br> Data Has Not Been Deleted Successfully!</h3></div>");
  205. }
  206. Utility::redirect("recovery.php");
  207. }
  208. }//EOF mulRecover
  209. public function indexPaginator($page=0,$itemsPerPage=3){
  210. $start = (($page-1) * $itemsPerPage);
  211. $sql = "SELECT * from birthday WHERE is_delete = '0' LIMIT $start,$itemsPerPage";
  212. $STH = $this->connection->query($sql);
  213. $STH->setFetchMode(PDO::FETCH_OBJ);
  214. $arrSomeData = $STH->fetchAll();
  215. return $arrSomeData;
  216. }// end of indexPaginator()
  217. public function search($requestArray){
  218. $sql = "";
  219. if( isset($requestArray['byName']) && isset($requestArray['byBirthday']) ) $sql = "SELECT * FROM `birthday` WHERE `is_delete` ='0' AND (`name` LIKE '%".$requestArray['search']."%' OR `birthday` LIKE '%".$requestArray['search']."%')";
  220. if(isset($requestArray['byName']) ) $sql = "SELECT * FROM `birthday` WHERE `is_delete` ='0' AND `name` LIKE '%".$requestArray['search']."%'";
  221. if(!isset($requestArray['byBirthday']) ) $sql = "SELECT * FROM `birthday` WHERE `is_delete` ='0' AND `birthday` LIKE '%".$requestArray['search']."%'";
  222. $STH = $this->connection->query($sql);
  223. $STH->setFetchMode(PDO::FETCH_OBJ);
  224. $allData = $STH->fetchAll();
  225. return $allData;
  226. }// end of search()
  227. public function getAllKeywords()
  228. {
  229. $_allKeywords = array();
  230. $WordsArr = array();
  231. $sql = "SELECT * FROM `birthday` WHERE `is_delete` ='0'";
  232. $STH = $this->connection->query($sql);
  233. $STH->setFetchMode(PDO::FETCH_OBJ);
  234. // for each search field block start
  235. $allData= $STH->fetchAll();
  236. foreach ($allData as $oneData) {
  237. $_allKeywords[] = trim($oneData->name);
  238. }
  239. $STH = $this->connection->query($sql);
  240. $STH->setFetchMode(PDO::FETCH_OBJ);
  241. $allData= $STH->fetchAll();
  242. foreach ($allData as $oneData) {
  243. $eachString= strip_tags($oneData->name);
  244. $eachString=trim( $eachString);
  245. $eachString= preg_replace( "/\r|\n/", " ", $eachString);
  246. $eachString= str_replace("&nbsp;","", $eachString);
  247. $WordsArr = explode(" ", $eachString);
  248. foreach ($WordsArr as $eachWord){
  249. $_allKeywords[] = trim($eachWord);
  250. }
  251. }
  252. // for each search field block end
  253. // for each search field block start
  254. $STH = $this->connection->query($sql);
  255. $STH->setFetchMode(PDO::FETCH_OBJ);
  256. $allData= $STH->fetchAll();
  257. foreach ($allData as $oneData) {
  258. $_allKeywords[] = trim($oneData->birthday);
  259. }
  260. $STH = $this->connection->query($sql);
  261. $STH->setFetchMode(PDO::FETCH_OBJ);
  262. $all_books= $STH->fetchAll();
  263. foreach ($allData as $oneData) {
  264. $eachString= strip_tags($oneData->birthday);
  265. $eachString=trim( $eachString);
  266. $eachString= preg_replace( "/\r|\n/", " ", $eachString);
  267. $eachString= str_replace("&nbsp;","", $eachString);
  268. $WordsArr = explode(" ", $eachString);
  269. foreach ($WordsArr as $eachWord){
  270. $_allKeywords[] = trim($eachWord);
  271. }
  272. }
  273. // for each search field block end*/
  274. return array_unique($_allKeywords);
  275. }// get all keywords
  276. }