Index: trunk/kernel/admin/include/toolbar/editcategory_relationselect.php =================================================================== diff -u -N -r4330 -r5373 --- trunk/kernel/admin/include/toolbar/editcategory_relationselect.php (.../editcategory_relationselect.php) (revision 4330) +++ trunk/kernel/admin/include/toolbar/editcategory_relationselect.php (.../editcategory_relationselect.php) (revision 5373) @@ -326,7 +326,7 @@ function InitPage() { - var main_form='popup'; + var main_form='kernel_form'; if('$destform') main_form='$destform'; addCommonActions(main_form); initToolbar('mainToolBar', actionHandler); Index: trunk/kernel/admin_templates/category/category_items.tpl =================================================================== diff -u -N --- trunk/kernel/admin_templates/category/category_items.tpl (revision 4330) +++ trunk/kernel/admin_templates/category/category_items.tpl (revision 0) @@ -1,11 +0,0 @@ - - - - - - -
- - \ No newline at end of file Index: trunk/kernel/units/relationship/relationship_event_handler.php =================================================================== diff -u -N -r4722 -r5373 --- trunk/kernel/units/relationship/relationship_event_handler.php (.../relationship_event_handler.php) (revision 4722) +++ trunk/kernel/units/relationship/relationship_event_handler.php (.../relationship_event_handler.php) (revision 5373) @@ -121,9 +121,17 @@ $sql_parts = Array(); $sql_parts['TargetName'] = "''"; - foreach($configs as $prefix => $config_data) - { - $sql_parts['ItemName'][] = sprintf($sql_templates['ItemName'], $config_data['TableName'], $config_data['TitleField']); + foreach ($configs as $prefix => $config_data) { + // convert TitleField field of kMultiLanguage formatter used for it: begin + $title_field = $config_data['TitleField']; + $formatter_class = isset($config_data['Fields'][$title_field]['formatter']) ? $config_data['Fields'][$title_field]['formatter'] : ''; + if ($formatter_class == 'kMultiLanguage') { + $ml_formatter =& $this->Application->recallObject('kMultiLanguage'); + $title_field = $ml_formatter->LangFieldName($title_field); + } + // convert TitleField field of kMultiLanguage formatter used for it: end + + $sql_parts['ItemName'][] = sprintf($sql_templates['ItemName'], $config_data['TableName'], $title_field); $sql_parts['TableJoin'][] = sprintf($sql_templates['TableJoin'], $config_data['TableName']); $sql_parts['TargetName'] = sprintf( $sql_templates['TargetName'], @@ -139,9 +147,8 @@ $replacements = Array( implode(', ',$sql_parts['ItemName']), $sql_parts['TargetName'] ); $calculated_fields =& $object->getProperty('CalculatedFields'); - foreach($calculated_fields as $field_name => $field_expression) - { - $calculated_fields[$field_name] = str_replace($vars,$replacements,$field_expression); + foreach ($calculated_fields as $field_name => $field_expression) { + $calculated_fields[$field_name] = str_replace($vars, $replacements, $field_expression); } $object->setProperty('CalculatedFields', $calculated_fields); Index: trunk/kernel/admin_templates/categories/relations_edit.tpl =================================================================== diff -u -N --- trunk/kernel/admin_templates/categories/relations_edit.tpl (revision 0) +++ trunk/kernel/admin_templates/categories/relations_edit.tpl (revision 5373) @@ -0,0 +1,76 @@ + + + + + + + + + + + + + + + +
+ +
+ + + + + + + + + "> + + + + + + + + + + + + + + +
+ "/> + () + +  
+ + \ No newline at end of file Index: trunk/core/units/relationship/relationship_event_handler.php =================================================================== diff -u -N -r4722 -r5373 --- trunk/core/units/relationship/relationship_event_handler.php (.../relationship_event_handler.php) (revision 4722) +++ trunk/core/units/relationship/relationship_event_handler.php (.../relationship_event_handler.php) (revision 5373) @@ -121,9 +121,17 @@ $sql_parts = Array(); $sql_parts['TargetName'] = "''"; - foreach($configs as $prefix => $config_data) - { - $sql_parts['ItemName'][] = sprintf($sql_templates['ItemName'], $config_data['TableName'], $config_data['TitleField']); + foreach ($configs as $prefix => $config_data) { + // convert TitleField field of kMultiLanguage formatter used for it: begin + $title_field = $config_data['TitleField']; + $formatter_class = isset($config_data['Fields'][$title_field]['formatter']) ? $config_data['Fields'][$title_field]['formatter'] : ''; + if ($formatter_class == 'kMultiLanguage') { + $ml_formatter =& $this->Application->recallObject('kMultiLanguage'); + $title_field = $ml_formatter->LangFieldName($title_field); + } + // convert TitleField field of kMultiLanguage formatter used for it: end + + $sql_parts['ItemName'][] = sprintf($sql_templates['ItemName'], $config_data['TableName'], $title_field); $sql_parts['TableJoin'][] = sprintf($sql_templates['TableJoin'], $config_data['TableName']); $sql_parts['TargetName'] = sprintf( $sql_templates['TargetName'], @@ -139,9 +147,8 @@ $replacements = Array( implode(', ',$sql_parts['ItemName']), $sql_parts['TargetName'] ); $calculated_fields =& $object->getProperty('CalculatedFields'); - foreach($calculated_fields as $field_name => $field_expression) - { - $calculated_fields[$field_name] = str_replace($vars,$replacements,$field_expression); + foreach ($calculated_fields as $field_name => $field_expression) { + $calculated_fields[$field_name] = str_replace($vars, $replacements, $field_expression); } $object->setProperty('CalculatedFields', $calculated_fields); Index: trunk/core/admin_templates/categories/categories_edit_relations.tpl =================================================================== diff -u -N --- trunk/core/admin_templates/categories/categories_edit_relations.tpl (revision 0) +++ trunk/core/admin_templates/categories/categories_edit_relations.tpl (revision 5373) @@ -0,0 +1,111 @@ + + + + + + + + + + + + + + + + + +
+ +
+ + + +"> +"> + + + \ No newline at end of file Index: trunk/core/admin_templates/categories/relations_edit.tpl =================================================================== diff -u -N --- trunk/core/admin_templates/categories/relations_edit.tpl (revision 0) +++ trunk/core/admin_templates/categories/relations_edit.tpl (revision 5373) @@ -0,0 +1,76 @@ + + + + + + + + + + + + + + + +
+ +
+ + + + + + + + + "> + + + + + + + + + + + + + + +
+ "/> + () + +  
+ + \ No newline at end of file Index: trunk/core/units/categories/categories_config.php =================================================================== diff -u -N -r5320 -r5373 --- trunk/core/units/categories/categories_config.php (.../categories_config.php) (revision 5320) +++ trunk/core/units/categories/categories_config.php (.../categories_config.php) (revision 5373) @@ -57,6 +57,7 @@ 'categories_edit' => Array('prefixes' => Array('c'), 'format' => "#c_status# '#c_titlefield#' - !la_title_General!"), 'categories_properties' => Array('prefixes' => Array('c'), 'format' => "#c_status# '#c_titlefield#' - !la_title_Properties!"), + 'categories_relations' => Array('prefixes' => Array('c'), 'format' => "#c_status# '#c_titlefield#' - !la_title_Relations!"), 'categories_images' => Array('prefixes' => Array('c'), 'format' => "#c_status# '#c_titlefield#' - !la_title_Images!"), 'categories_permissions'=> Array('prefixes' => Array('c', 'g_List'), 'format' => "#c_status# '#c_titlefield#' - !la_title_Permissions!"), 'categories_custom' => Array('prefixes' => Array('c'), 'format' => "#c_status# '#c_titlefield#' - !la_title_Custom!"), @@ -69,7 +70,13 @@ 'new_titlefield' => Array('c-img'=>'!la_title_New_Image!'), 'format' => "#c_status# '#c_titlefield#' - #c-img_status# '#c-img_titlefield#'", ), - + + 'relations_edit' => Array( 'prefixes' => Array('c', 'c-rel'), + 'new_status_labels' => Array('c-rel'=>"!la_title_Adding_Relationship! '!la_title_New_Relationship!'"), + 'edit_status_labels' => Array('c-rel'=>'!la_title_Editing_Relationship!'), + 'format' => "#c_status# '#c_titlefield#' - #c-rel_status#", + ), + 'tree_site' => Array('format' => '!la_selecting_categories!'), ), @@ -200,7 +207,7 @@ LEFT JOIN '.TABLE_PREFIX.'PermCache ON '.TABLE_PREFIX.'PermCache.CategoryId = %1$s.CategoryId LEFT JOIN '.TABLE_PREFIX.'%3$sCategoryCustomData cust ON %1$s.ResourceId = cust.ResourceId'), - 'SubItems' => Array('c-img', 'c-cdata', 'c-perm'), + 'SubItems' => Array('c-rel', 'c-img', 'c-cdata', 'c-perm'), 'ListSortings' => Array( '' => Array( Index: trunk/kernel/admin_templates/categories/categories_edit_relations.tpl =================================================================== diff -u -N --- trunk/kernel/admin_templates/categories/categories_edit_relations.tpl (revision 0) +++ trunk/kernel/admin_templates/categories/categories_edit_relations.tpl (revision 5373) @@ -0,0 +1,111 @@ + + + + + + + + + + + + + + + + + +
+ +
+ + + +"> +"> + + + \ No newline at end of file Index: trunk/core/units/relationship/relationship_config.php =================================================================== diff -u -N -r4309 -r5373 --- trunk/core/units/relationship/relationship_config.php (.../relationship_config.php) (revision 4309) +++ trunk/core/units/relationship/relationship_config.php (.../relationship_config.php) (revision 5373) @@ -4,7 +4,7 @@ 'Prefix' => 'rel', 'Clones' => Array( - + 'c-rel' => Array('ParentPrefix' => 'c'), 'l-rel' => Array('ParentPrefix' => 'l'), 'n-rel' => Array('ParentPrefix' => 'n'), 'bb-rel'=> Array('ParentPrefix' => 'bb'), Index: trunk/kernel/units/relationship/relationship_config.php =================================================================== diff -u -N -r4309 -r5373 --- trunk/kernel/units/relationship/relationship_config.php (.../relationship_config.php) (revision 4309) +++ trunk/kernel/units/relationship/relationship_config.php (.../relationship_config.php) (revision 5373) @@ -4,7 +4,7 @@ 'Prefix' => 'rel', 'Clones' => Array( - + 'c-rel' => Array('ParentPrefix' => 'c'), 'l-rel' => Array('ParentPrefix' => 'l'), 'n-rel' => Array('ParentPrefix' => 'n'), 'bb-rel'=> Array('ParentPrefix' => 'bb'), Index: trunk/core/kernel/utility/unit_config_reader.php =================================================================== diff -u -N -r5340 -r5373 --- trunk/core/kernel/utility/unit_config_reader.php (.../unit_config_reader.php) (revision 5340) +++ trunk/core/kernel/utility/unit_config_reader.php (.../unit_config_reader.php) (revision 5373) @@ -519,7 +519,11 @@ */ function getUnitOptions($prefix) { - return $this->prefixRegistred($prefix) ? $this->configData[$prefix] : false; + if (!isset($this->configData[$prefix])) { + $this->loadConfig($prefix); + } + + return $this->configData[$prefix]; } /** Index: trunk/kernel/units/categories/categories_config.php =================================================================== diff -u -N -r5320 -r5373 --- trunk/kernel/units/categories/categories_config.php (.../categories_config.php) (revision 5320) +++ trunk/kernel/units/categories/categories_config.php (.../categories_config.php) (revision 5373) @@ -57,6 +57,7 @@ 'categories_edit' => Array('prefixes' => Array('c'), 'format' => "#c_status# '#c_titlefield#' - !la_title_General!"), 'categories_properties' => Array('prefixes' => Array('c'), 'format' => "#c_status# '#c_titlefield#' - !la_title_Properties!"), + 'categories_relations' => Array('prefixes' => Array('c'), 'format' => "#c_status# '#c_titlefield#' - !la_title_Relations!"), 'categories_images' => Array('prefixes' => Array('c'), 'format' => "#c_status# '#c_titlefield#' - !la_title_Images!"), 'categories_permissions'=> Array('prefixes' => Array('c', 'g_List'), 'format' => "#c_status# '#c_titlefield#' - !la_title_Permissions!"), 'categories_custom' => Array('prefixes' => Array('c'), 'format' => "#c_status# '#c_titlefield#' - !la_title_Custom!"), @@ -69,7 +70,13 @@ 'new_titlefield' => Array('c-img'=>'!la_title_New_Image!'), 'format' => "#c_status# '#c_titlefield#' - #c-img_status# '#c-img_titlefield#'", ), - + + 'relations_edit' => Array( 'prefixes' => Array('c', 'c-rel'), + 'new_status_labels' => Array('c-rel'=>"!la_title_Adding_Relationship! '!la_title_New_Relationship!'"), + 'edit_status_labels' => Array('c-rel'=>'!la_title_Editing_Relationship!'), + 'format' => "#c_status# '#c_titlefield#' - #c-rel_status#", + ), + 'tree_site' => Array('format' => '!la_selecting_categories!'), ), @@ -200,7 +207,7 @@ LEFT JOIN '.TABLE_PREFIX.'PermCache ON '.TABLE_PREFIX.'PermCache.CategoryId = %1$s.CategoryId LEFT JOIN '.TABLE_PREFIX.'%3$sCategoryCustomData cust ON %1$s.ResourceId = cust.ResourceId'), - 'SubItems' => Array('c-img', 'c-cdata', 'c-perm'), + 'SubItems' => Array('c-rel', 'c-img', 'c-cdata', 'c-perm'), 'ListSortings' => Array( '' => Array(