@@ -15,7 +15,6 @@
<customfields>
<customfield name="customfields">
<include name="ContentCustomfields"/>
<field name="example_of_content_only_field" type="int" null="1" default="1"/>
</customfield>
<customfield name="metadata">
<include name="SystemMetadata"/>
@@ -1,3 +1,3 @@
<field name="intro_image" field="file" type="image" shape="" size=""/>
<field name="body_image" field="file" type="image" shape="" size=""/>
<field name="author_notes" field="char" null="0" default=" "/>
<field name="intro_image" type="image" shape="" size=""/>
<field name="body_image" type="image" shape="" size=""/>
<field name="author_notes" type="char" null="0" default=" "/>
@@ -22,9 +22,6 @@
<field name="item_wrap_view_id" type="integer" null="1" default="0" values=""/>
<field name="item_wrap_view_css_id" type="char" null="1" default="" values=""/>
<field name="item_wrap_view_css_class" type="char" null="1" default="" values=""/>
<field name="item_get_customfields" type="integer" null="0" default="1" values="0,1,2"/>
<field name="item_get_children" type="integer" null="0" default="1" values="0,1,2"/>
<field name="item_check_view_level_access" type="integer" null="0" default="1" values="0,1,2"/>

<field name="form_template_view_id" type="integer" null="1" default="" values=""/>
<field name="form_template_view_css_id" type="char" null="1" default="" values=""/>
@@ -41,22 +38,23 @@
<field name="list_template_view_css_class" type="char" null="1" default="" values=""/>

<field name="list_get_customfields" type="integer" null="0" default="1" values="0,1,2"/>
<field name="list_get_child_row_counts" type="integer" null="0" default="1" values="0,1,2"/>
<field name="list_get_item_children" type="integer" null="0" default="1" values="0,1,2"/>
<field name="list_use_special_joins" type="integer" null="0" default="1" values="0,1,2"/>
<field name="list_check_view_level_access" type="integer" null="0" default="1" values="0,1,2"/>

<field name="list_display_archived_content" type="integer" null="0" default="1" values="0,1,2"/>
<field name="list_display_featured_content" type="integer" null="0" default="1" values="0,1,2"/>
<field name="list_display_stickied_content" type="integer" null="0" default="1" values="0,1,2"/>
<field name="list_display_published_date_begin" type="date" null="0" default=""/>
<field name="list_display_published_date_end" type="date" null="0" default=""/>
<field name="list_display_category_list"/>
<field name="list_display_tag_list"/>
<field name="list_display_author_list"/>
<field name="list_display_category_list" type="categorylist" null="1" default=""/>
<field name="list_display_tag_list" type="taglist" null="1" default=""/>
<field name="list_display_author_list" type="authorlist" null="1" default=""/>
<field name="list_begin" type="integer" default="1"/>
<field name="list_length" type="integer" default="5" minimum="0" maximum="20"/>
<field name="list_order_by_field1" type="field_list" null="1" default="featured"/>
<field name="list_order_by_field1" type="field_list" null="1" default="start_publishing_datetime"/>
<field name="list_order_by_direction1" type="char" null="1" default="DESC" values="ASC,DESC"/>
<field name="list_order_by_field2" type="field_list" null="1" default="start_publishing_datetime"/>
<field name="list_order_by_field2" type="field_list" null="1" default=""/>
<field name="list_order_by_direction2" type="char" null="1" default="DESC" values="ASC,DESC"/>
<field name="list_order_by_field3" type="field_list" null="1" default=""/>
<field name="list_order_by_direction3" type="char" null="1" default="DESC" values="ASC,DESC"/>
@@ -1,6 +1,6 @@
<field name="metadata_title" type="char" null="1" default=""/>
<field name="metadata_description" type="text" null="1" default=""/>
<field name="metadata_keywords" type="char" null="1" default=""/>
<field name="metadata_robots" type="char" null="1" default="follow,index"/>
<field name="metadata_author" type="char" null="1" default=""/>
<field name="metadata_content_rights" type="char" null="1" default=""/>
<field name="title" type="char" null="1" default=""/>
<field name="description" type="text" null="1" default=""/>
<field name="keywords" type="char" null="1" default=""/>
<field name="robots" type="char" null="1" default="follow,index"/>
<field name="author" type="char" null="1" default=""/>
<field name="content_rights" type="char" null="1" default=""/>
@@ -0,0 +1,128 @@
<field name="application_name" type="char" null="1" default="" values=""/>

<field name="sef" type="binary" null="1" default="1" values="0,1"/>
<field name="sef_rewrite" type="binary" null="1" default="1" values="0,1"/>
<field name="sef_suffix" type="binary" null="1" default="1" values="0,1"/>
<field name="unicode_slugs" type="binary" null="1" default="1" values="0,1"/>
<field name="force_ssl" type="binary" null="1" default="0" values="0,1"/>

<field name="language" type="char" null="1" default="en-GB" values=""/>
<field name="direction" type="char" null="1" default="ltr" values="ltr,rtl"/>
<field name="multilingual" type="binary" null="1" default="0" values="0,1"/>

<field name="offset" type="char" null="1" default="UTC" values=""/>
<field name="offset_user" type="char" null="1" default="UTC" values=""/>

<field name="html5" type="binary" null="1" default="1" values="0,1"/>

<field name="html_display_filter" type="binary" null="1" default="1" values="0,1"/>

<field name="image_xsmall" type="integer" null="1" default="" values=""/>
<field name="image_small" type="char" null="1" default="" values=""/>
<field name="image_medium" type="char" null="1" default="" values=""/>
<field name="image_large" type="char" null="1" default="" values=""/>
<field name="image_xlarge" type="char" null="1" default="" values=""/>
<field name="image_folder" type="char" null="1" default="" values=""/>
<field name="thumb_folder" type="char" null="1" default="" values=""/>

<field name="editor" type="binary" null="1" default="1" values="0,1"/>
<field name="home_catalog_id" type="integer" null="0" default="" values=""/>
<field name="logon_requirement" type="binary" null="1" default="1" values="0,1"/>

<field name="debug" type="boolean" null="1" default="0" values=""/>
<field name="debug_log" type="text" null="0" default="echo"
values="echo,formattedtext,database,email,messages"/>

<field name="asset_priority_site" type="integer" null="1" default="100" values=""/>
<field name="asset_priority_application" type="integer" null="1" default="200" values=""/>
<field name="asset_priority_user" type="integer" null="1" default="300" values=""/>
<field name="asset_priority_extension" type="integer" null="1" default="400" values=""/>
<field name="asset_priority_request" type="integer" null="1" default="500" values=""/>
<field name="asset_priority_category" type="integer" null="1" default="600" values=""/>
<field name="asset_priority_menu_item" type="integer" null="1" default="700" values=""/>
<field name="asset_priority_source" type="integer" null="1" default="800" values=""/>
<field name="asset_priority_theme" type="integer" null="1" default="900" values=""/>

<field name="head_template_view_id" type="integer" null="1" default="" values=""/>
<field name="head_wrap_view_id" type="integer" null="1" default="" values=""/>

<field name="message_template_view_id" type="integer" null="1" default="" values=""/>
<field name="message_wrap_view_id" type="integer" null="1" default="" values=""/>

<field name="offline_theme_id" type="integer" null="1" default="" values=""/>
<field name="offline_page_view_id" type="integer" null="1" default="" values=""/>
<field name="offline" type="binary" null="1" default="1" values="0,1"/>
<field name="offline_message" type="char" null="1" default="" values=""/>

<field name="error_theme_id" type="integer" null="1" default="" values=""/>
<field name="error_page_view_id" type="integer" null="1" default="" values=""/>
<field name="error_404_message" type="char" null="1" default="" values=""/>
<field name="error_403_message" type="char" null="1" default="" values=""/>
<field name="enable_draft_save" type="binary" null="0" default="1" values="0,1"/>
<field name="enable_version_history" type="binary" null="0" default="1" values="0,1"/>
<field name="maximum_version_count" type="integer" null="0" default="5" minimum="0" maximum="20"/>
<field name="enable_hit_counts" type="binary" null="0" default="1" values="0,1"/>
<field name="enable_comments" type="binary" null="0" default="1" values="0,1"/>
<field name="enable_ratings" type="binary" null="0" default="1" values="0,1"/>
<field name="enable_notifications" type="binary" null="0" default="1" values="0,1"/>
<field name="enable_tweets" type="binary" null="0" default="1" values="0,1"/>
<field name="enable_ping" type="binary" null="0" default="1" values="0,1"/>

<field name="display_view_on_no_results" type="binary" null="0" default="0" values="0,1"/>

<field name="theme_id" type="integer" null="1" default="" values=""/>

<field name="page_view_id" type="integer" null="1" default="" values=""/>
<field name="page_view_css_id" type="char" null="1" default="" values=""/>
<field name="page_view_css_class" type="char" null="1" default="" values=""/>

<field name="item_template_view_id" type="integer" null="1" default="" values=""/>
<field name="item_template_view_css_id" type="char" null="1" default="" values=""/>
<field name="item_template_view_css_class" type="char" null="1" default="" values=""/>
<field name="item_wrap_view_id" type="integer" null="1" default="0" values=""/>
<field name="item_wrap_view_css_id" type="char" null="1" default="" values=""/>
<field name="item_wrap_view_css_class" type="char" null="1" default="" values=""/>

<field name="form_template_view_id" type="integer" null="1" default="" values=""/>
<field name="form_template_view_css_id" type="char" null="1" default="" values=""/>
<field name="form_template_view_css_class" type="char" null="1" default="" values=""/>
<field name="form_wrap_view_id" type="integer" null="1" default="0" values=""/>
<field name="form_wrap_view_css_id" type="char" null="1" default="" values=""/>
<field name="form_wrap_view_css_class" type="char" null="1" default="" values=""/>

<field name="list_page_view_id" type="integer" null="1" default=""/>
<field name="list_page_view_css_id" type="char" null="1" default="" values=""/>
<field name="list_page_view_css_class" type="char" null="1" default="" values=""/>
<field name="list_template_view_id" type="integer" null="1" default=""/>
<field name="list_template_view_css_id" type="char" null="1" default="" values=""/>
<field name="list_template_view_css_class" type="char" null="1" default="" values=""/>

<field name="list_get_customfields" type="integer" null="0" default="1" values="0,1,2"/>
<field name="list_get_child_row_counts" type="integer" null="0" default="1" values="0,1,2"/>
<field name="list_check_view_level_access" type="integer" null="0" default="1" values="0,1,2"/>

<field name="list_display_archived_content" type="integer" null="0" default="1" values="0,1,2"/>
<field name="list_display_featured_content" type="integer" null="0" default="1" values="0,1,2"/>
<field name="list_display_stickied_content" type="integer" null="0" default="1" values="0,1,2"/>
<field name="list_display_published_date_begin" type="date" null="0" default=""/>
<field name="list_display_published_date_end" type="date" null="0" default=""/>
<field name="list_display_category_list" type="categorylist"/>
<field name="list_display_tag_list" type="taglist"/>
<field name="list_display_author_list" type="authorlist"/>
<field name="list_begin" type="integer" default="1"/>
<field name="list_length" type="integer" default="5" minimum="0" maximum="20"/>
<field name="list_order_by_field1" type="field_list" null="1" default="featured"/>
<field name="list_order_by_direction1" type="char" null="1" default="DESC" values="ASC,DESC"/>
<field name="list_order_by_field2" type="field_list" null="1" default="start_publishing_datetime"/>
<field name="list_order_by_direction2" type="char" null="1" default="DESC" values="ASC,DESC"/>
<field name="list_order_by_field3" type="field_list" null="1" default=""/>
<field name="list_order_by_direction3" type="char" null="1" default="DESC" values="ASC,DESC"/>

<field name="feed_theme_id" type="integer" null="1" default="" values=""/>
<field name="feed_page_view_id" type="integer" null="1" default="" values=""/>
<field name="feed_limit" type="integer" null="1" default="5" minimum="0" maximum="20"/>
<field name="feed_email" type="email" null="1" default="" values=""/>

<field name="caching" type="binary" null="1" default="1" values="0,1"/>
<field name="cache_time" type="integer" null="1" default="15" values=""/>
<field name="cache_handler" type="char" null="1" default="" values=""/>
@@ -0,0 +1,152 @@
{
"applications":{
"1":{
"display_title":"Molajo Article Site Application",

"display_view_on_no_results":"1",
"catalog_type_id":"10000",

"enable_draft_save":"0",
"enable_version_history":"0",
"maximum_version_count":"5",
"enable_hit_counts":"0",
"enable_comments":"0",
"enable_ratings":"0",
"enable_notifications":"0",
"enable_tweets":"0",
"enable_ping":"0",

"theme_id":"119",

"page_view_id":"55",
"page_view_css_id":"",
"page_view_css_class":"",

"item_template_view_id":"236",
"item_template_view_css_id":"",
"item_template_view_css_class":"",
"item_wrap_view_id":"61",
"item_wrap_view_css_id":"",
"item_wrap_view_css_class":"",

"form_template_view_id":"25",
"form_template_view_css_id":"",
"form_template_view_css_class":"",
"form_wrap_view_id":"61",
"form_wrap_view_css_id":"",
"form_wrap_view_css_class":"",

"list_template_view_id":"33",
"list_template_view_css_id":"",
"list_template_view_css_class":"",
"list_wrap_view_id":"58",
"list_wrap_view_css_id":"",
"list_wrap_view_css_class":"",

"list_get_customfields":"1",
"list_get_item_children":"0",
"list_use_special_joins":"0",
"list_check_view_level_access":"0",

"list_display_archived_content":"1",
"list_display_featured_content":"0",
"list_display_stickied_content":"0",
"list_display_published_date_begin":"0",
"list_display_published_date_end":"1",
"list_display_category_list":"0",
"list_display_tag_list":"0",
"list_display_author_list":"0",
"list_begin":"1",
"list_length":"0",
"list_order_by_field1":"start_publishing_datetime",
"list_order_by_direction1":"DESC",
"list_order_by_field2":"",
"list_order_by_direction2":"",
"list_order_by_field3":"",
"list_order_by_direction3":"",

"feed_theme_id":"99",
"feed_page_view_id":"81",
"feed_limit":"10",
"feed_email":"author",

"caching":"0",
"cache_time":"15",
"cache_handler":"file"
},
"2":{
"display_title":"Molajo Article Administrator Application",

"display_view_on_no_results":"1",
"catalog_type_id":"10000",

"enable_draft_save":"0",
"enable_version_history":"0",
"maximum_version_count":"5",
"enable_hit_counts":"0",
"enable_comments":"0",
"enable_ratings":"0",
"enable_notifications":"0",
"enable_tweets":"0",
"enable_ping":"0",

"theme_id":"119",

"page_view_id":"55",
"page_view_css_id":"",
"page_view_css_class":"",

"item_template_view_id":"236",
"item_template_view_css_id":"",
"item_template_view_css_class":"",
"item_wrap_view_id":"61",
"item_wrap_view_css_id":"",
"item_wrap_view_css_class":"",

"form_template_view_id":"25",
"form_template_view_css_id":"",
"form_template_view_css_class":"",
"form_wrap_view_id":"61",
"form_wrap_view_css_id":"",
"form_wrap_view_css_class":"",

"list_template_view_id":"33",
"list_template_view_css_id":"",
"list_template_view_css_class":"",
"list_wrap_view_id":"58",
"list_wrap_view_css_id":"",
"list_wrap_view_css_class":"",

"list_get_customfields":"1",
"list_get_item_children":"0",
"list_use_special_joins":"0",
"list_check_view_level_access":"0",

"list_display_archived_content":"1",
"list_display_featured_content":"0",
"list_display_stickied_content":"0",
"list_display_published_date_begin":"0",
"list_display_published_date_end":"1",
"list_display_category_list":"0",
"list_display_tag_list":"0",
"list_display_author_list":"0",
"list_begin":"1",
"list_length":"0",
"list_order_by_field1":"start_publishing_datetime",
"list_order_by_direction1":"DESC",
"list_order_by_field2":"",
"list_order_by_direction2":"",
"list_order_by_field3":"",
"list_order_by_direction3":"",

"feed_theme_id":"99",
"feed_page_view_id":"81",
"feed_limit":"10",
"feed_email":"author",

"caching":"0",
"cache_time":"15",
"cache_handler":"file"
}
}
}
@@ -95,12 +95,12 @@
<field name="example_of_content_only_field" type="int" null="1" default="1"/>
</customfield>
<customfield name="metadata">
<field name="metadata_title" type="char" null="1" default=""/>
<field name="metadata_description" type="text" null="1" default=""/>
<field name="metadata_keywords" type="char" null="1" default=""/>
<field name="metadata_robots" type="char" null="1" default="follow,index"/>
<field name="metadata_author" type="char" null="1" default=""/>
<field name="metadata_content_rights" type="char" null="1" default=""/>
<field name="title" type="char" null="1" default=""/>
<field name="description" type="text" null="1" default=""/>
<field name="keywords" type="char" null="1" default=""/>
<field name="robots" type="char" null="1" default="follow,index"/>
<field name="author" type="char" null="1" default=""/>
<field name="content_rights" type="char" null="1" default=""/>

</customfield>
<customfield name="parameters">
@@ -1,34 +1,14 @@
<?xml version="1.0" encoding="utf-8"?>
<model
name="Menuitem"
catalog_type_id="0"
table="#__content"
primary_key="id"
primary_prefix="a"
get_customfields="0"
get_item_children="0"
use_special_joins="0"
check_view_level_access="0"
data_source="JDatabase">
<filters include="ContentFilters"/>
<fields>
<field name="customfields">
<field name="custom_field1" type="char" null="1" default="" values=""/>
</field>
<field name="parameters">
<field name="caching" type="binary" null="1" default="1" values="0,1"/>
<field name="cache_time" type="integer" null="1" default="15" values=""/>
<field name="cache_handler" type="char" null="1" default="" values=""/>
<field name="list_limit" type="integer" null="1" default="15" values=""/>
<field name="theme_id" type="integer" null="1" default="" values=""/>
<field name="page_view_id" type="integer" null="1" default="" values=""/>
<field name="template_view_id" type="integer" null="1" default="" values=""/>
<field name="wrap_view_id" type="integer" null="1" default="" values=""/>
</field>
<field name="metadata">
<field name="metadata_title" type="char" null="0" default=""/>
<field name="metadata_description" type="text" null="0" default=""/>
<field name="metadata_keywords" type="char" null="1" default=""/>
<field name="metadata_robots" type="char" null="0" default="follow,index"
values="follow,nofollow,index,noindex"/>
<field name="metadata_author" type="char" null="1" default=""/>
<field name="metadata_content_rights" type="char" null="1" default=""/>
</field>
<foreignkeys include="ContentForeignkeys"/>
<triggers include="ContentTriggers"/>
</fields>
<body include="Content"/>
</model>
@@ -1,16 +1,25 @@
<?xml version="1.0" encoding="utf-8"?>
<model
name="UserApplications"
catalog_type_id="0"
table="#__user_applications"
primary_key="user_id,application_id"
get_customfields="1"
get_item_children="1"
use_special_joins="1"
check_view_level_access="0"
data_source="JDatabase">
<fields>
<field name="user_id" type="int" null="0" default=""/>
<field name="application_id" type="int" null="0" default=""/>
</fields>
<foreignkeys>
<foreignkey name="user_id" source_id="id" source_model="Users" required="1"/>
<foreignkey name="application_id" source_id="id" source_model="Applications" required="1"/>
</foreignkeys>
<table>
<item>
<fields>
<field name="user_id" type="int" null="0" default=""/>
<field name="application_id" type="int" null="0" default=""/>
</fields>
<foreignkeys>
<foreignkey name="user_id" source_id="id" source_model="Users" required="1"/>
<foreignkey name="application_id" source_id="id" source_model="Applications" required="1"/>
</foreignkeys>
</item>
</table>
</model>

@@ -1,16 +1,24 @@
<?xml version="1.0" encoding="utf-8"?>
<model
name="UserGroups"
catalog_type_id="0"
table="#__user_groups"
primary_key="id"
get_customfields="0"
get_item_children="0"
use_special_joins="0"
check_view_level_access="0"
data_source="JDatabase">
<fields>
<field name="user_id" type="int" null="0" default=""/>
<field name="group_id" type="int" null="0" default=""/>
</fields>
<foreignkeys>
<foreignkey name="user_id" source_id="id" source_model="Users" required="1"/>
<foreignkey name="group_id" source_id="id" source_model="Content" required="1"/>
</foreignkeys>
<table>
<item>
<fields>
<field name="user_id" type="int" null="0" default=""/>
<field name="group_id" type="int" null="0" default=""/>
</fields>
<foreignkeys>
<foreignkey name="user_id" source_id="id" source_model="Users" required="1"/>
<foreignkey name="group_id" source_id="id" source_model="Content" required="1"/>
</foreignkeys>
</item>
</table>
</model>

@@ -1,16 +1,24 @@
<?xml version="1.0" encoding="utf-8"?>
<model
name="UserViewGroups"
catalog_type_id="0"
table="#__user_view_groups"
primary_key="id"
get_customfields="0"
get_item_children="0"
use_special_joins="0"
check_view_level_access="0"
data_source="JDatabase">
<fields>
<field name="user_id" type="int" null="0" default=""/>
<field name="view_group_id" type="int" null="0" default=""/>
</fields>
<foreignkeys>
<foreignkey name="user_id" source_id="id" source_model="Users" required="1"/>
<foreignkey name="view_group_id" source_id="id" source_model="GroupViewGroup" required="1"/>
</foreignkeys>
<table>
<item>
<fields>
<field name="user_id" type="int" null="0" default=""/>
<field name="view_group_id" type="int" null="0" default=""/>
</fields>
<foreignkeys>
<foreignkey name="user_id" source_id="id" source_model="Users" required="1"/>
<foreignkey name="view_group_id" source_id="id" source_model="GroupViewGroup" required="1"/>
</foreignkeys>
</item>
</table>
</model>

@@ -9,47 +9,5 @@
<author_url>http://molajo.org</author_url>
<version>1.0</version>
<description>COMPONENT_ARTICLES_DESCRIPTION</description>
<model
name="Articles"
catalog_type_id="10000"
table="#__content"
primary_key="id"
primary_prefix="a"
data_source="JDatabase">
<table>
<item>
<fields>
<field include="ContentFields"/>
</fields>
<foreignkeys>
<foreignkey include="ContentForeignkeys"/>
</foreignkeys>
<children>
<child include="ContentChildren"/>
</children>
<triggers>
<trigger include="ContentTriggers"/>
</triggers>
<customfields>
<customfield name="customfields">
<element include="ContentCustomfields"/>
<element name="example_of_content_only_field" filter="int" null="1" default="1"/>
</customfield>
<customfield name="metadata">
<element include="SystemMetadata"/>
</customfield>
<customfield name="parameters">
<element include="SystemParameters"/>
</customfield>
</customfields>
</item>
<component>
<customfields>
<customfield name="parameters" registry="ComponentParameters">
<element include="SystemComponentParameters"/>
</customfield>
</customfields>
</component>
</table>
</model>
<model name="Articles"/>
</extension>
@@ -134,9 +134,9 @@ public function get($catalog_id = 0, $sef_request = '', $source_id = 0, $catalog
$m = Application::Controller()->connect('Catalog');

$m->model->set('id', (int)$catalog_id);
$m->model->set('get_item_children', false);
$m->model->set('get_item_children', 0);
$m->model->set('get_customfields', 0);
$m->model->set('check_view_level_access', false);
$m->model->set('check_view_level_access', 0);

$row = $m->getData('load');

@@ -148,6 +148,9 @@ public function get($catalog_id = 0, $sef_request = '', $source_id = 0, $catalog
if ($catalog_id == Services::Registry()->get('Configuration', 'home_catalog_id', 0)) {
$row['sef_request'] = '';
}
//echo '<pre>';
//var_dump($row);
//echo '</pre>';

return $row;
}
@@ -53,7 +53,6 @@ public static function getInstance()
*/
public function getRoute()
{

/** Retrieve the query results */
$row = $this->get(
Services::Registry()->get('Route', 'source_id'),
@@ -70,11 +69,40 @@ public function getRoute()
Services::Registry()->set('Content', 'extension_catalog_type_id', (int)$row['extension_catalog_type_id']);
Services::Registry()->set('Content', 'title', $row['title']);
Services::Registry()->set('Content', 'translation_of_id', (int)$row['translation_of_id']);
Services::Registry()->set('Content', 'language', (string)$row['language']);
Services::Registry()->set('Content', 'catalog_id', (string)$row['catalog_id']);
Services::Registry()->set('Content', 'language', $row['language']);
Services::Registry()->set('Content', 'catalog_id', $row['catalog_id']);
Services::Registry()->set('Content', 'catalog_type_id', (int)$row['catalog_type_id']);
Services::Registry()->set('Content', 'catalog_type_title', (string)$row['catalog_type_title']);
Services::Registry()->set('Content', 'modified_datetime', (string)$row['modified_datetime']);
Services::Registry()->set('Content', 'catalog_type_title', $row['catalog_type_title']);
Services::Registry()->set('Content', 'modified_datetime', $row['modified_datetime']);

/** Process each field namespace */
$customFieldTypes = Services::Registry()->get($row['table_registry_name'], 'CustomFieldGroups');
foreach ($customFieldTypes as $customFieldName) {

Services::Registry()->deleteRegistry('Content'. ucfirst(strtolower($customFieldName)));

Services::Registry()->copy(
$row['model_name']. ucfirst(strtolower($customFieldName)),
'Content'. ucfirst(strtolower($customFieldName))
);

Services::Registry()->deleteRegistry($row['model_name']. ucfirst(strtolower($customFieldName)));
}

/**
echo '<pre>';
var_dump(Services::Registry()->get('Content'));
echo '</pre>';
echo '<pre>';
var_dump(Services::Registry()->get('ContentCustomfields'));
echo '</pre>';
echo '<pre>';
var_dump(Services::Registry()->get('ContentParameters'));
echo '</pre>';
echo '<pre>';
var_dump(Services::Registry()->get('ContentMetadata'));
echo '</pre>';
*/

return true;
}
@@ -110,7 +138,8 @@ public function getRouteCategory()
Services::Registry()->set('Category', 'modified_datetime', (string)$row['modified_datetime']);

/** Load special fields for specific extension */
$xml = Services::Configuration()->loadFile(ucfirst(strtolower(Services::Registry()->get('Content', 'catalog_type_title'))), 'Table');
$xml = Services::Configuration()->loadFile(
ucfirst(strtolower(Services::Registry()->get('Content', 'catalog_type_title'))), 'Table');
$row = Services::Configuration()->populateCustomFields($xml->category, $row, 1);

return true;
@@ -130,12 +159,6 @@ public function get($id, $content_table)

$m->model->set('id', (int)$id);

$m->model->set('get_customfields', 1);
$m->model->set('get_item_children', false);
$m->model->set('use_special_joins', false);
$m->model->set('check_view_level_access', true);
$m->model->set('category_type_id', Services::Registry()->get('Route', 'catalog_type'));

$m->model->query->select($m->model->db->qn('a.id'));
$m->model->query->select($m->model->db->qn('a.catalog_type_id'));
$m->model->query->select($m->model->db->qn('a.extension_instance_id'));
@@ -175,6 +198,8 @@ public function get($id, $content_table)
* Run Query
*/
$row = $m->getData('load');
$row['table_registry_name'] = $m->model->table_registry_name;
$row['model_name'] = $m->model->model_name;

if (count($row) == 0) {
return array();
@@ -127,13 +127,7 @@ public function DefaultPageView()
return $page_view_id;
}

$page_view_id = Services::Registry()->get('ApplicationParameters', 'page_view_id', 0);
if ((int)$page_view_id == 0) {
} else {
return $page_view_id;
}

$page_view_id = Services::Registry()->get('SiteParameters', 'page_view_id', 0);
$page_view_id = Services::Registry()->get('Configuration', 'page_view_id', 0);
if ((int)$page_view_id == 0) {
} else {
return $page_view_id;
@@ -127,13 +127,7 @@ public function DefaultTemplateView()
return $template_view_id;
}

$template_view_id = Services::Registry()->get('ApplicationParameters', 'template_view_id', 0);
if ((int)$template_view_id == 0) {
} else {
return $template_view_id;
}

$template_view_id = Services::Registry()->get('SiteParameters', 'template_view_id', 0);
$template_view_id = Services::Registry()->get('Configuration', 'template_view_id', 0);
if ((int)$template_view_id == 0) {
} else {
return $template_view_id;
@@ -132,13 +132,7 @@ public function setDefaultTheme()
return $theme_id;
}

$theme_id = Services::Registry()->get('ApplicationParameters', 'theme_id', 0);
if ((int)$theme_id == 0) {
} else {
return $theme_id;
}

$theme_id = Services::Registry()->get('SiteParameters', 'theme_id', 0);
$theme_id = Services::Registry()->get('Configuration', 'theme_id', 0);
if ((int)$theme_id == 0) {
} else {
return $theme_id;
@@ -128,13 +128,7 @@ public function DefaultWrapView()
return $wrap_view_id;
}

$wrap_view_id = Services::Registry()->get('ApplicationParameters', 'wrap_view_id', 0);
if ((int)$wrap_view_id == 0) {
} else {
return $wrap_view_id;
}

$wrap_view_id = Services::Registry()->get('SiteParameters', 'wrap_view_id', 0);
$wrap_view_id = Services::Registry()->get('Configuration', 'wrap_view_id', 0);
if ((int)$wrap_view_id == 0) {
} else {
return $wrap_view_id;
@@ -91,15 +91,18 @@ public function __construct()
*/
public function connect($table = '')
{

echo 'connect '.$table.'<br />';

/** Specific table model interaction - or - complex data query */
if ($table === '') {
$this->dataSource = $this->default_dataSource;
} else {
$this->table_registry_name = ConfigurationService::loadFile($table, 'Table');

echo '<pre>';
//echo '<pre>';
//var_dump(Services::Registry()->get($this->table_registry_name));
echo '</pre>';
//echo '</pre>';

}

@@ -66,7 +66,7 @@ public function getData()
$row->mimetype = Services::Filter()->escape_text($mimetype);

/** Base URL for Site */
$row->base = Services::Registry()->get('Site', 'base_url');
$row->base = Services::Registry()->get('Configuration', 'site_base_url');

/** Last Modified Date */
$last_modified = Services::Registry()->get('Metadata', 'modified_datetime');
@@ -187,11 +187,6 @@ protected function runLoadQuery()
protected function addCustomFields()
{
$customFieldTypes = Services::Registry()->get($this->table_registry_name, 'CustomFieldGroups');
echo 'In addCustomFields '.$this->table_name.'<br />';
echo '<pre>';
var_dump($customFieldTypes);
echo '</pre>';


$retrieval_method = Services::Registry()->get($this->table_registry_name, 'get_customfields');

@@ -206,7 +201,6 @@ protected function addCustomFields()
$fields = Services::Registry()->get($this->table_registry_name, $customFieldName);

/** See if there are query results for the Custom Field Group */

if ((is_array($this->query_results) && isset($this->query_results[$customFieldName]))
|| (is_object($this->query_results) && isset($this->query_results->$customFieldName))
) {
@@ -219,6 +213,19 @@ protected function addCustomFields()

$data = json_decode($jsonData);

/** test for application-specific values */

if (count($data) > 0
&& (defined('APPLICATION_ID'))) {
foreach ($data as $key => $value) {

if ($key == APPLICATION_ID) {
$data = $value;
break;
}
}
}

/** Place queryresults data for custom field group into named pair array */
$lookup = array();

@@ -229,55 +236,52 @@ protected function addCustomFields()
}

} else {

$data = array();
$lookup = array();
}

/** Process each of the Custom Field Group Definitions for Query Results */
if (count($data) > 0) {
/** Process each of the Custom Field Group Definitions for Query Results or defaults */
foreach ($fields as $f) {

foreach ($fields as $f) {
$name = $f['name'];
$name = strtolower($name);

$name = $f['name'];
$name = strtolower($name);
$default = null;
if (isset($f['default'])) {
$default = $f['default'];
}

if ($default == '') {
$default = null;
if (isset($f['default'])) {
$default = $f['default'];
}

if ($default == '') {
$default = null;
}
}

/** Use value, if exists, or defined default */
if (isset($lookup[$name])) {
$setValue = $lookup[$name];
} else {
$setValue = $default;
}
/** Use value, if exists, or defined default */
if (isset($lookup[$name])) {
$setValue = $lookup[$name];
} else {
$setValue = $default;
}

/** Filter Input and Save the Registry */
//$set = $this->filterInput($name, $set, $dataType, $null, $default);
/** Filter Input and Save the Registry */
//$set = $this->filterInput($name, $set, $dataType, $null, $default);

if ($retrieval_method == 2) {
if (is_array($this->query_results)) {
$this->query_results[$name] = $setValue;
} else {
$this->query_results->$name = $setValue;
}
if ($retrieval_method == 2) {
if (is_array($this->query_results)) {
$this->query_results[$name] = $setValue;
} else {
echo $useRegistryName.' '.$name. ' ' . $setValue. '<br />';
Services::Registry()->set($useRegistryName, $name, $setValue);
$this->query_results->$name = $setValue;
}
} else {
Services::Registry()->set($useRegistryName, $name, $setValue);
}
}

if (is_array($this->query_results) && isset($this->query_results[$customFieldName])) {
unset($this->query_results[$customFieldName]);
if (is_array($this->query_results) && isset($this->query_results[$customFieldName])) {
unset($this->query_results[$customFieldName]);

} else if (is_object($this->query_results) && isset($this->query_results->$customFieldName)) {
unset($this->query_results->$customFieldName);
}
} else if (is_object($this->query_results) && isset($this->query_results->$customFieldName)) {
unset($this->query_results->$customFieldName);
}
}

@@ -24,18 +24,22 @@ class Model
/**
* Table registry
*
* Declared public to retrieve following query in order to identify custom field registries
*
* @var object
* @since 1.0
*/
protected $table_registry_name = false;
public $table_registry_name = false;

/**
* Model Name
*
* Declared public to retrieve following query in order to identify custom field registries
*
* @var string
* @since 1.0
*/
protected $model_name = '';
public $model_name = '';

/**
* Database table
@@ -96,34 +100,42 @@ class Model
/**
* Database connection
*
* Public to access db quoting on query parts
*
* @var string
* @since 1.0
*/
protected $db;
public $db;

/**
* Database query object
*
* Public to allow setting of partial query values
*
* @var object
* @since 1.0
*/
protected $query;
public $query;

/**
* Used in queries to determine date validity
*
* Public to access property during query development
*
* @var object
* @since 1.0
*/
protected $nullDate;
public $nullDate;

/**
* Today's CCYY-MM-DD 00:00:00 Used in queries to determine date validity
*
* Public to access property during query development
*
* @var object
* @since 1.0
*/
protected $now;
public $now;

/**
* Results from queries
@@ -108,15 +108,15 @@ public function getSite($configuration_file = null)
$items = $m->getData('load');

if ($items === false) {
throw new \RuntimeException ('Application setSiteData() query problem');
throw new \RuntimeException ('Site getSite() query problem');
}

Services::Registry()->set('Site', 'id', (int)$items['id']);
Services::Registry()->set('Site', 'catalog_type_id', (int)$items['catalog_type_id']);
Services::Registry()->set('Site', 'name', $items['name']);
Services::Registry()->set('Site', 'path', $items['path']);
Services::Registry()->set('Site', 'base_url', $items['base_url']);
Services::Registry()->set('Site', 'description', $items['description']);
Services::Registry()->set('Configuration', 'site_id', (int)$items['id']);
Services::Registry()->set('Configuration', 'site_catalog_type_id', (int)$items['catalog_type_id']);
Services::Registry()->set('Configuration', 'site_name', $items['name']);
Services::Registry()->set('Configuration', 'site_path', $items['path']);
Services::Registry()->set('Configuration', 'site_base_url', $items['base_url']);
Services::Registry()->set('Configuration', 'site_description', $items['description']);

return true;
}
@@ -187,11 +187,11 @@ protected function getApplication()

if (APPLICATION == 'installation') {

Services::Registry()->set('Application', 'id', 0);
Services::Registry()->set('Application', 'catalog_type_id', CATALOG_TYPE_BASE_APPLICATION);
Services::Registry()->set('Application', 'name', APPLICATION);
Services::Registry()->set('Application', 'description', APPLICATION);
Services::Registry()->set('Application', 'path', APPLICATION);
Services::Registry()->set('Configuration', 'application_id', 0);
Services::Registry()->set('Configuration', 'application_catalog_type_id', CATALOG_TYPE_BASE_APPLICATION);
Services::Registry()->set('Configuration', 'application_name', APPLICATION);
Services::Registry()->set('Configuration', 'application_description', APPLICATION);
Services::Registry()->set('Configuration', 'application_path', APPLICATION);

} else {

@@ -205,11 +205,11 @@ protected function getApplication()
throw new \RuntimeException ('Application setSiteData() query problem');
}

Services::Registry()->set('Application', 'id', (int)$items['id']);
Services::Registry()->set('Application', 'catalog_type_id', (int)$items['catalog_type_id']);
Services::Registry()->set('Application', 'name', $items['name']);
Services::Registry()->set('Application', 'path', $items['path']);
Services::Registry()->set('Application', 'description', $items['description']);
Services::Registry()->set('Configuration', 'application_id', (int)$items['id']);
Services::Registry()->set('Configuration', 'application_catalog_type_id', (int)$items['catalog_type_id']);
Services::Registry()->set('Configuration', 'application_name', $items['name']);
Services::Registry()->set('Configuration', 'application_path', $items['path']);
Services::Registry()->set('Configuration', 'application_description', $items['description']);

/** Combine Application and Site Parameters into Configuration */
$parameters = Services::Registry()->get('ApplicationsParameters');
@@ -218,7 +218,7 @@ protected function getApplication()
}

/** Remove from primary result set */
Services::Registry()->set('ApplicationTable', 'Parameters', array());
Services::Registry()->deleteRegistry('ApplicationsParameters');

} catch (\Exception $e) {
echo 'Application will die. Exception caught in Configuration: ', $e->getMessage(), "\n";
@@ -228,7 +228,7 @@ protected function getApplication()

if (defined('APPLICATION_ID')) {
} else {
define('APPLICATION_ID', Services::Registry()->get('Application', 'id'));
define('APPLICATION_ID', Services::Registry()->get('Configuration', 'application_id'));
}

return $this;
@@ -247,6 +247,8 @@ protected function getApplication()
public static function loadFile($file, $type = 'Application')
{
//echo $file . '<br />';
// $extensionManifest = false;

if ($type == 'Application') {
$path_and_file = CONFIGURATION_FOLDER . '/' . $type . '/' . $file . '.xml';

@@ -259,11 +261,12 @@ public static function loadFile($file, $type = 'Application')
return $registryName;
}

if (file_exists(EXTENSIONS_COMPONENTS . '/' . $file . '/Manifest.xml')) {
$path_and_file = EXTENSIONS_COMPONENTS . '/' . $file . '/Manifest.xml';
} else {
// if (file_exists(EXTENSIONS_COMPONENTS . '/' . $file . '/Manifest.xml')) {
// $path_and_file = EXTENSIONS_COMPONENTS . '/' . $file . '/Manifest.xml';
// $extensionManifest = true;
// } else {
$path_and_file = CONFIGURATION_FOLDER . '/' . $type . '/' . $file . '.xml';
}
// }

} else {
$path_and_file = $type . '/' . $file . '.xml';
@@ -375,12 +378,12 @@ public static function processTableFile($file, $type = 'Table', $path_and_file,
/** Body - No registry */

$include = '';
if (isset($xml->model->body['include'])) {
$include = (string)$xml->model->body['include'];
if (isset($xml->model->body->include['name'])) {
$include = (string)$xml->model->body->include['name'];
}
if ($include == '') {
} else {
$replace_this = '<body include="' . $include . '"/>';
$replace_this = '<include name="' . $include . '"/>';
if ($xml_string == '') {
$xml_string = file_get_contents($path_and_file);
}
@@ -391,7 +394,7 @@ public static function processTableFile($file, $type = 'Table', $path_and_file,
}

/** Fields */
$known = array('name', 'type', 'null', 'default', 'length', 'customtype',
$known = array('name', 'type', 'null', 'default', 'length', 'customtype', 'file', 'char',
'minimum', 'maximum', 'identity', 'shape', 'size', 'unique', 'values');

$include = '';
@@ -440,15 +443,15 @@ public static function processTableFile($file, $type = 'Table', $path_and_file,
/** Joins */

$include = '';
if (isset($xml->table->item->joins->join['include'])) {
$include = (string)$xml->table->item->joins->join['include'];
if (isset($xml->table->item->joins->include['name'])) {
$include = (string)$xml->table->item->joins->include['name'];
}
if ($include == '') {
} else {
if ($xml_string == '') {
$xml_string = file_get_contents($path_and_file);
}
$replace_this = '<joins include="' . $include . '"/>';
$replace_this = '<<include name="' . $include . '"/>';
$xml_string = ConfigurationService::replaceIncludeStatement(
$include, $file, $type, $replace_this, $xml_string
);
@@ -480,15 +483,15 @@ public static function processTableFile($file, $type = 'Table', $path_and_file,
/** Foreign Keys */

$include = '';
if (isset($xml->table->item->foreignkeys->foreignkey['include'])) {
$include = (string)$xml->table->item->foreignkeys->foreignkey['include'];
if (isset($xml->table->item->foreignkeys->include['name'])) {
$include = (string)$xml->table->item->foreignkeys->include['name'];
}
if ($include == '') {
} else {
if ($xml_string == '') {
$xml_string = file_get_contents($path_and_file);
}
$replace_this = '<foreignkey include="' . $include . '"/>';
$replace_this = '<include name="' . $include . '"/>';
$xml_string = ConfigurationService::replaceIncludeStatement(
$include, $file, $type, $replace_this, $xml_string
);
@@ -518,15 +521,15 @@ public static function processTableFile($file, $type = 'Table', $path_and_file,
/** Children */

$include = '';
if (isset($xml->table->item->children->child['include'])) {
$include = (string)$xml->table->item->children->child['include'];
if (isset($xml->table->item->children->include['name'])) {
$include = (string)$xml->table->item->children->include['name'];
}
if ($include == '') {
} else {
if ($xml_string == '') {
$xml_string = file_get_contents($path_and_file);
}
$replace_this = '<child include="' . $include . '"/>';
$replace_this = '<include name="' . $include . '"/>';
$xml_string = ConfigurationService::replaceIncludeStatement(
$include, $file, $type, $replace_this, $xml_string
);
@@ -552,18 +555,17 @@ public static function processTableFile($file, $type = 'Table', $path_and_file,
}

/** Triggers */

$include = '';
if (isset($xml->table->item->triggers->trigger['include'])) {
$include = (string)$xml->table->item->triggers->trigger['include'];
if (isset($xml->table->item->triggers->include['name'])) {
$include = (string)$xml->table->item->triggers->include['name'];
}

if ($include == '') {
} else {
if ($xml_string == '') {
$xml_string = file_get_contents($path_and_file);
}
$replace_this = '<trigger include="' . $include . '"/>';
$replace_this = '<include name="' . $include . '"/>';
$xml_string = ConfigurationService::replaceIncludeStatement(
$include, $file, $type, $replace_this, $xml_string
);
@@ -657,6 +659,10 @@ public static function processTableFile($file, $type = 'Table', $path_and_file,
);
}

//if ($file == 'Articles') {
// var_dump($xml);
// die;
// }
return $registryName;
}

@@ -748,7 +754,7 @@ public static function getCustomFields($xml, $file, $known, $registryName)

if (in_array($key2, $known)) {
} else {
echo 'Field attribute not known ' . $key2 . ' for ' . $file . '<br />';
echo 'Field attribute not known ' . $key2 . ':' . $value2 . ' for ' . $file . '<br />';
}

$fieldAttributesArray[$key2] = $value2;
@@ -773,7 +779,7 @@ public static function getCustomFields($xml, $file, $known, $registryName)
}

$temp[] = $name;
Services::Registry()->set($registryName, 'CustomFieldGroups', $temp);
Services::Registry()->set($registryName, 'CustomFieldGroups', array_unique($temp));

$i++;
}
@@ -91,7 +91,7 @@ protected function initialise_filtering()
return;

$config = HTMLPurifier\HTMLPurifier_Config::createDefault();
var_dump($config);
//var_dump($config);

if ((int)Services::Registry()->get('Configuration', 'html5', 1) == 1) {
$config->set('HTML.Doctype', 'HTML 4.01 Transitional');
@@ -56,7 +56,6 @@ public static function getInstance()
*/
public function process()
{

/** Overrides */
if ((int)Services::Registry()->get('Override', 'catalog_id', 0) == 0) {
Services::Registry()->set('Route', 'id', 0);
@@ -87,7 +87,7 @@ public function getSession()
{
$storage = new NativeSessionStorage(array(), new NativeMemcachedSessionHandler());
$session = new Session($storage);
var_dump($session);
//var_dump($session);
}

/**