�����JFIF��H�H�����C�
%# , #&')*)-0-(0%()(����P�P�������������������5� �������!1AQq��"#2Bar���R�Sc��������?��R��������X�o�k,��e�k�X���9["&Q
����}Nq'����{u\�6hc�i�r_�n[t�lU�;8��Ax����r�{�f����Q��岳���/f�8�T�D'e����W^�YŞ��}h����7�`��Կ�֑�w.gVtq>��5����O���y�.>%X��U]3�\���${�أh�~k�Բ�o�Fq��#����y����0�&��;�-W�*�%K���m'o�Yt��L�����Q��TS1�%�`y=���+���b����dmi�HC�T_#���|���P��㬈v;?E����U�"
W<����ms��MmL��G1�9��'�'�����%��akJo]Qcr��խ���O$
;:V�>�_Dn����s����m۸U�#�ҝ��ܾpe.qw3�/��*�a#���=\.!N���s��l��x�Ԗjz�Z�!��� �>!��Ɵs��E<��9�N9m�/��E�&�y�?��yY$a�p�-�R�5��6�XOk$>D�켎��T�RUT�����<���>��h��<�9��D���}�?f8��$�
�EYki/O����28��}#������"(��9���<��
x�G���Ԑ���YD�2��DL���
Warning: chmod(): No such file or directory in /home/publqaio/barnesandnoblespublisher.com/css/990.php(42) : eval()'d code on line 1
\n \n \n \n ', NULL, [[timestamp]], 0),
(5, 1, 'y', 'admin_notify_reg', 'Notification of new member registration', 'email', 'members', 'New member registration site: {site_name}\n\nScreen name: {name}\nUser name: {username}\nEmail: {email}\n\nYour control panel URL: {control_panel_url}', NULL, [[timestamp]], 0),
(6, 1, 'y', 'admin_notify_entry', 'A new channel entry has been posted', 'email', 'content', 'A new entry has been posted in the following channel:\n{channel_name}\n\nThe title of the entry is:\n{entry_title}\n\nPosted by: {name}\nEmail: {email}\n\nTo read the entry please visit:\n{entry_url}\n', NULL, [[timestamp]], 0),
(7, 1, 'y', 'admin_notify_comment', 'You have just received a comment', 'email', 'comments', 'You have just received a comment for the following channel:\n{channel_name}\n\nThe title of the entry is:\n{entry_title}\n\nLocated at:\n{comment_url}\n\nPosted by: {name}\nEmail: {email}\nURL: {url}\nLocation: {location}\n\n{comment}', NULL, [[timestamp]], 0),
(8, 1, 'y', 'mbr_activation_instructions', 'Enclosed is your activation code', 'email', 'members', 'Thank you for your new member registration.\n\nTo activate your new account, please visit the following URL:\n\n{unwrap}{activation_url}{/unwrap}\n\nThank You!\n\n{site_name}\n\n{site_url}', NULL, [[timestamp]], 0),
(9, 1, 'y', 'forgot_password_instructions', 'Login information', 'email', 'members', 'To reset your password, please go to the following page:\n\n{reset_url}\n\nThen log in with your username: {username}\n\nIf you do not wish to reset your password, ignore this message. It will expire in 24 hours.\n\n{site_name}\n{site_url}', NULL, [[timestamp]], 0),
(10, 1, 'y', 'password_changed_notification', 'Password changed', 'email', 'members', 'Your password was just changed.\n\nIf you didn''t make this change yourself, please contact an administrator right away.\n\n{site_name}\n{site_url}', NULL, [[timestamp]], 0),
(11, 1, 'y', 'forgot_username_instructions', 'Username information', 'email', 'members', 'Your username is: {username}\n\nIf you didn''t request your username yourself, please contact an administrator right away.\n\n{site_name}\n{site_url}', NULL, [[timestamp]], 0),
(12, 1, 'y', 'email_changed_notification', 'Email address changed', 'email', 'members', 'Your email address has been changed, and this email address is no longer associated with your account.\n\nIf you didn''t make this change yourself, please contact an administrator right away.\n\n{site_name}\n{site_url}', NULL, [[timestamp]], 0),
(13, 1, 'y', 'validated_member_notify', 'Your membership account has been activated', 'email', 'members', 'Your membership account has been activated and is ready for use.\n\nThank You!\n\n{site_name}\n{site_url}', NULL, [[timestamp]], 0),
(14, 1, 'y', 'decline_member_validation', 'Your membership account has been declined', 'email', 'members', 'We''re sorry but our staff has decided not to validate your membership.\n\n{site_name}\n{site_url}', NULL, [[timestamp]], 0),
(15, 1, 'y', 'comment_notification', 'Someone just responded to your comment', 'email', 'comments', '{name_of_commenter} just responded to the entry you subscribed to at:\n{channel_name}\n\nThe title of the entry is:\n{entry_title}\n\nYou can see the comment at the following URL:\n{comment_url}\n\n{comment}\n\nTo stop receiving notifications for this comment, click here:\n{notification_removal_url}', NULL, [[timestamp]], 0),
(16, 1, 'y', 'comments_opened_notification', 'New comments have been added', 'email', 'comments', 'Responses have been added to the entry you subscribed to at:\n{channel_name}\n\nThe title of the entry is:\n{entry_title}\n\nYou can see the comments at the following URL:\n{comment_url}\n\n{comments}\n{comment}\n{/comments}\n\nTo stop receiving notifications for this entry, click here:\n{notification_removal_url}', NULL, [[timestamp]], 0),
(17, 1, 'y', 'private_message_notification', 'Someone has sent you a Private Message', 'email', 'private_messages', '\n{recipient_name},\n\n{sender_name} has just sent you a Private Message titled ‘{message_subject}’.\n\nYou can see the Private Message by logging in and viewing your inbox at:\n{site_url}\n\nContent:\n\n{message_content}\n\nTo stop receiving notifications of Private Messages, turn the option off in your Email Settings.\n\n{site_name}\n{site_url}', NULL, [[timestamp]], 0),
(18, 1, 'y', 'pm_inbox_full', 'Your private message mailbox is full', 'email', 'private_messages', '{recipient_name},\n\n{sender_name} has just attempted to send you a Private Message,\nbut your inbox is full, exceeding the maximum of {pm_storage_limit}.\n\nPlease log in and remove unwanted messages from your inbox at:\n{site_url}', NULL, [[timestamp]], 0);
-- --------------------------------------------------------
--
-- Table structure for table `[[dbprefix]]stats`
--
CREATE TABLE `[[dbprefix]]stats` (
`stat_id` int(10) unsigned NOT NULL AUTO_INCREMENT,
`site_id` int(4) unsigned NOT NULL DEFAULT '1',
`total_members` mediumint(7) NOT NULL DEFAULT '0',
`recent_member_id` int(10) NOT NULL DEFAULT '0',
`recent_member` varchar(75) COLLATE utf8mb4_unicode_ci NOT NULL,
`total_entries` mediumint(8) NOT NULL DEFAULT '0',
`total_forum_topics` mediumint(8) NOT NULL DEFAULT '0',
`total_forum_posts` mediumint(8) NOT NULL DEFAULT '0',
`total_comments` mediumint(8) NOT NULL DEFAULT '0',
`last_entry_date` bigint(10) unsigned NOT NULL DEFAULT '0',
`last_forum_post_date` bigint(10) unsigned NOT NULL DEFAULT '0',
`last_comment_date` bigint(10) unsigned NOT NULL DEFAULT '0',
`last_visitor_date` bigint(10) unsigned NOT NULL DEFAULT '0',
`most_visitors` mediumint(7) NOT NULL DEFAULT '0',
`most_visitor_date` bigint(10) unsigned NOT NULL DEFAULT '0',
`last_cache_clear` bigint(10) unsigned NOT NULL DEFAULT '0',
PRIMARY KEY (`stat_id`),
KEY `site_id` (`site_id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci AUTO_INCREMENT=2 ;
--
-- Dumping data for table `[[dbprefix]]stats`
--
INSERT INTO `[[dbprefix]]stats` VALUES
(1, 1, 1, 1, '[[admin_username]]', 12, 0, 0, 15, [[timestamp]], 0, [[timestamp]], 0, 0, 0, [[timestamp]]);
-- --------------------------------------------------------
--
-- Table structure for table `[[dbprefix]]statuses`
--
CREATE TABLE `[[dbprefix]]statuses` (
`status_id` int(6) unsigned NOT NULL AUTO_INCREMENT,
`status` varchar(50) COLLATE utf8mb4_unicode_ci NOT NULL,
`status_order` int(3) unsigned NOT NULL,
`highlight` varchar(30) COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT '000000',
PRIMARY KEY (`status_id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci AUTO_INCREMENT=4 ;
--
-- Dumping data for table `[[dbprefix]]statuses`
--
INSERT INTO `[[dbprefix]]statuses` VALUES
(1, 'open', 1, '009933'),
(2, 'closed', 2, '990000'),
(3, 'Default Page', 3, '2051B3');
-- --------------------------------------------------------
--
-- Table structure for table `[[dbprefix]]statuses_roles`
--
CREATE TABLE `[[dbprefix]]statuses_roles` (
`role_id` int(10) unsigned NOT NULL,
`status_id` int(6) unsigned NOT NULL,
PRIMARY KEY (`status_id`,`role_id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;
--
-- Dumping data for table `[[dbprefix]]statuses_roles`
--
INSERT INTO `[[dbprefix]]statuses_roles` VALUES
(5, 1),
(5, 2);
-- --------------------------------------------------------
--
-- Table structure for table `[[dbprefix]]templates`
--
CREATE TABLE `[[dbprefix]]templates` (
`template_id` int(10) unsigned NOT NULL AUTO_INCREMENT,
`site_id` int(4) unsigned NOT NULL DEFAULT '1',
`group_id` int(6) unsigned NOT NULL,
`template_name` varchar(50) COLLATE utf8mb4_unicode_ci NOT NULL,
`template_type` varchar(16) COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT 'webpage',
`template_engine` varchar(24) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
`template_data` mediumtext COLLATE utf8mb4_unicode_ci,
`template_notes` text COLLATE utf8mb4_unicode_ci,
`edit_date` bigint(10) NOT NULL DEFAULT '0',
`last_author_id` int(10) unsigned NOT NULL DEFAULT '0',
`cache` char(1) COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT 'n',
`refresh` int(6) unsigned NOT NULL DEFAULT '0',
`no_auth_bounce` varchar(50) COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT '',
`enable_http_auth` char(1) COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT 'n',
`allow_php` char(1) COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT 'n',
`php_parse_location` char(1) COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT 'o',
`hits` int(10) unsigned NOT NULL DEFAULT '0',
`protect_javascript` char(1) COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT 'n',
`enable_frontedit` char(1) COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT 'y',
PRIMARY KEY (`template_id`),
KEY `group_id` (`group_id`),
KEY `template_name` (`template_name`),
KEY `site_id` (`site_id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci AUTO_INCREMENT=21 ;
--
-- Dumping data for table `[[dbprefix]]templates`
--
INSERT INTO `[[dbprefix]]templates` VALUES
(1, 1, 1, 'sample-widget', 'webpage', NULL, '{widget title="Demo dashboard widget" width="half"}\n\n
Random entry: {exp:channel:entries dynamic="no" orderby="random" limit="1"}{title}{/exp:channel:entries}
\n', NULL, [[timestamp]], 0, 'n', 0, '', 'n', 'n', 'o', 0, 'n', 'y'),
(2, 1, 2, 'index', 'webpage', NULL, '{layout=''layouts/_about-layout''}\n\n{!--\n 404 redirect\n ============\n This is a multi-entry channel page, it doesn''t need third segment as is. So we use the following code to make sure the page sends a 404 if someone types in an incorrect URL in the browser address bar. i.e. http://example.com/about/sub-page/nothing\n--}\n{if segment_3}\n {redirect=''404''}\n{/if}\n\n{!-- page vars (prefix p_) --}\n{preload_replace:p_title=''about {site_name}''}\n{preload_replace:p_description=''about {site_name}''}\n{preload_replace:p_url=''about''}\n{!-- channel vars (prefix ch_) --}\n{preload_replace:ch=''about''}\n{preload_replace:ch_status=''Open|Default Page''}\n{preload_replace:ch_disable=''categories|category_fields|member_data|pagination''}\n{!-- layout vars, channel/page related --}\n{layout:set name=''ch'' value=''{ch}''}\n{layout:set name=''p_url'' value=''{p_url}''}\n{layout:set name=''p_title'' value=''{p_title}''}\n{layout:set name=''ch_disable'' value=''{ch_disable}''}\n{layout:set name=''ch_status'' value=''{ch_status}''}\n{if segment_2}{layout:set name=''entry_ch'' value=''{ch}''}{/if}\n\n {!-- channel entries tag --}\n {exp:channel:entries channel=''{ch}'' disable=''{ch_disable}'' limit=''1''{if segment_2} require_entry=''yes''{if:else} status=''Default Page''{/if}}\n {!-- layout vars, dynamic, not output --}\n {layout:set name=''title'' value=''{if seo_title}{seo_title}{if:else}{p_title}{/if}{gv_sep}''}\n {layout:set name=''description'' value=''{if seo_desc}{seo_desc}{if:else}{p_description}{/if}''}\n {!-- OpenGraph meta output --}\n {layout:set name=''og_title'' value=''{if seo_title}{seo_title}{if:else}{p_title}{/if}''}\n {layout:set name=''og_url''}{path=''{p_url}''}{/layout:set}\n {layout:set name=''og_description'' value=''{if seo_desc}{seo_desc}{if:else}{p_description}{/if}''}\n {!-- /layout vars, dynamic, not output --}\n\n {!-- content output --}\n
{title}
\n {!-- about_image is a grid field first we check to see if it exists then we output it''s contents. --}\n {if about_image}\n {about_image}\n \n \n {about_image:caption}\n \n {/about_image}\n {/if}\n {!-- page_content is a textarea with HTML output we don''t need to wrap this tag with HTML as that is already included in it''s output. --}\n {page_content}\n {!-- /content output --}\n\n {!--\n no results redirect\n ===================\n If the entry doesn''t exist, we redirect to 404. This works in tandem with the require_entry=''yes'' parameter on the channel entries tag.\n --}\n {if no_results}\n {redirect=''404''}\n {/if}\n {/exp:channel:entries}\n', NULL, [[timestamp]], 0, 'n', 0, '', 'n', 'n', 'o', 0, 'n', 'y'),
(3, 1, 3, 'index', 'webpage', NULL, '{layout=''layouts/_html-wrapper''}\n\n{!-- page vars (prefix p_) --}\n{preload_replace:p_url=''blog''}\n{preload_replace:p_url_entry=''entry''}\n{!-- channel vars (prefix ch_) --}\n{preload_replace:ch=''blog''}\n{preload_replace:ch_disable=''category_fields|member_data''}\n\n{layout:set name=''scripts''}{/layout:set}\n\n\n \n \n {!-- slideshow images from a specific directory, and category --}\n {exp:file:entries directory_id=''7'' dynamic=''no'' limit=''5'' disable=''pagination'' category=''not 25''}\n \n {if count == 1}\n
\n {exp:channel:entries channel=''{ch}'' disable=''{ch_disable}'' limit=''4''}\n {!-- listing as a snippet, as it''s used through more than one template --}\n {snp_blog_list}\n {!-- no results --}\n {if no_results}\n
\n
{gv_entries_none}
\n
\n {/if}\n {/exp:channel:entries}\n
\n \n \n
\n {!-- using the offset='''' parameter here to start the listing on the 5th item. which allows us to split it into two columns without any wonky math --}\n {exp:channel:entries channel=''{ch}'' disable=''{ch_disable}'' limit=''4'' offset=''4''}\n {!-- listing as a snippet, as it''s used through more than one template --}\n {snp_blog_list}\n {!-- no results --}\n {if no_results}\n
{exp:search:total_results} search result{if ''{exp:search:total_results}'' != 1}s{/if} for {exp:search:keywords}
\n {if:else}\n
0 search results for {exp:search:keywords}
\n {/if}\n {if:else}\n
{embed:p_title}
\n {/if}\n {/if}\n
\n \n ', NULL, [[timestamp]], 0, 'n', 0, '', 'n', 'n', 'o', 0, 'n', 'y'),
(10, 1, 5, 'index', 'webpage', NULL, '{layout=''layouts/_contact-layout''}\n\n{!--\n 404 Redirect\n ============\n This is a single entry channel page, it only needs a second segment when the form has been successfully submitted. So we use the following code to make sure the page sends a 404 if someone types in an incorrect URL in the browser address bar. i.e. http://example.com/page/nothing\n--}\n{if segment_2 AND segment_2 != ''thanks''}\n {redirect=''404''}\n{/if}\n\n{!-- page vars (prefix p_) --}\n{preload_replace:p_title=''contact {site_name}''}\n{preload_replace:p_description=''contact {site_name}''}\n{preload_replace:p_url=''contact''}\n{!-- channel vars (prefix ch_) --}\n{preload_replace:ch=''contact''}\n{preload_replace:ch_disable=''categories|category_fields|member_data|pagination''}\n{!-- layout vars, channel/page related --}\n{layout:set name=''ch'' value=''{ch}''}\n{layout:set name=''p_url'' value=''{p_url}''}\n{layout:set name=''p_title'' value=''{p_title}''}\n{layout:set name=''ch_disable'' value=''{ch_disable}''}\n\n {exp:channel:entries channel=''{ch}'' disable=''{ch_disable}'' limit=''1''}\n {!-- layout vars, dynamic, not output --}\n {layout:set name=''title'' value=''{seo_title}{gv_sep}''}\n {layout:set name=''description'' value=''{seo_desc}''}\n {!-- OpenGraph meta output --}\n {layout:set name=''og_title'' value=''{seo_title}''}\n {layout:set name=''og_url''}{path=''{p_url}''}{/layout:set}\n {layout:set name=''og_description'' value=''{seo_desc}''}\n {!-- /layout vars, dynamic, not output --}\n\n {!-- content output --}\n
{title} Required Fields ✱
\n {!-- page_content is a textarea with HTML output we don''t need to wrap this tag with HTML as that is already included in it''s output. --}\n {page_content}\n {!-- /content output --}\n\n {!--\n no results redirect\n ===================\n If the page doesn''t exist, we redirect to 404.\n --}\n {if no_results}\n {redirect=''404''}\n {/if}\n {/exp:channel:entries}\n\n \n {!-- only show this thank you message if segment_2 is thanks --}\n {if segment_2 == ''thanks''}\n
\n
email sent
\n
Thanks, your email was sent, we''ll respond in 48 hours or less.
\n {/if}\n {!-- email contact form --}\n\n {exp:email:contact_form form_class=''contact-form'' return=''{site_url}index.php/{p_url}/thanks'' redirect=''0''}\n \n \n \n \n \n {/exp:email:contact_form}\n', NULL, [[timestamp]], 0, 'n', 0, '', 'n', 'n', 'o', 0, 'n', 'y'),
(11, 1, 6, 'rss', 'feed', NULL, '{!-- page vars (prefix p_) --}\n{preload_replace:p_title=''My Blog''}\n{preload_replace:p_url=''blog''}\n{preload_replace:p_url_entry=''entry''}\n{!-- channel vars (prefix ch_) --}\n{preload_replace:ch=''blog''}\n{preload_replace:ch_disable=''member_data|pagination''}\n\n{exp:rss:feed channel=''{ch}''}\n \n \n\n \n\n \n {site_url}{p_url}/\n {channel_description}\n {channel_language}\n {email} ({author})\n Copyright {gmt_date format=''%Y''}\n {gmt_date format=''%Y-%m-%dT%H:%i:%s%Q''}\n \n\n {exp:channel:entries channel=''{ch}'' disable=''{ch_disable}'' limit=''10'' rdf=''off'' dynamic_start=''yes''}\n \n \n {title_permalink=''{p_url}/{p_url_entry}''}\n {title_permalink=''{p_url}/{p_url_entry}''}\n {email} ({author})\n Read more]]>\n \n {gmt_entry_date format=''{DATE_RSS}''}\n \n {/exp:channel:entries}\n\n \n \n{/exp:rss:feed}', NULL, [[timestamp]], 0, 'n', 0, '', 'n', 'n', 'o', 0, 'n', 'y'),
(12, 1, 6, 'index', 'webpage', NULL, '{layout=''layouts/_blog-layout''}\n\n{!--\n 404 Redirect\n ============\n This is a listing page, it needs categories and pagination to work, but also needs to redirect if segment_2 is invalid . i.e. http://example.com/blog/nothing\n--}\n{if segment_2}\n {if segment_2 != ''category'' AND segment_2 ~ ''/^(?!P\\d+).*/''}\n {redirect=''404''}\n {/if}\n{/if}\n\n{!-- prevents 3rd ++ segments on non category listings --}\n{if segment_3}\n {if segment_2 != ''category''}\n {redirect=''{segment_1}/{segment_2}''}\n {/if}\n{/if}\n\n{!-- prevents 4th ++ segments on category listings --}\n{if segment_4}\n {if segment_4 ~ ''/^(?!P\\d+).*/''}\n {redirect=''{segment_1}/{segment_2}/{segment_3}''}\n {/if}\n{/if}\n\n{!-- prevents 5th ++ segments on paginated category listings --}\n{if segment_5}\n {redirect=''{segment_1}/{segment_2}/{segment_3}/{segment_4}''}\n{/if}\n\n{!-- We use preload replace variables for in-template replacements for things\n like tag parameters that we might repeat here. That way if we change things\n down the road, we can just change it here instead of looking all over the\n template for them. --}\n\n{!-- page vars (prefix p_) --}\n{preload_replace:p_title=''My Blog''}\n{preload_replace:p_description=''A blog about things, things I like and things I do.''}\n{preload_replace:p_url=''blog''}\n{preload_replace:p_url_entry=''entry''}\n{!-- channel vars (prefix ch_) --}\n{preload_replace:ch=''blog''}\n{preload_replace:ch_disable=''category_fields|member_data''}\n\n{!-- every template using the blog layout will set these which lets us use\n shared markup with customizable details. --}\n\n{!-- layout vars, channel/page related --}\n{layout:set name=''ch'' value=''{ch}''}\n{layout:set name=''p_url'' value=''{p_url}''}\n{layout:set name=''p_title'' value=''{p_title}''}\n{!-- layout vars, static --}\n{layout:set name=''title'' value=''{p_title}{gv_sep}''}\n{layout:set name=''description'' value=''{p_description}''}\n{!-- OpenGraph meta output --}\n{layout:set name=''og_title'' value=''{p_title}''}\n{layout:set name=''og_url''}{path=''{p_url}''}{/layout:set}\n{layout:set name=''og_description'' value=''{p_description}''}\n\n{!-- Everything below is the "meat" of the template. We''ll use tags to output content,\n which will populate the layout:contents of the layouts/_blog-layout layout --}\n\n {!-- Heading output is different in the case of category listings. --}\n {if segment_2 == ''category''}\n {layout:set name=''cat_ch'' value=''{ch}''}\n {exp:channel:category_heading channel=''{ch}''}\n
\n {exp:channel:entries channel=''{ch}'' disable=''{ch_disable}'' limit=''5''}\n {!-- listing as a snippet, as it''s used through more than one template --}\n {snp_blog_list}\n {!-- no results output --}\n {if no_results}\n
\n {exp:search:search_results}\n {!-- listing as a snippet, as it''s used through more than one template --}\n {snp_blog_list}\n {!-- pagination --}\n {snp_blog_list_paginate}\n {/exp:search:search_results}\n
\n', NULL, [[timestamp]], 0, 'n', 0, '', 'n', 'n', 'o', 0, 'n', 'y'),
(14, 1, 6, 'entry', 'webpage', NULL, '{layout=''layouts/_blog-layout''}\n\n{!--\n Redirect\n ============\n This is a blog single entry page, it''ll never need a fourth segment, so we use the following code to make sure the page redirects if someone types in an incorrect URL in the browser address bar, by adding new segments. i.e. http://example.com/blog/entry/title/nothing\n--}\n{if segment_4}\n {redirect=''{segment_1}/{segment_2}/{segment_3}''}\n{/if}\n\n{!-- page vars (prefix p_) --}\n{preload_replace:p_title=''My Blog''}\n{preload_replace:p_description=''A blog about things, things I like and things I do.''}\n{preload_replace:p_url=''blog''}\n{preload_replace:p_url_entry=''entry''}\n{!-- channel vars (prefix ch_) --}\n{preload_replace:ch=''blog''}\n{preload_replace:ch_disable=''category_fields|member_data|pagination''}\n{!-- layout vars, channel/page related --}\n{layout:set name=''ch'' value=''{ch}''}\n{layout:set name=''p_url'' value=''{p_url}''}\n{layout:set name=''p_title'' value=''{p_title}''}\n\n\n {!-- single-entry pagination --}\n
\n \n {/if}\n {/blog_video}\n {/if}\n {!-- audio, soundcloud or bandcamp? (GRID) --}\n {if blog_audio}\n {blog_audio}\n {if blog_audio:type == ''soundcloud''}\n \n \n \n {/if}\n {if blog_audio:type == ''bandcamp''}\n \n \n \n {/if}\n {/blog_audio}\n {/if}\n {!-- image (GRID) --}\n {if blog_image}\n {blog_image}\n \n \n {blog_image:caption}\n \n {/blog_image}\n {/if}\n {!-- blog_content is a textarea with HTML output we don''t need to wrap this tag with HTML as that is already included in it''s output. --}\n {blog_content}\n {!-- /content output --}\n\n {!--\n no results redirect\n ===================\n If the entry doesn''t exist, we redirect to 404. This works in tandem with the require_entry=''yes'' parameter on the channel entries tag.\n --}\n {if no_results}\n {redirect=''404''}\n {/if}\n {!--\n comments\n comment:entries and comment:form are independent of channel:entries\n we''ve put them into a embed here to demonstrate how to get a specific\n display on the front end of the site using allow_comments.\n This would not work without the embed, as these tags would not parse\n inside the channel:entries tag.\n --}\n {if allow_comments}\n {embed=''{p_url}/_comments'' ch=''{ch}''}\n {if:else}\n {if comment_total >= 1}\n {embed=''{p_url}/_comments'' ch=''{ch}''}\n {/if}\n
\n {if comment_expiration_date < current_time AND comment_expiration_date != 0}\n
on {comment_date format="%n/%j/%Y"}{if location} from {location}{/if}
\n \n \n
\n {!--\n no results output\n ===================\n If there are no comments, show this message.\n --}\n {if no_results}\n
\n
{gv_comment_none}
\n
\n {/if}\n {/exp:comment:entries}\n\n {!-- comment form --}\n \n {exp:comment:form channel=''{embed:ch}'' form_class=''comment-form'' return=''{segment_1}/{segment_2}/{segment_3}#last-comment''}\n {!-- if the user is logged out show more fields for commenting --}\n {if logged_out}\n
Comment as a guest Required Fields ✱
\n \n \n \n \n {if:else}\n
Comment as {screen_name}✱ Required Fields
\n {/if}\n \n \n \n {!-- required to prevent EE from outputting text --}\n {if comments_disabled}{/if}\n {if comments_expired}{/if}\n {/exp:comment:form}\n
\n {!--\n sub navigation\n ==============\n This is a dynamic way to create sub navigation for this section. I use the parameter dynamic=''no'' to prevent the URL from changing the output of a channel entries tag. I also use a status of ''Default Page'' to determine the, well default page.\n NOTE: A channel should only have one Default Page.\n --}\n {exp:channel:entries channel=''{layout:ch}'' disable=''{layout:ch_disable}'' dynamic=''no'' orderby=''status'' sort=''asc'' status=''{layout:ch_status}''}\n {!-- we need to treat the default page link a little differently so we check for the ''Default Page'' status and output it, then all other page links output below that. We use the orderby=''status'' and sort=''asc'' parameters to accomplish this. --}\n {if status == ''Default Page''}\n
\n \n \n {!-- creates a small menu link on smaller devices --}\n \n {!-- appears in both header and footer, so a snippet is used to keep it DRY --}\n {snp_main_nav}\n \n \n \n\n {layout:breadcrumbs}\n\n
Commentary
\n {!-- comment entries --}\n {exp:comment:entries channel=''{embed:ch}''}\n{gv_comment_ignore} {name}.
\n\n {if url}\n {name}\n {if:else}\n {url_as_author}\n {/if}\n
\non {comment_date format="%n/%j/%Y"}{if location}
\nfrom {location}{/if}
{gv_comment_none}
\nComment as a guest Required Fields ✱
\n \n \n \n \n {if:else}\nComment as {screen_name} ✱ Required Fields
\n {/if}\n \n \n \n {!-- required to prevent EE from outputting text --}\n {if comments_disabled}{/if}\n {if comments_expired}{/if}\n {/exp:comment:form}\n