PageRenderTime 41ms CodeModel.GetById 11ms RepoModel.GetById 0ms app.codeStats 0ms

/api/db/Page.php

https://gitlab.com/x33n/respond
PHP | 788 lines | 536 code | 225 blank | 27 comment | 16 complexity | 3e054110ff3c7883bff5ffc4d70a6774 MD5 | raw file
  1. <?php
  2. // Page DAO
  3. class Page{
  4. // adds a page
  5. public static function Add($friendlyId, $name, $description, $layout, $stylesheet, $pageTypeId, $siteId, $lastModifiedBy){
  6. try{
  7. $db = DB::get();
  8. $pageId = uniqid();
  9. // cleanup friendlyid (escape, trim, remove spaces, tolower)
  10. $friendlyId = trim($friendlyId);
  11. $friendlyId = str_replace(' ', '', $friendlyId);
  12. $friendlyId = strtolower($friendlyId);
  13. // set defaults
  14. $isActive = 0;
  15. $image = '';
  16. $keywords = '';
  17. $tags = '';
  18. $callout = '';
  19. $timestamp = gmdate("Y-m-d H:i:s", time());
  20. $q = "INSERT INTO Pages (PageId, FriendlyId, Name, Description, Keywords, Tags, Callout, Layout, Stylesheet, PageTypeId, SiteId, LastModifiedBy, LastModifiedDate, Created, IsActive, Image)
  21. VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)";
  22. $s = $db->prepare($q);
  23. $s->bindParam(1, $pageId);
  24. $s->bindParam(2, $friendlyId);
  25. $s->bindParam(3, $name);
  26. $s->bindParam(4, $description);
  27. $s->bindParam(5, $keywords);
  28. $s->bindParam(6, $tags);
  29. $s->bindParam(7, $callout);
  30. $s->bindParam(8, $layout);
  31. $s->bindParam(9, $stylesheet);
  32. $s->bindParam(10, $pageTypeId);
  33. $s->bindParam(11, $siteId);
  34. $s->bindParam(12, $lastModifiedBy);
  35. $s->bindParam(13, $timestamp);
  36. $s->bindParam(14, $timestamp);
  37. $s->bindParam(15, $isActive);
  38. $s->bindParam(16, $image);
  39. $s->execute();
  40. return array(
  41. 'PageId' => $pageId,
  42. 'FriendlyId' => $friendlyId,
  43. 'Name' => $name,
  44. 'Description' => $description,
  45. 'Keywords' => $keywords,
  46. 'Callout' => $callout,
  47. 'Tags' => $tags,
  48. 'Layout' => $layout,
  49. 'Stylesheet' => $stylesheet,
  50. 'PageTypeId' => $pageTypeId,
  51. 'SiteId' => $siteId,
  52. 'LastModifiedBy' => $lastModifiedBy,
  53. 'IsActive' => $isActive,
  54. 'Image' => $image,
  55. 'Thumb' => '',
  56. 'LastModifiedDate' => $timestamp,
  57. );
  58. } catch(PDOException $e){
  59. die('[Page::Add] PDO Error: '.$e->getMessage());
  60. }
  61. }
  62. // determines whether a friendlyId is unique
  63. public static function IsFriendlyIdUnique($friendlyId, $pageTypeId, $siteId){
  64. try{
  65. $db = DB::get();
  66. // cleanup friendlyid (escape, trim, remove spaces, tolower)
  67. $friendlyId = trim($friendlyId);
  68. $friendlyId = str_replace(' ', '', $friendlyId);
  69. $friendlyId = strtolower($friendlyId);
  70. $count = 0;
  71. $q ="SELECT Count(*) as Count FROM Pages where FriendlyId = ? AND PageTypeId = ? AND SiteId=?";
  72. $s = $db->prepare($q);
  73. $s->bindParam(1, $friendlyId);
  74. $s->bindParam(2, $pageTypeId);
  75. $s->bindParam(3, $siteId);
  76. $s->execute();
  77. $count = $s->fetchColumn();
  78. if($count==0){
  79. return true;
  80. }
  81. else{
  82. return false;
  83. }
  84. } catch(PDOException $e){
  85. die('[Page::IsFriendlyIdUnique] PDO Error: '.$e->getMessage());
  86. }
  87. }
  88. // edits a page
  89. public static function EditImage($pageId, $image, $lastModifiedBy){
  90. try{
  91. $db = DB::get();
  92. $timestamp = gmdate("Y-m-d H:i:s", time());
  93. $q = "UPDATE Pages SET
  94. Image = ?,
  95. LastModifiedBy = ?,
  96. LastModifiedDate = ?
  97. WHERE PageId = ?";
  98. $s = $db->prepare($q);
  99. $s->bindParam(1, $image);
  100. $s->bindParam(2, $lastModifiedBy);
  101. $s->bindParam(3, $timestamp);
  102. $s->bindParam(4, $pageId);
  103. $s->execute();
  104. } catch(PDOException $e){
  105. die('[Page::EditImage] PDO Error: '.$e->getMessage());
  106. }
  107. }
  108. // edits tags for a page
  109. public static function EditTags($pageId, $tags, $lastModifiedBy){
  110. try{
  111. $db = DB::get();
  112. $timestamp = gmdate("Y-m-d H:i:s", time());
  113. $q = "UPDATE Pages SET
  114. Tags = ?,
  115. LastModifiedBy = ?,
  116. LastModifiedDate = ?
  117. WHERE PageId = ?";
  118. $s = $db->prepare($q);
  119. $s->bindParam(1, $tags);
  120. $s->bindParam(2, $lastModifiedBy);
  121. $s->bindParam(3, $timestamp);
  122. $s->bindParam(4, $pageId);
  123. $s->execute();
  124. } catch(PDOException $e){
  125. die('[Page::EditTags] PDO Error: '.$e->getMessage());
  126. }
  127. }
  128. // edits content for a page
  129. public static function EditContent($pageId, $content, $lastModifiedBy){
  130. try{
  131. $db = DB::get();
  132. $timestamp = gmdate("Y-m-d H:i:s", time());
  133. $q = "UPDATE Pages SET
  134. Content = ?,
  135. LastModifiedBy = ?,
  136. LastModifiedDate = ?
  137. WHERE PageId = ?";
  138. $s = $db->prepare($q);
  139. $s->bindParam(1, $content);
  140. $s->bindParam(2, $lastModifiedBy);
  141. $s->bindParam(3, $timestamp);
  142. $s->bindParam(4, $pageId);
  143. $s->execute();
  144. } catch(PDOException $e){
  145. die('[Page::EditContent] PDO Error: '.$e->getMessage());
  146. }
  147. }
  148. // edits draft for a page
  149. public static function EditDraft($pageId, $draft, $lastModifiedBy){
  150. try{
  151. $db = DB::get();
  152. $timestamp = gmdate("Y-m-d H:i:s", time());
  153. $q = "UPDATE Pages SET
  154. Draft = ?,
  155. LastModifiedBy = ?,
  156. LastModifiedDate = ?
  157. WHERE PageId = ?";
  158. $s = $db->prepare($q);
  159. $s->bindParam(1, $draft);
  160. $s->bindParam(2, $lastModifiedBy);
  161. $s->bindParam(3, $timestamp);
  162. $s->bindParam(4, $pageId);
  163. $s->execute();
  164. } catch(PDOException $e){
  165. die('[Page::EditDraft] PDO Error: '.$e->getMessage());
  166. }
  167. }
  168. // edits the timestamp for a page
  169. public static function EditTimestamp($pageId, $lastModifiedBy){
  170. try{
  171. $db = DB::get();
  172. $timestamp = gmdate("Y-m-d H:i:s", time());
  173. $q = "UPDATE Pages SET
  174. LastModifiedBy = ?,
  175. LastModifiedDate = ?
  176. WHERE PageId = ?";
  177. $s = $db->prepare($q);
  178. $s->bindParam(1, $lastModifiedBy);
  179. $s->bindParam(2, $timestamp);
  180. $s->bindParam(3, $pageId);
  181. $s->execute();
  182. } catch(PDOException $e){
  183. die('[Page::EditTimestamp] PDO Error: '.$e->getMessage());
  184. }
  185. }
  186. // edits the settings for a page
  187. public static function EditSettings($pageId, $name, $friendlyId, $description, $keywords, $callout, $beginDate, $endDate, $timeZone, $location, $latitude, $longitude, $layout, $stylesheet, $includeOnly, $lastModifiedBy){
  188. $gm_bdate = null;
  189. if(trim($beginDate) != ''){
  190. $time = strtotime($beginDate.' '.$timeZone);
  191. $gm_bdate = gmdate("Y-m-d H:i:s", $time);
  192. }
  193. $gm_edate = null;
  194. if(trim($endDate) != ''){
  195. $time = strtotime($endDate.' '.$timeZone);
  196. $gm_edate = gmdate("Y-m-d H:i:s", $time);
  197. }
  198. $latLong = '';
  199. if($latitude != '' && $longitude != ''){
  200. $latLong = 'POINT(' . $latitude . " " . $longitude . ')';
  201. }
  202. try{
  203. $db = DB::get();
  204. $timestamp = gmdate("Y-m-d H:i:s", time());
  205. $q = "UPDATE Pages
  206. SET Name = ?,
  207. FriendlyId = ?,
  208. Description = ?,
  209. Keywords = ?,
  210. Callout = ?,
  211. BeginDate = ?,
  212. EndDate = ?,
  213. Location = ?,
  214. LatLong = PointFromText(?),
  215. Layout = ?,
  216. Stylesheet = ?,
  217. IncludeOnly = ?,
  218. LastModifiedBy = ?,
  219. LastModifiedDate = ?
  220. WHERE PageId = ?";
  221. $s = $db->prepare($q);
  222. $s->bindParam(1, $name);
  223. $s->bindParam(2, $friendlyId);
  224. $s->bindParam(3, $description);
  225. $s->bindParam(4, $keywords);
  226. $s->bindParam(5, $callout);
  227. $s->bindParam(6, $gm_bdate);
  228. $s->bindParam(7, $gm_edate);
  229. $s->bindParam(8, $location);
  230. $s->bindParam(9, $latLong);
  231. $s->bindParam(10, $layout);
  232. $s->bindParam(11, $stylesheet);
  233. $s->bindParam(12, $includeOnly);
  234. $s->bindParam(13, $lastModifiedBy);
  235. $s->bindParam(14, $timestamp);
  236. $s->bindParam(15, $pageId);
  237. $s->execute();
  238. } catch(PDOException $e){
  239. die('[Page::EditSettings] PDO Error: '.$e->getMessage());
  240. }
  241. }
  242. // edits the settings for a page
  243. public static function EditLayout($pageId, $layout, $lastModifiedBy){
  244. try{
  245. $db = DB::get();
  246. $timestamp = gmdate("Y-m-d H:i:s", time());
  247. $q = "UPDATE Pages
  248. SET
  249. Layout = ?,
  250. LastModifiedBy = ?,
  251. LastModifiedDate = ?
  252. WHERE PageId = ?";
  253. $s = $db->prepare($q);
  254. $s->bindParam(1, $layout);
  255. $s->bindParam(2, $lastModifiedBy);
  256. $s->bindParam(3, $timestamp);
  257. $s->bindParam(4, $pageId);
  258. $s->execute();
  259. } catch(PDOException $e){
  260. die('[Page::EditLayout PDO Error: '.$e->getMessage());
  261. }
  262. }
  263. // edits IsActive
  264. public static function SetIsActive($pageId, $isActive){
  265. try{
  266. $db = DB::get();
  267. $q = "UPDATE Pages
  268. SET IsActive = ?
  269. WHERE PageId = ?";
  270. $s = $db->prepare($q);
  271. $s->bindParam(1, $isActive);
  272. $s->bindParam(2, $pageId);
  273. $s->execute();
  274. } catch(PDOException $e){
  275. die('[Page::SetIsActive] PDO Error: '.$e->getMessage());
  276. }
  277. }
  278. // edits IncludeOnly
  279. public static function SetIncludeOnly($pageId, $includeOnly){
  280. try{
  281. $db = DB::get();
  282. $q = "UPDATE Pages
  283. SET IncludeOnly = ?
  284. WHERE PageId = ?";
  285. $s = $db->prepare($q);
  286. $s->bindParam(1, $includeOnly);
  287. $s->bindParam(2, $pageId);
  288. $s->execute();
  289. } catch(PDOException $e){
  290. die('[Page::SetIncludeOnly] PDO Error: '.$e->getMessage());
  291. }
  292. }
  293. // removes a page
  294. public static function Remove($pageId){
  295. try{
  296. $db = DB::get();
  297. $q = "DELETE FROM Pages WHERE PageId = ?";
  298. $s = $db->prepare($q);
  299. $s->bindParam(1, $pageId);
  300. $s->execute();
  301. } catch(PDOException $e){
  302. die('[Page::Remove] PDO Error: '.$e->getMessage());
  303. }
  304. }
  305. // remove draft
  306. public static function RemoveDraft($pageId){
  307. try{
  308. $db = DB::get();
  309. $q = "UPDATE Pages
  310. SET Draft = NULL
  311. WHERE PageId = ?";
  312. $s = $db->prepare($q);
  313. $s->bindParam(1, $pageId);
  314. $s->execute();
  315. } catch(PDOException $e){
  316. die('[Page::RemoveDraft] PDO Error: '.$e->getMessage());
  317. }
  318. }
  319. // gets all pages
  320. public static function GetPages($siteId, $pageTypeId, $pageSize, $pageNo, $orderBy, $activeOnly = false){
  321. try{
  322. $db = DB::get();
  323. $activeClause = '';
  324. if($activeOnly==true){
  325. $activeClause = ' AND Pages.IsActive=1';
  326. }
  327. $next = $pageSize * $pageNo;
  328. $q = "SELECT Pages.PageId, Pages.FriendlyId, Pages.Name,
  329. Pages.Description, Pages.Keywords,
  330. Pages.Content, Pages.Draft, Pages.Callout,
  331. Pages.BeginDate, Pages.EndDate, Pages.Location, AsText(Pages.LatLong),
  332. Pages.Layout, Pages.Stylesheet, Pages.IncludeOnly,
  333. Pages.SiteId,
  334. Pages.LastModifiedBy, Pages.LastModifiedDate,
  335. Pages.IsActive, Pages.Image, Pages.PageTypeId,
  336. Users.FirstName, Users.LastName, Users.PhotoUrl
  337. FROM Pages LEFT JOIN Users ON Pages.LastModifiedBy = Users.UserId
  338. WHERE Pages.SiteId = ? AND Pages.PageTypeId = ?".$activeClause." ORDER BY ".$orderBy." LIMIT ?, ?";
  339. $s = $db->prepare($q);
  340. $s->bindParam(1, $siteId);
  341. $s->bindParam(2, $pageTypeId);
  342. $s->bindValue(3, intval($next), PDO::PARAM_INT);
  343. $s->bindValue(4, intval($pageSize), PDO::PARAM_INT);
  344. $s->execute();
  345. $arr = array();
  346. while($row = $s->fetch(PDO::FETCH_ASSOC)) {
  347. array_push($arr, $row);
  348. }
  349. return $arr;
  350. } catch(PDOException $e){
  351. die('[Page::GetPages]'.'[next='.$next.'pageSize='.$pageSize.']---PDO Error: '.$e->getMessage().'trace='.$e->getTraceAsString());
  352. }
  353. }
  354. // gets all pages for dates
  355. public static function GetPagesForDates($siteId, $pageTypeId, $pageSize, $pageNo, $orderBy, $activeOnly, $beginDate, $endDate){
  356. try{
  357. $db = DB::get();
  358. $activeClause = '';
  359. if($activeOnly==true){
  360. $activeClause = ' AND Pages.IsActive=1';
  361. }
  362. $next = $pageSize * $pageNo;
  363. $q = "SELECT Pages.PageId, Pages.FriendlyId, Pages.Name,
  364. Pages.Description, Pages.Keywords,
  365. Pages.Content, Pages.Draft, Pages.Callout,
  366. Pages.BeginDate, Pages.EndDate, Pages.Location, AsText(Pages.LatLong),
  367. Pages.Layout, Pages.Stylesheet, Pages.IncludeOnly,
  368. Pages.SiteId,
  369. Pages.LastModifiedBy, Pages.LastModifiedDate,
  370. Pages.IsActive, Pages.Image, Pages.PageTypeId,
  371. Users.FirstName, Users.LastName, Users.PhotoUrl
  372. FROM Pages LEFT JOIN Users ON Pages.LastModifiedBy = Users.UserId
  373. WHERE Pages.SiteId = ? AND Pages.PageTypeId = ? AND"
  374. ." ((Pages.BeginDate BETWEEN '".$beginDate."' AND '".$endDate."') OR"
  375. ." (Pages.EndDate BETWEEN '".$beginDate."' AND '".$endDate."'))"
  376. .$activeClause." ORDER BY "
  377. .$orderBy." LIMIT ?, ?";
  378. $s = $db->prepare($q);
  379. $s->bindParam(1, $siteId);
  380. $s->bindParam(2, $pageTypeId);
  381. $s->bindValue(3, intval($next), PDO::PARAM_INT);
  382. $s->bindValue(4, intval($pageSize), PDO::PARAM_INT);
  383. $s->execute();
  384. $arr = array();
  385. while($row = $s->fetch(PDO::FETCH_ASSOC)) {
  386. array_push($arr, $row);
  387. }
  388. return $arr;
  389. } catch(PDOException $e){
  390. die('[Page::GetPages]'.'[next='.$next.'pageSize='.$pageSize.']---PDO Error: '.$e->getMessage().'trace='.$e->getTraceAsString());
  391. }
  392. }
  393. // get the total number of pages
  394. public static function GetPagesCount($siteId, $pageTypeId, $activeOnly = false){
  395. try{
  396. $db = DB::get();
  397. $activeClause = '';
  398. if($activeOnly==true){
  399. $activeClause = ' AND Pages.IsActive=1';
  400. }
  401. $count = 0;
  402. $q = "SELECT Count(*) as Count
  403. FROM Pages
  404. WHERE SiteId = ? AND PageTypeId = ?".$activeClause;
  405. $s = $db->prepare($q);
  406. $s->bindParam(1, $siteId);
  407. $s->bindParam(2, $pageTypeId);
  408. $s->execute();
  409. $count = $s->fetchColumn();
  410. return $count;
  411. } catch(PDOException $e){
  412. die('[Page::GetPagesCount] PDO Error: '.$e->getMessage());
  413. }
  414. }
  415. // Gets all
  416. public static function GetPagesForSite($siteId, $activeOnly = false){
  417. try{
  418. $db = DB::get();
  419. $activeClause = '';
  420. if($activeOnly==true){
  421. $activeClause = ' AND Pages.IsActive=1';
  422. }
  423. $q = "SELECT Pages.PageId, Pages.FriendlyId, Pages.Name,
  424. Pages.Description, Pages.Keywords, Pages.Tags,
  425. Pages.Content, Pages.Draft, Pages.Callout,
  426. Pages.BeginDate, Pages.EndDate, Pages.Location, AsText(Pages.LatLong) AS LatLong,
  427. Pages.Layout, Pages.Stylesheet, Pages.IncludeOnly,
  428. Pages.SiteId,
  429. Pages.LastModifiedBy, Pages.LastModifiedDate,
  430. Pages.IsActive, Pages.Image, Pages.PageTypeId,
  431. Users.FirstName, Users.LastName, Users.PhotoUrl
  432. FROM Pages LEFT JOIN Users ON Pages.LastModifiedBy = Users.UserId
  433. WHERE Pages.SiteId = ?".$activeClause.
  434. " ORDER BY Pages.Name ASC";
  435. //echo $q;
  436. $s = $db->prepare($q);
  437. $s->bindParam(1, $siteId);
  438. $s->execute();
  439. $arr = array();
  440. while($row = $s->fetch(PDO::FETCH_ASSOC)) {
  441. array_push($arr, $row);
  442. }
  443. return $arr;
  444. } catch(PDOException $e){
  445. die('[Page::GetPagesForSite] PDO Error: '.$e->getMessage());
  446. }
  447. }
  448. // gets all page for a given $site, pageTypeId
  449. public static function GetPagesForPageType($siteId, $pageTypeId){
  450. try{
  451. $db = DB::get();
  452. $q = "SELECT Pages.PageId, Pages.FriendlyId, Pages.Name, Pages.Description, Pages.Keywords, Pages.Tags,
  453. Pages.Content, Pages.Draft, Pages.Callout,
  454. Pages.BeginDate, Pages.EndDate, Pages.Location, AsText(Pages.LatLong) AS LatLong, Pages.IncludeOnly,
  455. Pages.SiteId,
  456. Pages.LastModifiedBy, Pages.LastModifiedDate,
  457. Pages.IsActive, Pages.Image, Pages.PageTypeId,
  458. Users.FirstName, Users.LastName, Users.PhotoUrl
  459. FROM Users, Pages
  460. WHERE Pages.LastModifiedBy = Users.UserId AND Pages.SiteId = ? AND Pages.PageTypeId = ?
  461. ORDER BY Pages.Name ASC";
  462. $s = $db->prepare($q);
  463. $s->bindParam(1, $siteId);
  464. $s->bindParam(2, $pageTypeId);
  465. $s->execute();
  466. $arr = array();
  467. while($row = $s->fetch(PDO::FETCH_ASSOC)) {
  468. array_push($arr, $row);
  469. }
  470. return $arr;
  471. } catch(PDOException $e){
  472. die('[Page::GetPagesForPageType] PDO Error: '.$e->getMessage());
  473. }
  474. }
  475. // gets all pages for a given $site, pageTypeId
  476. public static function GetRSS($siteId, $pageTypeId){
  477. try{
  478. $db = DB::get();
  479. $q = "SELECT Pages.PageId, Pages.FriendlyId, Pages.Name, Pages.Description,
  480. Pages.SiteId,
  481. Pages.LastModifiedBy, Pages.LastModifiedDate,
  482. Pages.IsActive, Pages.Image, Pages.PageTypeId,
  483. Users.FirstName, Users.LastName
  484. FROM Users, Pages
  485. WHERE Pages.LastModifiedBy = Users.UserId AND Pages.SiteId = ? AND Pages.PageTypeId = ?
  486. ORDER BY Pages.LastModifiedDate DESC";
  487. $s = $db->prepare($q);
  488. $s->bindParam(1, $siteId);
  489. $s->bindParam(2, $pageTypeId);
  490. $s->execute();
  491. $arr = array();
  492. while($row = $s->fetch(PDO::FETCH_ASSOC)) {
  493. array_push($arr, $row);
  494. }
  495. return $arr;
  496. } catch(PDOException $e){
  497. die('[Page::GetRSS] PDO Error: '.$e->getMessage());
  498. }
  499. }
  500. // gets a page for a specific $friendlyId and $siteId
  501. public static function GetByFriendlyId($friendlyId, $pageTypeId, $siteId){
  502. try{
  503. $db = DB::get();
  504. $q = "SELECT Pages.PageId, Pages.FriendlyId, Pages.Name, Pages.Description, Pages.Keywords, Pages.Tags,
  505. Pages.Content, Pages.Draft, Pages.Callout,
  506. Pages.BeginDate, Pages.EndDate, Pages.Location, AsText(Pages.LatLong) AS LatLong,
  507. Pages.Layout, Pages.Stylesheet,
  508. Pages.PageTypeId, Pages.SiteId, Pages.LastModifiedBy, Pages.LastModifiedDate,
  509. Pages.IsActive, Pages.Image, Pages.IncludeOnly
  510. FROM Pages WHERE FriendlyId=? AND PageTypeId=? AND SiteId=?";
  511. $s = $db->prepare($q);
  512. $s->bindParam(1, $friendlyId);
  513. $s->bindParam(2, $pageTypeId);
  514. $s->bindParam(3, $siteId);
  515. $s->execute();
  516. $row = $s->fetch(PDO::FETCH_ASSOC);
  517. if($row){
  518. return $row;
  519. }
  520. } catch(PDOException $e){
  521. die('[Page::GetByFriendlyId] PDO Error: '.$e->getMessage());
  522. }
  523. }
  524. // gets a page by its url
  525. public static function GetByUrl($url, $siteId){
  526. if(strpos($url, '/') !== false){ // get by
  527. $arr = explode('/', $url);
  528. $pageTypeFriendlyId = $arr[0];
  529. $pageFriendlyId = $arr[1];
  530. $pageType = PageType::GetByFriendlyId($pageTypeFriendlyId, $siteId);
  531. $page = Page::GetByFriendlyId($pageFriendlyId, $pageType['PageTypeId'], $siteId);
  532. return $page;
  533. }
  534. else{
  535. $pageFriendlyId = $url;
  536. $page = Page::GetByFriendlyId($pageFriendlyId, -1, $siteId);
  537. return $page;
  538. }
  539. }
  540. // gets a page for a specific $pageId
  541. public static function GetByPageId($pageId){
  542. try{
  543. $db = DB::get();
  544. $q = "SELECT Pages.PageId, Pages.FriendlyId, Pages.Name, Pages.Description, Pages.Keywords, Pages.Tags,
  545. Pages.Content, Pages.Draft, Pages.Callout,
  546. Pages.BeginDate, Pages.EndDate, Pages.Location, AsText(Pages.LatLong) AS LatLong,
  547. Pages.Layout, Pages.Stylesheet,
  548. Pages.PageTypeId, Pages.SiteId, Pages.LastModifiedBy, Pages.LastModifiedDate,
  549. Pages.IsActive, Pages.Image, Pages.IncludeOnly
  550. FROM Pages WHERE PageId=?";
  551. $s = $db->prepare($q);
  552. $s->bindParam(1, $pageId);
  553. $s->execute();
  554. $row = $s->fetch(PDO::FETCH_ASSOC);
  555. if($row){
  556. return $row;
  557. }
  558. } catch(PDOException $e){
  559. die('[Page::GetByPageId] PDO Error: '.$e->getMessage());
  560. }
  561. }
  562. }
  563. ?>