JasonWoof Got questions, comments, patches, etc.? Contact Jason Woofenden
header from cms image named "Header"
[wfpl-cms.git] / inc / cms.php
index 0116c37..f8154a9 100644 (file)
@@ -26,10 +26,28 @@ function cms_display($basename, &$tem) {
 
        $cms_page_id = cms_display_content($tem, 'where filename=%"', $basename);
 
-       if(logged_in_as_admin()) {
+       $footer = db_get_value('cms_pages', 'content', 'where filename="_footer"');
+       if ($footer) {
+               $tem->set('$cms_footer', $footer);
+       }
+
+       $header = db_get_value('cms_images', 'image', 'where name="Header"');
+       if ($header) {
+               $parts = explode(' ', $header . '      ', 7);
+               $tem->set('$cms_header',
+                       '<div style="'
+                       . 'padding-top: ' . round(100000 * (int)$parts[2] / (int)$parts[1] / 1000) . '%;'
+                       . 'background-image: url(' . $parts[0] . ');'
+                       . 'background-repeat: no-repeat;'
+                       . 'background-size: 100% auto;'
+                       . '"></div>'
+               );
+       }
+
+       if(session_auth_can('admin_links')) {
                $admin_links = array();
                if($cms_page_id) {
-                       $admin_links['id'] = $cms_page_id;
+                       $admin_links['$edit_page_id'] = $cms_page_id;
                }
                $tem->set('$admin_links', $admin_links);
        }
@@ -43,14 +61,27 @@ function cms_display($basename, &$tem) {
 
 function cms_display_content(&$tem /*, 'where clause %", %i', string, int */) {
        $args = array_slice(func_get_args(), 1);
-       $args = array_merge(array('cms_pages', 'id,title,keywords,description,content'), $args);
+       $args = array_merge(array('cms_pages', 'id,title,keywords,description,layout,content,sidebar_content'), $args);
        $row = call_user_func_array('db_get_assoc', $args);
        if($row) {
                $tem->set('$cms_title', $row['title']);
                $tem->set('$meta_keywords', $row['keywords']);
                $tem->set('$meta_description', $row['description']);
                $tem->set('$cms_body', $row['content']);
+               if ($row['layout'] === '' || $row['layout'] === '0') {
+                       $tem->set('$layout_centerer_class', 'full');
+               } else {
+                       $tem->set('$layout_centerer_class', 'with_sidebar');
+                       if ($row['layout'] === '1') {
+                               $tem->set('$layout_sidebar_class', 'plain');
+                       } else {
+                               $tem->set('$layout_sidebar_class', 'bordered');
+                       }
+                       $tem->set('$cms_sidebar', $row['sidebar_content']);
+               }
                return $row['id'];
+       } else {
+               $tem->set('$layout_centerer_class', 'full');
        }
        return false;
 }