Page Menu
Home
In-Portal Phabricator
Search
Configure Global Search
Log In
Files
F772665
custom
No One
Temporary
Actions
View File
Edit File
Delete File
View Transforms
Subscribe
Mute Notifications
Award Token
Flag For Later
Subscribers
None
File Metadata
Details
File Info
Storage
Attached
Created
Sat, Feb 1, 1:42 PM
Size
16 KB
Mime Type
text/x-diff
Expires
Mon, Feb 3, 1:42 PM (1 d, 2 h)
Engine
blob
Format
Raw Data
Handle
555978
Attached To
rMCUS Modules.Custom
custom
View Options
Index: branches/1.1.x/units/widgets/widgets_config.php
===================================================================
--- branches/1.1.x/units/widgets/widgets_config.php (revision 13545)
+++ branches/1.1.x/units/widgets/widgets_config.php (revision 13546)
@@ -1,207 +1,218 @@
<?php
/**
* Sample config file for widgets
*
* @author dmitrya
* @package Development Kit
*/
defined('FULL_PATH') or die('restricted access!');
- $config = Array(
+ $config = Array (
'Prefix' => 'widget',
'ItemClass' => Array ('class' => 'kDBItem', 'file' => '', 'build_event' => 'OnItemBuild'),
- 'ListClass' => Array ('class' => 'kDBList', 'file'=> '', 'build_event' => 'OnListBuild'),
+ '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 => 'PerPage',
4 => 'event',
5 => 'mode',
),
// in case, when one method does everything
'RewriteListener' => 'WidgetRewriteListener',
// in case, when building and parsing is done by separate methods
// 'RewriteListener' => Array ('WidgetRewriteBuilder', 'WidgetRewriteParser'),
'IDField' => 'WidgetId',
'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
*/
// used to build editing links in admin grids
'AdminTemplatePath' => 'widgets',
'AdminTemplatePrefix' => 'widget_',
'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_NewWidget!'),
),
'widget_list' => Array (
'prefixes' => Array ('widget_List'), 'format' => '#section_label#',
'toolbar_buttons' => Array ('new_item', 'edit', 'delete', 'approve', 'decline', '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'),
+ 'PermSection' => Array ('main' => 'custom:widgets'),
'Sections' => Array (
'custom:widgets' => Array (
'parent' => 'custom',
'icon' => 'custom',
'label' => 'la_tab_Widgets',
'url' => Array ('t' => 'custom/widgets/widget_list', 'pass' => 'm'),
'permissions' => Array ('view', 'add', 'edit', 'delete'),
- 'priority' => 1,
+ 'priority' => 1,
'type' => stTREE,
),
),
'TitleField' => 'Title', // 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'),
)
),
'VirtualFields' => Array (
'VirtualActionField' => Array ('type' => 'string', 'default' => ''),
),
-
+
'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(
+ 'Title' => Array (
+ 'type' => 'string', 'max_len' => 255,
+ 'required' => 1, 'default' => '', 'not_null' => 1,
+ ),
+ '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',
+ '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!')
+ 'error_msgs' => Array ('invalid_format' => '!la_invalid_email!'),
),
'Type' => Array (
'type' => 'int',
'formatter' => 'kOptionsFormatter', 'use_phrases' => 1,
'options' => Array (
1 => 'la_opt_Default',
2 => 'la_opt_Custom',
),
'not_null' => 1,
'default' => 1,
'required' => 1,
),
'Phone' => Array (
- 'type' => 'string', 'formatter' => 'kFormatter',
+ 'type' => 'string',
+ 'formatter' => 'kFormatter',
'default' => '', 'using_fck' => 1, 'not_null' => 1),
- 'Qty' => Array ('type' => 'double', 'required' => 0, 'not_null' => 1, 'default' => 0),
+ '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#'),
-
+ 'type' => 'int',
+ 'formatter' => 'kDateFormatter',
+ 'time_format' => '', 'input_time_format' => '',
+ 'default' => '#NOW#',
+ ),
'Good' => Array (
'type' => 'int', 'formatter' => 'kOptionsFormatter',
- 'options' => Array(1 => 'la_Yes', 0 => 'la_No'),
+ '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(
+ 'Image' => Array (
'type' => 'string', 'formatter' => 'kUploadFormatter',
'max_size' => MAX_UPLOAD_SIZE, // in Bytes !
- 'file_types' => '*.jpg;*.gif;*.png', 'files_description'=>'!la_hint_ImageFiles!',
+ 'file_types' => '*.jpg;*.gif;*.png', 'files_description' => '!la_hint_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',
+ 'DataFile' => Array (
+ 'type' => 'string', 'formatter' => 'kUploadFormatter',
'max_size' => MAX_UPLOAD_SIZE, // in Bytes !
'file_types' => '*.*',
'files_description' => '!la_hint_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 (
'WidgetId' => Array ('title' => 'la_col_Id', 'data_block' => 'grid_checkbox_td', 'filter_block' => 'grid_range_filter'),
'Title' => Array ('title' => 'la_col_Name', 'data_block' => 'grid_custom_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'),
'VirtualActionField' => Array ('title' => 'la_col_Action', 'data_block' => 'grid_delete_td'),
),
),
),
'ConfigMapping' => Array (
'PerPage' => 'Comm_Perpage_Widgets',
'ShortListPerPage' => 'Comm_Perpage_Widgets_Short',
),
);
Index: branches/1.1.x/admin_templates/widgets/widget_list.tpl
===================================================================
--- branches/1.1.x/admin_templates/widgets/widget_list.tpl (revision 13545)
+++ branches/1.1.x/admin_templates/widgets/widget_list.tpl (revision 13546)
@@ -1,139 +1,139 @@
<inp2:m_include t="incs/header" />
<inp2:m_RenderElement name="combined_header" prefix="widget" section="custom:widgets" title_preset="widget_list" pagination="1"/>
<!-- ToolBar -->
<table class="toolbar" height="30" cellspacing="0" cellpadding="0" width="100%" border="0">
<tbody>
<tr>
<td>
<table width="100%" cellpadding="0" cellspacing="0">
<tr>
<td >
<script type="text/javascript">
a_toolbar = new ToolBar();
a_toolbar.AddButton(
new ToolBarButton(
'new_item',
'<inp2:m_phrase label="la_ToolTip_NewWidget" escape="1"/>::<inp2:m_phrase label="la_Add" escape="1"/>',
function() {
std_precreate_item('widget', 'custom/widgets/widget_edit')
}
)
);
function edit() {
std_edit_item('widget', 'custom/widgets/widget_edit');
}
a_toolbar.AddButton(
new ToolBarButton(
'edit',
'<inp2:m_phrase label="la_ToolTip_Edit" escape="1"/>::<inp2:m_phrase label="la_ShortToolTip_Edit" escape="1"/>',
edit
)
);
a_toolbar.AddButton(
new ToolBarButton(
'delete',
'<inp2:m_phrase label="la_ToolTip_Delete" escape="1"/>',
function() {
std_delete_items('widget');
}
)
);
a_toolbar.AddButton( new ToolBarSeparator('sep1') );
a_toolbar.AddButton(
new ToolBarButton(
'approve',
'<inp2:m_phrase label="la_ToolTip_Approve" escape="1"/>',
function() {
submit_event('widget', 'OnMassApprove');
}
)
);
a_toolbar.AddButton(
new ToolBarButton(
'decline',
'<inp2:m_phrase label="la_ToolTip_Decline" escape="1"/>',
function() {
submit_event('widget', 'OnMassDecline');
}
)
);
a_toolbar.AddButton( new ToolBarSeparator('sep2') );
a_toolbar.AddButton(
new ToolBarButton(
'export',
'<inp2:m_phrase label="la_ToolTip_Export" escape="1"/>',
function() {
std_csv_export('widget', 'Default', 'export/export_progress');
}
)
);
a_toolbar.AddButton(
new ToolBarButton(
'import',
'<inp2:m_phrase label="la_ToolTip_Import" escape="1"/>',
function() {
std_csv_import('widget', 'Default', 'import/import_start');
}
)
);
a_toolbar.AddButton( new ToolBarSeparator('sep3') );
a_toolbar.AddButton(
new ToolBarButton(
'view',
'<inp2:m_phrase label="la_ToolTip_View" escape="1"/>',
function(id) {
show_viewmenu(a_toolbar,'view');
}
)
);
a_toolbar.Render();
</script>
</td>
<inp2:m_RenderElement name="search_main_toolbar" prefix="widget" grid="Default"/>
</tr>
</table>
</td>
</tr>
</tbody>
</table>
<style type="text/css">
.red-row td.Status {
background-color: red;
}
</style>
<inp2:m_DefineElement name="grid_image_td">
<img src="<inp2:Field name='$field' format='resize:120x120'/>" <inp2:Field name='$field' format='resize:120x120;img_size' no_special='1'/> alt=""/><br />
</inp2:m_DefineElement>
<inp2:m_DefineElement name="grid_delete_td">
<a href="<inp2:m_Link {$PrefixSpecial}_event='OnDelete' pass='m,$PrefixSpecial'/>" onclick="return confirm('Delete Record?')">Delete</a>
</inp2:m_DefineElement>
<inp2:m_DefineElement name="grid_custom_td">
<a href="<inp2:ItemEditLink/>" title="<inp2:m_Phrase name='la_Text_Edit' no_editing='1'/>" onclick="return direct_edit('<inp2:m_param name="PrefixSpecial"/>', this.href);"><inp2:Field field="$field" grid="$grid" format="$format"/></a>
</inp2:m_DefineElement>
-<inp2:m_RenderElement name="grid" PrefixSpecial="widget" IdField="WidgetId" grid="Default" grid_filters="1" max_row_height="100"/>
+<inp2:m_RenderElement name="grid" PrefixSpecial="widget" IdField="WidgetId" grid="Default" max_row_height="100"/>
<script type="text/javascript">
Grids['widget'].SetDependantToolbarButtons( new Array('edit', 'delete', 'approve', 'decline') );
</script>
<inp2:m_include t="incs/footer"/>
\ No newline at end of file
Index: branches/1.1.x/install/upgrades.sql
===================================================================
--- branches/1.1.x/install/upgrades.sql (revision 13545)
+++ branches/1.1.x/install/upgrades.sql (revision 13546)
@@ -1,17 +1,23 @@
# ===== v 1.0.0 =====
# ===== v 1.0.1 =====
UPDATE Modules SET LoadOrder = 10 WHERE `Name` = 'Custom';
# ===== v 1.0.2-B1 =====
ALTER TABLE Widgets CHANGE CreatedOn CreatedOn INT(11) NULL DEFAULT NULL;
UPDATE Modules SET TemplatePath = 'custom/' WHERE Name = 'Custom';
# ===== v 1.0.2-B2 =====
# ===== v 1.0.2-RC1 =====
# ===== v 1.0.2 =====
+# ===== v 1.0.3-B1 =====
+
+# ===== v 1.0.3-RC1 =====
+
+# ===== v 1.0.3 =====
+
# ===== v 1.1.0-B1 =====
UPDATE Modules SET Path = 'modules/custom/' WHERE `Name` = 'Custom';
\ No newline at end of file
Index: branches/1.1.x/install/english.lang
===================================================================
--- branches/1.1.x/install/english.lang (revision 13545)
+++ branches/1.1.x/install/english.lang (revision 13546)
@@ -1,22 +1,19 @@
<LANGUAGES>
<LANGUAGE PackName="English" Encoding="base64"><DATEFORMAT>m/d/Y</DATEFORMAT><TIMEFORMAT>g:i A</TIMEFORMAT><INPUTDATEFORMAT>m/d/Y</INPUTDATEFORMAT><INPUTTIMEFORMAT>g:i:s A</INPUTTIMEFORMAT><DECIMAL>.</DECIMAL><THOUSANDS>,</THOUSANDS><CHARSET>utf-8</CHARSET><UNITSYSTEM>2</UNITSYSTEM>
<PHRASES>
<PHRASE Label="la_col_Good" Module="Custom" Type="1">R29vZA==</PHRASE>
<PHRASE Label="la_col_Phone" Module="Custom" Type="1">UGhvbmU=</PHRASE>
- <PHRASE Label="la_col_Qty" Module="Custom" Type="1">UXVhbnRpdHk=</PHRASE>
<PHRASE Label="la_fld_DataFile" Module="Custom" Type="1">RGF0YSBmaWxl</PHRASE>
<PHRASE Label="la_fld_Good" Module="Custom" Type="1">R29vZA==</PHRASE>
- <PHRASE Label="la_fld_Image" Module="Custom" Type="1">SW1hZ2U=</PHRASE>
- <PHRASE Label="la_fld_Qty" Module="Custom" Type="1">UXVhbnRpdHk=</PHRASE>
<PHRASE Label="la_opt_Custom" Module="Custom" Type="1">Q3VzdG9t</PHRASE>
<PHRASE Label="la_opt_Default" Module="Custom" Type="1">RGVmYXVsdA==</PHRASE>
<PHRASE Label="la_tab_Widgets" Module="Custom" Type="1">V2lkZ2V0cw==</PHRASE>
<PHRASE Label="la_title_AddingWidget" Module="Custom" Type="1">QWRkaW5nIFdpZGdldA==</PHRASE>
<PHRASE Label="la_title_EditingWidget" Module="Custom" Type="1">RWRpdGluZyBXaWRnZXQ=</PHRASE>
<PHRASE Label="la_title_In-Custom" Module="Custom" Type="1">Q3VzdG9t</PHRASE>
<PHRASE Label="la_title_NewWidget" Module="Custom" Type="1">TmV3IFdpZGdldA==</PHRASE>
<PHRASE Label="la_title_Widgets" Module="Custom" Type="1">V2lkZ2V0cw==</PHRASE>
<PHRASE Label="la_ToolTip_NewWidget" Module="Custom" Type="1">TmV3IFdpZGdldA==</PHRASE>
</PHRASES>
</LANGUAGE>
</LANGUAGES>
\ No newline at end of file
Index: branches/1.1.x
===================================================================
--- branches/1.1.x (revision 13545)
+++ branches/1.1.x (revision 13546)
Property changes on: branches/1.1.x
___________________________________________________________________
Modified: svn:mergeinfo
## -0,0 +0,2 ##
Merged /modules/custom/releases/1.0.3:r13512-13545
Merged /modules/custom/branches/1.0.x:r13085-13511
Event Timeline
Log In to Comment