1 /**
2 * Copyright © Webd 2018
3 * License: MIT (https://github.com/DiamondMVC/Webd/blob/master/LICENSE)
4 * Author: Jacob Jensen (bausshf)
5 */
6 module webd.models.database.webpage;
7 
8 import diamond.database;
9 
10 /// Db representation of a page.
11 final class WebdWebPage : MySql.MySqlModel!"webd_web_pages"
12 {
13   public:
14   /// The id of the page.
15   @DbId ulong id;
16   /// The website.
17   ulong website;
18   /// The parent page.
19   @DbNull ulong parentPage;
20   /// The sort order.
21   ulong sortOrder;
22   /// The name.
23   string name;
24   /// The route.
25   @DbNull string route;
26   /// The css classes.
27   string cssClasses;
28   /// Boolean determining whether it should be hidden in navigation.
29   bool navigationHide;
30   /// An url to redirect to when this page is met.
31   @DbNull string redirectTo;
32   /// The title of the page.
33   string title;
34   /// The keywords.
35   @DbNull string keywords;
36   /// The description of the page.
37   @DbNull string description;
38   /// Boolean determining whether the page is searchable by search engines.
39   bool searchable;
40   /// Boolean determining whether the page is published or not.
41   bool published;
42   /// Boolean determining whether the page has been deleted or not.
43   bool deleted;
44   /// The user who last updated the page.
45   ulong updateUser;
46   /// The item associated with the page.
47   ulong itemId;
48   /// The item list associated with the page.
49   ulong itemListId;
50   /// The module associated with the page.
51   ulong moduleId;
52   /// The time the page was last updated.
53   @DbTimestamp DateTime timestamp;
54 
55   this() { super(); }
56 }