├── config ├── email.php ├── secret.key ├── database.php ├── production_key.php ├── Migrations │ ├── 20220407065300_CreateBlogTypes.php │ └── 20220407065037_CreateSettings.php └── schema │ └── i18n.sql ├── docs ├── .nojekyll ├── _404.md ├── CNAME ├── _media │ ├── favicon.png │ ├── collections.png │ ├── singletons.png │ ├── add-new-singleton.png │ ├── purple-logo-small.png │ ├── add-new-collection.png │ ├── add-data-to-collection.png │ └── add-data-to-singleton.png ├── customizing.md ├── debug-mode.md ├── _coverpage.md ├── cli-model.md ├── migrate-seed-db.md ├── sign-in-to-purple.md ├── cli-key.md ├── generate-documentation.md ├── cli-database.md ├── server-requirements.md ├── cli-theme.md └── folder-permission.md ├── logs ├── cli-debug.log ├── debug.log ├── error.log └── purple.log ├── tmp ├── sessions │ └── empty ├── tests │ └── empty ├── cache │ ├── models │ │ └── empty │ └── persistent │ │ └── empty └── html │ ├── blog.blogs.php │ ├── custom.code.php │ └── general.about-us.php ├── webroot ├── js │ └── empty ├── master-assets │ ├── plugins │ │ ├── ace │ │ │ └── ace │ │ │ │ └── mode-text.js │ │ ├── leaflet │ │ │ └── images │ │ │ │ ├── layers.png │ │ │ │ ├── layers-2x.png │ │ │ │ ├── marker-icon.png │ │ │ │ ├── marker-icon-2x.png │ │ │ │ └── marker-shadow.png │ │ ├── froala-editor │ │ │ ├── img │ │ │ │ └── photo1.jpg │ │ │ ├── html │ │ │ │ └── 3rd-party │ │ │ │ │ └── require_js │ │ │ │ │ └── js │ │ │ │ │ └── app.js │ │ │ └── css │ │ │ │ ├── plugins │ │ │ │ ├── fullscreen.min.css │ │ │ │ ├── line_breaker.min.css │ │ │ │ ├── draggable.min.css │ │ │ │ └── fullscreen.css │ │ │ │ └── third_party │ │ │ │ └── image_tui.min.css │ │ ├── intl-tel-input │ │ │ └── img │ │ │ │ ├── flags.png │ │ │ │ └── flags@2x.png │ │ ├── mdeditor │ │ │ └── fonts │ │ │ │ ├── mdeditor.eot │ │ │ │ ├── mdeditor.ttf │ │ │ │ └── mdeditor.woff │ │ ├── jstree │ │ │ └── themes │ │ │ │ ├── default │ │ │ │ ├── 32px.png │ │ │ │ ├── 40px.png │ │ │ │ └── throbber.gif │ │ │ │ └── default-dark │ │ │ │ ├── 32px.png │ │ │ │ ├── 40px.png │ │ │ │ └── throbber.gif │ │ ├── password │ │ │ ├── passwordstrength.jpg │ │ │ └── password.min.css │ │ ├── froala-blocks │ │ │ └── images │ │ │ │ ├── slider │ │ │ │ ├── 1.jpg │ │ │ │ ├── 2.jpg │ │ │ │ └── 3.jpg │ │ │ │ ├── teams │ │ │ │ ├── 1.jpg │ │ │ │ ├── 2.jpg │ │ │ │ ├── 3.jpg │ │ │ │ ├── 4.jpg │ │ │ │ ├── 5.jpg │ │ │ │ ├── 6.jpg │ │ │ │ ├── 7.jpg │ │ │ │ └── 8.jpg │ │ │ │ ├── contacts │ │ │ │ ├── 1.jpg │ │ │ │ ├── 2.jpg │ │ │ │ ├── 3.jpg │ │ │ │ ├── 4.jpg │ │ │ │ └── 5.jpg │ │ │ │ ├── contents │ │ │ │ ├── 1.jpg │ │ │ │ ├── 2.jpg │ │ │ │ ├── 3.jpg │ │ │ │ ├── 4.jpg │ │ │ │ ├── 5.jpg │ │ │ │ ├── 6.jpg │ │ │ │ ├── 7.jpg │ │ │ │ ├── 8.jpg │ │ │ │ ├── 9.jpg │ │ │ │ ├── 10.jpg │ │ │ │ ├── 11.jpg │ │ │ │ ├── 12.jpg │ │ │ │ ├── 13.jpg │ │ │ │ ├── 14.jpg │ │ │ │ ├── 15.jpg │ │ │ │ ├── 16.jpg │ │ │ │ ├── 17.jpg │ │ │ │ ├── 18.jpg │ │ │ │ ├── 19.jpg │ │ │ │ ├── 20.jpg │ │ │ │ ├── 21.jpg │ │ │ │ ├── 22.jpg │ │ │ │ ├── 23.jpg │ │ │ │ ├── 24.jpg │ │ │ │ ├── 25.jpg │ │ │ │ ├── 26.jpg │ │ │ │ ├── 27.jpg │ │ │ │ ├── 28.jpg │ │ │ │ ├── 29.jpg │ │ │ │ ├── 30.jpg │ │ │ │ ├── 31.jpg │ │ │ │ ├── 32.jpg │ │ │ │ ├── 33.jpg │ │ │ │ ├── 34.jpg │ │ │ │ ├── 35.jpg │ │ │ │ ├── 36.jpg │ │ │ │ └── 37.jpg │ │ │ │ ├── features │ │ │ │ ├── 1.jpg │ │ │ │ ├── 2.jpg │ │ │ │ ├── 3.jpg │ │ │ │ ├── 4.jpg │ │ │ │ ├── 5.jpg │ │ │ │ ├── 6.jpg │ │ │ │ ├── 7.jpg │ │ │ │ ├── 8.jpg │ │ │ │ ├── 9.jpg │ │ │ │ ├── 10.jpg │ │ │ │ ├── 11.jpg │ │ │ │ ├── 12.jpg │ │ │ │ ├── 13.jpg │ │ │ │ ├── 14.jpg │ │ │ │ ├── 15.jpg │ │ │ │ ├── 16.jpg │ │ │ │ ├── 17.jpg │ │ │ │ ├── 18.jpg │ │ │ │ ├── 19.jpg │ │ │ │ ├── 20.jpg │ │ │ │ ├── 21.jpg │ │ │ │ ├── 22.jpg │ │ │ │ ├── 23.jpg │ │ │ │ ├── 24.jpg │ │ │ │ ├── 25.jpg │ │ │ │ ├── 26.jpg │ │ │ │ ├── 27.jpg │ │ │ │ ├── 28.jpg │ │ │ │ ├── 29.jpg │ │ │ │ ├── 30.jpg │ │ │ │ ├── 31.jpg │ │ │ │ ├── 32.jpg │ │ │ │ └── 33.jpg │ │ │ │ ├── footers │ │ │ │ ├── 1.jpg │ │ │ │ ├── 2.jpg │ │ │ │ └── 3.jpg │ │ │ │ ├── lightbox │ │ │ │ ├── 1.jpg │ │ │ │ └── 2.jpg │ │ │ │ ├── html │ │ │ │ ├── img_bg.jpg │ │ │ │ ├── img_logo.png │ │ │ │ ├── img_tall.png │ │ │ │ ├── iphone_x.jpg │ │ │ │ ├── slider_1.jpg │ │ │ │ ├── slider_2.jpg │ │ │ │ ├── slider_3.jpg │ │ │ │ ├── img_round.png │ │ │ │ ├── colors_wide_1.jpg │ │ │ │ ├── colors_wide_2.jpg │ │ │ │ ├── colors_wide_3.jpg │ │ │ │ ├── img_very_tall.png │ │ │ │ ├── slider_carousel_1.jpg │ │ │ │ ├── slider_carousel_2.jpg │ │ │ │ ├── slider_carousel_3.jpg │ │ │ │ ├── slider_carousel_4.jpg │ │ │ │ └── slider_carousel_5.jpg │ │ │ │ └── call-to-action │ │ │ │ ├── 1.jpg │ │ │ │ ├── 10.jpg │ │ │ │ ├── 11.jpg │ │ │ │ ├── 12.jpg │ │ │ │ ├── 13.jpg │ │ │ │ ├── 14.jpg │ │ │ │ ├── 15.jpg │ │ │ │ ├── 16.jpg │ │ │ │ ├── 17.jpg │ │ │ │ ├── 18.jpg │ │ │ │ ├── 19.jpg │ │ │ │ ├── 2.jpg │ │ │ │ ├── 20.jpg │ │ │ │ ├── 21.jpg │ │ │ │ ├── 22.jpg │ │ │ │ ├── 3.jpg │ │ │ │ ├── 4.jpg │ │ │ │ ├── 5.jpg │ │ │ │ ├── 6.jpg │ │ │ │ ├── 7.jpg │ │ │ │ ├── 8.jpg │ │ │ │ └── 9.jpg │ │ ├── datatables │ │ │ ├── Buttons-1.5.2 │ │ │ │ ├── swf │ │ │ │ │ └── flashExport.swf │ │ │ │ └── css │ │ │ │ │ └── common.scss │ │ │ ├── DataTables-1.10.18 │ │ │ │ └── images │ │ │ │ │ ├── sort_asc.png │ │ │ │ │ ├── sort_both.png │ │ │ │ │ ├── sort_desc.png │ │ │ │ │ ├── sort_asc_disabled.png │ │ │ │ │ └── sort_desc_disabled.png │ │ │ └── FixedHeader-3.1.4 │ │ │ │ ├── css │ │ │ │ ├── fixedHeader.semanticui.min.css │ │ │ │ ├── fixedHeader.jqueryui.min.css │ │ │ │ ├── fixedHeader.dataTables.min.css │ │ │ │ ├── fixedHeader.semanticui.css │ │ │ │ ├── fixedHeader.jqueryui.css │ │ │ │ ├── fixedHeader.bootstrap.min.css │ │ │ │ ├── fixedHeader.bootstrap4.min.css │ │ │ │ ├── fixedHeader.foundation.min.css │ │ │ │ ├── fixedHeader.dataTables.css │ │ │ │ ├── fixedHeader.bootstrap.css │ │ │ │ ├── fixedHeader.bootstrap4.css │ │ │ │ └── fixedHeader.foundation.css │ │ │ │ └── js │ │ │ │ ├── fixedHeader.bootstrap.min.js │ │ │ │ ├── fixedHeader.foundation.min.js │ │ │ │ ├── fixedHeader.jqueryui.min.js │ │ │ │ ├── fixedHeader.semanticui.min.js │ │ │ │ └── fixedHeader.bootstrap4.min.js │ │ └── iconfonts │ │ │ └── mdi │ │ │ ├── fonts │ │ │ ├── materialdesignicons-webfont.eot │ │ │ ├── materialdesignicons-webfont.ttf │ │ │ ├── materialdesignicons-webfont.woff │ │ │ └── materialdesignicons-webfont.woff2 │ │ │ ├── scss │ │ │ ├── materialdesignicons.scss │ │ │ ├── _icons.scss │ │ │ ├── _core.scss │ │ │ ├── _functions.scss │ │ │ └── _path.scss │ │ │ ├── README.md │ │ │ └── bower.json │ ├── img │ │ ├── favicon.png │ │ ├── mailchimp.png │ │ ├── mailchimp-icon.png │ │ ├── icons │ │ │ ├── icon-image.png │ │ │ ├── icon-video.png │ │ │ └── icon-document.png │ │ ├── purple-dashboard.png │ │ ├── purple-logo-small.png │ │ ├── default-theme-image.png │ │ ├── default-singleton-image.png │ │ └── default-collection-image.png │ ├── fonts │ │ └── Ubuntu │ │ │ ├── .DS_Store │ │ │ ├── Ubuntu-Bold.eot │ │ │ ├── Ubuntu-Bold.ttf │ │ │ ├── Ubuntu-Bold.woff │ │ │ ├── Ubuntu-Bold.woff2 │ │ │ ├── Ubuntu-Light.eot │ │ │ ├── Ubuntu-Light.ttf │ │ │ ├── Ubuntu-Light.woff │ │ │ ├── Ubuntu-Light.woff2 │ │ │ ├── Ubuntu-Medium.eot │ │ │ ├── Ubuntu-Medium.ttf │ │ │ ├── Ubuntu-Medium.woff │ │ │ ├── Ubuntu-Regular.eot │ │ │ ├── Ubuntu-Regular.ttf │ │ │ ├── Ubuntu-Medium.woff2 │ │ │ ├── Ubuntu-Regular.woff │ │ │ └── Ubuntu-Regular.woff2 │ └── js │ │ ├── off-canvas.js │ │ └── file-upload.js ├── uploads │ ├── themes │ │ ├── EngageTheme │ │ │ ├── src │ │ │ │ ├── Template │ │ │ │ │ ├── Home │ │ │ │ │ │ └── index.ctp │ │ │ │ │ ├── Blogs │ │ │ │ │ │ └── ajax_send_comment.ctp │ │ │ │ │ ├── Pages │ │ │ │ │ │ ├── ajax_send_contact.ctp │ │ │ │ │ │ ├── ajax_verify_form.ctp │ │ │ │ │ │ ├── index.ctp │ │ │ │ │ │ ├── code.ctp │ │ │ │ │ │ └── home.ctp │ │ │ │ │ ├── Cell │ │ │ │ │ │ ├── Tags │ │ │ │ │ │ │ └── total_posts_in_tag.ctp │ │ │ │ │ │ └── Categories │ │ │ │ │ │ │ └── total_post.ctp │ │ │ │ │ ├── Element │ │ │ │ │ │ ├── Post │ │ │ │ │ │ │ ├── Sidebar │ │ │ │ │ │ │ │ ├── about.ctp │ │ │ │ │ │ │ │ ├── category.ctp │ │ │ │ │ │ │ │ ├── archives.ctp │ │ │ │ │ │ │ │ └── tags.ctp │ │ │ │ │ │ │ └── tags.ctp │ │ │ │ │ │ ├── head_title.ctp │ │ │ │ │ │ ├── footer.ctp │ │ │ │ │ │ └── breadcrumb.ctp │ │ │ │ │ └── Layout │ │ │ │ │ │ └── default.ctp │ │ │ │ ├── Plugin.php │ │ │ │ ├── Controller │ │ │ │ │ └── AppController.php │ │ │ │ └── Functions │ │ │ │ │ └── ThemeFunction.php │ │ │ ├── webroot │ │ │ │ ├── fonts │ │ │ │ │ ├── FontAwesome.otf │ │ │ │ │ ├── fontawesome-webfont.eot │ │ │ │ │ ├── fontawesome-webfont.ttf │ │ │ │ │ ├── fontawesome-webfont.woff │ │ │ │ │ └── fontawesome-webfont.woff2 │ │ │ │ └── blocks │ │ │ │ │ └── content.json │ │ │ └── detail.json │ │ └── CreativeTheme │ │ │ ├── src │ │ │ ├── Template │ │ │ │ ├── Element │ │ │ │ │ ├── breadcrumb.ctp │ │ │ │ │ ├── Post │ │ │ │ │ │ ├── Sidebar │ │ │ │ │ │ │ ├── about.ctp │ │ │ │ │ │ │ ├── archives.ctp │ │ │ │ │ │ │ ├── category.ctp │ │ │ │ │ │ │ ├── search.ctp │ │ │ │ │ │ │ └── tags.ctp │ │ │ │ │ │ └── tags.ctp │ │ │ │ │ ├── head_title.ctp │ │ │ │ │ └── footer.ctp │ │ │ │ ├── Pages │ │ │ │ │ ├── ajax_verify_form.ctp │ │ │ │ │ ├── ajax_send_contact.ctp │ │ │ │ │ ├── index.ctp │ │ │ │ │ ├── code.ctp │ │ │ │ │ └── home.ctp │ │ │ │ ├── Blogs │ │ │ │ │ └── ajax_send_comment.ctp │ │ │ │ └── Cell │ │ │ │ │ └── Categories │ │ │ │ │ └── total_post.ctp │ │ │ ├── Plugin.php │ │ │ └── Controller │ │ │ │ └── AppController.php │ │ │ ├── webroot │ │ │ ├── img │ │ │ │ └── preview │ │ │ │ │ └── home.jpg │ │ │ ├── fonts │ │ │ │ ├── FontAwesome.otf │ │ │ │ ├── fontawesome-webfont.eot │ │ │ │ ├── fontawesome-webfont.ttf │ │ │ │ ├── fontawesome-webfont.woff │ │ │ │ └── fontawesome-webfont.woff2 │ │ │ ├── vendor │ │ │ │ ├── font-awesome │ │ │ │ │ ├── fonts │ │ │ │ │ │ ├── FontAwesome.otf │ │ │ │ │ │ ├── fontawesome-webfont.eot │ │ │ │ │ │ ├── fontawesome-webfont.ttf │ │ │ │ │ │ ├── fontawesome-webfont.woff │ │ │ │ │ │ └── fontawesome-webfont.woff2 │ │ │ │ │ └── HELP-US-OUT.txt │ │ │ │ ├── owl.carousel │ │ │ │ │ └── assets │ │ │ │ │ │ ├── ajax-loader.gif │ │ │ │ │ │ └── owl.video.play.png │ │ │ │ └── jquery.cookie │ │ │ │ │ └── component.json │ │ │ └── blocks │ │ │ │ └── dynamic.json │ │ │ └── detail.json │ └── custom-pages │ │ └── sdf-sdfsdfsdf-1571817979.php ├── favicon.ico ├── img │ ├── cake-logo.png │ ├── cake.icon.png │ └── cake.power.gif ├── font │ ├── cakedingbats-webfont.eot │ ├── cakedingbats-webfont.ttf │ ├── cakedingbats-webfont.woff │ └── cakedingbats-webfont.woff2 ├── .htaccess └── .htaccess_secure ├── tests ├── Fixture │ └── empty ├── TestCase │ ├── View │ │ └── Helper │ │ │ └── empty │ ├── Model │ │ └── Behavior │ │ │ └── empty │ └── Controller │ │ └── Component │ │ └── empty └── bootstrap.php ├── src ├── Model │ ├── Behavior │ │ └── empty │ ├── Entity │ │ ├── Media.php │ │ ├── Setting.php │ │ ├── Visitor.php │ │ ├── MediaDoc.php │ │ ├── MediaVideo.php │ │ ├── PageTemplate.php │ │ ├── CollectionData.php │ │ ├── SingletonData.php │ │ ├── General.php │ │ ├── Message.php │ │ ├── Notification.php │ │ ├── Menu.php │ │ ├── Page.php │ │ ├── Submenu.php │ │ ├── Admin.php │ │ ├── Blog.php │ │ ├── Collection.php │ │ ├── Singleton.php │ │ └── Comment.php │ └── Table │ │ ├── SocialsTable.php │ │ ├── BlogTypesTable.php │ │ ├── PageTemplatesTable.php │ │ └── BlogsTagsTable.php ├── Template │ ├── Pages │ │ ├── home.ctp │ │ └── ajax_verify_form.ctp │ ├── Headless │ │ └── index.ctp │ ├── Sitemap │ │ ├── index.ctp │ │ └── txt │ │ │ └── robots.ctp │ ├── Setup │ │ ├── generate_ssl_key.ctp │ │ ├── ajax_database.ctp │ │ └── ajax_administrative.ctp │ ├── Api │ │ ├── Medias │ │ │ └── delete.ctp │ │ ├── Posts │ │ │ └── delete.ctp │ │ ├── Settings │ │ │ └── detail.ctp │ │ ├── Singletons │ │ │ ├── data.ctp │ │ │ └── view.ctp │ │ ├── Subscribers │ │ │ ├── add.ctp │ │ │ ├── delete.ctp │ │ │ ├── detail.ctp │ │ │ └── view.ctp │ │ ├── Visitors │ │ │ └── view.ctp │ │ ├── Collections │ │ │ ├── data.ctp │ │ │ ├── detail.ctp │ │ │ ├── view.ctp │ │ │ └── data_by_connecting.ctp │ │ ├── PostCategories │ │ │ ├── add.ctp │ │ │ ├── delete.ctp │ │ │ ├── total_post.ctp │ │ │ ├── update.ctp │ │ │ ├── detail.ctp │ │ │ ├── view.ctp │ │ │ └── view_in_page.ctp │ │ ├── PostComments │ │ │ ├── delete.ctp │ │ │ ├── send.ctp │ │ │ └── change_status.ctp │ │ ├── SocialAccounts │ │ │ ├── add.ctp │ │ │ ├── view.ctp │ │ │ ├── delete.ctp │ │ │ ├── detail.ctp │ │ │ └── update.ctp │ │ ├── Pages │ │ │ └── detail.ctp │ │ └── Navigations │ │ │ └── detail.ctp │ ├── Cell │ │ ├── Medias │ │ │ ├── next_id.ctp │ │ │ ├── previous_id.ctp │ │ │ ├── color_extract.ctp │ │ │ └── media_path.ctp │ │ ├── Collections │ │ │ ├── count_datas.ctp │ │ │ ├── field_type_name.ctp │ │ │ ├── get_connecting_collections.ctp │ │ │ ├── get_connecting_collection_data_value.ctp │ │ │ └── get_connecting_collection_datas_for_selectbox.ctp │ │ ├── Singletons │ │ │ ├── count_datas.ctp │ │ │ └── field_type_name.ctp │ │ ├── Comments │ │ │ ├── total_replies.ctp │ │ │ └── total_comment.ctp │ │ ├── Socials │ │ │ └── instagram_posts.ctp │ │ └── Notifications │ │ │ └── comment_notification.ctp │ ├── Purple │ │ ├── Authenticate │ │ │ ├── login_api.ctp │ │ │ ├── ajax_login.ctp │ │ │ ├── ajax_reset_password.ctp │ │ │ ├── ajax_verify_code.ctp │ │ │ ├── ajax_forgot_password.ctp │ │ │ ├── ajax_verify_authy_token.ctp │ │ │ └── ajax_resend_verification_code.ctp │ │ ├── Subscribers │ │ │ ├── download.ctp │ │ │ ├── ajax_add.ctp │ │ │ ├── ajax_delete.ctp │ │ │ ├── ajax_export.ctp │ │ │ ├── ajax_update.ctp │ │ │ ├── ajax_export_to_mailchimp.ctp │ │ │ └── ajax_update_mailchimp_settings.ctp │ │ ├── Admins │ │ │ ├── ajax_add.ctp │ │ │ ├── ajax_delete.ctp │ │ │ ├── ajax_update.ctp │ │ │ ├── ajax_update_password.ctp │ │ │ ├── ajax_approve_phone_number.ctp │ │ │ ├── ajax_save_profile_picture.ctp │ │ │ ├── ajax_verify_authy_token.ctp │ │ │ └── ajax_verify_phone_number.ctp │ │ ├── Blogs │ │ │ ├── ajax_add.ctp │ │ │ ├── ajax_delete.ctp │ │ │ ├── ajax_update.ctp │ │ │ ├── ajax_remove_tag.ctp │ │ │ ├── add.ctp │ │ │ └── edit.ctp │ │ ├── Pages │ │ │ ├── ajax_add.ctp │ │ │ ├── ajax_delete.ctp │ │ │ ├── ajax_save.ctp │ │ │ ├── ajax_save_block.ctp │ │ │ ├── ajax_change_status.ctp │ │ │ ├── ajax_delete_block.ctp │ │ │ ├── ajax_froala_blocks.ctp │ │ │ ├── ajax_load_saved_block.ctp │ │ │ ├── ajax_parse_json_html.ctp │ │ │ ├── ajax_save_blog_page.ctp │ │ │ ├── ajax_save_custom_page.ctp │ │ │ ├── ajax_send_contact.ctp │ │ │ ├── ajax_theme_blocks.ctp │ │ │ ├── generated_blocks.ctp │ │ │ └── ajax_load_theme_stylesheets.ctp │ │ ├── Socials │ │ │ ├── ajax_add.ctp │ │ │ ├── ajax_delete.ctp │ │ │ ├── ajax_reorder.ctp │ │ │ ├── ajax_update.ctp │ │ │ └── ajax_sharing_buttons.ctp │ │ ├── Appearance │ │ │ ├── ajax_delete.ctp │ │ │ ├── ajax_save.ctp │ │ │ ├── ajax_images_upload.ctp │ │ │ ├── ajax_update_footer.ctp │ │ │ └── ajax_save_without_crop.ctp │ │ ├── Collections │ │ │ ├── ajax_add.ctp │ │ │ ├── ajax_add_data.ctp │ │ │ ├── ajax_add_field.ctp │ │ │ ├── ajax_delete.ctp │ │ │ ├── ajax_update.ctp │ │ │ ├── ajax_delete_data.ctp │ │ │ ├── ajax_get_options.ctp │ │ │ ├── ajax_update_data.ctp │ │ │ └── ajax_get_connecting_fields.ctp │ │ ├── Comments │ │ │ ├── ajax_delete.ctp │ │ │ ├── ajax_reply.ctp │ │ │ └── ajax_change_status.ctp │ │ ├── Froala │ │ │ ├── froala_manager_delete_url.ctp │ │ │ ├── froala_file_upload_url.ctp │ │ │ ├── froala_image_upload_url.ctp │ │ │ ├── froala_video_upload_url.ctp │ │ │ └── json │ │ │ │ ├── froala_image_upload_url.ctp │ │ │ │ └── froala_manager_load_url.ctp │ │ ├── Histories │ │ │ └── ajax_filter.ctp │ │ ├── Navigation │ │ │ ├── ajax_add.ctp │ │ │ ├── ajax_delete.ctp │ │ │ ├── ajax_update.ctp │ │ │ ├── ajax_reorder_menu.ctp │ │ │ └── ajax_reorder_submenu.ctp │ │ ├── Settings │ │ │ ├── ajax_update.ctp │ │ │ ├── ajax_generate_api_key.ctp │ │ │ └── ajax_send_test_email.ctp │ │ ├── Singletons │ │ │ ├── ajax_add.ctp │ │ │ ├── ajax_delete.ctp │ │ │ ├── ajax_update.ctp │ │ │ ├── ajax_add_data.ctp │ │ │ ├── ajax_add_field.ctp │ │ │ ├── ajax_delete_data.ctp │ │ │ ├── ajax_get_options.ctp │ │ │ └── ajax_update_data.ctp │ │ ├── Themes │ │ │ ├── ajax_delete.ctp │ │ │ ├── ajax_apply_theme.ctp │ │ │ └── ajax_upload_theme.ctp │ │ ├── BlogCategories │ │ │ ├── ajax_add.ctp │ │ │ ├── ajax_delete.ctp │ │ │ ├── ajax_reorder.ctp │ │ │ ├── ajax_update.ctp │ │ │ └── ajax_load_selectbox.ctp │ │ ├── Medias │ │ │ ├── ajax_delete_images.ctp │ │ │ ├── ajax_delete_videos.ctp │ │ │ ├── ajax_update_images.ctp │ │ │ ├── ajax_update_videos.ctp │ │ │ ├── ajax_upload_images.ctp │ │ │ ├── ajax_upload_videos.ctp │ │ │ ├── ajax_delete_documents.ctp │ │ │ ├── ajax_update_documents.ctp │ │ │ ├── ajax_upload_documents.ctp │ │ │ └── ajax_get_image_colors.ctp │ │ ├── Messages │ │ │ ├── ajax_move_to_trash.ctp │ │ │ ├── ajax_read_message.ctp │ │ │ └── ajax_messages_counter.ctp │ │ └── Notifications │ │ │ └── ajax_read_notification.ctp │ ├── App │ │ └── set_client_timezone.ctp │ ├── Element │ │ ├── Dashboard │ │ │ ├── Singletons │ │ │ │ └── Fields │ │ │ │ │ ├── media.ctp │ │ │ │ │ └── upload_file.ctp │ │ │ ├── Collections │ │ │ │ └── Fields │ │ │ │ │ ├── media.ctp │ │ │ │ │ └── upload_file.ctp │ │ │ └── Modal │ │ │ │ └── disallowed_delete_modal.ctp │ │ └── Flash │ │ │ ├── error.ctp │ │ │ ├── success.ctp │ │ │ ├── default.ctp │ │ │ └── Purple │ │ │ └── success.ctp │ ├── Maintenance │ │ └── ajax_get_email.ctp │ ├── Production │ │ ├── ajax_code_verification.ctp │ │ ├── ajax_database_migration.ctp │ │ └── ajax_user_verification.ctp │ ├── Layout │ │ ├── txt │ │ │ └── robots.ctp │ │ ├── rss │ │ │ └── default.ctp │ │ ├── ajax.ctp │ │ └── Email │ │ │ └── text │ │ │ └── default.ctp │ └── Email │ │ ├── text │ │ └── default.ctp │ │ └── html │ │ └── default.ctp ├── View │ ├── Cell │ │ ├── NotificationsCell.php │ │ ├── CategoriesCell.php │ │ ├── PagesCell.php │ │ └── TagsCell.php │ └── Helper │ │ └── SetupHelper.php ├── Form │ ├── Purple │ │ ├── PageLoadStylesheetsForm.php │ │ ├── HistoryFilterForm.php │ │ ├── DashboardMonthOfVisitForm.php │ │ ├── ThemeApplyForm.php │ │ ├── ThemeDeleteForm.php │ │ └── SubscriberMailchimpSettingsForm.php │ └── MaintenanceForm.php └── Validator │ └── Api │ ├── PostDeleteValidator.php │ ├── SubscriberAddValidator.php │ ├── PostCategoryDeleteValidator.php │ ├── SubscriberDeleteValidator.php │ └── PostCommentDeleteValidator.php ├── plugins └── EngageTheme │ ├── src │ ├── Template │ │ ├── Home │ │ │ └── index.ctp │ │ ├── Blogs │ │ │ └── ajax_send_comment.ctp │ │ ├── Pages │ │ │ ├── ajax_send_contact.ctp │ │ │ ├── ajax_verify_form.ctp │ │ │ ├── index.ctp │ │ │ ├── code.ctp │ │ │ └── home.ctp │ │ ├── Cell │ │ │ ├── Tags │ │ │ │ └── total_posts_in_tag.ctp │ │ │ └── Categories │ │ │ │ └── total_post.ctp │ │ ├── Element │ │ │ ├── Post │ │ │ │ ├── Sidebar │ │ │ │ │ ├── about.ctp │ │ │ │ │ ├── category.ctp │ │ │ │ │ ├── archives.ctp │ │ │ │ │ └── tags.ctp │ │ │ │ └── tags.ctp │ │ │ ├── head_title.ctp │ │ │ ├── footer.ctp │ │ │ └── breadcrumb.ctp │ │ └── Layout │ │ │ └── default.ctp │ ├── Plugin.php │ ├── Controller │ │ └── AppController.php │ └── Functions │ │ └── ThemeFunction.php │ ├── .gitignore │ ├── webroot │ ├── fonts │ │ ├── FontAwesome.otf │ │ ├── fontawesome-webfont.eot │ │ ├── fontawesome-webfont.ttf │ │ ├── fontawesome-webfont.woff │ │ └── fontawesome-webfont.woff2 │ └── blocks │ │ └── content.json │ ├── README.md │ ├── config │ └── routes.php │ ├── detail.json │ └── composer.json ├── .profile ├── bin └── cake.php ├── .editorconfig ├── .htaccess ├── .htaccess_secure ├── index.php └── .gitignore /config/email.php: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /config/secret.key: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /docs/.nojekyll: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /logs/cli-debug.log: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /logs/debug.log: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /logs/error.log: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /logs/purple.log: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /tmp/sessions/empty: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /tmp/tests/empty: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /webroot/js/empty: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /tests/Fixture/empty: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /tmp/cache/models/empty: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /tmp/html/blog.blogs.php: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /config/database.php: -------------------------------------------------------------------------------- 1 | default -------------------------------------------------------------------------------- /config/production_key.php: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /docs/_404.md: -------------------------------------------------------------------------------- 1 | # 404 Not Found -------------------------------------------------------------------------------- /src/Model/Behavior/empty: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /src/Template/Pages/home.ctp: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /tmp/cache/persistent/empty: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /tmp/html/custom.code.php: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /docs/CNAME: -------------------------------------------------------------------------------- 1 | docs.purple-cms.com -------------------------------------------------------------------------------- /src/Template/Headless/index.ctp: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /src/Template/Sitemap/index.ctp: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /tests/TestCase/View/Helper/empty: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /tmp/html/general.about-us.php: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /tests/TestCase/Model/Behavior/empty: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /src/Template/Setup/generate_ssl_key.ctp: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /tests/TestCase/Controller/Component/empty: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /plugins/EngageTheme/src/Template/Home/index.ctp: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /src/Template/Api/Medias/delete.ctp: -------------------------------------------------------------------------------- 1 | = $json ?> -------------------------------------------------------------------------------- /src/Template/Api/Posts/delete.ctp: -------------------------------------------------------------------------------- 1 | = $json ?> -------------------------------------------------------------------------------- /src/Template/Api/Settings/detail.ctp: -------------------------------------------------------------------------------- 1 | = $json ?> -------------------------------------------------------------------------------- /src/Template/Api/Singletons/data.ctp: -------------------------------------------------------------------------------- 1 | = $json ?> -------------------------------------------------------------------------------- /src/Template/Api/Singletons/view.ctp: -------------------------------------------------------------------------------- 1 | = $json ?> -------------------------------------------------------------------------------- /src/Template/Api/Subscribers/add.ctp: -------------------------------------------------------------------------------- 1 | = $json ?> -------------------------------------------------------------------------------- /src/Template/Api/Visitors/view.ctp: -------------------------------------------------------------------------------- 1 | = $json ?> -------------------------------------------------------------------------------- /src/Template/Cell/Medias/next_id.ctp: -------------------------------------------------------------------------------- 1 | = $id ?> -------------------------------------------------------------------------------- /src/Template/Purple/Authenticate/login_api.ctp: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /src/Template/Purple/Subscribers/download.ctp: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /src/Template/Setup/ajax_database.ctp: -------------------------------------------------------------------------------- 1 | = $json ?> -------------------------------------------------------------------------------- /src/Template/Api/Collections/data.ctp: -------------------------------------------------------------------------------- 1 | = $json ?> -------------------------------------------------------------------------------- /src/Template/Api/Collections/detail.ctp: -------------------------------------------------------------------------------- 1 | = $json ?> -------------------------------------------------------------------------------- /src/Template/Api/Collections/view.ctp: -------------------------------------------------------------------------------- 1 | = $json ?> -------------------------------------------------------------------------------- /src/Template/Api/PostCategories/add.ctp: -------------------------------------------------------------------------------- 1 | = $json ?> -------------------------------------------------------------------------------- /src/Template/Api/PostComments/delete.ctp: -------------------------------------------------------------------------------- 1 | = $json ?> -------------------------------------------------------------------------------- /src/Template/Api/PostComments/send.ctp: -------------------------------------------------------------------------------- 1 | = $json ?> -------------------------------------------------------------------------------- /src/Template/Api/SocialAccounts/add.ctp: -------------------------------------------------------------------------------- 1 | = $json ?> -------------------------------------------------------------------------------- /src/Template/Api/SocialAccounts/view.ctp: -------------------------------------------------------------------------------- 1 | = $json ?> -------------------------------------------------------------------------------- /src/Template/Api/Subscribers/delete.ctp: -------------------------------------------------------------------------------- 1 | = $json ?> -------------------------------------------------------------------------------- /src/Template/Api/Subscribers/detail.ctp: -------------------------------------------------------------------------------- 1 | = $json ?> -------------------------------------------------------------------------------- /src/Template/Api/Subscribers/view.ctp: -------------------------------------------------------------------------------- 1 | = $json ?> -------------------------------------------------------------------------------- /src/Template/App/set_client_timezone.ctp: -------------------------------------------------------------------------------- 1 | = $json ?> -------------------------------------------------------------------------------- /src/Template/Cell/Medias/previous_id.ctp: -------------------------------------------------------------------------------- 1 | = $id ?> -------------------------------------------------------------------------------- /src/Template/Pages/ajax_verify_form.ctp: -------------------------------------------------------------------------------- 1 | = $json ?> -------------------------------------------------------------------------------- /src/Template/Purple/Admins/ajax_add.ctp: -------------------------------------------------------------------------------- 1 | = $json ?> -------------------------------------------------------------------------------- /src/Template/Purple/Blogs/ajax_add.ctp: -------------------------------------------------------------------------------- 1 | = $json ?> -------------------------------------------------------------------------------- /src/Template/Purple/Blogs/ajax_delete.ctp: -------------------------------------------------------------------------------- 1 | = $json ?> -------------------------------------------------------------------------------- /src/Template/Purple/Blogs/ajax_update.ctp: -------------------------------------------------------------------------------- 1 | = $json ?> -------------------------------------------------------------------------------- /src/Template/Purple/Pages/ajax_add.ctp: -------------------------------------------------------------------------------- 1 | = $json ?> -------------------------------------------------------------------------------- /src/Template/Purple/Pages/ajax_delete.ctp: -------------------------------------------------------------------------------- 1 | = $json ?> -------------------------------------------------------------------------------- /src/Template/Purple/Pages/ajax_save.ctp: -------------------------------------------------------------------------------- 1 | = $json ?> -------------------------------------------------------------------------------- /src/Template/Purple/Socials/ajax_add.ctp: -------------------------------------------------------------------------------- 1 | = $json ?> -------------------------------------------------------------------------------- /webroot/master-assets/plugins/ace/ace/mode-text.js: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /src/Template/Api/PostCategories/delete.ctp: -------------------------------------------------------------------------------- 1 | = $json ?> -------------------------------------------------------------------------------- /src/Template/Api/PostCategories/total_post.ctp: -------------------------------------------------------------------------------- 1 | = $json ?> -------------------------------------------------------------------------------- /src/Template/Api/PostCategories/update.ctp: -------------------------------------------------------------------------------- 1 | = $json ?> -------------------------------------------------------------------------------- /src/Template/Api/SocialAccounts/delete.ctp: -------------------------------------------------------------------------------- 1 | = $json ?> -------------------------------------------------------------------------------- /src/Template/Api/SocialAccounts/detail.ctp: -------------------------------------------------------------------------------- 1 | = $json ?> -------------------------------------------------------------------------------- /src/Template/Api/SocialAccounts/update.ctp: -------------------------------------------------------------------------------- 1 | = $json ?> -------------------------------------------------------------------------------- /src/Template/Cell/Collections/count_datas.ctp: -------------------------------------------------------------------------------- 1 | = $total ?> -------------------------------------------------------------------------------- /src/Template/Cell/Medias/color_extract.ctp: -------------------------------------------------------------------------------- 1 | = $colors ?> -------------------------------------------------------------------------------- /src/Template/Cell/Medias/media_path.ctp: -------------------------------------------------------------------------------- 1 | = $filePath ?> -------------------------------------------------------------------------------- /src/Template/Cell/Singletons/count_datas.ctp: -------------------------------------------------------------------------------- 1 | = $total ?> -------------------------------------------------------------------------------- /src/Template/Element/Dashboard/Singletons/Fields/media.ctp: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /src/Template/Maintenance/ajax_get_email.ctp: -------------------------------------------------------------------------------- 1 | = $json ?> -------------------------------------------------------------------------------- /src/Template/Purple/Admins/ajax_delete.ctp: -------------------------------------------------------------------------------- 1 | = $json ?> -------------------------------------------------------------------------------- /src/Template/Purple/Admins/ajax_update.ctp: -------------------------------------------------------------------------------- 1 | = $json ?> -------------------------------------------------------------------------------- /src/Template/Purple/Appearance/ajax_delete.ctp: -------------------------------------------------------------------------------- 1 | = $json ?> -------------------------------------------------------------------------------- /src/Template/Purple/Appearance/ajax_save.ctp: -------------------------------------------------------------------------------- 1 | = $json ?> -------------------------------------------------------------------------------- /src/Template/Purple/Blogs/ajax_remove_tag.ctp: -------------------------------------------------------------------------------- 1 | = $json ?> -------------------------------------------------------------------------------- /src/Template/Purple/Collections/ajax_add.ctp: -------------------------------------------------------------------------------- 1 | = $json ?> -------------------------------------------------------------------------------- /src/Template/Purple/Comments/ajax_delete.ctp: -------------------------------------------------------------------------------- 1 | = $json ?> -------------------------------------------------------------------------------- /src/Template/Purple/Comments/ajax_reply.ctp: -------------------------------------------------------------------------------- 1 | = $json ?> -------------------------------------------------------------------------------- /src/Template/Purple/Froala/froala_manager_delete_url.ctp: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /src/Template/Purple/Histories/ajax_filter.ctp: -------------------------------------------------------------------------------- 1 | = $json ?> -------------------------------------------------------------------------------- /src/Template/Purple/Navigation/ajax_add.ctp: -------------------------------------------------------------------------------- 1 | = $json ?> -------------------------------------------------------------------------------- /src/Template/Purple/Navigation/ajax_delete.ctp: -------------------------------------------------------------------------------- 1 | = $json ?> -------------------------------------------------------------------------------- /src/Template/Purple/Navigation/ajax_update.ctp: -------------------------------------------------------------------------------- 1 | = $json ?> -------------------------------------------------------------------------------- /src/Template/Purple/Pages/ajax_save_block.ctp: -------------------------------------------------------------------------------- 1 | = $json ?> -------------------------------------------------------------------------------- /src/Template/Purple/Settings/ajax_update.ctp: -------------------------------------------------------------------------------- 1 | = $json ?> -------------------------------------------------------------------------------- /src/Template/Purple/Singletons/ajax_add.ctp: -------------------------------------------------------------------------------- 1 | = $json ?> -------------------------------------------------------------------------------- /src/Template/Purple/Singletons/ajax_delete.ctp: -------------------------------------------------------------------------------- 1 | = $json ?> -------------------------------------------------------------------------------- /src/Template/Purple/Singletons/ajax_update.ctp: -------------------------------------------------------------------------------- 1 | = $json ?> -------------------------------------------------------------------------------- /src/Template/Purple/Socials/ajax_delete.ctp: -------------------------------------------------------------------------------- 1 | = $json ?> -------------------------------------------------------------------------------- /src/Template/Purple/Socials/ajax_reorder.ctp: -------------------------------------------------------------------------------- 1 | = $json ?> -------------------------------------------------------------------------------- /src/Template/Purple/Socials/ajax_update.ctp: -------------------------------------------------------------------------------- 1 | = $json ?> -------------------------------------------------------------------------------- /src/Template/Purple/Subscribers/ajax_add.ctp: -------------------------------------------------------------------------------- 1 | = $json ?> -------------------------------------------------------------------------------- /src/Template/Purple/Themes/ajax_delete.ctp: -------------------------------------------------------------------------------- 1 | = $json ?> -------------------------------------------------------------------------------- /src/Template/Setup/ajax_administrative.ctp: -------------------------------------------------------------------------------- 1 | = $json ?> -------------------------------------------------------------------------------- /src/Template/Api/Collections/data_by_connecting.ctp: -------------------------------------------------------------------------------- 1 | = $json ?> -------------------------------------------------------------------------------- /src/Template/Api/PostComments/change_status.ctp: -------------------------------------------------------------------------------- 1 | = $json ?> -------------------------------------------------------------------------------- /src/Template/Element/Dashboard/Collections/Fields/media.ctp: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /src/Template/Production/ajax_code_verification.ctp: -------------------------------------------------------------------------------- 1 | = $json ?> -------------------------------------------------------------------------------- /src/Template/Production/ajax_database_migration.ctp: -------------------------------------------------------------------------------- 1 | = $json ?> -------------------------------------------------------------------------------- /src/Template/Production/ajax_user_verification.ctp: -------------------------------------------------------------------------------- 1 | = $json ?> -------------------------------------------------------------------------------- /src/Template/Purple/Admins/ajax_update_password.ctp: -------------------------------------------------------------------------------- 1 | = $json ?> -------------------------------------------------------------------------------- /src/Template/Purple/Authenticate/ajax_login.ctp: -------------------------------------------------------------------------------- 1 | = $json ?> -------------------------------------------------------------------------------- /src/Template/Purple/BlogCategories/ajax_add.ctp: -------------------------------------------------------------------------------- 1 | = $json ?> -------------------------------------------------------------------------------- /src/Template/Purple/BlogCategories/ajax_delete.ctp: -------------------------------------------------------------------------------- 1 | = $json ?> -------------------------------------------------------------------------------- /src/Template/Purple/BlogCategories/ajax_reorder.ctp: -------------------------------------------------------------------------------- 1 | = $json ?> -------------------------------------------------------------------------------- /src/Template/Purple/BlogCategories/ajax_update.ctp: -------------------------------------------------------------------------------- 1 | = $json ?> -------------------------------------------------------------------------------- /src/Template/Purple/Collections/ajax_add_data.ctp: -------------------------------------------------------------------------------- 1 | = $json ?> -------------------------------------------------------------------------------- /src/Template/Purple/Collections/ajax_add_field.ctp: -------------------------------------------------------------------------------- 1 | = $json ?> -------------------------------------------------------------------------------- /src/Template/Purple/Collections/ajax_delete.ctp: -------------------------------------------------------------------------------- 1 | = $json ?> -------------------------------------------------------------------------------- /src/Template/Purple/Collections/ajax_update.ctp: -------------------------------------------------------------------------------- 1 | = $json ?> -------------------------------------------------------------------------------- /src/Template/Purple/Comments/ajax_change_status.ctp: -------------------------------------------------------------------------------- 1 | = $json ?> -------------------------------------------------------------------------------- /src/Template/Purple/Medias/ajax_delete_images.ctp: -------------------------------------------------------------------------------- 1 | = $json ?> -------------------------------------------------------------------------------- /src/Template/Purple/Medias/ajax_delete_videos.ctp: -------------------------------------------------------------------------------- 1 | = $json ?> -------------------------------------------------------------------------------- /src/Template/Purple/Medias/ajax_update_images.ctp: -------------------------------------------------------------------------------- 1 | = $json ?> -------------------------------------------------------------------------------- /src/Template/Purple/Medias/ajax_update_videos.ctp: -------------------------------------------------------------------------------- 1 | = $json ?> -------------------------------------------------------------------------------- /src/Template/Purple/Medias/ajax_upload_images.ctp: -------------------------------------------------------------------------------- 1 | = $json ?> -------------------------------------------------------------------------------- /src/Template/Purple/Medias/ajax_upload_videos.ctp: -------------------------------------------------------------------------------- 1 | = $json ?> -------------------------------------------------------------------------------- /src/Template/Purple/Messages/ajax_move_to_trash.ctp: -------------------------------------------------------------------------------- 1 | = $json ?> -------------------------------------------------------------------------------- /src/Template/Purple/Messages/ajax_read_message.ctp: -------------------------------------------------------------------------------- 1 | = $json ?> -------------------------------------------------------------------------------- /src/Template/Purple/Pages/ajax_change_status.ctp: -------------------------------------------------------------------------------- 1 | = $json ?> -------------------------------------------------------------------------------- /src/Template/Purple/Pages/ajax_delete_block.ctp: -------------------------------------------------------------------------------- 1 | = $json ?> -------------------------------------------------------------------------------- /src/Template/Purple/Pages/ajax_froala_blocks.ctp: -------------------------------------------------------------------------------- 1 | = $json ?> -------------------------------------------------------------------------------- /src/Template/Purple/Pages/ajax_load_saved_block.ctp: -------------------------------------------------------------------------------- 1 | = $json ?> -------------------------------------------------------------------------------- /src/Template/Purple/Pages/ajax_parse_json_html.ctp: -------------------------------------------------------------------------------- 1 | = $json ?> -------------------------------------------------------------------------------- /src/Template/Purple/Pages/ajax_save_blog_page.ctp: -------------------------------------------------------------------------------- 1 | = $json ?> -------------------------------------------------------------------------------- /src/Template/Purple/Pages/ajax_save_custom_page.ctp: -------------------------------------------------------------------------------- 1 | = $json ?> -------------------------------------------------------------------------------- /src/Template/Purple/Pages/ajax_send_contact.ctp: -------------------------------------------------------------------------------- 1 | = $json ?> -------------------------------------------------------------------------------- /src/Template/Purple/Pages/ajax_theme_blocks.ctp: -------------------------------------------------------------------------------- 1 | = $json ?> -------------------------------------------------------------------------------- /src/Template/Purple/Pages/generated_blocks.ctp: -------------------------------------------------------------------------------- 1 | = $content ?> -------------------------------------------------------------------------------- /src/Template/Purple/Singletons/ajax_add_data.ctp: -------------------------------------------------------------------------------- 1 | = $json ?> -------------------------------------------------------------------------------- /src/Template/Purple/Singletons/ajax_add_field.ctp: -------------------------------------------------------------------------------- 1 | = $json ?> -------------------------------------------------------------------------------- /src/Template/Purple/Singletons/ajax_delete_data.ctp: -------------------------------------------------------------------------------- 1 | = $json ?> -------------------------------------------------------------------------------- /src/Template/Purple/Singletons/ajax_get_options.ctp: -------------------------------------------------------------------------------- 1 | = $json ?> -------------------------------------------------------------------------------- /src/Template/Purple/Singletons/ajax_update_data.ctp: -------------------------------------------------------------------------------- 1 | = $json ?> -------------------------------------------------------------------------------- /src/Template/Purple/Subscribers/ajax_delete.ctp: -------------------------------------------------------------------------------- 1 | = $json ?> -------------------------------------------------------------------------------- /src/Template/Purple/Subscribers/ajax_export.ctp: -------------------------------------------------------------------------------- 1 | = $json ?> -------------------------------------------------------------------------------- /src/Template/Purple/Subscribers/ajax_update.ctp: -------------------------------------------------------------------------------- 1 | = $json ?> -------------------------------------------------------------------------------- /src/Template/Purple/Themes/ajax_apply_theme.ctp: -------------------------------------------------------------------------------- 1 | = $json ?> -------------------------------------------------------------------------------- /src/Template/Purple/Themes/ajax_upload_theme.ctp: -------------------------------------------------------------------------------- 1 | = $json ?> -------------------------------------------------------------------------------- /webroot/uploads/themes/EngageTheme/src/Template/Home/index.ctp: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /src/Template/Cell/Collections/field_type_name.ctp: -------------------------------------------------------------------------------- 1 | = $fieldName ?> -------------------------------------------------------------------------------- /src/Template/Cell/Comments/total_replies.ctp: -------------------------------------------------------------------------------- 1 | = $totalReplies ?> -------------------------------------------------------------------------------- /src/Template/Cell/Singletons/field_type_name.ctp: -------------------------------------------------------------------------------- 1 | = $fieldName ?> -------------------------------------------------------------------------------- /src/Template/Cell/Socials/instagram_posts.ctp: -------------------------------------------------------------------------------- 1 | = $instagramPosts ?> -------------------------------------------------------------------------------- /src/Template/Element/Dashboard/Collections/Fields/upload_file.ctp: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /src/Template/Element/Dashboard/Singletons/Fields/upload_file.ctp: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /src/Template/Layout/txt/robots.ctp: -------------------------------------------------------------------------------- 1 | = $this->fetch('content') ?> -------------------------------------------------------------------------------- /src/Template/Purple/Admins/ajax_approve_phone_number.ctp: -------------------------------------------------------------------------------- 1 | = $json ?> -------------------------------------------------------------------------------- /src/Template/Purple/Admins/ajax_save_profile_picture.ctp: -------------------------------------------------------------------------------- 1 | = $json ?> -------------------------------------------------------------------------------- /src/Template/Purple/Admins/ajax_verify_authy_token.ctp: -------------------------------------------------------------------------------- 1 | = $json ?> -------------------------------------------------------------------------------- /src/Template/Purple/Admins/ajax_verify_phone_number.ctp: -------------------------------------------------------------------------------- 1 | = $json ?> -------------------------------------------------------------------------------- /src/Template/Purple/Appearance/ajax_images_upload.ctp: -------------------------------------------------------------------------------- 1 | = $json ?> -------------------------------------------------------------------------------- /src/Template/Purple/Appearance/ajax_update_footer.ctp: -------------------------------------------------------------------------------- 1 | = $json ?> -------------------------------------------------------------------------------- /src/Template/Purple/Authenticate/ajax_reset_password.ctp: -------------------------------------------------------------------------------- 1 | = $json ?> -------------------------------------------------------------------------------- /src/Template/Purple/Authenticate/ajax_verify_code.ctp: -------------------------------------------------------------------------------- 1 | = $json ?> -------------------------------------------------------------------------------- /src/Template/Purple/Collections/ajax_delete_data.ctp: -------------------------------------------------------------------------------- 1 | = $json ?> -------------------------------------------------------------------------------- /src/Template/Purple/Collections/ajax_get_options.ctp: -------------------------------------------------------------------------------- 1 | = $json ?> -------------------------------------------------------------------------------- /src/Template/Purple/Collections/ajax_update_data.ctp: -------------------------------------------------------------------------------- 1 | = $json ?> -------------------------------------------------------------------------------- /src/Template/Purple/Froala/froala_file_upload_url.ctp: -------------------------------------------------------------------------------- 1 | = $json ?> -------------------------------------------------------------------------------- /src/Template/Purple/Froala/froala_image_upload_url.ctp: -------------------------------------------------------------------------------- 1 | = $json ?> -------------------------------------------------------------------------------- /src/Template/Purple/Froala/froala_video_upload_url.ctp: -------------------------------------------------------------------------------- 1 | = $json ?> -------------------------------------------------------------------------------- /src/Template/Purple/Medias/ajax_delete_documents.ctp: -------------------------------------------------------------------------------- 1 | = $json ?> -------------------------------------------------------------------------------- /src/Template/Purple/Medias/ajax_update_documents.ctp: -------------------------------------------------------------------------------- 1 | = $json ?> -------------------------------------------------------------------------------- /src/Template/Purple/Medias/ajax_upload_documents.ctp: -------------------------------------------------------------------------------- 1 | = $json ?> -------------------------------------------------------------------------------- /src/Template/Purple/Navigation/ajax_reorder_menu.ctp: -------------------------------------------------------------------------------- 1 | = $json ?> -------------------------------------------------------------------------------- /src/Template/Purple/Navigation/ajax_reorder_submenu.ctp: -------------------------------------------------------------------------------- 1 | = $json ?> -------------------------------------------------------------------------------- /src/Template/Purple/Settings/ajax_generate_api_key.ctp: -------------------------------------------------------------------------------- 1 | = $json ?> -------------------------------------------------------------------------------- /src/Template/Purple/Settings/ajax_send_test_email.ctp: -------------------------------------------------------------------------------- 1 | = $json ?> -------------------------------------------------------------------------------- /src/Template/Purple/Socials/ajax_sharing_buttons.ctp: -------------------------------------------------------------------------------- 1 | = $json ?> -------------------------------------------------------------------------------- /plugins/EngageTheme/src/Template/Blogs/ajax_send_comment.ctp: -------------------------------------------------------------------------------- 1 | = $json ?> -------------------------------------------------------------------------------- /plugins/EngageTheme/src/Template/Pages/ajax_send_contact.ctp: -------------------------------------------------------------------------------- 1 | = $json ?> -------------------------------------------------------------------------------- /plugins/EngageTheme/src/Template/Pages/ajax_verify_form.ctp: -------------------------------------------------------------------------------- 1 | = $json ?> -------------------------------------------------------------------------------- /src/Template/Cell/Collections/get_connecting_collections.ctp: -------------------------------------------------------------------------------- 1 | = $data ?> -------------------------------------------------------------------------------- /src/Template/Cell/Notifications/comment_notification.ctp: -------------------------------------------------------------------------------- 1 | = $blogTitle ?> -------------------------------------------------------------------------------- /src/Template/Purple/Appearance/ajax_save_without_crop.ctp: -------------------------------------------------------------------------------- 1 | = $json ?> -------------------------------------------------------------------------------- /src/Template/Purple/Authenticate/ajax_forgot_password.ctp: -------------------------------------------------------------------------------- 1 | = $json ?> -------------------------------------------------------------------------------- /src/Template/Purple/Authenticate/ajax_verify_authy_token.ctp: -------------------------------------------------------------------------------- 1 | = $json ?> -------------------------------------------------------------------------------- /src/Template/Purple/Froala/json/froala_image_upload_url.ctp: -------------------------------------------------------------------------------- 1 | = $json ?> -------------------------------------------------------------------------------- /src/Template/Purple/Notifications/ajax_read_notification.ctp: -------------------------------------------------------------------------------- 1 | = $json ?> -------------------------------------------------------------------------------- /src/Template/Purple/Pages/ajax_load_theme_stylesheets.ctp: -------------------------------------------------------------------------------- 1 | = $json ?> -------------------------------------------------------------------------------- /src/Template/Purple/Subscribers/ajax_export_to_mailchimp.ctp: -------------------------------------------------------------------------------- 1 | = $json ?> -------------------------------------------------------------------------------- /webroot/uploads/themes/CreativeTheme/src/Template/Element/breadcrumb.ctp: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /plugins/EngageTheme/.gitignore: -------------------------------------------------------------------------------- 1 | /composer.lock 2 | /phpunit.xml 3 | /vendor 4 | -------------------------------------------------------------------------------- /src/Template/Cell/Comments/total_comment.ctp: -------------------------------------------------------------------------------- 1 | = $formattedTotalComments ?> -------------------------------------------------------------------------------- /src/Template/Purple/Authenticate/ajax_resend_verification_code.ctp: -------------------------------------------------------------------------------- 1 | = $json ?> -------------------------------------------------------------------------------- /src/Template/Purple/Collections/ajax_get_connecting_fields.ctp: -------------------------------------------------------------------------------- 1 | = $json ?> -------------------------------------------------------------------------------- /src/Template/Purple/Subscribers/ajax_update_mailchimp_settings.ctp: -------------------------------------------------------------------------------- 1 | = $json ?> -------------------------------------------------------------------------------- /plugins/EngageTheme/src/Template/Cell/Tags/total_posts_in_tag.ctp: -------------------------------------------------------------------------------- 1 | = $totalPosts ?> -------------------------------------------------------------------------------- /src/Template/Cell/Collections/get_connecting_collection_data_value.ctp: -------------------------------------------------------------------------------- 1 | = $data ?> -------------------------------------------------------------------------------- /webroot/uploads/themes/CreativeTheme/src/Template/Element/Post/Sidebar/about.ctp: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /webroot/uploads/themes/CreativeTheme/src/Template/Element/Post/Sidebar/archives.ctp: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /webroot/uploads/themes/CreativeTheme/src/Template/Element/Post/Sidebar/category.ctp: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /webroot/uploads/themes/CreativeTheme/src/Template/Element/Post/Sidebar/search.ctp: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /webroot/uploads/themes/CreativeTheme/src/Template/Element/Post/Sidebar/tags.ctp: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /plugins/EngageTheme/src/Template/Pages/index.ctp: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /webroot/uploads/themes/CreativeTheme/src/Template/Pages/ajax_verify_form.ctp: -------------------------------------------------------------------------------- 1 | = $json ?> -------------------------------------------------------------------------------- /webroot/uploads/themes/EngageTheme/src/Template/Blogs/ajax_send_comment.ctp: -------------------------------------------------------------------------------- 1 | = $json ?> -------------------------------------------------------------------------------- /webroot/uploads/themes/EngageTheme/src/Template/Pages/ajax_send_contact.ctp: -------------------------------------------------------------------------------- 1 | = $json ?> -------------------------------------------------------------------------------- /webroot/uploads/themes/EngageTheme/src/Template/Pages/ajax_verify_form.ctp: -------------------------------------------------------------------------------- 1 | = $json ?> -------------------------------------------------------------------------------- /src/Template/Cell/Collections/get_connecting_collection_datas_for_selectbox.ctp: -------------------------------------------------------------------------------- 1 | = $data ?> -------------------------------------------------------------------------------- /webroot/uploads/custom-pages/sdf-sdfsdfsdf-1571817979.php: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /webroot/uploads/themes/CreativeTheme/src/Template/Blogs/ajax_send_comment.ctp: -------------------------------------------------------------------------------- 1 | = $json ?> -------------------------------------------------------------------------------- /webroot/uploads/themes/CreativeTheme/src/Template/Pages/ajax_send_contact.ctp: -------------------------------------------------------------------------------- 1 | = $json ?> -------------------------------------------------------------------------------- /webroot/uploads/themes/EngageTheme/src/Template/Cell/Tags/total_posts_in_tag.ctp: -------------------------------------------------------------------------------- 1 | = $totalPosts ?> -------------------------------------------------------------------------------- /src/Template/Purple/Blogs/add.ctp: -------------------------------------------------------------------------------- 1 | element('Dashboard/Pages/blog_add'); 3 | ?> -------------------------------------------------------------------------------- /webroot/favicon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/bayukurniawan30/purple-cms/HEAD/webroot/favicon.ico -------------------------------------------------------------------------------- /webroot/uploads/themes/CreativeTheme/src/Template/Pages/index.ctp: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /webroot/uploads/themes/EngageTheme/src/Template/Pages/index.ctp: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /docs/_media/favicon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/bayukurniawan30/purple-cms/HEAD/docs/_media/favicon.png -------------------------------------------------------------------------------- /src/Template/Purple/Blogs/edit.ctp: -------------------------------------------------------------------------------- 1 | element('Dashboard/Pages/blog_edit'); 3 | ?> -------------------------------------------------------------------------------- /webroot/img/cake-logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/bayukurniawan30/purple-cms/HEAD/webroot/img/cake-logo.png -------------------------------------------------------------------------------- /webroot/img/cake.icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/bayukurniawan30/purple-cms/HEAD/webroot/img/cake.icon.png -------------------------------------------------------------------------------- /docs/_media/collections.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/bayukurniawan30/purple-cms/HEAD/docs/_media/collections.png -------------------------------------------------------------------------------- /docs/_media/singletons.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/bayukurniawan30/purple-cms/HEAD/docs/_media/singletons.png -------------------------------------------------------------------------------- /webroot/img/cake.power.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/bayukurniawan30/purple-cms/HEAD/webroot/img/cake.power.gif -------------------------------------------------------------------------------- /src/Template/Purple/Medias/ajax_get_image_colors.ctp: -------------------------------------------------------------------------------- 1 | = $colors = $this->cell('Medias::colorExtract', [$image]); ?> 2 | -------------------------------------------------------------------------------- /docs/_media/add-new-singleton.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/bayukurniawan30/purple-cms/HEAD/docs/_media/add-new-singleton.png -------------------------------------------------------------------------------- /docs/_media/purple-logo-small.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/bayukurniawan30/purple-cms/HEAD/docs/_media/purple-logo-small.png -------------------------------------------------------------------------------- /docs/_media/add-new-collection.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/bayukurniawan30/purple-cms/HEAD/docs/_media/add-new-collection.png -------------------------------------------------------------------------------- /docs/_media/add-data-to-collection.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/bayukurniawan30/purple-cms/HEAD/docs/_media/add-data-to-collection.png -------------------------------------------------------------------------------- /docs/_media/add-data-to-singleton.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/bayukurniawan30/purple-cms/HEAD/docs/_media/add-data-to-singleton.png -------------------------------------------------------------------------------- /webroot/font/cakedingbats-webfont.eot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/bayukurniawan30/purple-cms/HEAD/webroot/font/cakedingbats-webfont.eot -------------------------------------------------------------------------------- /webroot/font/cakedingbats-webfont.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/bayukurniawan30/purple-cms/HEAD/webroot/font/cakedingbats-webfont.ttf -------------------------------------------------------------------------------- /webroot/font/cakedingbats-webfont.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/bayukurniawan30/purple-cms/HEAD/webroot/font/cakedingbats-webfont.woff -------------------------------------------------------------------------------- /webroot/master-assets/img/favicon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/bayukurniawan30/purple-cms/HEAD/webroot/master-assets/img/favicon.png -------------------------------------------------------------------------------- /webroot/font/cakedingbats-webfont.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/bayukurniawan30/purple-cms/HEAD/webroot/font/cakedingbats-webfont.woff2 -------------------------------------------------------------------------------- /webroot/master-assets/img/mailchimp.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/bayukurniawan30/purple-cms/HEAD/webroot/master-assets/img/mailchimp.png -------------------------------------------------------------------------------- /webroot/master-assets/fonts/Ubuntu/.DS_Store: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/bayukurniawan30/purple-cms/HEAD/webroot/master-assets/fonts/Ubuntu/.DS_Store -------------------------------------------------------------------------------- /webroot/master-assets/img/mailchimp-icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/bayukurniawan30/purple-cms/HEAD/webroot/master-assets/img/mailchimp-icon.png -------------------------------------------------------------------------------- /webroot/master-assets/img/icons/icon-image.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/bayukurniawan30/purple-cms/HEAD/webroot/master-assets/img/icons/icon-image.png -------------------------------------------------------------------------------- /webroot/master-assets/img/icons/icon-video.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/bayukurniawan30/purple-cms/HEAD/webroot/master-assets/img/icons/icon-video.png -------------------------------------------------------------------------------- /webroot/master-assets/img/purple-dashboard.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/bayukurniawan30/purple-cms/HEAD/webroot/master-assets/img/purple-dashboard.png -------------------------------------------------------------------------------- /webroot/master-assets/img/purple-logo-small.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/bayukurniawan30/purple-cms/HEAD/webroot/master-assets/img/purple-logo-small.png -------------------------------------------------------------------------------- /plugins/EngageTheme/src/Template/Cell/Categories/total_post.ctp: -------------------------------------------------------------------------------- 1 | 0) echo "(" . $postInCategory . ")" ?> -------------------------------------------------------------------------------- /plugins/EngageTheme/webroot/fonts/FontAwesome.otf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/bayukurniawan30/purple-cms/HEAD/plugins/EngageTheme/webroot/fonts/FontAwesome.otf -------------------------------------------------------------------------------- /webroot/master-assets/fonts/Ubuntu/Ubuntu-Bold.eot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/bayukurniawan30/purple-cms/HEAD/webroot/master-assets/fonts/Ubuntu/Ubuntu-Bold.eot -------------------------------------------------------------------------------- /webroot/master-assets/fonts/Ubuntu/Ubuntu-Bold.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/bayukurniawan30/purple-cms/HEAD/webroot/master-assets/fonts/Ubuntu/Ubuntu-Bold.ttf -------------------------------------------------------------------------------- /webroot/master-assets/img/default-theme-image.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/bayukurniawan30/purple-cms/HEAD/webroot/master-assets/img/default-theme-image.png -------------------------------------------------------------------------------- /webroot/master-assets/img/icons/icon-document.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/bayukurniawan30/purple-cms/HEAD/webroot/master-assets/img/icons/icon-document.png -------------------------------------------------------------------------------- /webroot/master-assets/fonts/Ubuntu/Ubuntu-Bold.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/bayukurniawan30/purple-cms/HEAD/webroot/master-assets/fonts/Ubuntu/Ubuntu-Bold.woff -------------------------------------------------------------------------------- /webroot/master-assets/fonts/Ubuntu/Ubuntu-Bold.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/bayukurniawan30/purple-cms/HEAD/webroot/master-assets/fonts/Ubuntu/Ubuntu-Bold.woff2 -------------------------------------------------------------------------------- /webroot/master-assets/fonts/Ubuntu/Ubuntu-Light.eot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/bayukurniawan30/purple-cms/HEAD/webroot/master-assets/fonts/Ubuntu/Ubuntu-Light.eot -------------------------------------------------------------------------------- /webroot/master-assets/fonts/Ubuntu/Ubuntu-Light.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/bayukurniawan30/purple-cms/HEAD/webroot/master-assets/fonts/Ubuntu/Ubuntu-Light.ttf -------------------------------------------------------------------------------- /webroot/master-assets/fonts/Ubuntu/Ubuntu-Light.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/bayukurniawan30/purple-cms/HEAD/webroot/master-assets/fonts/Ubuntu/Ubuntu-Light.woff -------------------------------------------------------------------------------- /webroot/master-assets/fonts/Ubuntu/Ubuntu-Light.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/bayukurniawan30/purple-cms/HEAD/webroot/master-assets/fonts/Ubuntu/Ubuntu-Light.woff2 -------------------------------------------------------------------------------- /webroot/master-assets/fonts/Ubuntu/Ubuntu-Medium.eot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/bayukurniawan30/purple-cms/HEAD/webroot/master-assets/fonts/Ubuntu/Ubuntu-Medium.eot -------------------------------------------------------------------------------- /webroot/master-assets/fonts/Ubuntu/Ubuntu-Medium.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/bayukurniawan30/purple-cms/HEAD/webroot/master-assets/fonts/Ubuntu/Ubuntu-Medium.ttf -------------------------------------------------------------------------------- /webroot/master-assets/fonts/Ubuntu/Ubuntu-Medium.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/bayukurniawan30/purple-cms/HEAD/webroot/master-assets/fonts/Ubuntu/Ubuntu-Medium.woff -------------------------------------------------------------------------------- /webroot/master-assets/fonts/Ubuntu/Ubuntu-Regular.eot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/bayukurniawan30/purple-cms/HEAD/webroot/master-assets/fonts/Ubuntu/Ubuntu-Regular.eot -------------------------------------------------------------------------------- /webroot/master-assets/fonts/Ubuntu/Ubuntu-Regular.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/bayukurniawan30/purple-cms/HEAD/webroot/master-assets/fonts/Ubuntu/Ubuntu-Regular.ttf -------------------------------------------------------------------------------- /webroot/master-assets/img/default-singleton-image.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/bayukurniawan30/purple-cms/HEAD/webroot/master-assets/img/default-singleton-image.png -------------------------------------------------------------------------------- /webroot/master-assets/fonts/Ubuntu/Ubuntu-Medium.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/bayukurniawan30/purple-cms/HEAD/webroot/master-assets/fonts/Ubuntu/Ubuntu-Medium.woff2 -------------------------------------------------------------------------------- /webroot/master-assets/fonts/Ubuntu/Ubuntu-Regular.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/bayukurniawan30/purple-cms/HEAD/webroot/master-assets/fonts/Ubuntu/Ubuntu-Regular.woff -------------------------------------------------------------------------------- /webroot/master-assets/fonts/Ubuntu/Ubuntu-Regular.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/bayukurniawan30/purple-cms/HEAD/webroot/master-assets/fonts/Ubuntu/Ubuntu-Regular.woff2 -------------------------------------------------------------------------------- /webroot/master-assets/img/default-collection-image.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/bayukurniawan30/purple-cms/HEAD/webroot/master-assets/img/default-collection-image.png -------------------------------------------------------------------------------- /webroot/master-assets/plugins/leaflet/images/layers.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/bayukurniawan30/purple-cms/HEAD/webroot/master-assets/plugins/leaflet/images/layers.png -------------------------------------------------------------------------------- /plugins/EngageTheme/src/Template/Element/Post/Sidebar/about.ctp: -------------------------------------------------------------------------------- 1 |
= $about ?>
4 |= $about ?>
4 |app.php in folder config, find the line with 'debug' => filter_var(env('DEBUG', false), FILTER_VALIDATE_BOOLEAN)
4 |
5 | **false** = Production mode. No error messages, errors, or warnings shown.
6 |
7 | **true** = Errors and warnings shown.
--------------------------------------------------------------------------------
/src/Template/Element/Flash/default.ctp:
--------------------------------------------------------------------------------
1 |
10 | <model> with available models.
12 |
13 | -d flag means display, the value is query or table. Query will return query object, table will return data in table format.
--------------------------------------------------------------------------------
/.editorconfig:
--------------------------------------------------------------------------------
1 | ; This file is for unifying the coding style for different editors and IDEs.
2 | ; More information at http://editorconfig.org
3 |
4 | root = true
5 |
6 | [*]
7 | indent_style = space
8 | indent_size = 4
9 | end_of_line = lf
10 | insert_final_newline = true
11 | trim_trailing_whitespace = true
12 |
13 | [*.bat]
14 | end_of_line = crlf
15 |
16 | [*.yml]
17 | indent_style = space
18 | indent_size = 2
19 |
20 | [*.twig]
21 | insert_final_newline = false
22 |
23 | [Makefile]
24 | indent_style = tab
25 |
--------------------------------------------------------------------------------
/src/Form/Purple/PageLoadStylesheetsForm.php:
--------------------------------------------------------------------------------
1 | allowEmptyString('stylesheet');
13 |
14 | return $validator;
15 | }
16 |
17 | protected function _execute(array $data)
18 | {
19 | return true;
20 | }
21 | }
--------------------------------------------------------------------------------
/docs/migrate-seed-db.md:
--------------------------------------------------------------------------------
1 | # Migrate and Seed Database
2 |
3 | Purple has migration and seed files. If you prefer using CLI and want to skip the Setup section, you can migrate and seed the database manually by using the following commands.
4 |
5 | ```bash
6 | bin/cake migrations migrate
7 | ```
8 |
9 | Then, seed the database.
10 |
11 | ```bash
12 | bin/cake migrations seed
13 | ```
14 |
15 | Make sure to change the Admin password or delete the default account and make a new one before moving to production
-------------------------------------------------------------------------------- /src/Form/Purple/HistoryFilterForm.php: -------------------------------------------------------------------------------- 1 | requirePresence('month') 13 | ->requirePresence('year'); 14 | return $validator; 15 | } 16 | 17 | protected function _execute(array $data) 18 | { 19 | return true; 20 | } 21 | } -------------------------------------------------------------------------------- /src/Model/Entity/Admin.php: -------------------------------------------------------------------------------- 1 | true, 12 | 'id' => false, 13 | ]; 14 | protected function _setPassword($password) 15 | { 16 | return (new DefaultPasswordHasher())->hash($password); 17 | } 18 | protected function _getDisplayName($displayName) 19 | { 20 | return ucwords($displayName); 21 | } 22 | } -------------------------------------------------------------------------------- /webroot/master-assets/plugins/iconfonts/mdi/scss/_core.scss: -------------------------------------------------------------------------------- 1 | .#{$mdi-css-prefix}:before, 2 | .#{$mdi-css-prefix}-set { 3 | display: inline-block; 4 | font: normal normal normal #{$mdi-font-size-base}/1 '#{$mdi-font-name}'; // shortening font declaration 5 | font-size: inherit; // can't have font-size inherit on line above, so need to override 6 | text-rendering: auto; // optimizelegibility throws things off #1094 7 | line-height: inherit; 8 | -webkit-font-smoothing: antialiased; 9 | -moz-osx-font-smoothing: grayscale; 10 | } -------------------------------------------------------------------------------- /src/Form/Purple/DashboardMonthOfVisitForm.php: -------------------------------------------------------------------------------- 1 | requirePresence('month') 13 | ->requirePresence('year'); 14 | return $validator; 15 | } 16 | 17 | protected function _execute(array $data) 18 | { 19 | return true; 20 | } 21 | } -------------------------------------------------------------------------------- /src/View/Cell/PagesCell.php: -------------------------------------------------------------------------------- 1 | id; 10 | $this->loadModel('Pages'); 11 | $childPages = $this->Pages->find('all', [ 12 | 'order' => ['Pages.id' => 'DESC']])->contain('PageTemplates')->contain('Admins')->where(['Pages.parent' => $parent]); 13 | $this->set('childPages', $childPages); 14 | $this->set('page', $page); 15 | } 16 | } -------------------------------------------------------------------------------- /docs/sign-in-to-purple.md: -------------------------------------------------------------------------------- 1 | # Sign In to Purple {docsify-ignore-all} 2 | 3 | In your web browser, go to 4 | 5 | ```http 6 | http://<hostname> is your server hostname, and <folder-name> is where you installed Purple CMS in local server
config/secret.key, and production key will be written in config/production_key.php.
--------------------------------------------------------------------------------
/plugins/EngageTheme/src/Template/Element/Post/Sidebar/category.ctp:
--------------------------------------------------------------------------------
1 |
3 | = $leftFooter ?>
= $rightFooter ?>
4 |
7 | Template by Bootstrapious.com 8 |
9 | 10 |2 | Tags : 3 | count(); 6 | foreach ($tags as $tag): 7 | $url = $this->Url->build([ 8 | '_name' => 'taggedPosts', 9 | 'tag' => $tag->slug 10 | ]); 11 | 12 | if ($i < $total) { 13 | echo '' . $tag->title . ', '; 14 | } 15 | else { 16 | echo '' . $tag->title . ''; 17 | } 18 | 19 | $i++; 20 | endforeach; 21 | unset($i); 22 | ?> 23 |
-------------------------------------------------------------------------------- /webroot/master-assets/plugins/datatables/Buttons-1.5.2/css/common.scss: -------------------------------------------------------------------------------- 1 | 2 | div.dt-button-info { 3 | position: fixed; 4 | top: 50%; 5 | left: 50%; 6 | width: 400px; 7 | margin-top: -100px; 8 | margin-left: -200px; 9 | background-color: white; 10 | border: 2px solid #111; 11 | box-shadow: 3px 3px 8px rgba( 0, 0, 0, 0.3); 12 | border-radius: 3px; 13 | text-align: center; 14 | z-index: 21; 15 | 16 | h2 { 17 | padding: 0.5em; 18 | margin: 0; 19 | font-weight: normal; 20 | border-bottom: 1px solid #ddd; 21 | background-color: #f3f3f3; 22 | } 23 | 24 | > div { 25 | padding: 1em; 26 | } 27 | } 28 | -------------------------------------------------------------------------------- /plugins/EngageTheme/src/Template/Element/Post/Sidebar/archives.ctp: -------------------------------------------------------------------------------- 1 |2 | Tags : 3 | count(); 6 | foreach ($tags as $tag): 7 | $url = $this->Url->build([ 8 | '_name' => 'taggedPosts', 9 | 'tag' => $tag->slug 10 | ]); 11 | 12 | if ($i < $total) { 13 | echo '' . $tag->title . ', '; 14 | } 15 | else { 16 | echo '' . $tag->title . ''; 17 | } 18 | 19 | $i++; 20 | endforeach; 21 | unset($i); 22 | ?> 23 |
-------------------------------------------------------------------------------- /.htaccess_secure: -------------------------------------------------------------------------------- 1 | # Uncomment the following to prevent the httpoxy vulnerability 2 | # See: https://httpoxy.org/ 3 | #2 | Tags : 3 | count(); 6 | foreach ($tags as $tag): 7 | $url = $this->Url->build([ 8 | '_name' => 'taggedPosts', 9 | 'tag' => $tag->slug 10 | ]); 11 | 12 | if ($i == $total) { 13 | $text = '' . $tag->title . ''; 14 | } 15 | else { 16 | $text = '' . $tag->title . ', '; 17 | } 18 | 19 | echo $text; 20 | 21 | $i++; 22 | endforeach; 23 | unset($i); 24 | ?> 25 |
-------------------------------------------------------------------------------- /webroot/master-assets/plugins/froala-editor/css/plugins/line_breaker.min.css: -------------------------------------------------------------------------------- 1 | /*! 2 | * froala_editor v2.9.1 (https://www.froala.com/wysiwyg-editor) 3 | * License https://froala.com/wysiwyg-editor/terms/ 4 | * Copyright 2014-2018 Froala Labs 5 | */ 6 | 7 | .clearfix::after{clear:both;display:block;content:"";height:0}.hide-by-clipping{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);border:0}.fr-line-breaker{cursor:text;border-top:1px solid #1e88e5;position:fixed;z-index:2;display:none}.fr-line-breaker.fr-visible{display:block}.fr-line-breaker a.fr-floating-btn{position:absolute;left:calc(50% - (32px / 2));top:-16px} -------------------------------------------------------------------------------- /plugins/EngageTheme/composer.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "your-name-here/EngageTheme", 3 | "description": "EngageTheme plugin for CakePHP", 4 | "type": "cakephp-plugin", 5 | "license": "MIT", 6 | "require": { 7 | "cakephp/cakephp": "^3.5" 8 | }, 9 | "require-dev": { 10 | "phpunit/phpunit": "^5.7.14|^6.0" 11 | }, 12 | "autoload": { 13 | "psr-4": { 14 | "EngageTheme\\": "src/" 15 | } 16 | }, 17 | "autoload-dev": { 18 | "psr-4": { 19 | "EngageTheme\\Test\\": "tests/", 20 | "Cake\\Test\\": "vendor/cakephp/cakephp/tests/" 21 | } 22 | } 23 | } 24 | -------------------------------------------------------------------------------- /webroot/master-assets/plugins/iconfonts/mdi/bower.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "mdi", 3 | "version": "2.1.19", 4 | "main": [ 5 | "scss/materialdesignicons.scss" 6 | ], 7 | "homepage": "http://materialdesignicons.com", 8 | "authors": [ 9 | { "name": "Austin Andrews", "homepage": "http://templarian.com" }, 10 | { "name": "Google", "homepage": "http://www.google.com/design" } 11 | ], 12 | "license": ["OFL-1.1", "MIT"], 13 | "ignore": [ 14 | "*.md", 15 | "*.json" 16 | ], 17 | "keywords": [ 18 | "material", 19 | "design", 20 | "icons", 21 | "webfont" 22 | ] 23 | } 24 | -------------------------------------------------------------------------------- /src/Template/Element/Dashboard/Modal/disallowed_delete_modal.ctp: -------------------------------------------------------------------------------- 1 |8 | You can't delete related data. 9 |
10 |This is custom blocks
This is custom blocks
docsify-cli globally, which helps initializing and previewing the website locally.
6 |
7 | ```bash
8 | npm i docsify-cli -g
9 | ```
10 |
11 | Run the local server with docsify serve. You can preview your site in your browser on http://localhost:3000. Run command below in docs folder.
12 |
13 | ```bash
14 | docsify serve
15 | ```
16 |
17 | You can run docsify serve from Visual Studio Code Terminal
<database_name,database_user,database_password> with your database information. Migrate database command is doing a same function like [Going Live in Production](production.md).
--------------------------------------------------------------------------------
/src/Template/Api/PostCategories/detail.ctp:
--------------------------------------------------------------------------------
1 | post_category != NULL) {
5 | $decode->post_category->permalink = $this->Url->build([
6 | '_name' => 'postsInCategory',
7 | 'category' => $decode->post_category->slug
8 | ], true);
9 |
10 | if ($decode->post_category->admin->photo != NULL) {
11 | $decode->post_category->admin->photo = $this->cell('Medias::mediaPath', [$decode->post_category->admin->photo, 'image', 'original'])->render();
12 | }
13 |
14 | echo json_encode($decode, JSON_PRETTY_PRINT);
15 | }
16 | else {
17 | echo $json;
18 | }
19 | ?>
--------------------------------------------------------------------------------
/webroot/master-assets/plugins/froala-editor/css/plugins/fullscreen.css:
--------------------------------------------------------------------------------
1 | /*!
2 | * froala_editor v2.9.1 (https://www.froala.com/wysiwyg-editor)
3 | * License https://froala.com/wysiwyg-editor/terms/
4 | * Copyright 2014-2018 Froala Labs
5 | */
6 |
7 | body.fr-fullscreen {
8 | overflow: hidden;
9 | height: 100%;
10 | width: 100%;
11 | position: fixed;
12 | }
13 | .fr-box.fr-fullscreen {
14 | margin: 0 !important;
15 | position: fixed;
16 | top: 0;
17 | left: 0;
18 | bottom: 0;
19 | right: 0;
20 | z-index: 2147483630 !important;
21 | width: auto !important;
22 | }
23 | .fr-box.fr-fullscreen .fr-toolbar.fr-top {
24 | top: 0 !important;
25 | }
26 | .fr-box.fr-fullscreen .fr-toolbar.fr-bottom {
27 | bottom: 0 !important;
28 | }
29 |
--------------------------------------------------------------------------------
/config/schema/i18n.sql:
--------------------------------------------------------------------------------
1 | # Copyright (c) Cake Software Foundation, Inc. (https://cakefoundation.org)
2 | #
3 | # Licensed under The MIT License
4 | # For full copyright and license information, please see the LICENSE.txt
5 | # Redistributions of files must retain the above copyright notice.
6 | # MIT License (https://opensource.org/licenses/mit-license.php)
7 |
8 | CREATE TABLE i18n (
9 | id int NOT NULL auto_increment,
10 | locale varchar(6) NOT NULL,
11 | model varchar(255) NOT NULL,
12 | foreign_key int(10) NOT NULL,
13 | field varchar(255) NOT NULL,
14 | content text,
15 | PRIMARY KEY (id),
16 | UNIQUE INDEX I18N_LOCALE_FIELD(locale, model, foreign_key, field),
17 | INDEX I18N_FIELD(model, foreign_key, field)
18 | );
19 |
--------------------------------------------------------------------------------
/webroot/uploads/themes/CreativeTheme/webroot/blocks/dynamic.json:
--------------------------------------------------------------------------------
1 | {
2 | "options" : [
3 | {
4 | "theme" : "Creative",
5 | "name" : "Dynamic Tester",
6 | "category" : "features",
7 | "editable" : "",
8 | "title" : "",
9 | "content" : "",
10 | "block" : "<name> with your theme name. The theme name must include "**Theme**" at the end of theme name, for example WowTheme, NiceTheme.
10 |
11 | Theme files will be created in webroot/uploads/themes/<name>.
12 |
13 | You can create theme block also, use the command below to generate a theme block.
14 |
15 | ```bash
16 | bin/cake purple theme create-block -b <name> with your block name. The name is alphanumeric. Theme block will be generated in active theme blocks folder.
--------------------------------------------------------------------------------
/src/Validator/Api/SubscriberAddValidator.php:
--------------------------------------------------------------------------------
1 | requirePresence(['email' => [
12 | 'message' => 'Email is required',
13 | ]])
14 | ->notEmptyString('email', 'Email is required')
15 | ->add('email', [
16 | 'validFormat' => [
17 | 'rule' => 'email',
18 | 'message' => 'Email must be in valid format',
19 | ]
20 | ]);
21 |
22 | return $validator;
23 | }
24 | }
--------------------------------------------------------------------------------
/webroot/master-assets/plugins/iconfonts/mdi/scss/_path.scss:
--------------------------------------------------------------------------------
1 | @font-face {
2 | font-family: '#{$mdi-font-name}';
3 | src: url('#{$mdi-font-path}/#{$mdi-filename}-webfont.eot?v=#{$mdi-version}');
4 | src: url('#{$mdi-font-path}/#{$mdi-filename}-webfont.eot?#iefix&v=#{$mdi-version}') format('embedded-opentype'),
5 | url('#{$mdi-font-path}/#{$mdi-filename}-webfont.woff2?v=#{$mdi-version}') format('woff2'),
6 | url('#{$mdi-font-path}/#{$mdi-filename}-webfont.woff?v=#{$mdi-version}') format('woff'),
7 | url('#{$mdi-font-path}/#{$mdi-filename}-webfont.ttf?v=#{$mdi-version}') format('truetype'),
8 | url('#{$mdi-font-path}/#{$mdi-filename}-webfont.svg?v=#{$mdi-version}##{$mdi-filename}#{$mdi-font-weight}') format('svg');
9 | font-weight: normal;
10 | font-style: normal;
11 | }
12 |
--------------------------------------------------------------------------------
/webroot/uploads/themes/CreativeTheme/src/Template/Pages/home.ctp:
--------------------------------------------------------------------------------
1 | Purple->getAllFuncInHtml($homepage);
3 | if ($replaceFunction == false) {
4 | echo $homepage;
5 | }
6 | else {
7 | $i = 1;
8 | foreach ($replaceFunction as $data):
9 | $functionName = trim(str_replace('function|', '', $data));
10 | if ($i == 1) {
11 | $html = str_replace('{{function|'.$functionName.'}}', $themeFunction->$functionName(), $homepage);
12 | }
13 | else {
14 | $html = str_replace('{{function|'.$functionName.'}}', $themeFunction->$functionName(), $html);
15 | }
16 | $i++;
17 | endforeach;
18 |
19 | echo $html;
20 | }
21 | ?>
--------------------------------------------------------------------------------
/src/Template/Api/PostCategories/view_in_page.ctp:
--------------------------------------------------------------------------------
1 | post_categories != NULL) {
5 | foreach ($decode->post_categories as $category) {
6 | $category->permalink = $this->Url->build([
7 | '_name' => 'postsInCategory',
8 | 'category' => $category->slug
9 | ], true);
10 |
11 | if ($category->admin->photo != NULL) {
12 | $category->admin->photo = $this->cell('Medias::mediaPath', [$category->admin->photo, 'image', 'original'])->render();
13 | }
14 | }
15 |
16 | echo json_encode($decode, JSON_PRETTY_PRINT);
17 | }
18 | else {
19 | echo $json;
20 | }
21 | ?>
--------------------------------------------------------------------------------
/src/Template/Purple/Froala/json/froala_manager_load_url.ctp:
--------------------------------------------------------------------------------
1 | request->getAttribute("webroot") . 'uploads/images/thumbnails/300x300/' . $media->name;
5 |
6 | $newArray[]['url'] = $fullImage;
7 | $newArray[]['name'] = $media->title;
8 | $newArray[]['id'] = $media->id;
9 | endforeach;
10 | foreach ($medias as $media):
11 | $fullImage = $this->request->getAttribute("webroot") . 'uploads/images/original/' . $media->name;
12 |
13 | $newArray[]['url'] = $fullImage;
14 | $newArray[]['name'] = $media->title;
15 | $newArray[]['id'] = $media->id;
16 | endforeach;
17 |
18 | $json = json_encode($newArray);
19 | echo $json;
20 | ?>
--------------------------------------------------------------------------------
/src/Form/MaintenanceForm.php:
--------------------------------------------------------------------------------
1 | requirePresence('email')
13 | ->notEmptyString('email', 'Please fill this field')
14 | ->add('email', [
15 | 'validFormat' => [
16 | 'rule' => 'email',
17 | 'message' => 'Email must be in valid format',
18 | ]
19 | ]);
20 | return $validator;
21 | }
22 | protected function _execute(array $data)
23 | {
24 | return true;
25 | }
26 | }
--------------------------------------------------------------------------------
/src/Validator/Api/PostCategoryDeleteValidator.php:
--------------------------------------------------------------------------------
1 | requirePresence(['id' => [
12 | 'message' => 'Category id is required',
13 | ]])
14 | ->notEmptyString('id', 'Category id is required')
15 | ->add('id', [
16 | 'isInteger' => [
17 | 'rule' => ['isInteger'],
18 | 'message' => 'Category id must be an integer value'
19 | ]
20 | ]);
21 |
22 | return $validator;
23 | }
24 | }
--------------------------------------------------------------------------------
/src/Validator/Api/SubscriberDeleteValidator.php:
--------------------------------------------------------------------------------
1 | requirePresence(['id' => [
12 | 'message' => 'Subscriber id is required',
13 | ]])
14 | ->notEmptyString('id', 'Subscriber id is required')
15 | ->add('id', [
16 | 'isInteger' => [
17 | 'rule' => ['isInteger'],
18 | 'message' => 'Subscriber id must be an integer value'
19 | ]
20 | ]);
21 |
22 | return $validator;
23 | }
24 | }
--------------------------------------------------------------------------------
/docs/folder-permission.md:
--------------------------------------------------------------------------------
1 | # Folder Permission {docsify-ignore-all}
2 |
3 | Purple CMS is based on CakePHP and uses the tmp directory for a number of different operations. Model descriptions, cached views, and session information are a few examples. The logs directory is used to write log files by the default FileLog engine.
4 |
5 | Make sure the directories logs, tmp and all its subdirectories are writable by the web server user.
6 |
7 | Run the following command in your terminal if you're running on Linux
8 |
9 |
10 | ```bash
11 | sudo chmod -R 777 tmp; sudo chmod -R 777 logs
12 | ```
13 |
14 | Do the same thing for folder plugins/EngageTheme and webroot/uploads.
15 |
16 | If you're running on Windows, you don't need to change the folder permission
-------------------------------------------------------------------------------- /src/Template/Email/html/default.ctp: -------------------------------------------------------------------------------- 1 | ' . $line . "\n"; 20 | endforeach; 21 | -------------------------------------------------------------------------------- /src/Validator/Api/PostCommentDeleteValidator.php: -------------------------------------------------------------------------------- 1 | requirePresence(['id' => [ 12 | 'message' => 'Comment id is required', 13 | ]]) 14 | ->notEmptyString('id', 'Comment id is required') 15 | ->add('id', [ 16 | 'isInteger' => [ 17 | 'rule' => ['isInteger'], 18 | 'message' => 'Comment id must be an integer value' 19 | ] 20 | ]); 21 | 22 | return $validator; 23 | } 24 | } -------------------------------------------------------------------------------- /config/Migrations/20220407065037_CreateSettings.php: -------------------------------------------------------------------------------- 1 | table('settings'); 16 | $table->addColumn('name', 'string', [ 17 | 'default' => null, 18 | 'limit' => 100, 19 | 'null' => false, 20 | ]); 21 | $table->addColumn('value', 'text', [ 22 | 'default' => null, 23 | 'null' => false, 24 | ]); 25 | $table->create(); 26 | } 27 | } 28 | -------------------------------------------------------------------------------- /src/Template/Api/Navigations/detail.ctp: -------------------------------------------------------------------------------- 1 | navigation != NULL) { 5 | foreach ($decode->navigation as $navigation) { 6 | if ($navigation->page != NULL) { 7 | $navigation->target = $baseUrl . $navigation->target; 8 | } 9 | 10 | if ($navigation->child != "") { 11 | foreach ($navigation->child as $child) { 12 | if ($child->page != NULL) { 13 | $child->target = $baseUrl . $child->target; 14 | } 15 | } 16 | } 17 | 18 | } 19 | 20 | echo json_encode($decode, JSON_PRETTY_PRINT); 21 | } 22 | else { 23 | echo $json; 24 | } 25 | ?> --------------------------------------------------------------------------------