Index: releases/5.2.1/units/articles/articles_config.php =================================================================== --- releases/5.2.1/units/articles/articles_config.php (revision 0) +++ releases/5.2.1/units/articles/articles_config.php (revision 16072) @@ -0,0 +1,571 @@ + 'n', + + 'ItemClass' => Array ('class' => 'kCatDBItem', 'file' => '', 'build_event' => 'OnItemBuild'), + 'ListClass' => Array ('class' => 'kCatDBList', 'file' => '', 'build_event' => 'OnListBuild'), + 'EventHandlerClass' => Array ('class' => 'ArticlesEventHandler', 'file' => 'articles_event_handler.php', 'build_event' => 'OnBuild'), + 'TagProcessorClass' => Array ('class' => 'ArticlesTagProcessor', 'file' => 'articles_tag_processor.php', 'build_event' => 'OnBuild'), + 'AutoLoad' => true, + + 'ConfigPriority' => 0, + + 'RewritePriority' => 102, + 'RewriteListener' => 'CategoryItemRewrite:RewriteListener', + + 'Hooks' => Array ( + Array ( + 'Mode' => hAFTER, + 'Conditional' => false, + 'HookToPrefix' => 'c', + 'HookToSpecial' => '*', + 'HookToEvent' => Array ('OnAfterConfigRead'), + 'DoPrefix' => '', + 'DoSpecial' => '', + 'DoEvent' => 'OnUpdateCategoryCustomFields', + ), + + Array ( + 'Mode' => hBEFORE, + 'Conditional' => false, + 'HookToPrefix' => '', + 'HookToSpecial' => '*', + 'HookToEvent' => Array ('OnAfterConfigRead'), + 'DoPrefix' => 'cdata', + 'DoSpecial' => '*', + 'DoEvent' => 'OnDefineCustomFields', + ), + + Array ( + 'Mode' => hBEFORE, + 'Conditional' => false, + 'HookToPrefix' => '#file', + 'HookToSpecial' => '*', + 'HookToEvent' => Array ('OnAfterConfigRead'), + 'DoPrefix' => '', + 'DoSpecial' => '*', + 'DoEvent' => 'OnCloneSubItem', + ), + + Array ( + 'Mode' => hBEFORE, + 'Conditional' => false, + 'HookToPrefix' => 'rev', + 'HookToSpecial' => '*', + 'HookToEvent' => Array ('OnAfterConfigRead'), + 'DoPrefix' => '', + 'DoSpecial' => '*', + 'DoEvent' => 'OnCloneSubItem', + ), + + Array ( + 'Mode' => hBEFORE, + 'Conditional' => false, + 'HookToPrefix' => 'fav', + 'HookToSpecial' => '*', + 'HookToEvent' => Array ('OnAfterConfigRead'), + 'DoPrefix' => '', + 'DoSpecial' => '*', + 'DoEvent' => 'OnCloneSubItem', + ), + + Array ( + 'Mode' => hBEFORE, + 'Conditional' => false, + 'HookToPrefix' => 'rel', + 'HookToSpecial' => '*', + 'HookToEvent' => Array ('OnAfterConfigRead'), + 'DoPrefix' => '', + 'DoSpecial' => '*', + 'DoEvent' => 'OnCloneSubItem', + ), + + Array ( + 'Mode' => hBEFORE, + 'Conditional' => false, + 'HookToPrefix' => 'img', + 'HookToSpecial' => '*', + 'HookToEvent' => Array ('OnAfterConfigRead'), + 'DoPrefix' => '', + 'DoSpecial' => '*', + 'DoEvent' => 'OnCloneSubItem', + ), + + Array ( + 'Mode' => hBEFORE, + 'Conditional' => false, + 'HookToPrefix' => 'ci', + 'HookToSpecial' => '*', + 'HookToEvent' => Array ('OnAfterConfigRead'), + 'DoPrefix' => '', + 'DoSpecial' => '*', + 'DoEvent' => 'OnCloneSubItem', + ), + ), + + 'CatalogItem' => true, + 'AdminTemplatePath' => 'articles', + 'AdminTemplatePrefix' => 'articles_', + 'SearchConfigPostfix' => 'articles', + + 'QueryString' => Array ( + 1 => 'id', + 2 => 'Page', + 3 => 'PerPage', + 4 => 'event', + 5 => 'mode', + ), + + 'ScheduledTasks' => Array( + 'update_rss_articles' => Array('EventName' => 'OnUpdateRSSArticles', 'RunSchedule' => '* * * * *'), + ), + 'IDField' => 'NewsId', + 'StatusField' => Array ('Status'), // field, that is affected by Approve/Decline events + + 'TitleField' => 'Title', // field, used in bluebar when editing existing item + 'TitlePhrase' => 'la_Text_Article', // phrase used to specify item type in relationship list + + 'TitlePresets' => Array ( + 'default' => Array ( 'new_status_labels' => Array ('n' => '!la_title_AddingArticle!'), + 'edit_status_labels' => Array ('n' => '!la_title_EditingArticle!'), + 'new_titlefield' => Array ('n' => '!la_title_NewArticle!'), + ), + + 'articles_edit' => Array ('prefixes' => Array ('n'), 'format' => "#n_status# '#n_titlefield#' - !la_title_General!"), + + 'articles_categories' =>Array ('prefixes' => Array ('n', 'n-ci_List'), 'format' => "#n_status# '#n_titlefield#' - !la_title_Categories!"), + 'articles_relations' => Array ('prefixes' => Array ('n'), 'format' => "#n_status# '#n_titlefield#' - !la_title_Relations!"), + 'articles_images' => Array ('prefixes' => Array ('n'), 'format' => "#n_status# '#n_titlefield#' - !la_title_Images!"), + 'articles_files' => Array ('prefixes' => Array ('n'), 'format' => "#n_status# '#n_titlefield#' - !la_title_Files!"), + 'articles_reviews' => Array ('prefixes' => Array ('n'), 'format' => "#n_status# '#n_titlefield#' - !la_title_Reviews!"), + 'articles_custom' => Array ('prefixes' => Array ('n'), 'format' => "#n_status# '#n_titlefield#' - !la_title_Custom!"), + + 'images_edit' => Array ( 'prefixes' => Array ('n', 'n-img'), + 'new_status_labels' => Array ('n-img' => '!la_title_Adding_Image!'), + 'edit_status_labels' => Array ('n-img' => '!la_title_Editing_Image!'), + 'new_titlefield' => Array ('n-img' => '!la_title_New_Image!'), + 'format' => "#n_status# '#n_titlefield#' - #n-img_status# '#n-img_titlefield#'", + ), + 'file_edit' => Array ( + 'prefixes' => Array ('n', 'n-file'), + 'new_status_labels' => Array ('n-file' => "!la_title_AddingFile!"), + 'edit_status_labels' => Array ('n-file' => '!la_title_EditingFile!'), + 'new_titlefield' => Array ('n-file' => '!la_title_NewFile!'), + 'format' => "#n_status# '#n_titlefield#' - #n-file_status# '#n-file_titlefield#'", + ), + + 'reviews_edit' => Array ( 'prefixes' => Array ('n', 'n-rev'), + 'new_status_labels' => Array ('n-rev' =>"!la_title_Adding_Review! '!la_title_New_Review!'"), + 'edit_status_labels' => Array ('n-rev' => '!la_title_Editing_Review!'), + 'format' => "#n_status# '#n_titlefield#' - #n-rev_status#", + ), + + 'relations_edit' => Array ( 'prefixes' => Array ('n', 'n-rel'), + 'new_status_labels' => Array ('n-rel' =>"!la_title_Adding_Relationship! '!la_title_New_Relationship!'"), + 'edit_status_labels' => Array ('n-rel' => '!la_title_Editing_Relationship!'), + 'format' => "#n_status# '#n_titlefield#' - #n-rel_status#", + ), + + 'tree_in-news' => Array ('format' => '!la_Text_Version! '.$this->Application->findModule('Name', 'In-News', 'Version')), + + 'articles_export' => Array ('format' => '!la_title_ArticlesExport!'), + + 'articles_import' => Array ('format' => '!la_title_ImportArticles!'), + ), + + 'EditTabPresets' => Array ( + 'Default' => Array ( + Array ('title' => 'la_tab_General', 't' => 'in-news/articles/articles_edit', 'priority' => 1), + Array ('title' => 'la_tab_Categories', 't' => 'in-news/articles/articles_categories', 'priority' => 2), + Array ('title' => 'la_tab_Relations', 't' => 'in-news/articles/articles_relations', 'priority' => 3), + Array ('title' => 'la_tab_Images', 't' => 'in-news/articles/articles_images', 'priority' => 4), + Array ('title' => 'la_tab_Files', 't' => 'in-news/articles/articles_files', 'priority' => 5), + Array ('title' => 'la_tab_Reviews', 't' => 'in-news/articles/articles_reviews', 'priority' => 6), + Array ('title' => 'la_tab_Custom', 't' => 'in-news/articles/articles_custom', 'priority' => 7), + ), + ), + + 'PermItemPrefix' => 'NEWS', + + 'PermTabText' => 'In-News', + 'PermSection' => Array ('main' => 'CATEGORY:in-news:articles_list', 'search' => 'in-news:configuration_search', 'custom' => 'in-news:configuration_custom'), + + 'Sections' => Array ( + /*'in-news' => Array ( + 'parent' => 'in-portal:root', + 'icon' => 'settings_in-newz', + 'label' => 'la_title_In-News', + 'url' => Array ('t' => 'index', 'pass_section' => true, 'pass' => 'm'), + 'permissions' => Array ('view'), + 'priority' => 3.2, + 'container' => true, + 'type' => stTREE, + ),*/ + + 'in-news:articles' => Array ( + 'parent' => 'in-portal:site', + 'icon' => 'articles', + 'label' => 'la_tab_Articles', + 'url' => Array ('t' => 'catalog/advanced_view', 'anchor' => 'tab-n.showall', 'pass' => 'm'), + 'onclick' => 'setCatalogTab(\'n.showall\')', + 'permissions' => Array ('view'), + 'priority' => 3.3, + 'type' => stTREE, + ), + + // article settings + 'in-news:setting_folder' => Array ( + 'parent' => 'in-portal:system', + 'icon' => 'conf_news', + 'label' => 'la_title_In-News', + 'use_parent_header' => 1, + 'url' => Array ('t' => 'index', 'pass_section' => true, 'pass' => 'm'), + 'permissions' => Array ('view'), + 'priority' => 3.4, + 'container' => true, + 'type' => stTREE, + ), + + /*'in-news:innews_general' => Array ( + 'parent' => 'in-news:setting_folder', + 'icon' => 'core:settings_general', + 'label' => 'la_tab_GeneralSettings', + 'url' => Array ('t' => 'config/config_general', 'pass_section' => true, 'pass' => 'm'), + 'permissions' => Array ('view', 'add', 'edit'), + 'priority' => 0.9, + 'type' => stTREE, + ),*/ + + 'in-news:configuration_output' => Array ( + 'parent' => 'in-news:setting_folder', + 'icon' => 'core:conf_output', + 'label' => 'la_tab_ConfigOutput', + 'url' => Array ('t' => 'config/config_general', 'pass_section' => true, 'pass' => 'm'), + 'permissions' => Array ('view', 'add', 'edit'), + 'priority' => 1, + 'type' => stTREE, + ), + + 'in-news:configuration_search' => Array ( + 'parent' => 'in-news:setting_folder', + 'icon' => 'core:conf_search', + 'label' => 'la_tab_ConfigSearch', + 'url' => Array ('t' => 'config/config_search', 'module_key' => 'articles', 'pass_section' => true, 'pass' => 'm'), + 'permissions' => Array ('view', 'edit'), + 'priority' => 2, + 'type' => stTREE, + ), + + 'in-news:configuration_custom' => Array ( + 'parent' => 'in-news:setting_folder', + 'icon' => 'core:conf_customfields', + 'label' => 'la_tab_ConfigCustom', + 'url' => Array ('t' => 'custom_fields/custom_fields_list', 'cf_type' => 2, 'pass_section' => true, 'pass' => 'm,cf'), + 'permissions' => Array ('view', 'add', 'edit', 'delete'), + 'priority' => 3, + 'type' => stTREE, + ), + + ), + + 'FilterMenu' => Array ( + 'Groups' => Array ( + Array ('mode' => 'AND', 'filters' => Array ('show_new'), 'type' => kDBList::HAVING_FILTER), + Array ('mode' => 'AND', 'filters' => Array ('show_hot'), 'type' => kDBList::HAVING_FILTER), + Array ('mode' => 'AND', 'filters' => Array ('show_pop'), 'type' => kDBList::HAVING_FILTER), + Array ('mode' => 'AND', 'filters' => Array ('show_pick'), 'type' => kDBList::WHERE_FILTER), + ), + 'Filters' => Array ( + 'show_new' => Array ('label' => 'la_Text_New', 'on_sql' => '', 'off_sql' => '`IsNew` != 1' ), + 'show_hot' => Array ('label' => 'la_Text_Hot', 'on_sql' => '', 'off_sql' => '`IsHot` != 1' ), + 'show_pop' => Array ('label' => 'la_Text_Pop', 'on_sql' => '', 'off_sql' => '`IsPop` != 1' ), + 'show_pick' => Array ('label' => 'la_prompt_EditorsPick', 'on_sql' => '', 'off_sql' => '%1$s.`EditorsPick` != 1' ), + ), + ), + + 'CatalogSelectorName' => 'newslist', + + 'ItemPropertyMappings' => Array ( + 'NewDays' => 'News_CatNewDays', // number of days item to be NEW + 'MinPopVotes' => 'News_MinPopVotes', // minimum number of votes for an item to be POP + 'MinPopRating' => 'News_MinPopRating',// minimum rating for an item to be POP + 'MaxHotNumber' => 'News_MaxHotNumber',// maximum number of HOT items + + 'HotLimit' => 'News_HotLimit', // variable name in inp_Cache table + 'ClickField' => 'Hits', // item click count is stored here (in item table) + ), + + 'ItemType' => 2, // this is used when relation to product is added from in-portal and via-versa + + 'ViewMenuPhrase' => 'la_title_Articles', + 'CatalogTabIcon' => 'in-news:icon16_articles.png', + 'UsePendingEditing' => true, // item editing is controlled by NEWS.ADD/EDIT, NEWS.ADD/EDIT.PENDING permissions + + 'StatisticsInfo' => Array ( + 'pending' => Array ( + 'icon' => 'icon16_article_pending.gif', + 'label' => 'la_Text_Articles', + 'js_url' => '#url#', + 'url' => Array ('t' => 'catalog/advanced_view', 'SetTab' => 'n', 'pass' => 'm,n.showall', 'n.showall_event' => 'OnSetFilterPattern', 'n.showall_filters' => 'show_active=0,show_pending=1,show_disabled=0,show_new=1,show_hot=1,show_pop=1,show_pick=1'), + 'status' => STATUS_PENDING, + ), + ), + + 'TableName' => TABLE_PREFIX.'News', + 'CustomDataTableName' => TABLE_PREFIX . 'NewsCustomData', + + 'CalculatedFields' => Array ( + '' => Array ( + 'UserName' => 'IF (ISNULL(u.Username), IF (%1$s.CreatedById = ' . USER_ROOT . ', "root", IF (%1$s.CreatedById = ' . USER_GUEST . ', "Guest", "n/a")), IF(u.Username = "", u.Email, u.Username))', + 'CategoryId' => TABLE_PREFIX.'%3$sCategoryItems.CategoryId', + 'Filename' => TABLE_PREFIX.'%3$sCategoryItems.Filename', + 'CategoryFilename' => TABLE_PREFIX.'Categories.NamedParentPath', + 'PrimaryCat' => TABLE_PREFIX.'%3$sCategoryItems.PrimaryCat', + 'ParentPath' => TABLE_PREFIX.'Categories.ParentPath', + + 'AltName' => 'img.AltName', + 'SameImages' => 'img.SameImages', + 'LocalThumb' => 'img.LocalThumb', + 'ThumbPath' => 'img.ThumbPath', + 'ThumbUrl' => 'img.ThumbUrl', + 'LocalImage' => 'img.LocalImage', + 'LocalPath' => 'img.LocalPath', + 'FullUrl' => 'img.Url', + ), + ), + + 'CacheModRewrite' => true, + + 'ListSQLs' => Array ( '' => ' SELECT %1$s.* %2$s + FROM %1$s + LEFT JOIN '.TABLE_PREFIX.'%3$sCategoryItems ON '.TABLE_PREFIX.'%3$sCategoryItems.ItemResourceId = %1$s.ResourceId + LEFT JOIN '.TABLE_PREFIX.'Categories ON '.TABLE_PREFIX.'Categories.CategoryId = '.TABLE_PREFIX.'%3$sCategoryItems.CategoryId + LEFT JOIN '.TABLE_PREFIX.'%3$sCatalogImages img ON img.ResourceId = %1$s.ResourceId AND img.DefaultImg = 1 + {PERM_JOIN} + LEFT JOIN '.TABLE_PREFIX.'Users u ON %1$s.CreatedById = u.PortalUserId + LEFT JOIN '.TABLE_PREFIX.'%3$sNewsCustomData cust ON %1$s.ResourceId = cust.ResourceId', + ), // key - special, value - list select sql + + 'ListSortings' => Array ( + '' => Array ( + 'ForcedSorting' => Array ('EditorsPick' => 'desc', 'Priority' => 'desc'), + 'Sorting' => Array ('Title' => 'asc'), + ) + ), + 'ItemSQLs' => Array ( '' => ' SELECT %1$s.* %2$s + FROM %1$s + LEFT JOIN '.TABLE_PREFIX.'%3$sCategoryItems ON '.TABLE_PREFIX.'%3$sCategoryItems.ItemResourceId = %1$s.ResourceId + LEFT JOIN '.TABLE_PREFIX.'Categories ON '.TABLE_PREFIX.'Categories.CategoryId = '.TABLE_PREFIX.'%3$sCategoryItems.CategoryId + LEFT JOIN '.TABLE_PREFIX.'%3$sCatalogImages img ON img.ResourceId = %1$s.ResourceId AND img.DefaultImg = 1 + LEFT JOIN '.TABLE_PREFIX.'Users u ON %1$s.CreatedById = u.PortalUserId + LEFT JOIN '.TABLE_PREFIX.'%3$sNewsCustomData cust ON %1$s.ResourceId = cust.ResourceId'), + + 'SubItems' => Array ('n-rev', 'n-ci', 'n-rel', 'n-img', 'n-cdata', 'n-fav', 'n-file'), + + 'Fields' => Array ( + 'NewsId' => Array ('type' => 'int', 'not_null' => 1, 'default' => 0,), + 'Title' => Array ('type' => 'string', /*'formatter' => 'kMultiLanguage', */'not_null' => 1, 'required' => 1, 'default' => '', 'max_len' => 255), + 'AutomaticFilename' => Array ( + 'type' => 'int', + 'formatter' => 'kOptionsFormatter', + 'options' => Array (0 => 'la_No', 1 => 'la_Yes'), + 'use_phrases' => 1, 'not_null' => 1, 'default' => 1, + ), + 'Excerpt' => Array ('type' => 'string', /*'formatter' => 'kMultiLanguage',*/ 'default' => null), + 'Author' => Array ('type' => 'string', 'not_null' => 1, 'default' => ''), + 'Body' => Array ('type' => 'string', 'formatter' => 'kFormatter',/*'kMultiLanguage'*/ 'using_fck' => 1, 'required' => 1, 'default' => null), + 'CreatedOn' => Array ('type' => 'int', 'formatter' => 'kDateFormatter', 'required' => 1, 'default' => '#NOW#'), + 'TextFormat' => Array ('type' => 'int', 'not_null' => 1, 'default' => 0), + 'EndOn' => Array ('type' => 'int', 'formatter' => 'kDateFormatter', 'default' => null), + 'Hits' => Array ('type' => 'double', 'formatter' => 'kFormatter', 'format' => '%d', 'not_null' => 1, 'default' => 0), + 'CachedRating' => Array ('type' => 'string', 'default' => 0), + 'CachedVotesQty' => Array ('type' => 'int', 'not_null' => 1, 'default' => 0), + 'CreatedById' => Array ( + 'type' => 'int', + 'formatter' => 'kLEFTFormatter', + 'options' => Array (USER_ROOT => 'root', USER_GUEST => 'Guest'), + 'left_sql' => 'SELECT %s FROM ' . TABLE_PREFIX . 'Users WHERE %s', + 'left_key_field' => 'PortalUserId', 'left_title_field' => USER_TITLE_FIELD, + 'error_msgs' => Array ('invalid_option' => '!la_error_UserNotFound!'), + 'sample_value' => 'Guest', 'required' => 1, 'default' => NULL, + ), + 'Priority' => Array ('type' => 'int', 'not_null' => 1, 'default' => 0), + 'Status' => Array ( + 'type' => 'int', + 'formatter' => 'kOptionsFormatter', + 'options' => Array (1 => 'la_Active', 2 => 'la_Pending', 0 => 'la_Disabled'), 'use_phrases' => 1, + 'not_null' => 1, 'default' => 2, + ), + 'EditorsPick' => Array ( + 'type' => 'int', + 'formatter' => 'kOptionsFormatter', + 'options' => Array (1 => 'la_Yes', 0 => 'la_No'), 'use_phrases' => 1, + 'not_null' => 1, 'default' => 0, + ), + 'LeadStory' => Array ( + 'type' => 'int', + 'formatter' => 'kOptionsFormatter', + 'options' => Array (1 => 'la_Yes', 0 => 'la_No'), 'use_phrases' => 1, + 'not_null' => 1, 'default' => 0, + ), + 'LeadCatStory' => Array ( + 'type' => 'int', + 'formatter' => 'kOptionsFormatter', + 'options' => Array (1 => 'la_Yes', 0 => 'la_No'), 'use_phrases' => 1, + 'not_null' => 1, 'default' => 0, + ), + 'ResourceId' => Array ('type' => 'int', 'default' => null), + 'CachedReviewsQty' => Array ('type' => 'int', 'not_null' => 1, 'default' => 0), + 'StartDate' => Array ('type' => 'int', 'formatter' => 'kDateFormatter', 'required' => 1, 'default' => '#NOW#'), + 'NewItem' => Array ('type' => 'int', 'formatter' => 'kOptionsFormatter', 'options' => Array (2 => 'la_Auto', 1 => 'la_Always', 0 => 'la_Never'), 'use_phrases' => 1, 'not_null' => 1, 'default' => 2), + 'PopItem' => Array ('type' => 'int', 'formatter' => 'kOptionsFormatter', 'options' => Array (2 => 'la_Auto', 1 => 'la_Always', 0 => 'la_Never'), 'use_phrases' => 1, 'not_null' => 1, 'default' => 2), + 'HotItem' => Array ('type' => 'int', 'formatter' => 'kOptionsFormatter', 'options' => Array (2 => 'la_Auto', 1 => 'la_Always', 0 => 'la_Never'), 'use_phrases' => 1, 'not_null' => 1, 'default' => 2), + 'Archived' => Array ('type' => 'int', 'formatter' => 'kOptionsFormatter', 'options' => Array (1 => 'la_Yes', 2 => 'la_No'), 'use_phrases' => 1, 'not_null' => 1, 'default' => 0), + 'Modified' => Array ('type' => 'int', 'formatter' => 'kDateFormatter', 'default' => '#NOW#'), + 'ModifiedById' => Array ('type' => 'int', 'formatter' => 'kLEFTFormatter', 'error_msgs' => Array ('invalid_option' => '!la_error_UserNotFound!'), 'options' => Array (USER_ROOT => 'root', USER_GUEST => 'Guest'), 'left_sql' => 'SELECT %s FROM '.TABLE_PREFIX.'Users WHERE %s', 'left_key_field' => 'PortalUserId', 'left_title_field' => USER_TITLE_FIELD, 'default' => NULL), + 'OrgId' => Array ('type' => 'int', 'default' => null), + 'MetaKeywords' => Array ('type' => 'string', 'default' => null), + 'MetaDescription' => Array ('type' => 'string', 'formatter' => 'kFormatter', 'using_fck' => 1, 'default' => null), + ), + + 'VirtualFields' => Array ( + 'Relevance' => Array ('type' => 'float', 'default' => 0), + 'MoreCategories' => Array ('type' => 'string', 'default' => ''), + + 'UserName' => Array ('type' => 'string', 'default' => ''), + 'CategoryId' => Array ('type' => 'int', 'formatter' => 'kOptionsFormatter', 'options' => Array (), 'default' => 0), + + 'cust_RssOriginalURL' => Array ('type' => 'string', 'default' => ''), + 'cust_RssArticleCRC' => Array ('type' => 'int', 'default' => 0), + 'Filename' => Array ('type' => 'string', 'default' => ''), + 'CategoryFilename' => Array ('type' => 'string', 'default' => ''), + 'PrimaryCat' => Array ('type' => 'int', 'default' => 0), + 'IsHot' => Array ('type' => 'int', 'default' => 0), + 'IsNew' => Array ('type' => 'int', 'default' => 0), + 'IsPop' => Array ('type' => 'int', 'default' => 0), + 'CachedNavbar' => Array ('type' => 'string', 'default' => ''), + 'ParentPath' => Array ('type' => 'string', 'default' => ''), + + // for primary image + 'AltName' => Array ('type' => 'string', 'default' => ''), + 'SameImages' => Array ('type' => 'string', 'default' => ''), + 'LocalThumb' => Array ('type' => 'string', 'default' => ''), + 'ThumbPath' => Array ('type' => 'string', 'default' => ''), + 'ThumbUrl' => Array ('type' => 'string', 'default' => ''), + 'LocalImage' => Array ('type' => 'string', 'default' => ''), + 'LocalPath' => Array ('type' => 'string', 'default' => ''), + 'FullUrl' => Array ('type' => 'string', 'default' => ''), + + // export related fields: begin + 'ExportFormat' => Array ('type' => 'int', 'formatter' => 'kOptionsFormatter', 'options' => Array (1 => 'CSV', /*2 => 'XML'*/), 'default' => 1), + 'ExportFilename' => Array ('type' => 'string', 'default' => ''), + 'FieldsSeparatedBy' => Array ('type' => 'string', 'default' => ','), + 'FieldsEnclosedBy' => Array ('type' => 'string', 'default' => '"'), + 'LineEndings' => Array ('type' => 'int', 'formatter' => 'kOptionsFormatter', 'options' => Array (1 => 'Windows', 2 => 'UNIX'), 'default' => 1), + 'LineEndingsInside' => Array ('type' => 'int', 'formatter' => 'kOptionsFormatter', 'options' => Array (1 => 'CRLF', 2 => 'LF'), 'default' => 2), + 'IncludeFieldTitles' => Array ( + 'type' => 'int', + 'formatter' => 'kOptionsFormatter', + 'options' => Array (0 => 'la_No', 1 => 'la_Yes'), + 'use_phrases' => 1, 'default' => 1, + ), + 'ExportColumns' => Array ('type' => 'string', 'formatter' => 'kOptionsFormatter', 'options' => Array (), 'default' => ''), + 'AvailableColumns' => Array ('type' => 'string', 'formatter' => 'kOptionsFormatter', 'options' => Array (), 'default' => ''), + 'CategoryFormat' => Array ('type' => 'int', 'formatter' => 'kOptionsFormatter', 'options' => Array (1 => 'la_MixedCategoryPath', 2 => 'la_SeparatedCategoryPath'), 'use_phrases' => 1, 'default' => 1), + 'CategorySeparator' => Array ('type' => 'string', 'default' => ':'), + 'IsBaseCategory' => Array ( + 'type' => 'int', + 'formatter' => 'kOptionsFormatter', + 'options' => Array (0 => 'la_No', 1 => 'la_Yes'), + 'use_phrases' => 1, 'default' => 0, + ), + // export related fields: end + + // import related fields: begin + 'FieldTitles' => Array ('type' => 'int', 'formatter' => 'kOptionsFormatter', 'options' => Array (1 => 'la_Automatic', 2 => 'la_Manual'), 'use_phrases' => 1, 'default' => 1), + 'ImportSource' => Array ('type' => 'int', 'formatter' => 'kOptionsFormatter', 'options' => Array (1 => 'la_Upload', 2 => 'la_Local'), 'use_phrases' => 1, 'default' => 2), + 'ImportFilename' => Array ('type' => 'string', 'formatter' => 'kUploadFormatter', 'max_size' => MAX_UPLOAD_SIZE, 'upload_dir' => EXPORT_BASE_PATH . '/', 'default' => ''), + 'ImportLocalFilename' => Array ('type' => 'string', 'formatter' => 'kOptionsFormatter', 'default' => ''), + 'CheckDuplicatesMethod' => Array ('type' => 'int', 'formatter' => 'kOptionsFormatter', 'options' => Array (1 => 'la_IDField', 2 => 'la_OtherFields'), 'use_phrases' => 1, 'default' => 1), + 'ReplaceDuplicates' => Array ('type' => 'int', 'formatter' => 'kOptionsFormatter', 'options' => Array (0 => 'la_No', 1 => 'la_Yes'), 'use_phrases' => 1, 'default' => 0), + 'DuplicateCheckFields' => Array ('type' => 'string', 'formatter' => 'kOptionsFormatter', 'options' => Array ('Title' => 'TITLE'), 'default' => '|Title|'), + 'SkipFirstRow' => Array ('type' => 'int', 'formatter' => 'kOptionsFormatter', 'options' => Array (1 => 'la_Yes', 0 => 'la_No'), 'use_phrases' => 1, 'default' => 1), + // import related fields: end + ), + + 'Grids' => Array ( + 'Default' => Array ( + 'Icons' => Array ( + 0 => 'icon16_article_disabled.png', + 1 => 'icon16_article.png', + 2 => 'icon16_article_pending.png', + 'NEW' => 'icon16_article_new.png', + ), + + 'Fields' => Array ( + 'NewsId' => Array ('title' => 'column:la_fld_Id', 'data_block' => 'grid_checkbox_td', 'filter_block' => 'grid_range_filter', 'width' => 60, ), + 'Title' => Array ('data_block' => 'grid_catitem_td', 'filter_block' => 'grid_like_filter', 'width' => 200, ), + 'Priority' => Array('filter_block' => 'grid_range_filter', 'width' => 65), + 'UserName' => Array ('title' => 'column:la_fld_Author', 'filter_block' => 'grid_like_filter', 'width' => 100, ), + 'LeadStory' => Array ('filter_block' => 'grid_options_filter', 'width' => 80, ), + 'LeadCatStory' => Array ('filter_block' => 'grid_options_filter', 'width' => 85, ), + 'Status' => Array ('filter_block' => 'grid_options_filter', 'width' => 70, ), + 'CreatedOn' => Array ('filter_block' => 'grid_date_range_filter', 'width' => 140, ), + 'StartDate' => Array ('filter_block' => 'grid_date_range_filter', 'width' => 140, ), + 'EndOn' => Array ('data_block' => 'article_expire_td', 'filter_block' => 'grid_date_range_filter', 'width' => 140, ), + ), + ), + + 'Radio' => Array ( + 'Icons' => Array ( + 0 => 'icon16_article_disabled.png', + 1 => 'icon16_article.png', + 2 => 'icon16_article_pending.png', + -2 => 'icon16_article_pending.png', // pending DUPLICATE item + 'NEW' => 'icon16_article_new.gif', + ), + + 'Selector' => 'radio', + 'Fields' => Array ( + 'NewsId' => Array ('title' => 'column:la_fld_Id', 'data_block' => 'grid_radio_td', 'filter_block' => 'grid_range_filter', 'width' => 60, ), + 'Title' => Array ('data_block' => 'grid_catitem_td', 'filter_block' => 'grid_like_filter', 'width' => 200, ), + 'Priority' => Array('filter_block' => 'grid_range_filter', 'width' => 65), + 'UserName' => Array ('title' => 'column:la_fld_Author', 'filter_block' => 'grid_like_filter', 'width' => 100, ), + 'LeadStory' => Array ('filter_block' => 'grid_options_filter', 'width' => 80, ), + 'LeadCatStory' => Array ('filter_block' => 'grid_options_filter', 'width' => 85, ), + 'Status' => Array ('filter_block' => 'grid_options_filter', 'width' => 70, ), + 'CreatedOn' => Array ('filter_block' => 'grid_date_range_filter', 'width' => 140, ), + 'StartDate' => Array ('filter_block' => 'grid_date_range_filter', 'width' => 140, ), + 'EndOn' => Array ('data_block' => 'article_expire_td', 'filter_block' => 'grid_date_range_filter', 'width' => 140, ), + ), + ), + ), + + 'ConfigMapping' => Array ( + 'PerPage' => 'Perpage_News', + 'ShortListPerPage' => 'Perpage_News_Short', + 'ForceEditorPick' => 'News_ShowPick', + 'DefaultSorting1Field' => 'News_SortField', + 'DefaultSorting2Field' => 'News_SortField2', + 'DefaultSorting1Dir' => 'News_SortOrder', + 'DefaultSorting2Dir' => 'News_SortOrder2', + + 'RatingDelayValue' => 'News_RatingDelay_Value', + 'RatingDelayInterval' => 'News_RatingDelay_Interval', + ), + ); \ No newline at end of file Property changes on: releases/5.2.1/units/articles/articles_config.php ___________________________________________________________________ Added: cvs2svn:cvs-rev + 1.52.2.18 Added: svn:keywords + Id Added: svn:eol-style + LF Index: releases/5.2.1/units/articles/articles_tag_processor.php =================================================================== --- releases/5.2.1/units/articles/articles_tag_processor.php (revision 0) +++ releases/5.2.1/units/articles/articles_tag_processor.php (revision 16072) @@ -0,0 +1,33 @@ +PrintList2($params); + } + + function ListArticles($params) + { + return $this->PrintList2($params); + } + + function ArticleLink($params) + { + return $this->ItemLink($params, 'article'); + } + } \ No newline at end of file Property changes on: releases/5.2.1/units/articles/articles_tag_processor.php ___________________________________________________________________ Added: cvs2svn:cvs-rev + 1.5 Added: svn:keywords + Id Added: svn:eol-style + LF Index: releases/5.2.1/units/articles/articles_event_handler.php =================================================================== --- releases/5.2.1/units/articles/articles_event_handler.php (revision 0) +++ releases/5.2.1/units/articles/articles_event_handler.php (revision 16072) @@ -0,0 +1,575 @@ +getObject(); + /* @var $object kDBList */ + + if ( !$this->Application->isAdminUser ) { + $where_clause = '(Archived = 0) AND (StartDate < ' . adodb_mktime() . ' OR StartDate = 0) AND (EndOn > ' . adodb_mktime() . ' OR EndOn IS NULL)'; + $object->addFilter('archived_filter', $where_clause); + } + } + + /** + * Return type clauses for list bulding on front + * + * @param kEvent $event + * @return Array + */ + function getTypeClauses($event) + { + $type_clauses = parent::getTypeClauses($event); + + $type_clauses['site_lead']['include']='%1$s.LeadStory = 1 AND '.TABLE_PREFIX.'CategoryItems.PrimaryCat = 1'; + $type_clauses['site_lead']['except']='%1$s.LeadStory <> 1 AND '.TABLE_PREFIX.'CategoryItems.PrimaryCat = 1'; + $type_clauses['site_lead']['having_filter'] = false; + + $type_clauses['cat_lead']['include']='%1$s.LeadCatStory = 1 AND '.TABLE_PREFIX.'CategoryItems.PrimaryCat = 1'; + $type_clauses['cat_lead']['except']='%1$s.LeadCatStory <> 1 AND '.TABLE_PREFIX.'CategoryItems.PrimaryCat = 1'; + $type_clauses['cat_lead']['having_filter'] = false; + + return $type_clauses; + } + + + /** + * [CRON] Deletes expired articles + update existing articles from rss feed with new data (key - article url) + * + * @param kEvent $event + */ + function OnUpdateRSSArticles($event) + { + if ( defined('IS_INSTALL') && IS_INSTALL ) { + return; + } + + $category_table = $this->Application->getUnitOption('c', 'TableName'); + $custom_table = $this->Application->getUnitOption('c-cdata', 'TableName'); + + $category_custom_fields = $this->getCustomColumns('c'); + $article_custom_fields = $this->getCustomColumns($event->Prefix); + + + // update categories which sould be updated + $sql = 'SELECT cd.*, c.CategoryId + FROM '.$category_table.' c + LEFT JOIN '.$custom_table.' cd ON c.ResourceId = cd.ResourceId + WHERE (IF(cd.'.$category_custom_fields['RssLastUpdated'].' IS NULL, 0, cd.'.$category_custom_fields['RssLastUpdated'].') + + cd.'.$category_custom_fields['RssUpdateInterval'].' * cd.'.$category_custom_fields['RssUpdateIntervalType'].' <= + '.adodb_mktime().') AND (LENGTH('.$category_custom_fields['RssSource'].') > 0)'; + $categories = $this->Conn->Query($sql, 'CategoryId'); + if ($categories) { + $resource_ids = Array(); + foreach ($categories as $category_id => $category_data) { + $resource_ids[] = $category_data['ResourceId']; + $event->setEventParam('source_url', $category_data[ $category_custom_fields['RssSource'] ]); + $event->setEventParam('category_id', $category_id); + $event->setEventParam('custom_fields', $article_custom_fields); + $event->setEventParam('life_time', $category_data[ $category_custom_fields['RssDefaultExpiration'] ] * $category_data[ $category_custom_fields['RssDefaultExpirationType'] ]); + $this->parseFeed($event); + } + + $sql = 'UPDATE '.$custom_table.' + SET '.$category_custom_fields['RssLastUpdated'].' = '.adodb_mktime().' + WHERE ResourceId IN ('.implode(',', $resource_ids).')'; + $this->Conn->Query($sql); + } + + // delete expired articles from feed categories + $sql = 'SELECT c.CategoryId, c.ResourceId + FROM '.$category_table.' c + LEFT JOIN '.$custom_table.' cd ON c.ResourceId = cd.ResourceId + WHERE ( IF(cd.'.$category_custom_fields['RssLastExpired'].' IS NULL, 0, cd.'.$category_custom_fields['RssLastExpired'].') + + cd.'.$category_custom_fields['RssExpireInterval'].' * cd.'.$category_custom_fields['RssExpireIntervalType'].' <= + '.adodb_mktime().') AND (cd.'.$category_custom_fields['RssDeleteExpired'].' = 1)'; + + $categories = $this->Conn->GetCol($sql, 'ResourceId'); + + $id_field = $this->Application->getUnitOption($event->Prefix, 'IDField'); + $table = $this->Application->getUnitOption($event->Prefix, 'TableName'); + $ci_table = $this->Application->getUnitOption($event->Prefix.'-ci', 'TableName'); + + if ($categories) { + $article_custom_table = $this->Application->getUnitOption($event->Prefix.'-cdata', 'TableName'); + + $sql = 'SELECT main_table.'.$id_field.' + FROM '.$table.' main_table + LEFT JOIN '.$ci_table.' ci ON main_table.ResourceId = ci.ItemResourceId + LEFT JOIN '.$article_custom_table.' cd ON main_table.ResourceId = cd.ResourceId + WHERE (ci.PrimaryCat = 1) AND + (ci.CategoryId IN ('.implode(',', $categories).')) AND + (main_table.EndOn < '.adodb_mktime().' AND main_table.EndOn IS NOT NULL) AND + (LENGTH(cd.'.$article_custom_fields['RssOriginalURL'].') > 0)'; + $article_ids = $this->Conn->GetCol($sql); + if ($article_ids) { + $temp_handler = $this->Application->recallObject($event->getPrefixSpecial().'_TempHandler', 'kTempTablesHandler'); + /* @var $temp_handler kTempTablesHandler */ + + $temp_handler->DeleteItems($event->Prefix, $event->Special, $article_ids); + } + + $sql = 'UPDATE '.$custom_table.' + SET '.$category_custom_fields['RssLastExpired'].' = '.adodb_mktime().' + WHERE ResourceId IN ('.implode(',', array_keys($categories)).')'; + $this->Conn->Query($sql); + } + } + + /** + * Returns article ids & crc, that are created during feed import + * + * @param kEvent $event + * @return Array + */ + function getFeedArticles($event) + { + $id_field = $this->Application->getUnitOption($event->Prefix, 'IDField'); + $table = $this->Application->getUnitOption($event->Prefix, 'TableName'); + $custom_table = $this->Application->getUnitOption($event->Prefix.'-cdata', 'TableName'); + + $crc_field = $event->getEventParam('custom_fields', 'RssArticleCRC'); + + $sql = 'SELECT main_table.'.$id_field.', cd.'.$crc_field.' + FROM '.$table.' main_table + LEFT JOIN '.$custom_table.' cd ON cd.ResourceId = main_table.ResourceId + WHERE LENGTH(cd.'.$crc_field.') > 0'; + return $this->Conn->GetCol($sql, $crc_field); + } + + /** + * Creates new, updates existing articles from feed url specified + * + * @param kEvent $event + */ + function parseFeed($event) + { + $source_urls = explode(',', $event->getEventParam('source_url')); + if (count($source_urls) > 1) { + foreach ($source_urls as $source_url) { + $event->setEventParam('source_url', $source_url); + $this->parseFeed($event); + } + return true; + } + + $curl_helper = $this->Application->recallObject('CurlHelper'); + /* @var $curl_helper kCurlHelper */ + + $curl_helper->followLocation = true; + $curl_helper->setOptions( Array (CURLOPT_USERAGENT => 'Mozilla/5.0 (Windows; U; Windows NT 5.2; ru; rv:1.9.1.3) Gecko/20090824 Firefox/3.5.3 (.NET CLR 3.5.30729)') ); // otherwise FeedBurner will return HTML + + $xml_data = $curl_helper->Send($event->getEventParam('source_url')); + + if (!$xml_data) { + return false; + } + + $xml_helper = $this->Application->recallObject('kXMLHelper'); + /* @var $xml_helper kXMLHelper */ + + $root_node =& $xml_helper->Parse($xml_data, kXMLHelper::XML_WITH_TEXT_NODES); + + $feed_types = Array ( + 'rss_2.0' => 'channel', 'atom' => 'feed', + ); + + foreach ($feed_types as $feed_type => $node_name) { + $article_node =& $root_node->FindChild($node_name); + if (is_object($article_node)) { + break; + } + } + + if (!$article_node) { + return false; + } + + $category_id = $event->getEventParam('category_id'); + $backup_category_id = $this->Application->GetVar('m_cat_id'); + $this->Application->SetVar('m_cat_id', $category_id); + + switch ($feed_type) { + case 'rss_2.0': + $this->parseRssFeed($article_node, $event); + break; + + case 'atom': + $this->parseAtomFeed($article_node, $event); + break; + } + + $this->Application->SetVar('m_cat_id', $backup_category_id); + } + + /** + * Returns ML field names for article record + * + * @param kCatDBItem $object + * @return Array + */ + function _getMLFields(&$object) + { + $ml_formatter = $this->Application->recallObject('kMultiLanguage'); + /* @var $ml_formatter kMultiLanguage */ + + $title_field = 'Title'; + $title_formatter = $object->GetFieldOption($title_field, 'formatter'); + + if ( $title_formatter == 'kMultiLanguage' ) { + $title_field = $ml_formatter->LangFieldName($title_field); + } + + $body_field = 'Body'; + $body_formatter = $object->GetFieldOption($body_field, 'formatter'); + + if ( $body_formatter == 'kMultiLanguage' ) { + $body_field = $ml_formatter->LangFieldName($body_field); + } + + return Array ($title_field, $body_field); + } + + /** + * Parses RSS 2.0 feed + * + * @param kXMLNode $root_node + * @param kEvent $event + */ + function parseRssFeed(&$root_node, $event) + { + $current_node = $root_node->firstChild; + $feed_articles = $this->getFeedArticles($event); + + $object = $this->Application->recallObject($event->Prefix.'.-item', null, Array('skip_autoload' => true)); + /* @var $object kDBItem */ + + list ($title_field, $body_field) = $this->_getMLFields($object); + + do { + // IMAGE is information about channel and is not useful here + if ($current_node->Name != 'ITEM') continue; + // collect item data + $data = Array(); + $sub_node =& $current_node->firstChild; + /* @var $sub_node kXMLNode */ + + do { + if ($sub_node->Name == 'ATOM:SUMMARY') { + $data[$sub_node->Name] = $this->getNodeContent($sub_node); + } else { + $data[$sub_node->Name] = $this->getNodeContent($sub_node, 'xhtml'); // $sub_node->firstChild->Data; // was $sub_node->Data; + } + + } while ( ($sub_node =& $sub_node->NextSibling()) ); + + // create/update article + $article_crc = kUtil::crc32($data['LINK'].$data['TITLE']); + $article_id = getArrayValue($feed_articles, $article_crc); + if ($article_id) { + $object->Load($article_id); + } + else { + $object->Clear(); + } + + $object->SetDBField($title_field, $data['TITLE']); + $object->SetDBField('cust_RssOriginalURL', $data['LINK']); + $object->SetDBField('cust_RssArticleCRC', $article_crc); + $object->SetDBField($body_field, !array_key_exists('DESCRIPTION', $data) ? $data['ATOM:SUMMARY'] : $data['DESCRIPTION']); + $expiration_time = adodb_mktime() + $event->getEventParam('life_time'); + $object->SetDBField('EndOn_date', $expiration_time); + $object->SetDBField('EndOn_time', $expiration_time); + $object->SetDBField('Status', STATUS_ACTIVE); + $object->SetDBField('Author', 'root'); + $object->SetDBField('CreatedById', USER_ROOT); + + $status = $object->isLoaded() ? $object->Update() : $object->Create(); + } while (($current_node =& $current_node->NextSibling())); + } + + /** + * Returns parsed node content + * + * @param kXMLNode $node + * @param string $content_type + * @return string + */ + function getNodeContent(&$node, $content_type = null) + { + if ( !isset($content_type) ) { + $content_type = $node->GetAttribute('TYPE'); + } + + switch ($content_type) { + case 'xhtml': + $data = $node->GetXML(true); + break; + + case 'html': + $data = kUtil::unescape($node->GetXML(true), kUtil::ESCAPE_HTML); // $node->firstChild->Data // $node->Data + break; + + default: + $data = $node->GetXML(true); // $node->firstChild->Data; // $node->Data; also for 'text' + break; + } + + return trim($data); + } + + /** + * Parses ATOM feed + * + * @param kXMLNode $root_node + * @param kEvent $event + */ + function parseAtomFeed(&$root_node, $event) + { + $current_node = $root_node->firstChild; + $feed_articles = $this->getFeedArticles($event); + + $object = $this->Application->recallObject($event->Prefix.'.-item', null, Array('skip_autoload' => true)); + /* @var $object kDBItem */ + + list ($title_field, $body_field) = $this->_getMLFields($object); + + do { + if ($current_node->Name != 'ENTRY') continue; + // collect item data + $data = Array(); + $sub_node =& $current_node->firstChild; + /* @var $sub_node kXMLNode */ + + do { + if ($sub_node->Name == 'LINK') { + if ($sub_node->GetAttribute('REL') === false || $sub_node->GetAttribute('REL') == 'alternate') { + $data[$sub_node->Name] = $sub_node->GetAttribute('HREF'); + } + } + elseif ($sub_node->Name == 'CONTENT' || $sub_node->Name == 'SUMMARY' || $sub_node->Name == 'TITLE') { + $data[$sub_node->Name] = $this->getNodeContent($sub_node); + } + else { + $data[$sub_node->Name] = $sub_node->GetXML(true); // firstChild->Data; // $sub_node->Data + } + } while ( ($sub_node =& $sub_node->NextSibling()) ); + + // create/update article + $article_crc = kUtil::crc32($data['LINK'].$data['TITLE']); + $article_id = getArrayValue($feed_articles, $article_crc); + if ($article_id) { + $object->Load($article_id); + } + else { + $object->Clear(); + } + + $object->SetDBField($title_field, $data['TITLE']); + $object->SetDBField('cust_RssOriginalURL', $data['LINK']); + $object->SetDBField('cust_RssArticleCRC', $article_crc); + $object->SetDBField($body_field, !array_key_exists('CONTENT', $data) ? $data['SUMMARY'] : $data['CONTENT']); + $expiration_time = adodb_mktime() + $event->getEventParam('life_time'); + $object->SetDBField('EndOn_date', $expiration_time); + $object->SetDBField('EndOn_time', $expiration_time); + $object->SetDBField('Status', STATUS_ACTIVE); + $object->SetDBField('Author', 'root'); + $object->SetDBField('CreatedById', USER_ROOT); + + $status = $object->isLoaded() ? $object->Update() : $object->Create(); + } while (($current_node =& $current_node->NextSibling())); + } + + function getCustomColumns($prefix) + { + $ml_formatter = $this->Application->recallObject('kMultiLanguage'); + /* @var $ml_formatter kMultiLanguage */ + + $custom_fields = array_flip($this->Application->getUnitOption($prefix, 'CustomFields')); + foreach ($custom_fields as $custom_name => $custom_id) { + $custom_fields[$custom_name] = $ml_formatter->LangFieldName('cust_'.$custom_id); + } + + return $custom_fields; + } + + /** + * Create missing excerpt + * + * @param kEvent $event + * @return void + * @access protected + */ + protected function OnBeforeItemUpdate(kEvent $event) + { + parent::OnBeforeItemUpdate($event); + + $this->createExcerpt($event); + $this->cacheItemOwner($event, 'CreatedById', 'Author'); + } + + /** + * Create missing excerpt + * + * @param kEvent $event + * @return void + * @access protected + */ + protected function OnBeforeItemCreate(kEvent $event) + { + parent::OnBeforeItemCreate($event); + + $this->createExcerpt($event); + $this->cacheItemOwner($event, 'CreatedById', 'Author'); + } + + /** + * Create excerpt if missing + * + * @param kEvent $event + */ + function createExcerpt($event) + { + $object = $event->getObject(); + /* @var $object kDBItem */ + + if ( !$object->GetField('Excerpt') || $this->Application->GetVar('generate_excerpt') ) { + $excerpt = strip_tags($object->GetField('Body')); + + + $length = mb_strlen($excerpt); + if ( $length > 100 ) { + $excerpt = mb_substr(strip_tags($excerpt), 0, 100); + + if ( mb_substr($excerpt, -1) != ' ' ) { + $pos = mb_strrpos($excerpt, ' '); + + if ( $pos ) { + $excerpt = mb_substr($excerpt, 0, $pos); + } + } + + $excerpt .= '...'; + } + + $excerpt_field = 'Excerpt'; + $excerpt_formatter = $object->GetFieldOption('Excerpt', 'formatter'); + + if ( $excerpt_formatter == 'kMultiLanguage' ) { + $ml_formatter = $this->Application->recallObject('kMultiLanguage'); + /* @var $ml_formatter kMultiLanguage */ + + $excerpt_field = $ml_formatter->LangFieldName($excerpt_field); + } + + $object->SetDBField($excerpt_field, $excerpt); + } + } + + /** + * [HOOK] Updates category custom fields options in config + * + * @param kEvent $event + */ + function OnUpdateCategoryCustomFields($event) + { + $new_virtual_fields = Array( + 'cust_RssSource' => Array('type' => 'string', 'default' => ''), + 'cust_RssDefaultExpiration' => Array('type' => 'int', 'default' => ''), + 'cust_RssDefaultExpirationType' => Array('type' => 'int', 'formatter' => 'kOptionsFormatter', 'use_phrases' => 1, 'options' => Array(60 => 'la_opt_min', 3600 => 'la_opt_hour', 86400 => 'la_opt_day', 2419200 => 'la_opt_month', 29030400 => 'la_opt_year'), 'default' => 60), + 'cust_RssExpireInterval' => Array('type' => 'int', 'default' => ''), + 'cust_RssExpireIntervalType' => Array('type' => 'int', 'formatter' => 'kOptionsFormatter', 'use_phrases' => 1, 'options' => Array(60 => 'la_opt_min', 3600 => 'la_opt_hour', 86400 => 'la_opt_day', 2419200 => 'la_opt_month'), 'default' => 60), + 'cust_RssDeleteExpired' => Array('type' => 'int', 'formatter' => 'kOptionsFormatter', 'use_phrases' => 1, 'options' => Array(1 => 'la_Yes', 0 => 'la_No'), 'default' => 0), + 'cust_RssUpdateInterval' => Array('type' => 'int', 'default' => ''), + 'cust_RssUpdateIntervalType' => Array('type' => 'int', 'formatter' => 'kOptionsFormatter', 'use_phrases' => 1, 'options' => Array(60 => 'la_opt_min', 3600 => 'la_opt_hour', 86400 => 'la_opt_day', 2419200 => 'la_opt_month'), 'default' => 60), + 'cust_RssLastUpdated' => Array('type' => 'int', 'formatter' => 'kDateFormatter', 'default' => ''), + 'cust_RssLastExpired' => Array('type' => 'int', 'formatter' => 'kDateFormatter', 'default' => ''), + ); + $virtual_fields = $this->Application->getUnitOption('c', 'VirtualFields'); + $virtual_fields = kUtil::array_merge_recursive($virtual_fields, $new_virtual_fields); + $this->Application->setUnitOption('c', 'VirtualFields', $virtual_fields); + } + + /** + * Sets default expiration based on module setting + * + * @param kEvent $event + * @return void + * @access protected + */ + protected function OnPreCreate(kEvent $event) + { + parent::OnPreCreate($event); + + if ( $event->status != kEvent::erSUCCESS ) { + return ; + } + + $object = $event->getObject(); + /* @var $object kDBItem */ + + $archive_days = $this->Application->ConfigValue('News_Archive'); + if ( $archive_days ) { + $expire_date = adodb_mktime() + $archive_days * 3600 * 24; + $object->SetDBField('EndOn_date', $expire_date); + $object->SetDBField('EndOn_time', $expire_date); + } + } + + /** + * [HOOK] Allows to add cloned subitem to given prefix + * + * @param kEvent $event + * @return void + * @access protected + */ + protected function OnCloneSubItem(kEvent $event) + { + parent::OnCloneSubItem($event); + + if ( $event->MasterEvent->Prefix == 'rev' ) { + $clones = $this->Application->getUnitOption($event->MasterEvent->Prefix, 'Clones'); + $subitem_prefix = $event->Prefix . '-' . $event->MasterEvent->Prefix; + + $clones[$subitem_prefix]['ConfigMapping'] = Array ( + 'PerPage' => 'Perpage_NewsReviews', + 'ShortListPerPage' => 'Perpage_NewsReviews_Short', + 'DefaultSorting1Field' => 'News_SortReviews', + 'DefaultSorting2Field' => 'News_SortReviews2', + 'DefaultSorting1Dir' => 'News_SortReviewsOrder', + 'DefaultSorting2Dir' => 'News_SortReviewsOrder2', + + 'ReviewDelayInterval' => 'News_ReviewDelay_Interval', + 'ReviewDelayValue' => 'News_ReviewDelay_Value', + ); + + $this->Application->setUnitOption($event->MasterEvent->Prefix, 'Clones', $clones); + } + } + } Property changes on: releases/5.2.1/units/articles/articles_event_handler.php ___________________________________________________________________ Added: cvs2svn:cvs-rev + 1.14.2.13 Added: svn:keywords + Id Added: svn:eol-style + LF Index: releases/5.2.1/units/.htaccess =================================================================== --- releases/5.2.1/units/.htaccess (revision 0) +++ releases/5.2.1/units/.htaccess (revision 16072) @@ -0,0 +1 @@ +deny from all \ No newline at end of file Property changes on: releases/5.2.1/units/.htaccess ___________________________________________________________________ Added: svn:eol-style + LF Index: releases/5.2.1/admin_templates/export.tpl =================================================================== --- releases/5.2.1/admin_templates/export.tpl (revision 0) +++ releases/5.2.1/admin_templates/export.tpl (revision 16072) @@ -0,0 +1,123 @@ + + + + + + + + + + + + +
+ +
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + + + + + + + + +
+ " onclick="move_options_up('', 1)" class="button"> + " onclick="move_options_down('', 1)" class="button">
+
+

:
+ + " value="" /> + + ', '')" class="button">
+
+ ', ''); select_sort('');" class="button"> +
+ +
+
+ + + + + + + + + + + + + +
+ checked name="" id="_1" value="1" /> + + +
+ error"> *: + " id="" value="" size="2" maxlength="1" />
+ (will look like "Category:Sub-category:Sub-sub-category") + +
+ checked name="" id="_2" value="2" /> + +
+ (the fields will be titled Category1..CategoryN accordingly) +
+
+
+ + \ No newline at end of file Property changes on: releases/5.2.1/admin_templates/export.tpl ___________________________________________________________________ Added: cvs2svn:cvs-rev + 1.1.2.5 Added: svn:eol-style + LF Index: releases/5.2.1/admin_templates/export_finish.tpl =================================================================== --- releases/5.2.1/admin_templates/export_finish.tpl (revision 0) +++ releases/5.2.1/admin_templates/export_finish.tpl (revision 16072) @@ -0,0 +1,43 @@ + + + + + + + + + + +
+ +
+ +
+ + + + + + + + + + + +
+ +   + "> +
+
+ + \ No newline at end of file Property changes on: releases/5.2.1/admin_templates/export_finish.tpl ___________________________________________________________________ Added: cvs2svn:cvs-rev + 1.1.2.6 Added: svn:eol-style + LF Index: releases/5.2.1/admin_templates/user_item_tab.tpl =================================================================== --- releases/5.2.1/admin_templates/user_item_tab.tpl (revision 0) +++ releases/5.2.1/admin_templates/user_item_tab.tpl (revision 16072) @@ -0,0 +1,43 @@ + + + + +
" view_template="in-news/user_item_tab" edit_template="in-news/articles/articles_edit" dep_buttons="new_article" category_id="-1" class="catalog-tab">
+ +
+ + + + + + + + + + + $Catalog.setItemCount('', ''); + $Catalog.setCurrentCategory('', ); + $Catalog.saveSearch('', '', ''); + + + + + + + + + + + + Grids[''].SetDependantToolbarButtons( new Array('edit','delete')); + $Catalog.setViewMenu(''); + #separator# + + + + + +
+
+ + Property changes on: releases/5.2.1/admin_templates/user_item_tab.tpl ___________________________________________________________________ Added: cvs2svn:cvs-rev + 1.1.2.6 Added: svn:eol-style + LF Index: releases/5.2.1/admin_templates/export_progress.tpl =================================================================== --- releases/5.2.1/admin_templates/export_progress.tpl (revision 0) +++ releases/5.2.1/admin_templates/export_progress.tpl (revision 16072) @@ -0,0 +1,14 @@ + + + + + + + + \ No newline at end of file Property changes on: releases/5.2.1/admin_templates/export_progress.tpl ___________________________________________________________________ Added: cvs2svn:cvs-rev + 1.1.2.3 Added: svn:eol-style + LF Index: releases/5.2.1/admin_templates/articles/file_edit.tpl =================================================================== --- releases/5.2.1/admin_templates/articles/file_edit.tpl (revision 0) +++ releases/5.2.1/admin_templates/articles/file_edit.tpl (revision 16072) @@ -0,0 +1,68 @@ + + + + + + + + + + + + +
+ +
+ + + + +
+ + + + + + + +
+
+ + \ No newline at end of file Property changes on: releases/5.2.1/admin_templates/articles/file_edit.tpl ___________________________________________________________________ Added: cvs2svn:cvs-rev + 1.1.2.5 Added: svn:eol-style + LF Index: releases/5.2.1/admin_templates/articles/relations_edit.tpl =================================================================== --- releases/5.2.1/admin_templates/articles/relations_edit.tpl (revision 0) +++ releases/5.2.1/admin_templates/articles/relations_edit.tpl (revision 16072) @@ -0,0 +1,76 @@ + + + + + + + + + + + + +
+ +
+ + + + + + +
+ + + + + + + + + + + + + +
+
+ + \ No newline at end of file Property changes on: releases/5.2.1/admin_templates/articles/relations_edit.tpl ___________________________________________________________________ Added: cvs2svn:cvs-rev + 1.4.2.4 Added: svn:eol-style + LF Index: releases/5.2.1/admin_templates/articles/articles_relations.tpl =================================================================== --- releases/5.2.1/admin_templates/articles/articles_relations.tpl (revision 0) +++ releases/5.2.1/admin_templates/articles/articles_relations.tpl (revision 16072) @@ -0,0 +1,105 @@ + + + + + + + + + + + + + + +
+ +
+ + + +"> +"> + + + \ No newline at end of file Property changes on: releases/5.2.1/admin_templates/articles/articles_relations.tpl ___________________________________________________________________ Added: cvs2svn:cvs-rev + 1.3.2.3 Added: svn:eol-style + LF Index: releases/5.2.1/admin_templates/articles/review_edit.tpl =================================================================== --- releases/5.2.1/admin_templates/articles/review_edit.tpl (revision 0) +++ releases/5.2.1/admin_templates/articles/review_edit.tpl (revision 16072) @@ -0,0 +1,77 @@ + + + + + + + + + + + + +
+ +
+ + + + + + +
+ + + + + + + + + + + + + + +
+
+ + \ No newline at end of file Property changes on: releases/5.2.1/admin_templates/articles/review_edit.tpl ___________________________________________________________________ Added: cvs2svn:cvs-rev + 1.3.2.3 Added: svn:eol-style + LF Index: releases/5.2.1/admin_templates/articles/articles_files.tpl =================================================================== --- releases/5.2.1/admin_templates/articles/articles_files.tpl (revision 0) +++ releases/5.2.1/admin_templates/articles/articles_files.tpl (revision 16072) @@ -0,0 +1,86 @@ + + + + + + + + + + + + + + +
+ +
+ + + + + \ No newline at end of file Property changes on: releases/5.2.1/admin_templates/articles/articles_files.tpl ___________________________________________________________________ Added: cvs2svn:cvs-rev + 1.1.2.6 Added: svn:eol-style + LF Index: releases/5.2.1/admin_templates/articles/articles_reviews.tpl =================================================================== --- releases/5.2.1/admin_templates/articles/articles_reviews.tpl (revision 0) +++ releases/5.2.1/admin_templates/articles/articles_reviews.tpl (revision 16072) @@ -0,0 +1,114 @@ + + + + + + + + + + + + + + +
+ +
+ + + + + + + + + \ No newline at end of file Property changes on: releases/5.2.1/admin_templates/articles/articles_reviews.tpl ___________________________________________________________________ Added: cvs2svn:cvs-rev + 1.3.2.3 Added: svn:eol-style + LF Index: releases/5.2.1/admin_templates/articles/images_edit.tpl =================================================================== --- releases/5.2.1/admin_templates/articles/images_edit.tpl (revision 0) +++ releases/5.2.1/admin_templates/articles/images_edit.tpl (revision 16072) @@ -0,0 +1,87 @@ + + + + + + + + + + + + + + +
+ +
+ + + + +
+ + + + + + + + + + + + + + + + + + + +
+
+ + + + \ No newline at end of file Property changes on: releases/5.2.1/admin_templates/articles/images_edit.tpl ___________________________________________________________________ Added: cvs2svn:cvs-rev + 1.5.2.4 Added: svn:eol-style + LF Index: releases/5.2.1/admin_templates/articles/articles_categories.tpl =================================================================== --- releases/5.2.1/admin_templates/articles/articles_categories.tpl (revision 0) +++ releases/5.2.1/admin_templates/articles/articles_categories.tpl (revision 16072) @@ -0,0 +1,84 @@ + + + + + + + + + + + + + + +
+ +
+ + + + + + + + + \ No newline at end of file Property changes on: releases/5.2.1/admin_templates/articles/articles_categories.tpl ___________________________________________________________________ Added: cvs2svn:cvs-rev + 1.3.2.4 Added: svn:eol-style + LF Index: releases/5.2.1/admin_templates/articles/articles_edit.tpl =================================================================== --- releases/5.2.1/admin_templates/articles/articles_edit.tpl (revision 0) +++ releases/5.2.1/admin_templates/articles/articles_edit.tpl (revision 16072) @@ -0,0 +1,132 @@ + + + + + + + + + + + + +
+ +
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + " /> + + + + + + + +
+
+ +
+ +
+
+ + + + \ No newline at end of file Property changes on: releases/5.2.1/admin_templates/articles/articles_edit.tpl ___________________________________________________________________ Added: cvs2svn:cvs-rev + 1.6.2.10 Added: svn:eol-style + LF Index: releases/5.2.1/admin_templates/articles/articles_images.tpl =================================================================== --- releases/5.2.1/admin_templates/articles/articles_images.tpl (revision 0) +++ releases/5.2.1/admin_templates/articles/articles_images.tpl (revision 16072) @@ -0,0 +1,107 @@ + + + + + + + + + + + + + + + + +
+ +
+ + + + + \ No newline at end of file Property changes on: releases/5.2.1/admin_templates/articles/articles_images.tpl ___________________________________________________________________ Added: cvs2svn:cvs-rev + 1.5.2.4 Added: svn:eol-style + LF Index: releases/5.2.1/admin_templates/articles/articles_custom.tpl =================================================================== --- releases/5.2.1/admin_templates/articles/articles_custom.tpl (revision 0) +++ releases/5.2.1/admin_templates/articles/articles_custom.tpl (revision 16072) @@ -0,0 +1,72 @@ + + + + + + + + + + + + + + +
+ +
+ + + + + + +
+ + + + +
+
+ + + + \ No newline at end of file Property changes on: releases/5.2.1/admin_templates/articles/articles_custom.tpl ___________________________________________________________________ Added: cvs2svn:cvs-rev + 1.5.2.4 Added: svn:eol-style + LF Index: releases/5.2.1/admin_templates/category_properties.tpl =================================================================== --- releases/5.2.1/admin_templates/category_properties.tpl (revision 0) +++ releases/5.2.1/admin_templates/category_properties.tpl (revision 16072) @@ -0,0 +1,28 @@ + + + + + + " id="" value="" tabindex="" size="" maxlength="" class="" onblur=""> + + + + + + + + + + + + + + + + Property changes on: releases/5.2.1/admin_templates/category_properties.tpl ___________________________________________________________________ Added: cvs2svn:cvs-rev + 1.3.2.3 Added: svn:eol-style + LF Index: releases/5.2.1/admin_templates/import.tpl =================================================================== --- releases/5.2.1/admin_templates/import.tpl (revision 0) +++ releases/5.2.1/admin_templates/import.tpl (revision 16072) @@ -0,0 +1,223 @@ + + + + + + + + + + + + + +
+ +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + + + + + + + + + + +
+ " id="_1" checked value="1" /> + + + + " id="" onclick="check_radio('_1');"> +
+ " id="_2" checked value="2" /> + + + + +
+
+ + + + + + + + + + + +
+ " id="btn_move_up" onclick="move_options_up('', 1)" class="button"> + " id="btn_move_down" onclick="move_options_down('', 1)" class="button">
+
+

:
+ + " value="" /> + + ', '')" class="button">
+
+ ', ''); select_sort('');" class="button"> +
+ +
+
+ + + + + + + + + + + + + + +
+ checked name="" id="_1" value="1" /> + + +
+ checked name="" id="_2" value="2" /> + + + + + +
+
+ + + + \ No newline at end of file Property changes on: releases/5.2.1/admin_templates/import.tpl ___________________________________________________________________ Added: cvs2svn:cvs-rev + 1.1.2.7 Added: svn:eol-style + LF Index: releases/5.2.1/admin_templates/img/toolbar/toolbar-sprite.png =================================================================== Cannot display: file marked as a binary type. svn:mime-type = application/octet-stream Property changes on: releases/5.2.1/admin_templates/img/toolbar/toolbar-sprite.png ___________________________________________________________________ Added: svn:mime-type + application/octet-stream Index: releases/5.2.1/admin_templates/img/toolbar/toolbar-sprite.css =================================================================== --- releases/5.2.1/admin_templates/img/toolbar/toolbar-sprite.css (revision 0) +++ releases/5.2.1/admin_templates/img/toolbar/toolbar-sprite.css (revision 16072) @@ -0,0 +1,9 @@ +.in-news-toolbar-sprite { + background: url("@templates_base@/../../modules/in-news/admin_templates/img/toolbar/toolbar-sprite.png") repeat-x scroll 0 0 transparent; + border: 0 none; + cursor: pointer; + padding: 0; +} +#in-news-tb-new_article { background-position: -0px -0px; } +#in-news-tb-new_article.hover { background-position: -32px -0px; } +#in-news-tb-new_article.disabled { background-position: -64px -0px; } Property changes on: releases/5.2.1/admin_templates/img/toolbar/toolbar-sprite.css ___________________________________________________________________ Added: svn:eol-style + LF Index: releases/5.2.1/admin_templates/img/itemicons/icon16_article.png =================================================================== Cannot display: file marked as a binary type. svn:mime-type = application/octet-stream Property changes on: releases/5.2.1/admin_templates/img/itemicons/icon16_article.png ___________________________________________________________________ Added: svn:mime-type + application/octet-stream Index: releases/5.2.1/admin_templates/img/itemicons/icon16_articles.png =================================================================== Cannot display: file marked as a binary type. svn:mime-type = application/octet-stream Property changes on: releases/5.2.1/admin_templates/img/itemicons/icon16_articles.png ___________________________________________________________________ Added: svn:mime-type + application/octet-stream Index: releases/5.2.1/admin_templates/img/itemicons/icon16_article_pending.png =================================================================== Cannot display: file marked as a binary type. svn:mime-type = application/octet-stream Property changes on: releases/5.2.1/admin_templates/img/itemicons/icon16_article_pending.png ___________________________________________________________________ Added: svn:mime-type + application/octet-stream Index: releases/5.2.1/admin_templates/img/itemicons/icon16_article_disabled.png =================================================================== Cannot display: file marked as a binary type. svn:mime-type = application/octet-stream Property changes on: releases/5.2.1/admin_templates/img/itemicons/icon16_article_disabled.png ___________________________________________________________________ Added: svn:mime-type + application/octet-stream Index: releases/5.2.1/admin_templates/img/itemicons/icon16_article_new.png =================================================================== Cannot display: file marked as a binary type. svn:mime-type = application/octet-stream Property changes on: releases/5.2.1/admin_templates/img/itemicons/icon16_article_new.png ___________________________________________________________________ Added: svn:mime-type + application/octet-stream Index: releases/5.2.1/admin_templates/img/icons/icon24_conf_news.png =================================================================== Cannot display: file marked as a binary type. svn:mime-type = application/octet-stream Property changes on: releases/5.2.1/admin_templates/img/icons/icon24_conf_news.png ___________________________________________________________________ Added: svn:mime-type + application/octet-stream Index: releases/5.2.1/admin_templates/img/icons/icon24_articles.png =================================================================== Cannot display: file marked as a binary type. svn:mime-type = application/octet-stream Property changes on: releases/5.2.1/admin_templates/img/icons/icon24_articles.png ___________________________________________________________________ Added: svn:mime-type + application/octet-stream Index: releases/5.2.1/admin_templates/import_progress.tpl =================================================================== --- releases/5.2.1/admin_templates/import_progress.tpl (revision 0) +++ releases/5.2.1/admin_templates/import_progress.tpl (revision 16072) @@ -0,0 +1,14 @@ + + + + + + + + \ No newline at end of file Property changes on: releases/5.2.1/admin_templates/import_progress.tpl ___________________________________________________________________ Added: cvs2svn:cvs-rev + 1.1.2.4 Added: svn:eol-style + LF Index: releases/5.2.1/admin_templates/catalog_tab.tpl =================================================================== --- releases/5.2.1/admin_templates/catalog_tab.tpl (revision 0) +++ releases/5.2.1/admin_templates/catalog_tab.tpl (revision 16072) @@ -0,0 +1,64 @@ + + + + + a_toolbar.AddButton( + new ToolBarButton( + 'in-news:new_article', + '', + add_item, + true + ) + ); + + + +
" view_template="in-news/catalog_tab" edit_template="in-news/articles/articles_edit" category_id="-1" dep_buttons="new_article" class="catalog-tab">
+ +
+ + + $Catalog.setItemCount('', ''); + + + + + + + + + $Catalog.setItemCount('', ''); + $Catalog.setCurrentCategory('', ); + $Catalog.saveSearch('', '', ''); + + + + + + + + + + + + + + Grids[''].AddAlternativeGrid('', true); + + Grids[''].SetDependantToolbarButtons( new Array('edit','delete','approve','decline','sep3','cut','copy','move_up','move_down','sep6')); + + + $Catalog.setViewMenu(''); + + Grids[''].DblClick = function() {return false}; + + #separator# + + + + + +
+
+ + Property changes on: releases/5.2.1/admin_templates/catalog_tab.tpl ___________________________________________________________________ Added: cvs2svn:cvs-rev + 1.12.2.4 Added: svn:eol-style + LF Index: releases/5.2.1/install/install_order.txt =================================================================== --- releases/5.2.1/install/install_order.txt (revision 0) +++ releases/5.2.1/install/install_order.txt (revision 16072) @@ -0,0 +1 @@ +103 \ No newline at end of file Property changes on: releases/5.2.1/install/install_order.txt ___________________________________________________________________ Added: cvs2svn:cvs-rev + 1.1.2.1 Added: svn:eol-style + LF Index: releases/5.2.1/install/module_info.xml =================================================================== --- releases/5.2.1/install/module_info.xml (revision 0) +++ releases/5.2.1/install/module_info.xml (revision 16072) @@ -0,0 +1,6 @@ + + + In-News + News Management + modules/in-news/install/img/icon_news_management.gif + \ No newline at end of file Property changes on: releases/5.2.1/install/module_info.xml ___________________________________________________________________ Added: svn:eol-style + LF Index: releases/5.2.1/install/upgrades.php =================================================================== --- releases/5.2.1/install/upgrades.php (revision 0) +++ releases/5.2.1/install/upgrades.php (revision 16072) @@ -0,0 +1,120 @@ +dependencies = Array ( + '4.3.9' => Array ('Core' => '4.3.9'), + '5.0.0' => Array ('Core' => '5.0.0'), + '5.0.1' => Array ('Core' => '5.0.1'), + '5.0.2-B1' => Array ('Core' => '5.0.2-B1'), + '5.0.2-B2' => Array ('Core' => '5.0.2-B2'), + '5.0.2-RC1' => Array ('Core' => '5.0.2-RC1'), + '5.0.2' => Array ('Core' => '5.0.2'), + '5.0.3-B1' => Array ('Core' => '5.0.3-B1'), + '5.0.3-B2' => Array ('Core' => '5.0.3-B2'), + '5.0.3-RC1' => Array ('Core' => '5.0.3-RC1'), + '5.0.3' => Array ('Core' => '5.0.3'), + '5.0.4-B1' => Array ('Core' => '5.0.4-B1'), + '5.0.4-B2' => Array ('Core' => '5.0.4-B2'), + '5.0.4' => Array ('Core' => '5.0.4'), + '5.1.0-B1' => Array ('Core' => '5.1.0-B1'), + '5.1.0-RC1' => Array ('Core' => '5.1.0-RC1'), + '5.1.0' => Array ('Core' => '5.1.0'), + '5.1.1-B1' => Array ('Core' => '5.1.1-B1'), + '5.1.1-RC1' => Array ('Core' => '5.1.1-RC1'), + '5.1.1' => Array ('Core' => '5.1.1'), + '5.1.2-B1' => Array ('Core' => '5.1.2-B1'), + '5.1.2-RC1' => Array ('Core' => '5.1.2-RC1'), + '5.1.2' => Array ('Core' => '5.1.2'), + '5.1.3-B1' => Array ('Core' => '5.1.3-B2'), + '5.1.3-RC1' => Array ('Core' => '5.1.3-RC1'), + '5.1.3-RC2' => Array ('Core' => '5.1.3-RC2'), + '5.1.3' => Array ('Core' => '5.1.3'), + '5.2.0-B1' => Array ('Core' => '5.2.0-B1'), + '5.2.0-B2' => Array ('Core' => '5.2.0-B2'), + '5.2.0-B3' => Array ('Core' => '5.2.0-B3'), + '5.2.0-RC1' => Array ('Core' => '5.2.0-RC1'), + '5.2.0' => Array ('Core' => '5.2.0'), + '5.2.1-B1' => Array ('Core' => '5.2.1-B1'), + '5.2.1-B2' => Array ('Core' => '5.2.1-B2'), + '5.2.1-RC1' => Array ('Core' => '5.2.1-RC1'), + '5.2.1' => Array ('Core' => '5.2.1'), + ); + } + + /** + * Changes table structure, where multilingual fields of TEXT type are present + * + * @param string $mode when called mode {before, after) + */ + function Upgrade_5_0_0($mode) + { + if ($mode == 'after') { + $root_category = $this->Application->findModule('Name', 'In-News', 'RootCat'); + + $sql = 'UPDATE ' . $this->Application->getUnitOption('c', 'TableName') . ' + SET UseMenuIconUrl = 1, MenuIconUrl = "in-news/img/menu_articles.gif" + WHERE ' . $this->Application->getUnitOption('c', 'IDField') . ' = ' . $root_category; + $this->Conn->Query($sql); + + $this->_updateDetailTemplate('n', 'innews/detail', 'in-news/designs/detail'); + } + } + + /** + * Update to 5.0.1 + * + * @param string $mode when called mode {before, after) + */ + function Upgrade_5_0_1($mode) + { + if ($mode == 'after') { + $this->_updateDetailTemplate('n', 'in-news/designs/detail', 'in-news/articles/article_detail'); + + // delete old events + $events_to_delete = Array ( 'NEWS.OWNER.MODIFY.PENDING', 'NEWS.OWNER.MODIFY' ); + + $sql = 'SELECT EventId FROM ' . TABLE_PREFIX . 'Events + WHERE Event IN ("' . implode('","', $events_to_delete) . '")'; + $event_ids = $this->Conn->GetCol($sql); + + if ($event_ids) { + $sql = 'DELETE FROM ' . TABLE_PREFIX . 'EmailMessage + WHERE EventId IN (' . implode(',', $event_ids) . ')'; + $this->Conn->Query($sql); + + $sql = 'DELETE FROM ' . TABLE_PREFIX . 'Events + WHERE EventId IN (' . implode(',', $event_ids) . ')'; + $this->Conn->Query($sql); + + $sql = 'DELETE FROM ' . TABLE_PREFIX . 'Phrase + WHERE Phrase IN ("la_event_news.owner.modify", "la_event_news.owner.modify.pending")'; + $this->Conn->Query($sql); + } + } + } + } Property changes on: releases/5.2.1/install/upgrades.php ___________________________________________________________________ Added: cvs2svn:cvs-rev + 1.1.2.3 Added: svn:keywords + Id Added: svn:eol-style + LF Index: releases/5.2.1/install/install_schema.sql =================================================================== --- releases/5.2.1/install/install_schema.sql (revision 0) +++ releases/5.2.1/install/install_schema.sql (revision 16072) @@ -0,0 +1,86 @@ +CREATE TABLE News ( + NewsId int(11) NOT NULL AUTO_INCREMENT, + Title varchar(255) NOT NULL DEFAULT '', + l1_Title varchar(255) NOT NULL DEFAULT '', + l2_Title varchar(255) NOT NULL DEFAULT '', + l3_Title varchar(255) NOT NULL DEFAULT '', + l4_Title varchar(255) NOT NULL DEFAULT '', + l5_Title varchar(255) NOT NULL DEFAULT '', + AutomaticFilename tinyint(3) unsigned NOT NULL DEFAULT '1', + Excerpt text, + l1_Excerpt text, + l2_Excerpt text, + l3_Excerpt text, + l4_Excerpt text, + l5_Excerpt text, + Author varchar(255) NOT NULL DEFAULT '', + Body text, + l1_Body text, + l2_Body text, + l3_Body text, + l4_Body text, + l5_Body text, + MetaKeywords varchar(255) DEFAULT NULL, + MetaDescription text, + CreatedOn int(11) DEFAULT NULL, + TextFormat int(11) NOT NULL DEFAULT '0', + EndOn int(11) DEFAULT NULL, + Hits double(20,6) NOT NULL DEFAULT '0.000000', + CachedRating varchar(10) DEFAULT '0', + CachedVotesQty int(11) NOT NULL DEFAULT '0', + CreatedById int(11) DEFAULT NULL, + Priority int(11) NOT NULL DEFAULT '0', + `Status` tinyint(4) NOT NULL DEFAULT '2', + EditorsPick tinyint(4) NOT NULL DEFAULT '0', + LeadStory tinyint(4) NOT NULL DEFAULT '0', + LeadCatStory tinyint(4) NOT NULL DEFAULT '0', + ResourceId int(11) DEFAULT NULL, + CachedReviewsQty int(11) NOT NULL DEFAULT '0', + StartDate int(11) DEFAULT NULL, + NewItem tinyint(4) NOT NULL DEFAULT '2', + PopItem tinyint(4) NOT NULL DEFAULT '2', + HotItem tinyint(4) NOT NULL DEFAULT '2', + Archived int(11) NOT NULL DEFAULT '0', + Modified int(11) DEFAULT NULL, + ModifiedById int(11) DEFAULT NULL, + OrgId int(11) DEFAULT NULL, + PRIMARY KEY (NewsId), + UNIQUE KEY ResourceId (ResourceId), + KEY Title (Title), + KEY l1_Title (l1_Title), + KEY l2_Title (l2_Title), + KEY l3_Title (l3_Title), + KEY l4_Title (l4_Title), + KEY l5_Title (l5_Title), + KEY Excerpt (Excerpt(5)), + KEY l1_Excerpt (l1_Excerpt(5)), + KEY l2_Excerpt (l2_Excerpt(5)), + KEY l3_Excerpt (l3_Excerpt(5)), + KEY l4_Excerpt (l4_Excerpt(5)), + KEY l5_Excerpt (l5_Excerpt(5)), + KEY Body (Body(5)), + KEY l1_Body (l1_Body(5)), + KEY l2_Body (l2_Body(5)), + KEY l3_Body (l3_Body(5)), + KEY l4_Body (l4_Body(5)), + KEY l5_Body (l5_Body(5)), + KEY CreatedOn (CreatedOn), + KEY EndOn (EndOn), + KEY Priority (Priority), + KEY `Status` (`Status`), + KEY EditorsPick (EditorsPick), + KEY Hits (Hits), + KEY Modified (Modified), + KEY NewItem (NewItem), + KEY PopItem (PopItem), + KEY HotItem (HotItem), + KEY StartDate (StartDate), + KEY Archived (Archived) +); + +CREATE TABLE NewsCustomData ( + CustomDataId int(11) NOT NULL auto_increment, + ResourceId int(10) unsigned NOT NULL default '0', + KEY ResourceId (ResourceId), + PRIMARY KEY (CustomDataId) +); \ No newline at end of file Property changes on: releases/5.2.1/install/install_schema.sql ___________________________________________________________________ Added: cvs2svn:cvs-rev + 1.1.2.2 Added: svn:eol-style + LF Index: releases/5.2.1/install/upgrades.sql =================================================================== --- releases/5.2.1/install/upgrades.sql (revision 0) +++ releases/5.2.1/install/upgrades.sql (revision 16072) @@ -0,0 +1,151 @@ +# ===== v 4.3.9 ===== + +INSERT INTO ImportScripts VALUES (DEFAULT, 'Articles from CSV file [In-News]', '', 'n', 'In-News', '', 'CSV', '1'); + +# ===== v 5.0.0 ===== +ALTER TABLE News ADD INDEX (StartDate), ADD INDEX (Archived); + +UPDATE Category SET Template = '/in-news/designs/section' WHERE Template = 'innews/index'; +UPDATE Category SET CachedTemplate = '/in-news/designs/section' WHERE CachedTemplate = 'innews/index'; + +UPDATE ConfigurationValues SET VariableValue = '/in-news/designs/section' WHERE VariableName = 'n_CategoryTemplate'; +UPDATE ConfigurationValues SET VariableValue = 'in-news/designs/detail' WHERE VariableName = 'n_ItemTemplate'; + +INSERT INTO Permissions VALUES (DEFAULT, 'in-news:articles.view', 11, 1, 1, 0); +INSERT INTO Permissions VALUES (DEFAULT, 'in-news:setting_folder.view', 11, 1, 1, 0); +DELETE FROM Permissions WHERE Permission LIKE 'in-news:innews_general.%'; + +UPDATE Phrase SET Module = 'In-News' WHERE ((Phrase LIKE '%Article%' OR Phrase LIKE '%News%') AND (Module = 'Core') AND Phrase NOT IN ('la_ToolTip_NewSearchConfig', 'la_tooltip_newstylesheet')); + +UPDATE Phrase SET Module = 'In-News' WHERE Phrase = 'la_title_In-News'; + +# ===== v 5.0.1 ===== +UPDATE ConfigurationValues SET VariableValue = 'in-news/articles/article_detail' WHERE VariableName = 'n_ItemTemplate'; + +UPDATE ConfigurationAdmin +SET ValueList = 'ReviewText=la_opt_CommentText,CreatedOn=la_opt_CreatedOn' +WHERE VariableName IN ('News_SortReviews', 'News_SortReviews2'); + +UPDATE ConfigurationAdmin SET ValueList = 'ASC=la_common_Ascending,DESC=la_common_Descending' +WHERE VariableName IN ('News_SortReviewsOrder', 'News_SortReviewsOrder2'); + +UPDATE ConfigurationAdmin +SET ValueList = '1=la_opt_Sec,60=la_opt_Min,3600=la_opt_Hour,86400=la_opt_Day,604800=la_opt_Week,2419200=la_opt_Month,29030400=la_opt_Year' +WHERE VariableName IN ('News_ReviewDelay_Interval', 'News_RatingDelay_Interval'); + +UPDATE CustomField SET FieldLabel = 'la_fld_RssSource', Prompt = 'la_fld_RssSource' WHERE FieldName = 'RssSource'; +UPDATE CustomField SET FieldLabel = 'la_fld_RssDefaultExpiration', Prompt = 'la_fld_RssDefaultExpiration' WHERE FieldName = 'RssDefaultExpiration'; +UPDATE CustomField SET FieldLabel = 'la_fld_RssUpdateInterval', Prompt = 'la_fld_RssUpdateInterval' WHERE FieldName = 'RssUpdateInterval'; +UPDATE CustomField SET FieldLabel = 'la_fld_RssExpireInterval', Prompt = 'la_fld_RssExpireInterval' WHERE FieldName = 'RssExpireInterval'; +UPDATE CustomField SET FieldLabel = 'la_fld_RssDeleteExpired', Prompt = 'la_fld_RssDeleteExpired' WHERE FieldName = 'RssDeleteExpired'; + +UPDATE CustomField SET FieldLabel = 'la_fld_RssLastExpired', Prompt = 'la_fld_RssLastExpired' WHERE FieldName = 'RssLastExpired'; +UPDATE CustomField SET FieldLabel = 'la_fld_RssDefaultExpirationType', Prompt = 'la_fld_RssDefaultExpirationType' WHERE FieldName = 'RssDefaultExpirationType'; +UPDATE CustomField SET FieldLabel = 'la_fld_RssExpireIntervalType', Prompt = 'la_fld_RssExpireIntervalType' WHERE FieldName = 'RssExpireIntervalType'; +UPDATE CustomField SET FieldLabel = 'la_fld_RssUpdateIntervalType', Prompt = 'la_fld_RssUpdateIntervalType' WHERE FieldName = 'RssUpdateIntervalType'; +UPDATE CustomField SET FieldLabel = 'la_fld_RssLastUpdated', Prompt = 'la_fld_RssLastUpdated' WHERE FieldName = 'RssLastUpdated'; +UPDATE CustomField SET FieldLabel = 'la_fld_RssArticleCRC', Prompt = 'la_fld_RssArticleCRC' WHERE FieldName = 'RssArticleCRC'; +UPDATE CustomField SET FieldLabel = 'la_fld_cust_n_ItemTemplate', Prompt = 'la_fld_cust_n_ItemTemplate' WHERE FieldName = 'n_ItemTemplate'; + +INSERT INTO Events VALUES(DEFAULT, 'NEWS.REVIEW.ADD.PENDING', NULL, 1, 0, NULL, 'In-News', 'la_event_article.review.add.pending', 1); + +UPDATE ConfigurationAdmin SET ValueList = 'style="width: 50px;"' WHERE VariableName IN ('News_ReviewDelay_Value', 'News_RatingDelay_Value'); + +# ===== v 5.0.2-B1 ===== +ALTER TABLE News + CHANGE CreatedOn CreatedOn INT(11) NULL DEFAULT NULL, + CHANGE StartDate StartDate INT(11) NULL DEFAULT NULL, + CHANGE Modified Modified INT(11) NULL DEFAULT NULL; + +# ===== v 5.0.2-B2 ===== + +# ===== v 5.0.2-RC1 ===== + +# ===== v 5.0.2 ===== + +# ===== v 5.0.3-B1 ===== + +# ===== v 5.0.3-B2 ===== + +# ===== v 5.0.3-RC1 ===== + +# ===== v 5.0.3 ===== + +# ===== v 5.0.4-B1 ===== + +# ===== v 5.0.4-B2 ===== + +# ===== v 5.0.4 ===== + +# ===== v 5.1.0-B1 ===== +UPDATE Modules SET Path = 'modules/in-news/' WHERE `Name` = 'In-News'; +DELETE FROM ConfigurationValues WHERE VariableName IN ( + 'Article_Root', 'News_PopCount', 'News_ArticleSort', 'News_CatSort', 'News_ShowMulti', + 'News_Admin_Notice_New', 'News_Admin_Notice_Modify', 'News_Admin_Notice_Suggest', + 'News_User_Notice_New', 'News_User_Notice_Approve', 'News_User_Notice_Deny', + 'News_User_Notice_Modify', 'News_User_Notice_Modify_Approve', 'News_User_Notice_Modify_Deny' +); + +DELETE FROM Permissions WHERE Permission LIKE 'in-news:configuration_email%'; + +# ===== v 5.1.0-RC1 ===== + +# ===== v 5.1.0 ===== + +# ===== v 5.1.1-B1 ===== +ALTER TABLE News + CHANGE CreatedById CreatedById INT(11) NULL DEFAULT NULL , + CHANGE ModifiedById ModifiedById INT(11) NULL DEFAULT NULL; + +# ===== v 5.1.1-RC1 ===== + +# ===== v 5.1.1 ===== + +# ===== v 5.1.2-B1 ===== + +# ===== v 5.1.2-RC1 ===== + +# ===== v 5.1.2 ===== + +# ===== v 5.1.3-B1 ===== + +# ===== v 5.1.3-RC1 ===== +UPDATE ConfigurationValues +SET VariableValue = 'in-news/articles/article_detail' +WHERE VariableName = 'n_ItemTemplate' AND VariableValue = 'in-news/designs/detail'; + +# ===== v 5.1.3-RC2 ===== + +# ===== v 5.1.3 ===== +UPDATE Phrase +SET `Module` = 'Core' +WHERE PhraseKey = 'LA_FLD_STARTDATE'; + +# ===== v 5.2.0-B1 ===== +DELETE FROM SystemSettings +WHERE VariableName IN ('News_Highlight_OpenTag', 'News_Highlight_CloseTag'); + +# ===== v 5.2.0-B2 ===== +UPDATE News main_table +SET main_table.CachedReviewsQty = (SELECT COUNT(*) FROM <%TABLE_PREFIX%>CatalogReviews review_table WHERE review_table.ItemId = main_table.ResourceId); + +# ===== v 5.2.0-B3 ===== + +# ===== v 5.2.0-RC1 ===== + +# ===== v 5.2.0 ===== +INSERT INTO Permissions VALUES(DEFAULT, 'in-news:configuration_output.add', 11, 1, 1, 0); + +# ===== v 5.2.1-B1 ===== +UPDATE SystemSettings +SET DisplayOrder = 20.04 +WHERE VariableName = 'Perpage_NewsReviews'; + +# ===== v 5.2.1-B2 ===== +UPDATE Modules +SET ClassNamespace = 'Intechnic\\InPortal\\Modules\\InNews' +WHERE `Name` = 'In-News'; + +# ===== v 5.2.1-RC1 ===== + +# ===== v 5.2.1 ===== Property changes on: releases/5.2.1/install/upgrades.sql ___________________________________________________________________ Added: cvs2svn:cvs-rev + 1.1.2.8 Added: svn:eol-style + LF Index: releases/5.2.1/install/english.lang =================================================================== --- releases/5.2.1/install/english.lang (revision 0) +++ releases/5.2.1/install/english.lang (revision 16072) @@ -0,0 +1,168 @@ + + + + + JGJvZHkNCjxici8+PGJyLz4NCg0KU2luY2VyZWx5LDxici8+PGJyLz4NCg0KV2Vic2l0ZSBhZG1pbmlzdHJhdGlvbi4NCg0KPCEtLSMjIDxpbnAyOmVtYWlsLWxvZ19JdGVtTGluayB0ZW1wbGF0ZT0icGxhdGZvcm0vbXlfYWNjb3VudC9lbWFpbCIvPiAjIy0tPg== + + + QXV0aG9y + RGF0ZQ== + QXJ0aWNsZSBFeGNlcnB0 + SGl0cw== + UmF0aW5n + QXJ0aWNsZSBUaXRsZQ== + QXV0aG9y + QXJ0aWNsZSBCb2R5 + TmV3cyBJdGVtIFRlbXBsYXRl + QXJjaGl2YXRpb24gRGF0ZQ== + QXJ0aWNsZSBFeGNlcnB0 + U2VjdGlvbiBMZWFkIFN0b3J5 + U2l0ZSBMZWFkIFN0b3J5 + TWF4aW11bSBudW1iZXIgb2YgSE9UIGFydGljbGVz + TWluaW11bSByYXRpbmcgdG8gY29uc2lkZXIgYXJ0aWNsZSBQT1A= + TWluaW11bSBudW1iZXIgb2Ygdm90ZXMgdG8gY29uc2lkZXIgYXJ0aWNsZSBQT1A= + UlNTIEFydGljbGUgQ1JDMzI= + RGVmYXVsdCBFeHBpcmF0aW9u + RGVmYXVsdCBFeHBpcmF0aW9uIFR5cGU= + RGVsZXRlIEV4cGlyZWQ= + RXhwaXJhdGlvbiBDaGVjayBJbnRlcnZhbA== + RXhwaXJhdGlvbiBJbnRlcnZhbCBUeXBl + TGFzdCBFeHBpcmVkIE9u + TGFzdCBVcGRhdGVk + RmVlZCBPcmlnaW5hbCBVUkw= + U291cmNlIFVSTA== + VXBkYXRlIEludGVydmFs + VXBkYXRlIEludGVydmFsIFR5cGU= + SW4tTmV3cw== + QXJ0aWNsZXM= + TnVtYmVyIG9mIGRheXMgdG8gYXJjaGl2ZSBhcnRpY2xlcyBhdXRvbWF0aWNhbGx5 + RGlzcGxheSBlZGl0b3IgUElDS3MgYWJvdmUgcmVndWxhciBhcnRpY2xlcw== + TnVtYmVyIG9mIGRheXMgZm9yIGEgYXJ0aWNsZSB0byBiZSBORVc= + TnVtYmVyIG9mIGFydGljbGVzIHBlciBwYWdl + QXJ0aWNsZXMgUGVyIFBhZ2UgKFNob3J0bGlzdCk= + QW5kIHRoZW4gYnk= + T3JkZXIgYXJ0aWNsZXMgYnk= + QW5kIHRoZW4gYnk= + U29ydCBDb21tZW50cyBieQ== + QWRkIFBlbmRpbmcgTmV3cw== + QWRkIE5ld3M= + RGVsZXRlIE5ld3M= + TW9kaWZ5IEFydGljbGUgUGVuZGluZw== + TW9kaWZ5IE5ld3M= + QXJ0aWNsZSBEZWxldGUgYnkgT3duZXI= + QXJ0aWNsZSBNb2RpZnkgUGVuZGluZyBieSBPd25lcg== + QXJ0aWNsZSBNb2RpZnkgYnkgT3duZXI= + UmF0ZSBOZXdz + UmV2aWV3IE5ld3MgUGVuZGluZw== + Q29tbWVudCBBcnRpY2xl + VmlldyBOZXdz + QWN0aXZlIEFydGljbGVz + QXZlcmFnZSBSYXRpbmcgb2YgQXJ0aWNsZXM= + VG90YWwgQXJ0aWNsZSBDb21tZW50cw== + QWN0aXZlIEFydGljbGVz + QXJjaGl2ZWQgQXJ0aWNsZXM= + UGVuZGluZyBBcnRpY2xlcw== + VG90YWwgQXJ0aWNsZXM= + U2VjdGlvbiBMZWFkIFN0b3J5IEFydGljbGVz + RGlzYWJsZWQgQXJ0aWNsZXM= + RWRpdG9yJ3MgUGljayBBcnRpY2xlcw== + SG90IEFydGljbGVz + TGFzdCBVcGRhdGVkIEFydGljbGU= + TGVhZCBTdG9yeSBBcnRpY2xlcw== + TWF4aW11bSBIaXRzIG9mIGFuIEFydGljbGU= + TWF4aW11bSBWb3RlcyBvZiBhbiBBcnRpY2xl + TmV3IEFydGljbGVz + TmV3ZXN0IEFydGljbGUgRGF0ZQ== + UG9wdWxhciBBcnRpY2xlcw== + QXJ0aWNsZQ== + UlNTIEZlZWQgQXJ0aWNsZSBFeHBpcmF0aW9u + UlNTIEZlZWQgUHJvcGVydGllcw== + QXJ0aWNsZXM= + QXJ0aWNsZQ== + QXJ0aWNsZXM= + QWRkaW5nIEFydGljbGU= + QXJ0aWNsZXM= + QXJ0aWNsZXMgRXhwb3J0 + RWRpdGluZyBBcnRpY2xl + SW1wb3J0IEFydGljbGVz + TmV3cw== + TmV3IEFydGljbGU= + TmV3IEFydGljbGU= + + + + WW91ciBOZXcgQXJ0aWNsZSAiPGlucDI6bl9GaWVsZCBuYW1lPSJUaXRsZSIvPiIgLSBBZGRlZA== + VGhhbmsgeW91IGZvciBzdWJtaXR0aW5nIHlvdXIgQXJ0aWNsZSB0byBvdXIgd2Vic2l0ZSE8YnIvPjxici8+DQ1BcnRpY2xlIGRldGFpbHMgYXJlIGxpc3RlZCBiZWxvdzo8YnIvPjxici8+DQ1BcnRpY2xlIFRpdGxlOiA8aW5wMjpuX0ZpZWxkIG5hbWU9IlRpdGxlIi8+PGJyLz4NPGlucDI6bV9pZiBjaGVjaz0ibl9GaWVsZCIgbmFtZT0iQm9keSI+DUJvZHk6IDxpbnAyOm5fRmllbGQgbmFtZT0iQm9keSIvPjxici8+DTwvaW5wMjptX2lmPg08YnIvPjxici8+DQ1Zb3UgY2FuIHZpZXcgeW91ciBhcnRpY2xlIGhlcmUgPGEgaHJlZj0iPGlucDI6bl9BcnRpY2xlTGluayB0ZW1wbGF0ZT0iX19kZWZhdWx0X18iLz4iPjxpbnAyOm5fRmllbGQgbmFtZT0iVGl0bGUiLz48L2E+ + + + TmV3IEFydGljbGUgIjxpbnAyOm5fRmllbGQgbmFtZT0iVGl0bGUiLz4iIGhhcyBiZWVuIEFkZGVk + TmV3IEFydGljbGUgaGFzIGJlZW4gc3VibWl0dGVkIHRvIG91ciB3ZWJzaXRlITxici8+PGJyLz4NDUFydGljbGUgZGV0YWlscyBhcmUgbGlzdGVkIGJlbG93Ojxici8+PGJyLz4NDUFydGljbGUgVGl0bGU6IDxpbnAyOm5fRmllbGQgbmFtZT0iVGl0bGUiLz48YnIvPg08aW5wMjptX2lmIGNoZWNrPSJuX0ZpZWxkIiBuYW1lPSJCb2R5Ij4NQm9keTogPGlucDI6bl9GaWVsZCBuYW1lPSJCb2R5Ii8+PGJyLz4NPC9pbnAyOm1faWY+DTxici8+PGJyLz4NDVlvdSBjYW4gdmlldyB5b3VyIGFydGljbGUgaGVyZSA8YSBocmVmPSI8aW5wMjpuX0FydGljbGVMaW5rIHRlbXBsYXRlPSJfX2RlZmF1bHRfXyIvPiI+PGlucDI6bl9GaWVsZCBuYW1lPSJUaXRsZSIvPjwvYT4= + + + TmV3IEFydGljbGUgIjxpbnAyOm5fRmllbGQgbmFtZT0iVGl0bGUiLz4iIC0gUGVuZGluZw== + TmV3IEFydGljbGUgaGFzIGJlZW4gc3VibWl0dGVkIHRvIG91ciB3ZWJzaXRlIGFuZCBwZW5kaW5nIGZvciBhZG1pbmlzdHJhdGl2ZSBhcHByb3ZhbCE8YnIvPjxici8+DQoNCkFydGljbGUgZGV0YWlscyBhcmUgbGlzdGVkIGJlbG93Ojxici8+PGJyLz4NCg0KQXJ0aWNsZSBUaXRsZTogPGlucDI6bl9GaWVsZCBuYW1lPSJUaXRsZSIvPjxici8+DQo8aW5wMjptX2lmIGNoZWNrPSJuX0ZpZWxkIiBuYW1lPSJCb2R5Ij4NCkJvZHk6IDxpbnAyOm5fRmllbGQgbmFtZT0iQm9keSIvPjxici8+DQo8L2lucDI6bV9pZj4NCjxici8+PGJyLz4NCg0KWW91IGNhbiB2aWV3IHlvdXIgYXJ0aWNsZSBoZXJlIDxhIGhyZWY9IjxpbnAyOm5fQXJ0aWNsZUxpbmsgdGVtcGxhdGU9Il9fZGVmYXVsdF9fIi8+Ij48aW5wMjpuX0ZpZWxkIG5hbWU9IlRpdGxlIi8+PC9hPg== + + + TmV3IEFydGljbGUgIjxpbnAyOm5fRmllbGQgbmFtZT0iVGl0bGUiLz4iIC0gUGVuZGluZw== + TmV3IEFydGljbGUgaGFzIGJlZW4gc3VibWl0dGVkIHRvIG91ciB3ZWJzaXRlIGFuZCBwZW5kaW5nIGZvciBhZG1pbmlzdHJhdGl2ZSBhcHByb3ZhbCE8YnIvPjxici8+DQoNCkFydGljbGUgZGV0YWlscyBhcmUgbGlzdGVkIGJlbG93Ojxici8+PGJyLz4NCg0KQXJ0aWNsZSBUaXRsZTogPGlucDI6bl9GaWVsZCBuYW1lPSJUaXRsZSIvPjxici8+DQo8aW5wMjptX2lmIGNoZWNrPSJuX0ZpZWxkIiBuYW1lPSJCb2R5Ij4NCkJvZHk6IDxpbnAyOm5fRmllbGQgbmFtZT0iQm9keSIvPjxici8+DQo8L2lucDI6bV9pZj4NCjxici8+PGJyLz4NCg0KWW91IGNhbiB2aWV3IHlvdXIgYXJ0aWNsZSBoZXJlIDxhIGhyZWY9IjxpbnAyOm5fQXJ0aWNsZUxpbmsgdGVtcGxhdGU9Il9fZGVmYXVsdF9fIi8+Ij48aW5wMjpuX0ZpZWxkIG5hbWU9IlRpdGxlIi8+PC9hPg== + + + WW91ciBBcnRpY2xlICI8aW5wMjpuX0ZpZWxkIG5hbWU9IlRpdGxlIi8+IiAtIEFwcHJvdmVk + WW91ciBBcnRpY2xlICI8aW5wMjpuX0ZpZWxkIG5hbWU9IlRpdGxlIi8+IiBoYXMgYmVlbiBhcHByb3ZlZA== + + + WW91ciBBcnRpY2xlICI8aW5wMjpuX0ZpZWxkIG5hbWU9IlRpdGxlIi8+IiAtIERlY2xpbmVk + WW91ciBBcnRpY2xlICI8aW5wMjpuX0ZpZWxkIG5hbWU9IlRpdGxlIi8+IiBoYXMgYmVlbiBkZWNsaW5lZC4= + + + WW91ciBBcnRpY2xlICI8aW5wMjpuX0ZpZWxkIG5hbWU9IlRpdGxlIi8+IiAtIFVwZGF0ZWQ= + WW91ciBBcnRpY2xlICI8aW5wMjpuX0ZpZWxkIG5hbWU9IlRpdGxlIi8+IiBoYXMgYmVlbiB1cGRhdGVkLg== + + + QXJ0aWNsZSAiPGlucDI6bl9GaWVsZCBuYW1lPSJUaXRsZSIvPiIgLSBVcGRhdGVk + QXJ0aWNsZSAiPGlucDI6bl9GaWVsZCBuYW1lPSJUaXRsZSIvPiIgaGFzIGJlZW4gdXBkYXRlZC4= + + + WW91ciBNb2RpZmljYXRpb25zIGZvciAiPGlucDI6bl9GaWVsZCBuYW1lPSJUaXRsZSIgLz4iIC0gQXBwcm92ZWQh + WW91ciBNb2RpZmljYXRpb25zIGZvciAiPGlucDI6bl9GaWVsZCBuYW1lPSJUaXRsZSIgLz4iIGxpbmsgd2VyZSBhcHByb3ZlZCBieSB0aGUgd2Vic2l0ZS4= + + + WW91ciBNb2RpZmljYXRpb25zIGZvciAiPGlucDI6bl9GaWVsZCBuYW1lPSJUaXRsZSIvPiIgLSBEZWNsaW5lZA== + WW91ciBtb2RpZmljYXRpb25zIGZvciAiPGlucDI6bl9GaWVsZCBuYW1lPSJUaXRsZSIvPiIgYXJ0aWNsZSB3ZXJlIGRlY2xpbmVkLg== + + + TW9kaWZpY2F0aW9ucyBmb3IgIjxpbnAyOm5fRmllbGQgbmFtZT0iVGl0bGUiLz4iIC0gUGVuZGluZw== + TW9kaWZpY2F0aW9ucyBmb3IgIjxpbnAyOm5fRmllbGQgbmFtZT0iVGl0bGUiLz4iIGFydGljbGUgYXJlIHBlbmRpbmcgZm9yIGFkbWluaXN0cmF0aXZlIGFwcHJvdmFsLg== + + + QXJ0aWNsZSBNb2RpZmljYXRpb25zIGZvciAiPGlucDI6bl9GaWVsZCBuYW1lPSJUaXRsZSIvPiIgLSBQZW5kaW5n + TW9kaWZpY2F0aW9ucyBmb3IgIjxpbnAyOm5fRmllbGQgbmFtZT0iVGl0bGUiLz4iIGFydGljbGUgYXJlIHBlbmRpbmcgZm9yIGFkbWluaXN0cmF0aXZlIGFwcHJvdmFsLg== + + + WW91ciBDb21tZW50IGZvciAiPGlucDI6bl9GaWVsZCBuYW1lPSJUaXRsZSIvPiIgYXJ0aWNsZSAtIFB1Ymxpc2hlZA== + WW91ciBjb21tZW50IGZvciAiPGlucDI6bl9GaWVsZCBuYW1lPSJUaXRsZSIvPiIgYXJ0aWNsZSBoYXMgYmVlbiBwdWJsaXNoZWQu + + + TmV3IENvbW1lbnQgZm9yICI8aW5wMjpuX0ZpZWxkIG5hbWU9IlRpdGxlIi8+IiBBcnRpY2xlIFN1Ym1pdHRlZA== + TmV3IGNvbW1lbnQgZm9yICI8aW5wMjpuX0ZpZWxkIG5hbWU9IlRpdGxlIi8+IiBhcnRpY2xlIGhhcyBiZWVuIHN1Ym1pdHRlZC4= + + + WW91ciBDb21tZW50IGZvciAiPGlucDI6bl9GaWVsZCBuYW1lPSJUaXRsZSIvPiIgLSBQZW5kaW5n + VGhhbmsgeW91IGZvciBzdWJtaXR0aW5nIHlvdXIgY29tbWVudCBmb3IgIjxpbnAyOm5fRmllbGQgbmFtZT0iVGl0bGUiLz4iLjxici8+PGJyLz4NCg0KQ3VycmVudGx5IGl0J3MgcGVuZGluZyBmb3IgYWRtaW5pc3RyYXRpdmUgYXBwcm92YWwgYW5kIHdpbGwgYmUgcHVibGlzaGVkIHNob3J0bHku + + + WC1NYWlsZXI6IEluLVBvcnRhbA== + WW91ciBDb21tZW50IGZvciAiPGlucDI6bl9GaWVsZCBuYW1lPSJUaXRsZSIvPiIgLSBQZW5kaW5nIFthZG1pbl0= + VGhhbmsgeW91IGZvciBzdWJtaXR0aW5nIHlvdXIgY29tbWVudCBmb3IgIjxpbnAyOm5fRmllbGQgbmFtZT0iVGl0bGUiLz4iLjxici8+PGJyLz4NCg0KQ3VycmVudGx5IGl0J3MgcGVuZGluZyBmb3IgYWRtaW5pc3RyYXRpdmUgYXBwcm92YWwgYW5kIHdpbGwgYmUgcHVibGlzaGVkIHNob3J0bHku + + + WW91ciBDb21tZW50IGZvciAiPGlucDI6bl9GaWVsZCBuYW1lPSJUaXRsZSIvPiIgLSBQdWJsaXNoZWQ= + VGhhbmsgeW91IGZvciBzdWJtaXR0aW5nIHlvdXIgY29tbWVudCBmb3IgIjxpbnAyOm5fRmllbGQgbmFtZT0iVGl0bGUiLz4iLjxici8+PGJyLz4NCg0KSXQncyBhbHJlYWR5IHB1Ymxpc2hlZCBvbiB0aGUgd2Vic2l0ZSE= + + + WW91ciBDb21tZW50IGZvciAiPGlucDI6bl9GaWVsZCBuYW1lPSJUaXRsZSIvPiIgLSBEZWNsaW5lZA== + U29ycnksIGJ1dCB5b3VyIGNvbW1lbnQgZm9yICI8aW5wMjpuX0ZpZWxkIG5hbWU9IlRpdGxlIi8+IiBhcnRpY2xlIGhhcyBiZWVuIGRlY2xpbmVkLg== + + + + \ No newline at end of file Property changes on: releases/5.2.1/install/english.lang ___________________________________________________________________ Added: cvs2svn:cvs-rev + 1.1.2.5 Added: svn:eol-style + LF Index: releases/5.2.1/install/prerequisites.php =================================================================== --- releases/5.2.1/install/prerequisites.php (revision 0) +++ releases/5.2.1/install/prerequisites.php (revision 16072) @@ -0,0 +1,81 @@ +_toolkit =& $instance; + } + + /** + * Checks minimal version, that could be upgradeable + * + * @param Array $versions + * @param string $mode when called mode {install, upgrade, standalone) + * @return Array + */ + function CheckPrerequisites($versions, $mode) + { + $errors = Array (); + + if ($mode == 'standalone') { + if (!$this->Application->isModuleEnabled('In-Portal')) { + $errors[] = 'Please install or enable "In-Portal" module first'; + } + } + + if ($mode == 'upgrade') { + $sql = 'SELECT Version + FROM ' . TABLE_PREFIX . 'Modules + WHERE Name = "In-Portal"'; + $inportal_version = $this->Conn->GetOne($sql); + + if ($inportal_version === false) { + // only, when In-Portal was installed + return $errors; + } + + $min_version = '4.3.1'; + + $current_version = $this->_toolkit->ConvertModuleVersion($inportal_version); + $needed_version = $this->_toolkit->ConvertModuleVersion($min_version); + if ($current_version < $needed_version) { + $errors[] = 'Please upgrade "In-Portal" to version ' . $min_version; + } + } + + return $errors; + } + } \ No newline at end of file Property changes on: releases/5.2.1/install/prerequisites.php ___________________________________________________________________ Added: cvs2svn:cvs-rev + 1.1.2.3 Added: svn:keywords + Id Added: svn:eol-style + LF Index: releases/5.2.1/install/.htaccess =================================================================== --- releases/5.2.1/install/.htaccess (revision 0) +++ releases/5.2.1/install/.htaccess (revision 16072) @@ -0,0 +1 @@ +deny from all \ No newline at end of file Property changes on: releases/5.2.1/install/.htaccess ___________________________________________________________________ Added: svn:eol-style + LF Index: releases/5.2.1/install/remove_schema.sql =================================================================== --- releases/5.2.1/install/remove_schema.sql (revision 0) +++ releases/5.2.1/install/remove_schema.sql (revision 16072) @@ -0,0 +1,2 @@ +DROP TABLE News; +DROP TABLE NewsCustomData; \ No newline at end of file Property changes on: releases/5.2.1/install/remove_schema.sql ___________________________________________________________________ Added: cvs2svn:cvs-rev + 1.1.2.1 Added: svn:eol-style + LF Index: releases/5.2.1/install/img/icon_news_management.gif =================================================================== Cannot display: file marked as a binary type. svn:mime-type = application/octet-stream Property changes on: releases/5.2.1/install/img/icon_news_management.gif ___________________________________________________________________ Added: svn:mime-type + application/octet-stream Index: releases/5.2.1/install/img/.htaccess =================================================================== --- releases/5.2.1/install/img/.htaccess (revision 0) +++ releases/5.2.1/install/img/.htaccess (revision 16072) @@ -0,0 +1 @@ +allow from all \ No newline at end of file Property changes on: releases/5.2.1/install/img/.htaccess ___________________________________________________________________ Added: svn:eol-style + LF Index: releases/5.2.1/install/install_data.sql =================================================================== --- releases/5.2.1/install/install_data.sql (revision 0) +++ releases/5.2.1/install/install_data.sql (revision 16072) @@ -0,0 +1,185 @@ +# Section "in-news:configuration_output": +INSERT INTO SystemSettings VALUES(DEFAULT, 'News_SortField', 'CreatedOn', 'In-News', 'in-news:configuration_output', 'la_Text_Articles', 'la_news_sortfield_pompt', 'select', '', 'Title=la_Article_Title||Excerpt=la_Article_Excerpt||Author=la_Article_Author||CreatedOn=la_Article_Date||Hits=la_Article_Hits||CachedRating=la_Article_Rating||SELECT Prompt AS OptionName, CONCAT("cust_", FieldName) AS OptionValue FROM CustomFields WHERE (Type = 2) AND (IsSystem = 0)', 10.01, 1, 1, NULL); +INSERT INTO SystemSettings VALUES(DEFAULT, 'News_SortOrder', 'desc', 'In-News', 'in-news:configuration_output', 'la_Text_Articles', 'la_news_sortfield_pompt', 'select', '', 'asc=la_common_ascending||desc=la_common_descending', 10.01, 2, 1, NULL); +INSERT INTO SystemSettings VALUES(DEFAULT, 'News_SortField2', 'Title', 'In-News', 'in-news:configuration_output', 'la_Text_Articles', 'la_news_sortfield2_pompt', 'select', '', 'Title=la_Article_Title||Excerpt=la_Article_Excerpt||Author=la_Article_Author||CreatedOn=la_Article_Date||Hits=la_Article_Hits||CachedRating=la_Article_Rating||SELECT Prompt AS OptionName, CONCAT("cust_", FieldName) AS OptionValue FROM CustomFields WHERE (Type = 2) AND (IsSystem = 0)', 10.02, 1, 1, NULL); +INSERT INTO SystemSettings VALUES(DEFAULT, 'News_SortOrder2', 'desc', 'In-News', 'in-news:configuration_output', 'la_Text_Articles', 'la_news_sortfield2_pompt', 'select', '', 'asc=la_common_ascending||desc=la_common_descending', 10.02, 2, 1, NULL); +INSERT INTO SystemSettings VALUES(DEFAULT, 'Perpage_News', '8', 'In-News', 'in-news:configuration_output', 'la_Text_Articles', 'la_news_perpage_prompt', 'text', '', '', 10.03, 0, 1, NULL); +INSERT INTO SystemSettings VALUES(DEFAULT, 'Perpage_News_Short', '3', 'In-News', 'in-news:configuration_output', 'la_Text_Articles', 'la_news_perpage_short_prompt', 'text', '', '', 10.04, 0, 1, NULL); +INSERT INTO SystemSettings VALUES(DEFAULT, 'News_CatNewDays', '5', 'In-News', 'in-news:configuration_output', 'la_Text_Articles', 'la_news_newdays_prompt', 'text', '', '', 10.05, 0, 1, NULL); +INSERT INTO SystemSettings VALUES(DEFAULT, 'News_MinPopRating', '4', 'In-News', 'in-news:configuration_output', 'la_Text_Articles', 'la_fld_News_MinPopRating', 'text', '', '', 10.06, 0, 1, NULL); +INSERT INTO SystemSettings VALUES(DEFAULT, 'News_MinPopVotes', '20', 'In-News', 'in-news:configuration_output', 'la_Text_Articles', 'la_fld_News_MinPopVotes', 'text', '', '', 10.07, 0, 1, NULL); +INSERT INTO SystemSettings VALUES(DEFAULT, 'News_MaxHotNumber', '5', 'In-News', 'in-news:configuration_output', 'la_Text_Articles', 'la_fld_News_MaxHotNumber', 'text', '', '', 10.08, 0, 1, NULL); +INSERT INTO SystemSettings VALUES(DEFAULT, 'News_Archive', '0', 'In-News', 'in-news:configuration_output', 'la_Text_Articles', 'la_news_daysarchive_prompt', 'text', '', '', 10.09, 0, 1, NULL); +INSERT INTO SystemSettings VALUES(DEFAULT, 'News_ShowPick', '1', 'In-News', 'in-news:configuration_output', 'la_Text_Articles', 'la_news_editorpicksabove_prompt', 'checkbox', '', '', 10.1, 0, 1, NULL); +INSERT INTO SystemSettings VALUES(DEFAULT, 'News_ReviewDelay_Interval', '3600', 'In-News', 'in-news:configuration_output', 'la_Text_Articles', 'la_prompt_DupReviews', 'select', '', '1=la_opt_Sec||60=la_opt_Min||3600=la_opt_Hour||86400=la_opt_Day||604800=la_opt_Week||2419200=la_opt_Month||29030400=la_opt_Year', 10.11, 2, 1, NULL); +INSERT INTO SystemSettings VALUES(DEFAULT, 'News_ReviewDelay_Value', '12', 'In-News', 'in-news:configuration_output', 'la_Text_Articles', 'la_prompt_DupReviews', 'text', '', 'style="width: 50px;"', 10.11, 1, 1, NULL); +INSERT INTO SystemSettings VALUES(DEFAULT, 'News_RatingDelay_Value', '1', 'In-News', 'in-news:configuration_output', 'la_Text_Articles', 'la_prompt_DupRating', 'text', '', 'style="width: 50px;"', 10.12, 1, 1, NULL); +INSERT INTO SystemSettings VALUES(DEFAULT, 'News_RatingDelay_Interval', '86400', 'In-News', 'in-news:configuration_output', 'la_Text_Articles', 'la_prompt_DupRating', 'select', '', '1=la_opt_Sec||60=la_opt_Min||3600=la_opt_Hour||86400=la_opt_Day||604800=la_opt_Week||2419200=la_opt_Month||29030400=la_opt_Year', 10.12, 2, 1, NULL); +INSERT INTO SystemSettings VALUES(DEFAULT, 'n_MaxCategories', '3', 'In-News', 'in-news:configuration_output', 'la_Text_Articles', 'la_fld_MaxCategories', 'text', NULL, NULL, 10.13, 0, 1, NULL); +INSERT INTO SystemSettings VALUES(DEFAULT, 'News_SortReviews', 'ReviewText', 'In-News', 'in-news:configuration_output', 'la_Text_Reviews', 'la_news_sortreviews_prompt', 'select', '', 'ReviewText=la_opt_CommentText||CreatedOn=la_opt_CreatedOn', 20.01, 1, 1, NULL); +INSERT INTO SystemSettings VALUES(DEFAULT, 'News_SortReviewsOrder', 'desc', 'In-News', 'in-news:configuration_output', 'la_Text_Reviews', 'la_news_sortreviews_prompt', 'select', '', 'asc=la_common_Ascending||desc=la_common_Descending', 20.01, 2, 1, NULL); +INSERT INTO SystemSettings VALUES(DEFAULT, 'News_SortReviews2', 'ReviewText', 'In-News', 'in-news:configuration_output', 'la_Text_Reviews', 'la_news_sortreviews2_prompt', 'select', '', 'ReviewText=la_opt_CommentText||CreatedOn=la_opt_CreatedOn', 20.02, 1, 1, NULL); +INSERT INTO SystemSettings VALUES(DEFAULT, 'News_SortReviewsOrder2', 'asc', 'In-News', 'in-news:configuration_output', 'la_Text_Reviews', 'la_news_sortreviews2_prompt', 'select', '', 'asc=la_common_Ascending||desc=la_common_Descending', 20.02, 2, 1, NULL); +INSERT INTO SystemSettings VALUES(DEFAULT, 'Perpage_NewsReviews_Short', '3', 'In-News', 'in-news:configuration_output', 'la_Text_Reviews', 'la_review_perpage_short_prompt', 'text', NULL, NULL, 20.03, 0, 1, NULL); +INSERT INTO SystemSettings VALUES(DEFAULT, 'Perpage_NewsReviews', '10', 'In-News', 'in-news:configuration_output', 'la_Text_Reviews', 'la_review_perpage_prompt', 'text', NULL, NULL, 20.04, 0, 1, NULL); +INSERT INTO SystemSettings VALUES(DEFAULT, 'n_CategoryTemplate', '/in-news/designs/section', 'In-News', 'in-news:configuration_output', 'la_section_Templates', 'la_fld_CategoryTemplate', 'text', '', '', 30.01, 0, 0, NULL); +INSERT INTO SystemSettings VALUES(DEFAULT, 'n_ItemTemplate', 'in-news/articles/article_detail', 'In-News', 'in-news:configuration_output', 'la_section_Templates', 'la_fld_ItemTemplate', 'text', '', '', 30.02, 0, 0, NULL); +INSERT INTO SystemSettings VALUES(DEFAULT, 'n_MaxImageCount', '5', 'In-News', 'in-news:configuration_output', 'la_section_ImageSettings', 'la_config_MaxImageCount', 'text', '', '', 40.01, 0, 0, NULL); +INSERT INTO SystemSettings VALUES(DEFAULT, 'n_ThumbnailImageWidth', '120', 'In-News', 'in-news:configuration_output', 'la_section_ImageSettings', 'la_config_ThumbnailImageWidth', 'text', '', '', 40.02, 0, 0, NULL); +INSERT INTO SystemSettings VALUES(DEFAULT, 'n_ThumbnailImageHeight', '120', 'In-News', 'in-news:configuration_output', 'la_section_ImageSettings', 'la_config_ThumbnailImageHeight', 'text', '', '', 40.03, 0, 0, NULL); +INSERT INTO SystemSettings VALUES(DEFAULT, 'n_FullImageWidth', '450', 'In-News', 'in-news:configuration_output', 'la_section_ImageSettings', 'la_config_FullImageWidth', 'text', '', '', 40.04, 0, 0, NULL); +INSERT INTO SystemSettings VALUES(DEFAULT, 'n_FullImageHeight', '450', 'In-News', 'in-news:configuration_output', 'la_section_ImageSettings', 'la_config_FullImageHeight', 'text', '', '', 40.05, 0, 0, NULL); + +# Section "in-news:configuration_search": +INSERT INTO SystemSettings VALUES(DEFAULT, 'SearchRel_Keyword_articles', '90', 'In-News', 'in-news:configuration_search', 'la_config_SearchRel_DefaultKeyword', 'la_text_keyword', 'text', NULL, NULL, 0, 0, 1, NULL); +INSERT INTO SystemSettings VALUES(DEFAULT, 'SearchRel_Pop_articles', '10', 'In-News', 'in-news:configuration_search', 'la_config_DefaultPop', 'la_text_popularity', 'text', NULL, NULL, 0, 0, 1, NULL); +INSERT INTO SystemSettings VALUES(DEFAULT, 'SearchRel_Rating_articles', '10', 'In-News', 'in-news:configuration_search', 'la_config_DefaultRating', 'la_prompt_Rating', 'text', NULL, NULL, 0, 0, 1, NULL); +INSERT INTO SystemSettings VALUES(DEFAULT, 'SearchRel_Increase_articles', '30', 'In-News', 'in-news:configuration_search', 'la_config_DefaultIncreaseImportance', 'la_text_increase_importance', 'text', NULL, NULL, 0, 0, 1, NULL); +INSERT INTO SystemSettings VALUES(DEFAULT, 'Search_ShowMultiple_articles', '0', 'In-News', 'in-news:configuration_search', 'la_config_ShowMultiple', 'la_Text_MultipleShow', 'text', NULL, NULL, 0, 0, 1, NULL); + +INSERT INTO EmailTemplates (TemplateId, TemplateName, ReplacementTags, Enabled, FrontEndOnly, Module, Description, Type, AllowChangingSender, AllowChangingRecipient) VALUES(DEFAULT, 'NEWS.ADD', NULL, 1, 1, 'In-News', 'Add Article', 1, 1, 1); +INSERT INTO EmailTemplates (TemplateId, TemplateName, ReplacementTags, Enabled, FrontEndOnly, Module, Description, Type, AllowChangingSender, AllowChangingRecipient) VALUES(DEFAULT, 'NEWS.ADD', NULL, 1, 0, 'In-News', 'Add Article', 0, 1, 1); +INSERT INTO EmailTemplates (TemplateId, TemplateName, ReplacementTags, Enabled, FrontEndOnly, Module, Description, Type, AllowChangingSender, AllowChangingRecipient) VALUES(DEFAULT, 'NEWS.ADD.PENDING', NULL, 1, 1, 'In-News', 'Article Add Pending', 1, 1, 1); +INSERT INTO EmailTemplates (TemplateId, TemplateName, ReplacementTags, Enabled, FrontEndOnly, Module, Description, Type, AllowChangingSender, AllowChangingRecipient) VALUES(DEFAULT, 'NEWS.ADD.PENDING', NULL, 1, 0, 'In-News', 'Article Add Pending', 0, 1, 1); +INSERT INTO EmailTemplates (TemplateId, TemplateName, ReplacementTags, Enabled, FrontEndOnly, Module, Description, Type, AllowChangingSender, AllowChangingRecipient) VALUES(DEFAULT, 'NEWS.MODIFY', NULL, 1, 1, 'In-News', 'Modify Article', 1, 1, 1); +INSERT INTO EmailTemplates (TemplateId, TemplateName, ReplacementTags, Enabled, FrontEndOnly, Module, Description, Type, AllowChangingSender, AllowChangingRecipient) VALUES(DEFAULT, 'NEWS.MODIFY', NULL, 1, 0, 'In-News', 'Modify Article', 0, 1, 1); +INSERT INTO EmailTemplates (TemplateId, TemplateName, ReplacementTags, Enabled, FrontEndOnly, Module, Description, Type, AllowChangingSender, AllowChangingRecipient) VALUES(DEFAULT, 'NEWS.MODIFY.PENDING', NULL, 1, 1, 'In-News', 'Article Modify Pending', 1, 1, 1); +INSERT INTO EmailTemplates (TemplateId, TemplateName, ReplacementTags, Enabled, FrontEndOnly, Module, Description, Type, AllowChangingSender, AllowChangingRecipient) VALUES(DEFAULT, 'NEWS.MODIFY.PENDING', NULL, 1, 0, 'In-News', 'Article Modify Pending', 0, 1, 1); +INSERT INTO EmailTemplates (TemplateId, TemplateName, ReplacementTags, Enabled, FrontEndOnly, Module, Description, Type, AllowChangingSender, AllowChangingRecipient) VALUES(DEFAULT, 'NEWS.MODIFY.APPROVE', NULL, 1, 0, 'In-News', 'Approve Article Modification', 0, 1, 1); +INSERT INTO EmailTemplates (TemplateId, TemplateName, ReplacementTags, Enabled, FrontEndOnly, Module, Description, Type, AllowChangingSender, AllowChangingRecipient) VALUES(DEFAULT, 'NEWS.MODIFY.DENY', NULL, 1, 0, 'In-News', 'Decline Article Modification', 0, 1, 1); +INSERT INTO EmailTemplates (TemplateId, TemplateName, ReplacementTags, Enabled, FrontEndOnly, Module, Description, Type, AllowChangingSender, AllowChangingRecipient) VALUES(DEFAULT, 'NEWS.APPROVE', NULL, 1, 0, 'In-News', 'Approve Article', 0, 1, 1); +INSERT INTO EmailTemplates (TemplateId, TemplateName, ReplacementTags, Enabled, FrontEndOnly, Module, Description, Type, AllowChangingSender, AllowChangingRecipient) VALUES(DEFAULT, 'NEWS.DENY', NULL, 1, 0, 'In-News', 'Decline Article', 0, 1, 1); +INSERT INTO EmailTemplates (TemplateId, TemplateName, ReplacementTags, Enabled, FrontEndOnly, Module, Description, Type, AllowChangingSender, AllowChangingRecipient) VALUES(DEFAULT, 'NEWS.REVIEW.ADD', NULL, 1, 1, 'In-News', 'Article Comment Added', 1, 1, 1); +INSERT INTO EmailTemplates (TemplateId, TemplateName, ReplacementTags, Enabled, FrontEndOnly, Module, Description, Type, AllowChangingSender, AllowChangingRecipient) VALUES(DEFAULT, 'NEWS.REVIEW.ADD', NULL, 1, 0, 'In-News', 'Article Comment Added', 0, 1, 1); +INSERT INTO EmailTemplates (TemplateId, TemplateName, ReplacementTags, Enabled, FrontEndOnly, Module, Description, Type, AllowChangingSender, AllowChangingRecipient) VALUES(DEFAULT, 'NEWS.REVIEW.APPROVE', NULL, 1, 0, 'In-News', 'Article Comment Approved', 0, 1, 1); +INSERT INTO EmailTemplates (TemplateId, TemplateName, ReplacementTags, Enabled, FrontEndOnly, Module, Description, Type, AllowChangingSender, AllowChangingRecipient) VALUES(DEFAULT, 'NEWS.REVIEW.DENY', NULL, 1, 0, 'In-News', 'Article Comment Declined', 0, 1, 1); +INSERT INTO EmailTemplates (TemplateId, TemplateName, ReplacementTags, Enabled, FrontEndOnly, Module, Description, Type, AllowChangingSender, AllowChangingRecipient) VALUES(DEFAULT, 'NEWS.REVIEW.ADD.PENDING', NULL, 1, 0, 'In-News', 'Article Comment Pending', 1, 1, 1); +INSERT INTO EmailTemplates (TemplateId, TemplateName, ReplacementTags, Enabled, FrontEndOnly, Module, Description, Type, AllowChangingSender, AllowChangingRecipient) VALUES(DEFAULT, 'NEWS.REVIEW.ADD.PENDING', NULL, 1, 0, 'In-News', 'Article Comment Pending', 0, 1, 1); + +INSERT INTO ItemTypes VALUES (2, 'In-News', 'n', 'News', 'Title', 'CreatedById', 'Hits', 'CachedRating', 'la_ItemTab_News', 1, 'in-news/admin/addarticle.php', 'clsNews', 'Article'); + +INSERT INTO CategoryPermissionsConfig VALUES (DEFAULT, 'NEWS.ADD', 'la_PermName_News.Add_desc', 'In-News', 1); +INSERT INTO CategoryPermissionsConfig VALUES (DEFAULT, 'NEWS.VIEW', 'la_PermName_News.View_desc', 'In-News', 1); +INSERT INTO CategoryPermissionsConfig VALUES (DEFAULT, 'NEWS.ADD.PENDING', 'la_PermName_News.Add.Pending_desc', 'In-News', 1); +INSERT INTO CategoryPermissionsConfig VALUES (DEFAULT, 'NEWS.MODIFY', 'la_PermName_News.Modify_desc', 'In-News', 1); +INSERT INTO CategoryPermissionsConfig VALUES (DEFAULT, 'NEWS.DELETE', 'la_PermName_News.Delete_desc', 'In-News', 1); +INSERT INTO CategoryPermissionsConfig VALUES (DEFAULT, 'NEWS.RATE', 'la_PermName_News.Rate_desc', 'In-News', 1); +INSERT INTO CategoryPermissionsConfig VALUES (DEFAULT, 'NEWS.REVIEW', 'la_PermName_News.Review_desc', 'In-News', 1); +INSERT INTO CategoryPermissionsConfig VALUES (DEFAULT, 'NEWS.REVIEW.PENDING', 'la_PermName_News.Review.Pending_desc', 'In-News', 1); +INSERT INTO CategoryPermissionsConfig VALUES (DEFAULT, 'NEWS.MODIFY.PENDING', 'la_PermName_News.Modify.Pending_desc', 'In-News', 1); +INSERT INTO CategoryPermissionsConfig VALUES (DEFAULT, 'NEWS.OWNER.MODIFY', 'la_PermName_News.Owner.Modify_desc', 'In-News', 1); +INSERT INTO CategoryPermissionsConfig VALUES (DEFAULT, 'NEWS.OWNER.MODIFY.PENDING', 'la_PermName_News.Owner.Modify.Pending_desc', 'In-News', 1); +INSERT INTO CategoryPermissionsConfig VALUES (DEFAULT, 'NEWS.OWNER.DELETE', 'la_PermName_News.Owner.Delete_desc', 'In-News', 1); + +INSERT INTO SearchConfig VALUES ('News', 'Title', 1, 1, 'lu_fielddesc_news_title', 'lu_field_title', 'In-News', 'la_text_article', 2, DEFAULT, 2, 'text', NULL, NULL, NULL, NULL, NULL, NULL, NULL); +INSERT INTO SearchConfig VALUES ('News', 'Excerpt', 1, 1, 'lu_fielddesc_news_excerpt', 'lu_field_excerpt', 'In-News', 'la_text_article', 3, DEFAULT, 1, 'text', NULL, NULL, NULL, NULL, NULL, NULL, NULL); +INSERT INTO SearchConfig VALUES ('News', 'Author', 1, 1, 'lu_fielddesc_news_author', 'lu_field_author', 'In-News', 'la_text_article', 4, DEFAULT, 1, 'text', NULL, NULL, NULL, NULL, NULL, NULL, NULL); +INSERT INTO SearchConfig VALUES ('News', 'Body', 1, 1, 'lu_fielddesc_news_body', 'lu_field_body', 'In-News', 'la_text_article', 5, DEFAULT, 1, 'text', NULL, NULL, NULL, NULL, NULL, NULL, NULL); +INSERT INTO SearchConfig VALUES ('News', 'CreatedOn', 0, 1, 'lu_fielddesc_news_createdon', 'lc_field_createdon', 'In-News', 'la_text_article', 6, DEFAULT, 0, 'text', NULL, NULL, NULL, NULL, NULL, NULL, NULL); +INSERT INTO SearchConfig VALUES ('News', 'EndOn', 0, 1, 'lu_fielddesc_news_endon', 'lu_field_endon', 'In-News', 'la_text_article', 7, DEFAULT, 0, 'text', NULL, NULL, NULL, NULL, NULL, NULL, NULL); +INSERT INTO SearchConfig VALUES ('News', 'Hits', 0, 1, 'lu_fielddesc_news_hits', 'lc_field_hits', 'In-News', 'la_text_article', 8, DEFAULT, 0, 'text', NULL, NULL, NULL, NULL, NULL, NULL, NULL); +INSERT INTO SearchConfig VALUES ('News', 'CachedRating', 0, 1, 'lu_fielddesc_news_cachedrating', 'lc_field_cachedrating', 'In-News', 'la_text_article', 9, DEFAULT, 0, 'text', NULL, NULL, NULL, NULL, NULL, NULL, NULL); +INSERT INTO SearchConfig VALUES ('News', 'CachedVotesQty', 0, 1, 'lu_fielddesc_news_cachedvotesqty', 'lc_field_cachedvotesqty', 'In-News', 'la_text_article', 10, DEFAULT, 0, 'text', NULL, NULL, NULL, NULL, NULL, NULL, NULL); +INSERT INTO SearchConfig VALUES ('News', 'CreatedById', 0, 1, 'lu_fielddesc_news_createdbyid', 'lc_field_createdbyid', 'In-News', 'la_text_article', 11, DEFAULT, 0, 'text', NULL, NULL, NULL, NULL, NULL, NULL, NULL); +INSERT INTO SearchConfig VALUES ('News', 'Priority', 0, 1, 'lu_fielddesc_news_priority', 'lc_field_priority', 'In-News', 'la_text_article', 12, DEFAULT, 0, 'text', NULL, NULL, NULL, NULL, NULL, NULL, NULL); +INSERT INTO SearchConfig VALUES ('News', 'Status', 0, 1, 'lu_fielddesc_news_status', 'lc_field_status', 'In-News', 'la_text_article', 13, DEFAULT, 0, 'text', NULL, NULL, NULL, NULL, NULL, NULL, NULL); +INSERT INTO SearchConfig VALUES ('News', 'EditorsPick', 0, 1, 'lu_fielddesc_news_editorspick', 'lc_field_EditorsPick', 'In-News', 'la_text_article', 14, DEFAULT, 0, 'text', NULL, NULL, NULL, NULL, NULL, NULL, NULL); +INSERT INTO SearchConfig VALUES ('News', 'LeadStory', 0, 1, 'lu_fielddesc_news_leadstory', 'lu_field_leadstory', 'In-News', 'la_text_article', 15, DEFAULT, 0, 'text', NULL, NULL, NULL, NULL, NULL, NULL, NULL); +INSERT INTO SearchConfig VALUES ('News', 'LeadCatStory', 0, 1, 'lu_fielddesc_news_leadcatstory', 'lu_field_leadcatstory', 'In-News', 'la_text_article', 16, DEFAULT, 0, 'text', NULL, NULL, NULL, NULL, NULL, NULL, NULL); +INSERT INTO SearchConfig VALUES ('News', 'ResourceId', 0, 1, 'lu_fielddesc_news_resourceid', 'lc_field_resourceid', 'In-News', 'la_text_article', 17, DEFAULT, 0, 'text', NULL, NULL, NULL, NULL, NULL, NULL, NULL); +INSERT INTO SearchConfig VALUES ('News', 'CachedReviewsQty', 0, 1, 'lu_fielddesc_news_cachedreviewsqty', 'lc_field_cachedreviewsqty', 'In-News', 'la_text_article', 18, DEFAULT, 0, 'text', NULL, NULL, NULL, NULL, NULL, NULL, NULL); +INSERT INTO SearchConfig VALUES ('News', 'StartDate', 0, 1, 'lu_fielddesc_news_startdate', 'lu_field_startdate', 'In-News', 'la_text_article', 19, DEFAULT, 0, 'text', NULL, NULL, NULL, NULL, NULL, NULL, NULL); +INSERT INTO SearchConfig VALUES ('News', 'NewItem', 0, 1, 'lu_fielddesc_news_newitem', 'lc_field_newitem', 'In-News', 'la_text_article', 20, DEFAULT, 0, 'boolean', NULL, NULL, NULL, NULL, NULL, NULL, NULL); +INSERT INTO SearchConfig VALUES ('News', 'PopItem', 0, 1, 'lu_fielddesc_news_popitem', 'lc_field_popitem', 'In-News', 'la_text_article', 21, DEFAULT, 0, 'boolean', NULL, NULL, NULL, NULL, NULL, NULL, NULL); +INSERT INTO SearchConfig VALUES ('News', 'HotItem', 0, 1, 'lu_fielddesc_news_hotitem', 'lc_field_hotitem', 'In-News', 'la_text_article', 22, DEFAULT, 0, 'boolean', NULL, NULL, NULL, NULL, NULL, NULL, NULL); +INSERT INTO SearchConfig VALUES ('News', 'Archived', 0, 1, 'lu_fielddesc_news_archived', 'lu_field_archived', 'In-News', 'la_text_article', 23, DEFAULT, 0, 'text', NULL, NULL, NULL, NULL, NULL, NULL, NULL); +INSERT INTO SearchConfig VALUES ('News', 'Modified', 0, 1, 'lu_fielddesc_news_modified', 'lc_field_modified', 'In-News', 'la_text_article', 24, DEFAULT, 0, 'text', NULL, NULL, NULL, NULL, NULL, NULL, NULL); +INSERT INTO SearchConfig VALUES ('News', 'ModifiedById', 0, 1, 'lu_fielddesc_news_modifiedbyid', 'lc_field_modifiedbyid', 'In-News', 'la_text_article', 25, DEFAULT, 0, 'text', NULL, NULL, NULL, NULL, NULL, NULL, NULL); +INSERT INTO SearchConfig VALUES ('News', 'OrgId', 0, 0, 'lu_fielddesc_news_orgid', 'lc_field_orgid', 'In-News', 'la_text_article', 26, DEFAULT, 0, 'text', NULL, NULL, NULL, NULL, NULL, NULL, NULL); +INSERT INTO SearchConfig VALUES ('News', 'NewsId', 0, 1, 'lu_fielddesc_news_newsid', 'lu_field_newsid', 'In-News', 'la_text_article', 0, DEFAULT, 0, 'text', NULL, NULL, NULL, NULL, NULL, NULL, NULL); +INSERT INTO SearchConfig VALUES ('CustomFields', 'RssOriginalURL', 1, 0, 'la_fld_RssOriginalURL', 'lu_fld_RssOriginalURL', 'In-News', 'la_section_CustomFields', 0, DEFAULT, 1, 'text', NULL, NULL, NULL, NULL, NULL, NULL, NULL); + +INSERT INTO CustomFields VALUES (DEFAULT, 1, 'RssExpireInterval', 'la_fld_RssExpireInterval', 0, 'la_title_SystemCF', 'la_fld_RssExpireInterval', 'text', NULL, '', 0, 0, 1, 0); +INSERT INTO CustomFields VALUES (DEFAULT, 1, 'RssUpdateInterval', 'la_fld_RssUpdateInterval', 0, 'la_title_SystemCF', 'la_fld_RssUpdateInterval', 'text', NULL, '', 0, 0, 1, 0); +INSERT INTO CustomFields VALUES (DEFAULT, 1, 'RssLastUpdated', 'la_fld_RssLastUpdated', 0, 'la_title_SystemCF', 'la_fld_RssLastUpdated', 'text', NULL, '', 0, 0, 1, 0); +INSERT INTO CustomFields VALUES (DEFAULT, 1, 'RssDeleteExpired', 'la_fld_RssDeleteExpired', 0, 'la_title_SystemCF', 'la_fld_RssDeleteExpired', 'text', NULL, '', 0, 0, 1, 0); +INSERT INTO CustomFields VALUES (DEFAULT, 2, 'RssOriginalURL', 'lu_fld_RssOriginalURL', 0, 'la_section_CustomFields', 'la_fld_RssOriginalURL', 'label', 'cut_first="100"', '', 0, 1, 0, 0); +INSERT INTO CustomFields VALUES (DEFAULT, 1, 'RssUpdateIntervalType', 'la_fld_RssUpdateIntervalType', 0, 'la_title_SystemCF', 'la_fld_RssUpdateIntervalType', 'text', NULL, '', 0, 0, 1, 0); +INSERT INTO CustomFields VALUES (DEFAULT, 1, 'RssSource', 'la_fld_RssSource', 0, 'la_title_SystemCF', 'la_fld_RssSource', 'text', NULL, '', 0, 0, 1, 0); +INSERT INTO CustomFields VALUES (DEFAULT, 1, 'RssExpireIntervalType', 'la_fld_RssExpireIntervalType', 0, 'la_title_SystemCF', 'la_fld_RssExpireIntervalType', 'text', NULL, '', 0, 0, 1, 0); +INSERT INTO CustomFields VALUES (DEFAULT, 1, 'RssDefaultExpiration', 'la_fld_RssDefaultExpiration', 0, 'la_title_SystemCF', 'la_fld_RssDefaultExpiration', 'text', NULL, '', 0, 0, 1, 0); +INSERT INTO CustomFields VALUES (DEFAULT, 1, 'RssDefaultExpirationType', 'la_fld_RssDefaultExpirationType', 0, 'la_title_SystemCF', 'la_fld_RssDefaultExpirationType', 'text', NULL, '', 0, 0, 1, 0); +INSERT INTO CustomFields VALUES (DEFAULT, 1, 'RssLastExpired', 'la_fld_RssLastExpired', 0, 'la_title_SystemCF', 'la_fld_RssLastExpired', 'text', NULL, '', 0, 0, 1, 0); +INSERT INTO CustomFields VALUES (DEFAULT, 2, 'RssArticleCRC', 'la_fld_RssArticleCRC', 0, 'la_section_SystemCF', 'la_fld_RssArticleCRC', 'text', NULL, '', 0, 0, 1, 0); +INSERT INTO CustomFields VALUES (DEFAULT, 1, 'n_ItemTemplate', 'la_fld_cust_n_ItemTemplate', 0, 'la_title_SystemCF', 'la_fld_cust_n_ItemTemplate', 'text', NULL, '', 0, 0, 1, 0); + +INSERT INTO StatItem VALUES (DEFAULT, 'In-News', 'SELECT count(*) FROM <%prefix%>News WHERE Status=1', NULL, 'la_prompt_ActiveArticles', 0, 1); +INSERT INTO StatItem VALUES (DEFAULT, 'In-News', 'SELECT COUNT(*) AS TotalArticles FROM <%prefix%>News', NULL, 'la_prompt_ArticlesTotal', 0, 2); +INSERT INTO StatItem VALUES (DEFAULT, 'In-News', 'SELECT COUNT(*) AS ActiveArticles FROM <%prefix%>News WHERE Status = 1', NULL, 'la_prompt_ArticlesActive', 0, 2); +INSERT INTO StatItem VALUES (DEFAULT, 'In-News', 'SELECT COUNT(*) AS PendingArticles FROM <%prefix%>News WHERE Status = 2', NULL, 'la_prompt_ArticlesPending', 0, 2); +INSERT INTO StatItem VALUES (DEFAULT, 'In-News', 'SELECT COUNT(*) AS DisabledArticles FROM <%prefix%>News WHERE Status = 0', NULL, 'la_prompt_DisabledArticles', 0, 2); +INSERT INTO StatItem VALUES (DEFAULT, 'In-News', 'SELECT COUNT(*) AS ArchivedArticles FROM <%prefix%>News WHERE Archived = 1', NULL, 'la_prompt_ArticlesArchived', 0, 2); +INSERT INTO StatItem VALUES (DEFAULT, 'In-News', 'SELECT COUNT(*) AS NewArticles FROM <%prefix%>News WHERE (NewItem = 1) OR ( (UNIX_TIMESTAMP() - CreatedOn) <= <%m:config name="News_CatNewDays"%>*86400 AND (NewItem = 2) )', NULL, 'la_prompt_NewArticles', 0, 2); +INSERT INTO StatItem VALUES (DEFAULT, 'In-News', 'SELECT COUNT(*) FROM <%prefix%>News WHERE EditorsPick = 1', NULL, 'la_prompt_EditorsPickArticles', 0, 2); +INSERT INTO StatItem VALUES (DEFAULT, 'In-News', 'SELECT COUNT(*) AS HotArticles FROM <%prefix%>News WHERE (HotItem = 1) OR (Hits >= <%m:config name="News_MaxHotNumber"%> AND (HotItem = 2) )', NULL, 'la_prompt_HotArticles', 0, 2); +INSERT INTO StatItem VALUES (DEFAULT, 'In-News', 'SELECT COUNT(*) FROM <%prefix%>News WHERE LeadStory = 1', NULL, 'la_prompt_LeadStoryArticles', 0, 2); +INSERT INTO StatItem VALUES (DEFAULT, 'In-News', 'SELECT COUNT(*) FROM <%prefix%>News WHERE LeadCatStory = 1', NULL, 'la_prompt_CategoryLeadStoryArticles', 0, 2); +INSERT INTO StatItem VALUES (DEFAULT, 'In-News', 'SELECT <%m:post_format field="AVG(CachedRating)" type="currency" precision="2"%> FROM <%prefix%>News WHERE CachedRating > 0', NULL, 'la_prompt_ArticleAverageRating', 0, 2); +INSERT INTO StatItem VALUES (DEFAULT, 'In-News', 'SELECT COUNT(*) AS PopularArticles FROM <%prefix%>News WHERE (PopItem = 1) OR ( (CachedRating >= <%article:hit_count type="top"%>) AND <%article:hit_count type="top"%> AND (PopItem = 2) )', NULL, 'la_prompt_PopularArticles', 0, 2); +INSERT INTO StatItem VALUES (DEFAULT, 'In-News', 'SELECT MAX(Hits) AS MaxHitsArticles FROM <%prefix%>News', NULL, 'la_prompt_MaxHitsArticles', 0, 2); +INSERT INTO StatItem VALUES (DEFAULT, 'In-News', 'SELECT MAX(CachedVotesQty) AS MaxVotesArticles FROM <%prefix%>News', NULL, 'la_prompt_MaxVotesArticles', 0, 2); +INSERT INTO StatItem VALUES (DEFAULT, 'In-News', 'SELECT <%m:post_format field="MAX(CreatedOn)" type="date"%> FROM <%prefix%>News', NULL, 'la_prompt_NewestArticleDate', 0, 2); +INSERT INTO StatItem VALUES (DEFAULT, 'In-News', 'SELECT <%m:post_format field="MAX(Modified)" type="date"%> FROM <%prefix%>News', NULL, 'la_prompt_LastArticleUpdate', 0, 2); +INSERT INTO StatItem VALUES (DEFAULT, 'In-News', 'SELECT COUNT(*) FROM <%prefix%>CatalogReviews WHERE Module = \'<%modules:get_current%>\'', NULL, 'la_prompt_ArticleReviews', 0, 2); + +INSERT INTO Permissions VALUES (DEFAULT, 'NEWS.VIEW', 14, 1, 0, {NewsCatId}); +INSERT INTO Permissions VALUES (DEFAULT, 'FAVORITES', 13, 1, 0, {NewsCatId}); +INSERT INTO Permissions VALUES (DEFAULT, 'NEWS.VIEW', 13, 1, 0, {NewsCatId}); +INSERT INTO Permissions VALUES (DEFAULT, 'NEWS.RATE', 13, 1, 0, {NewsCatId}); +INSERT INTO Permissions VALUES (DEFAULT, 'NEWS.REVIEW', 13, 1, 0, {NewsCatId}); +INSERT INTO Permissions VALUES (DEFAULT, 'NEWS.ADD', 13, 1, 0, {NewsCatId}); +INSERT INTO Permissions VALUES (DEFAULT, 'NEWS.OWNER.MODIFY', 13, 1, 0, {NewsCatId}); +INSERT INTO Permissions VALUES (DEFAULT, 'NEWS.OWNER.MODIFY.PENDING', 13, 1, 0, {NewsCatId}); +INSERT INTO Permissions VALUES (DEFAULT, 'NEWS.OWNER.DELETE', 13, 1, 0, {NewsCatId}); +INSERT INTO Permissions VALUES (DEFAULT, 'FAVORITES', 11, 1, 0, {NewsCatId}); +INSERT INTO Permissions VALUES (DEFAULT, 'NEWS.VIEW', 11, 1, 0, {NewsCatId}); +INSERT INTO Permissions VALUES (DEFAULT, 'NEWS.ADD', 11, 1, 0, {NewsCatId}); +INSERT INTO Permissions VALUES (DEFAULT, 'NEWS.DELETE', 11, 1, 0, {NewsCatId}); +INSERT INTO Permissions VALUES (DEFAULT, 'NEWS.MODIFY', 11, 1, 0, {NewsCatId}); +INSERT INTO Permissions VALUES (DEFAULT, 'NEWS.RATE', 11, 1, 0, {NewsCatId}); +INSERT INTO Permissions VALUES (DEFAULT, 'NEWS.REVIEW', 11, 1, 0, {NewsCatId}); +INSERT INTO Permissions VALUES (DEFAULT, 'FAVORITES', 12, 1, 0, {NewsCatId}); +INSERT INTO Permissions VALUES (DEFAULT, 'NEWS.VIEW', 12, 1, 0, {NewsCatId}); +INSERT INTO Permissions VALUES (DEFAULT, 'NEWS.RATE', 12, 1, 0, {NewsCatId}); +INSERT INTO Permissions VALUES (DEFAULT, 'NEWS.REVIEW.PENDING', 12, 1, 0, {NewsCatId}); +INSERT INTO Permissions VALUES (DEFAULT, 'NEWS.ADD.PENDING', 12, 1, 0, {NewsCatId}); +INSERT INTO Permissions VALUES (DEFAULT, 'NEWS.OWNER.MODIFY', 12, 1, 0, {NewsCatId}); +INSERT INTO Permissions VALUES (DEFAULT, 'NEWS.OWNER.MODIFY.PENDING', 12, 1, 0, {NewsCatId}); +INSERT INTO Permissions VALUES (DEFAULT, 'NEWS.VIEW', 15, 0, 0, 0); +INSERT INTO Permissions VALUES (DEFAULT, 'NEWS.ADD', 15, 0, 0, 0); +INSERT INTO Permissions VALUES (DEFAULT, 'NEWS.DELETE', 15, 0, 0, 0); +INSERT INTO Permissions VALUES (DEFAULT, 'NEWS.MODIFY', 15, 0, 0, 0); +INSERT INTO Permissions VALUES (DEFAULT, 'NEWS.RATE', 15, 0, 0, 0); +INSERT INTO Permissions VALUES (DEFAULT, 'NEWS.REVIEW', 15, 0, 0, 0); +INSERT INTO Permissions VALUES (DEFAULT, 'NEWS.REVIEW.PENDING', 15, 0, 0, 0); +INSERT INTO Permissions VALUES (DEFAULT, 'NEWS.ADD.PENDING', 15, 0, 0, 0); +INSERT INTO Permissions VALUES (DEFAULT, 'NEWS.MODIFY.PENDING', 15, 0, 0, 0); +INSERT INTO Permissions VALUES (DEFAULT, 'NEWS.OWNER.MODIFY', 15, 0, 0, 0); +INSERT INTO Permissions VALUES (DEFAULT, 'NEWS.OWNER.MODIFY.PENDING', 15, 0, 0, 0); +INSERT INTO Permissions VALUES (DEFAULT, 'NEWS.OWNER.DELETE', 15, 0, 0, 0); +INSERT INTO Permissions VALUES (DEFAULT, 'in-news.view', 11, 1, 1, 0); +INSERT INTO Permissions VALUES (DEFAULT, 'in-news:articles.view', 11, 1, 1, 0); +INSERT INTO Permissions VALUES (DEFAULT, 'in-news:setting_folder.view', 11, 1, 1, 0); +INSERT INTO Permissions VALUES (DEFAULT, 'in-news:configuration_output.view', 11, 1, 1, 0); +INSERT INTO Permissions VALUES (DEFAULT, 'in-news:configuration_output.add', 11, 1, 1, 0); +INSERT INTO Permissions VALUES (DEFAULT, 'in-news:configuration_output.edit', 11, 1, 1, 0); +INSERT INTO Permissions VALUES (DEFAULT, 'in-news:configuration_search.view', 11, 1, 1, 0); +INSERT INTO Permissions VALUES (DEFAULT, 'in-news:configuration_search.edit', 11, 1, 1, 0); +INSERT INTO Permissions VALUES (DEFAULT, 'in-news:configuration_custom.view', 11, 1, 1, 0); +INSERT INTO Permissions VALUES (DEFAULT, 'in-news:configuration_custom.add', 11, 1, 1, 0); +INSERT INTO Permissions VALUES (DEFAULT, 'in-news:configuration_custom.edit', 11, 1, 1, 0); +INSERT INTO Permissions VALUES (DEFAULT, 'in-news:configuration_custom.delete', 11, 1, 1, 0); + +INSERT INTO ImportScripts VALUES (DEFAULT, 'Articles from CSV file [In-News]', '', 'n', 'In-News', '', 'CSV', '1'); + +INSERT INTO Modules VALUES ('In-News', 'modules/in-news/', 'Intechnic\\InPortal\\Modules\\InNews', 'n', DEFAULT, 1, 2, 'in-news/', {NewsCatId}, NULL, NULL); \ No newline at end of file Property changes on: releases/5.2.1/install/install_data.sql ___________________________________________________________________ Added: cvs2svn:cvs-rev + 1.1.2.7 Added: svn:eol-style + LF Index: releases/5.2.1/install.php =================================================================== --- releases/5.2.1/install.php (revision 0) +++ releases/5.2.1/install.php (revision 16072) @@ -0,0 +1,58 @@ +toolkit; + /* @var $toolkit kInstallToolkit */ +} + +$application =& kApplication::Instance(); +$application->Init(); + +if ( $application->RecallVar('user_id') != USER_ROOT ) { + die('restricted access!'); +} + +$category =& $toolkit->createModuleCategory('News', 'News Articles', '#in-news/section_design#', 'in-news/img/menu_articles.gif'); + +$toolkit->RunSQL('/' . $module_folder . '/install/install_schema.sql'); +$toolkit->RunSQL('/' . $module_folder . '/install/install_data.sql', '{NewsCatId}', $category->GetID()); +$toolkit->ImportLanguage('/' . $module_folder . '/install/english'); + +$toolkit->SetModuleRootCategory(basename($module_folder), $category->GetID()); + +$toolkit->linkCustomFields(basename($module_folder), 'n', 2); // to create Custom Fields for News +$toolkit->linkCustomFields('KERNEL', 'c', 1); // to create ItemTemplate custom field +$toolkit->setModuleItemTemplate($category, 'n', '#in-news/item_design#'); + +$toolkit->finalizeModuleInstall($module_folder, true); Property changes on: releases/5.2.1/install.php ___________________________________________________________________ Added: cvs2svn:cvs-rev + 1.1.2.4 Added: svn:keywords + Id Added: svn:eol-style + LF Property changes on: releases/5.2.1 ___________________________________________________________________ Added: tsvn:autoprops + *.php = svn:eol-style=LF;svn:keywords=Id *.tpl = svn:eol-style=LF *.sql = svn:eol-style=LF *.lang = svn:eol-style=LF *.sh = svn:eol-style=LF;svn:executable *.txt = svn:eol-style=LF *.html = svn:eol-style=LF *.htm = svn:eol-style=LF *.css = svn:eol-style=LF *.js = svn:eol-style=LF *.xml = svn:eol-style=LF .htaccess = svn:eol-style=LF .smsignore = svn:eol-style=LF COPYRIGHT = svn:eol-style=LF CREDITS = svn:eol-style=LF INSTALL = svn:eol-style=LF LICENSE = svn:eol-style=LF LICENSES = svn:eol-style=LF README = svn:eol-style=LF Added: bugtraq:url + http://tracker.in-portal.org/view.php?id=%BUGID% Added: bugtraq:logregex + (?:[Bb]ugs?|[Ii]ssues?|[Rr]eports?|[Ff]ixe?s?|[Rr]esolves?)+\s+(?:#?(?:\d+)[,\.\s]*)+ (\d+) Added: bugtraq:warnifnoissue + false Added: svn:mergeinfo Merged /in-news/releases/5.0.1:r12619-12655 Merged /modules/in-news/branches/5.0.x:r12747-13722 Merged /modules/in-news/branches/5.1.x:r13843-14549 Merged /in-news/branches/5.0.x:r12119-12746 Merged /modules/in-news/releases/5.0.2:r13077-13095 Merged /modules/in-news/releases/5.1.1:r14074-14090 Merged /modules/in-news/releases/5.0.3:r13508-13550 Merged /modules/in-news/releases/5.1.2:r14310-14570 Merged /modules/in-news/releases/5.0.4:r13723-13746 Merged /modules/in-news/releases/5.1.3:r14550-14583