Page MenuHomeIn-Portal Phabricator

custom
No OneTemporary

File Metadata

Created
Mon, Aug 11, 8:20 AM
Index: branches/RC/custom/units/widgets/widgets_config.php
===================================================================
--- branches/RC/custom/units/widgets/widgets_config.php (revision 11987)
+++ branches/RC/custom/units/widgets/widgets_config.php (revision 11988)
@@ -1,212 +1,212 @@
<?php
-/**
- * Sample config file for widgets
- *
- * @author dmitrya
- * @package Development Kit
- */
-
-
-$config = Array(
-
- 'Prefix' => 'widget',
-
- 'ItemClass' => Array ('class' => 'kDBItem', 'file' => '', 'build_event' => 'OnItemBuild'),
- 'ListClass' => Array ('class' => 'kDBList', 'file'=> '', 'build_event' => 'OnListBuild'),
-
- 'EventHandlerClass' => Array ('class' => 'WidgetEventHandler', 'file' => 'widget_eh.php', 'build_event' => 'OnBuild'),
- 'TagProcessorClass' => Array ('class' => 'WidgetTagProcessor', 'file' => 'widget_tp.php', 'build_event' => 'OnBuild'),
-
- 'AutoLoad' => true,
-
- 'QueryString' => Array (
- 1 => 'id',
- 2 => 'Page',
- 3 => 'event',
- 4 => 'mode',
- ),
-
- 'IDField' => 'TestId',
-
- 'StatusField' => Array ('Status'),
-
- 'TableName' => TABLE_PREFIX.'Widgets',
-
-/*
- 'ForeignKey' => 'ParentId', // field title in TableName, linking record to a parent
- 'ParentTableKey' => 'ParentId', // id (or other key) field title in parent's table
- 'ParentPrefix' => 'parent',
- 'AutoDelete' => true, // delete these items when parent is being deleted
- 'AutoClone' => true, // clone these items when parent is being cloned
-*/
-
- 'TitlePresets' => Array (
- 'default' => Array (
- 'new_status_labels' => Array ('test' => '!la_title_AddingWidget!'),
- 'edit_status_labels' => Array ('test' => '!la_title_EditingWidget!'),
- ),
-
- 'widget_list' => Array (
- 'prefixes' => Array ('widget_List'), 'format' => '#section_label#',
- 'toolbar_buttons' => Array (),
- ),
-
- 'widget_edit' => Array (
- 'prefixes' => Array ('test'), 'format' => '#widget_status# #widget_titlefield#',
- 'toolbar_buttons' => Array (),
- ),
- ),
-
- 'PermSection' => Array('main' => 'custom:widgets'),
- // don't forget to add corresponding permissions to install script
- // INSERT INTO Permissions VALUES (0, 'custom:custom.view', 11, 1, 1, 0);
- // INSERT INTO Permissions VALUES (0, 'custom:widgets.view', 11, 1, 1, 0), (0, 'custom:widgets.add', 11, 1, 1, 0), (0, 'custom:widgets.edit', 11, 1, 1, 0), (0, 'custom:widgets.delete', 11, 1, 1, 0);
-
- 'Sections' => Array (
- 'custom:tests' => Array (
- 'parent' => 'custom',
- 'icon' => 'custom:widgets',
- 'label' => 'la_tab_Widgets',
- 'url' => Array ('t' => 'custom/widgets/widget_list', 'pass' => 'm'),
- 'permissions' => Array ('view', 'add', 'edit', 'delete'),
- 'priority' => 1,
- 'type' => stTREE,
- ),
- ),
-
- 'TitleField' => 'LastName', // field, used in bluebar when editing existing item
-
- // Use %1$s for local table name with prefix, %2$s for calculated fields
- 'ListSQLs' => Array ( // key - special, value - list select sql
- '' => 'SELECT %1$s.* %2$s
- FROM %1$s',
- ),
-
- 'ItemSQLs' => Array (
- '' => 'SELECT %1$s.* %2$s
- FROM %1$s',
- ),
-
- 'ListSortings' => Array (
- '' => Array (
-// 'ForcedSorting' => Array ('Priority' => 'desc'),
- 'Sorting' => Array ('Title' => 'asc'),
- )
- ),
-
- 'Fields' => Array (
- 'WidgetId' => Array ('type' => 'int', 'not_null' => 1, 'default' => 0),
- 'Title' => Array ('type' => 'string', 'not_null' => '1', 'default' => '', 'required' => true, 'max_len' => 255),
- 'Description' => Array ('type' => 'string', 'formatter' => 'kFormatter', 'using_fck' => 1, 'default' => null),
- 'Email' => Array(
- 'type' => 'string', 'formatter' => 'kFormatter',
- 'regexp'=> '/^(' . REGEX_EMAIL_USER . '@' . REGEX_EMAIL_DOMAIN . ')$/i',
- 'sample_value' => 'email@domain.com',
- 'not_null' => 1, 'default' => '',
- 'error_msgs' => Array ('invalid_format' => '!la_invalid_email!')
- ),
- 'Type' => Array (
- 'type' => 'int',
- 'formatter' => 'kOptionsFormatter', 'use_phrases' => 1,
- 'options' => Array (
- 1 => 'la_default_type',
- 2 => 'la_some_type',
- 3 => 'la_another_type',
- ),
- 'not_null' => 1,
- 'default' => 1,
- 'required' => 1,
- ),
- 'Phone' => Array (
- 'type' => 'string', 'formatter' => 'kFormatter',
- 'default' => '', 'using_fck' => 1, 'not_null' => 1),
- 'Qty' => Array ('type' => 'double', 'required' => 0, '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,
- ),
- 'CreatedOn' => Array(
- 'type' => 'int', 'formatter' => 'kDateFormatter',
- 'time_format' => '', 'input_time_format' => '', 'default'=>'#NOW#', 'not_null' => true),
-
- 'Good' => Array(
- 'type' => 'int', 'formatter' => 'kOptionsFormatter',
- 'options' => Array(1 => 'la_Yes', 0 => 'la_No'),
- 'use_phrases' => 1, 'not_null' => 1, 'default' => 0
- ),
- 'BirthTime' => Array(
- 'type' => 'int', 'formatter' => 'kDateFormatter',
- 'date_format' => '', 'input_date_format' => '',
- 'default' => null
- ),
- 'Image' => Array(
- 'type' => 'string', 'formatter' => 'kUploadFormatter',
- 'max_size' => MAX_UPLOAD_SIZE, // in Bytes !
- 'file_types' => '*.jpg;*.gif;*.png', 'files_description'=>'!la_ImageFiles!',
- 'upload_dir' => '/system/user_files/', // relative to project's home
- 'as_image' => true, 'thumb_width' => 100, 'thumb_height' => 100,
- 'multiple' => false, // false or max number of files - will be stored as serialized array of paths
- 'direct_links' => false, // use direct file urls or send files through wrapper (requires mod_mime_magic)
- 'required' => 1, 'default' => null
- ),
- 'DataFile' => Array(
- 'type' => 'string', 'formatter'=>'kUploadFormatter',
- 'max_size' => MAX_UPLOAD_SIZE, // in Bytes !
- 'file_types' => '*.*',
- 'files_description' => '!la_AllFiles!',
- 'upload_dir' => '/system/user_files/', // relative to project's home
- 'as_image' => false,
- 'multiple' => 5, // false or max number of files - will be stored as serialized array of paths
- 'direct_links' => true, // use direct file urls or send files through wrapper (requires mod_mime_magic)
- 'default' => null
- ),
- ),
-
- 'Grids' => Array (
- 'Default' => Array (
-// 'Icons' => Array ('default' => 'icon16_custom.gif'),
- 'Fields' => Array (
- 'TestId' => Array ('title' => 'la_col_Id', 'data_block' => 'grid_checkbox_td', 'filter_block' => 'grid_range_filter'),
- 'Title' => Array ('title' => 'la_col_TestName', 'data_block' => 'grid_delete_td'),
- 'Image' => Array ('title' => 'la_col_Image', 'data_block' => 'grid_image_td'),
- 'Type' => Array ('title' => 'la_col_Type', 'filter_block' => 'grid_options_filter'),
- 'Status' => Array ('title' => 'la_col_Status', 'filter_block' => 'grid_options_filter'),
- 'Good' => Array ('title' => 'la_col_Good'),
- 'Qty' => Array ('title' => 'la_col_Qty', 'header_block' => 'grid_column_title_no_sorting', 'filter_block' => 'grid_float_range_filter'),
- 'Email' => Array ('title' => 'la_col_Email'),
- 'Phone' => Array ('title' => 'la_col_Phone'),
- 'CreatedOn' => Array ('title' => 'la_col_CreatedOn', 'filter_block' => 'grid_date_range_filter'),
- 'Description' => Array ('title' => 'la_col_Description'),
-// 'BirthTime' => Array ('title' => 'la_col_BirthTime', 'filter_block' => 'grid_date_range_filter'),
- ),
- ),
- ),
-
- 'ConfigMapping' => Array(
- 'PerPage' => 'Comm_Perpage_Tests',
- 'ShortListPerPage' => 'Comm_Perpage_Tests_Short',
- ),
-);
+ /**
+ * Sample config file for widgets
+ *
+ * @author dmitrya
+ * @package Development Kit
+ */
+
+ $config = Array(
+
+ 'Prefix' => 'widget',
+
+ 'ItemClass' => Array ('class' => 'kDBItem', 'file' => '', 'build_event' => 'OnItemBuild'),
+ 'ListClass' => Array ('class' => 'kDBList', 'file'=> '', 'build_event' => 'OnListBuild'),
+
+ 'EventHandlerClass' => Array ('class' => 'WidgetEventHandler', 'file' => 'widget_eh.php', 'build_event' => 'OnBuild'),
+ 'TagProcessorClass' => Array ('class' => 'WidgetTagProcessor', 'file' => 'widget_tp.php', 'build_event' => 'OnBuild'),
+
+ 'AutoLoad' => true,
+
+ 'QueryString' => Array (
+ 1 => 'id',
+ 2 => 'Page',
+ 3 => 'event',
+ 4 => 'mode',
+ ),
+
+ 'IDField' => 'TestId',
+
+ 'StatusField' => Array ('Status'),
+
+ 'TableName' => TABLE_PREFIX.'Widgets',
+
+ /*
+ 'ForeignKey' => 'ParentId', // field title in TableName, linking record to a parent
+ 'ParentTableKey' => 'ParentId', // id (or other key) field title in parent's table
+ 'ParentPrefix' => 'parent',
+ 'AutoDelete' => true, // delete these items when parent is being deleted
+ 'AutoClone' => true, // clone these items when parent is being cloned
+ */
+
+ 'TitlePresets' => Array (
+ 'default' => Array (
+ 'new_status_labels' => Array ('widget' => '!la_title_AddingWidget!'),
+ 'edit_status_labels' => Array ('widget' => '!la_title_EditingWidget!'),
+ 'new_titlefield' => Array ('widget' => '!la_title_New_Widget!'),
+ ),
+
+ 'widget_list' => Array (
+ 'prefixes' => Array ('widget_List'), 'format' => '#section_label#',
+ 'toolbar_buttons' => Array ('new_item', 'edit', 'delete', 'export', 'import', 'view', 'dbl-click',),
+ ),
+
+ 'widget_edit' => Array (
+ 'prefixes' => Array ('widget'), 'format' => '#widget_status# #widget_titlefield#',
+ 'toolbar_buttons' => Array ('select', 'cancel', 'reset_edit', 'prev', 'next'),
+ ),
+ ),
+
+ 'PermSection' => Array('main' => 'custom:widgets'),
+ // don't forget to add corresponding permissions to install script
+ // INSERT INTO Permissions VALUES (0, 'custom:custom.view', 11, 1, 1, 0);
+ // INSERT INTO Permissions VALUES (0, 'custom:widgets.view', 11, 1, 1, 0), (0, 'custom:widgets.add', 11, 1, 1, 0), (0, 'custom:widgets.edit', 11, 1, 1, 0), (0, 'custom:widgets.delete', 11, 1, 1, 0);
+
+ 'Sections' => Array (
+ 'custom:tests' => Array (
+ 'parent' => 'custom',
+ 'icon' => 'custom:widgets',
+ 'label' => 'la_tab_Widgets',
+ 'url' => Array ('t' => 'custom/widgets/widget_list', 'pass' => 'm'),
+ 'permissions' => Array ('view', 'add', 'edit', 'delete'),
+ 'priority' => 1,
+ 'type' => stTREE,
+ ),
+ ),
+
+ 'TitleField' => 'LastName', // field, used in bluebar when editing existing item
+
+ // Use %1$s for local table name with prefix, %2$s for calculated fields
+ 'ListSQLs' => Array ( // key - special, value - list select sql
+ '' => 'SELECT %1$s.* %2$s
+ FROM %1$s',
+ ),
+
+ 'ItemSQLs' => Array (
+ '' => 'SELECT %1$s.* %2$s
+ FROM %1$s',
+ ),
+
+ 'ListSortings' => Array (
+ '' => Array (
+ // 'ForcedSorting' => Array ('Priority' => 'desc'),
+ 'Sorting' => Array ('Title' => 'asc'),
+ )
+ ),
+
+ 'Fields' => Array (
+ 'WidgetId' => Array ('type' => 'int', 'not_null' => 1, 'default' => 0),
+ 'Title' => Array ('type' => 'string', 'not_null' => '1', 'default' => '', 'required' => true, 'max_len' => 255),
+ 'Description' => Array ('type' => 'string', 'formatter' => 'kFormatter', 'using_fck' => 1, 'default' => null),
+ 'Email' => Array(
+ 'type' => 'string', 'formatter' => 'kFormatter',
+ 'regexp'=> '/^(' . REGEX_EMAIL_USER . '@' . REGEX_EMAIL_DOMAIN . ')$/i',
+ 'sample_value' => 'email@domain.com',
+ 'not_null' => 1, 'default' => '',
+ 'error_msgs' => Array ('invalid_format' => '!la_invalid_email!')
+ ),
+ 'Type' => Array (
+ 'type' => 'int',
+ 'formatter' => 'kOptionsFormatter', 'use_phrases' => 1,
+ 'options' => Array (
+ 1 => 'la_default_type',
+ 2 => 'la_some_type',
+ 3 => 'la_another_type',
+ ),
+ 'not_null' => 1,
+ 'default' => 1,
+ 'required' => 1,
+ ),
+ 'Phone' => Array (
+ 'type' => 'string', 'formatter' => 'kFormatter',
+ 'default' => '', 'using_fck' => 1, 'not_null' => 1),
+ 'Qty' => Array ('type' => 'double', 'required' => 0, '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,
+ ),
+ 'CreatedOn' => Array (
+ 'type' => 'int', 'formatter' => 'kDateFormatter',
+ 'time_format' => '', 'input_time_format' => '', 'default'=>'#NOW#', 'not_null' => true),
+
+ 'Good' => Array (
+ 'type' => 'int', 'formatter' => 'kOptionsFormatter',
+ 'options' => Array(1 => 'la_Yes', 0 => 'la_No'),
+ 'use_phrases' => 1, 'not_null' => 1, 'default' => 0
+ ),
+ 'BirthTime' => Array (
+ 'type' => 'int', 'formatter' => 'kDateFormatter',
+ 'date_format' => '', 'input_date_format' => '',
+ 'default' => null
+ ),
+ 'Image' => Array(
+ 'type' => 'string', 'formatter' => 'kUploadFormatter',
+ 'max_size' => MAX_UPLOAD_SIZE, // in Bytes !
+ 'file_types' => '*.jpg;*.gif;*.png', 'files_description'=>'!la_ImageFiles!',
+ 'upload_dir' => '/system/user_files/', // relative to project's home
+ 'as_image' => true, 'thumb_width' => 100, 'thumb_height' => 100,
+ 'multiple' => false, // false or max number of files - will be stored as serialized array of paths
+ 'direct_links' => false, // use direct file urls or send files through wrapper (requires mod_mime_magic)
+ 'required' => 1, 'default' => null
+ ),
+ 'DataFile' => Array(
+ 'type' => 'string', 'formatter'=>'kUploadFormatter',
+ 'max_size' => MAX_UPLOAD_SIZE, // in Bytes !
+ 'file_types' => '*.*',
+ 'files_description' => '!la_AllFiles!',
+ 'upload_dir' => '/system/user_files/', // relative to project's home
+ 'as_image' => false,
+ 'multiple' => 5, // false or max number of files - will be stored as serialized array of paths
+ 'direct_links' => true, // use direct file urls or send files through wrapper (requires mod_mime_magic)
+ 'default' => null
+ ),
+ ),
+
+ 'Grids' => Array (
+ 'Default' => Array (
+ // 'Icons' => Array ('default' => 'icon16_custom.gif'),
+ 'Fields' => Array (
+ 'TestId' => Array ('title' => 'la_col_Id', 'data_block' => 'grid_checkbox_td', 'filter_block' => 'grid_range_filter'),
+ 'Title' => Array ('title' => 'la_col_TestName', 'data_block' => 'grid_delete_td'),
+ 'Image' => Array ('title' => 'la_col_Image', 'data_block' => 'grid_image_td'),
+ 'Type' => Array ('title' => 'la_col_Type', 'filter_block' => 'grid_options_filter'),
+ 'Status' => Array ('title' => 'la_col_Status', 'filter_block' => 'grid_options_filter'),
+ 'Good' => Array ('title' => 'la_col_Good'),
+ 'Qty' => Array ('title' => 'la_col_Qty', 'header_block' => 'grid_column_title_no_sorting', 'filter_block' => 'grid_float_range_filter'),
+ 'Email' => Array ('title' => 'la_col_Email'),
+ 'Phone' => Array ('title' => 'la_col_Phone'),
+ 'CreatedOn' => Array ('title' => 'la_col_CreatedOn', 'filter_block' => 'grid_date_range_filter'),
+ 'Description' => Array ('title' => 'la_col_Description'),
+ // 'BirthTime' => Array ('title' => 'la_col_BirthTime', 'filter_block' => 'grid_date_range_filter'),
+ ),
+ ),
+ ),
+
+ 'ConfigMapping' => Array (
+ 'PerPage' => 'Comm_Perpage_Tests',
+ 'ShortListPerPage' => 'Comm_Perpage_Tests_Short',
+ ),
+ );
/**
/* DO NOT FORGET TO:
1. Add table create statement to install_schema.sql
CREATE TABLE Widgets (
`WidgetId` INT NOT NULL AUTO_INCREMENT PRIMARY KEY ,
`Title` VARCHAR( 255 ) NOT NULL ,
`Description` TEXT NULL ,
`Email` VARCHAR( 255 ) NOT NULL ,
`Type` TINYINT NOT NULL ,
`Phone` VARCHAR( 50 ) NOT NULL ,
`Qty` DOUBLE NOT NULL ,
`Status` TINYINT NOT NULL ,
`CreatedOn` INT NOT NULL ,
`Good` TINYINT NOT NULL
)
2. Add permissions for admin gorup to install script (see 'Sections' key above)
*/
\ No newline at end of file

Event Timeline