diff --git a/lib/WebGUI/AdminConsole.pm b/lib/WebGUI/AdminConsole.pm index 9fbcd597a..f666d70c8 100644 --- a/lib/WebGUI/AdminConsole.pm +++ b/lib/WebGUI/AdminConsole.pm @@ -88,7 +88,7 @@ sub getAdminFunction { }, "groups"=>{ title=>{ - id=>"groups", + id=>"89", namespace=>"WebGUI" }, icon=>"groups.gif", @@ -138,7 +138,7 @@ sub getAdminFunction { }, icon=>"help.gif", op=>"viewHelpIndex", - group=>"7" + group=>"12" }, "statistics"=>{ title=>{ diff --git a/lib/WebGUI/Help/MetaData.pm b/lib/WebGUI/Help/MetaData.pm new file mode 100644 index 000000000..92e695dab --- /dev/null +++ b/lib/WebGUI/Help/MetaData.pm @@ -0,0 +1,42 @@ +package WebGUI::Help::MetaData; + +our $HELP = { + 'metadata manage'=> { + title => 'content profiling', + body => 'metadata manage body', + related => [ + { + tag => 'metadata edit property', + namespace => 'MetaData' + }, + { + tag => 'user macros', + namespace => 'WebGUI' + }, + { + tag => 'wobject add/edit', + namespace => 'WebGUI', + }, + ], + }, + 'metadata edit property' => { + title => 'Metadata, Edit property', + body => 'metadata edit property body', + related => [ + { + tag => 'metadata manage', + namespace => 'MetaData' + }, + { + tag => 'user macros', + namespace => 'WebGUI' + }, + { + tag => 'wobject add/edit', + namespace => 'WebGUI', + }, + ], + }, +}; + +1; diff --git a/lib/WebGUI/Operation/Group.pm b/lib/WebGUI/Operation/Group.pm index 9a3d69c67..3053bfd12 100644 --- a/lib/WebGUI/Operation/Group.pm +++ b/lib/WebGUI/Operation/Group.pm @@ -12,6 +12,7 @@ package WebGUI::Operation::Group; use strict; use Tie::CPHash; +use WebGUI::AdminConsole; use WebGUI::DatabaseLink; use WebGUI::DateTime; use WebGUI::Group; @@ -22,7 +23,6 @@ use WebGUI::HTMLForm; use WebGUI::Icon; use WebGUI::International; use WebGUI::Mail; -use WebGUI::Operation::Shared; use WebGUI::Operation::User; use WebGUI::Paginator; use WebGUI::Privilege; @@ -40,24 +40,31 @@ sub _hasSecondaryPrivilege { #------------------------------------------------------------------- sub _submenu { - my ($output, %menu); - tie %menu, 'Tie::IxHash'; + my $workarea = shift; + my $title = shift; + $title = WebGUI::International::get($title) if ($title); + my $help = shift; + my $ac = WebGUI::AdminConsole->new; + if ($help) { + $ac->setHelp($help); + } + $ac->setAdminFunction("groups"); if (WebGUI::Grouping::isInGroup(3)) { - $menu{WebGUI::URL::page('op=editGroup&gid=new')} = WebGUI::International::get(90); + $ac->addSubmenuItem(WebGUI::URL::page('op=editGroup&gid=new'), WebGUI::International::get(90)); unless ($session{form}{op} eq "listGroups" || $session{form}{gid} eq "new" || $session{form}{op} eq "deleteGroupConfirm") { - $menu{WebGUI::URL::page("op=editGroup&gid=".$session{form}{gid})} = WebGUI::International::get(753); - $menu{WebGUI::URL::page("op=manageUsersInGroup&gid=".$session{form}{gid})} = WebGUI::International::get(754); - $menu{WebGUI::URL::page("op=manageGroupsInGroup&gid=".$session{form}{gid})} = WebGUI::International::get(807); - $menu{WebGUI::URL::page("op=emailGroup&gid=".$session{form}{gid})} = WebGUI::International::get(808); - $menu{WebGUI::URL::page("op=deleteGroup&gid=".$session{form}{gid})} = WebGUI::International::get(806); + $ac->addSubmenuItem(WebGUI::URL::page("op=editGroup&gid=".$session{form}{gid}), WebGUI::International::get(753)); + $ac->addSubmenuItem(WebGUI::URL::page("op=manageUsersInGroup&gid=".$session{form}{gid}), WebGUI::International::get(754)); + $ac->addSubmenuItem(WebGUI::URL::page("op=manageGroupsInGroup&gid=".$session{form}{gid}), WebGUI::International::get(807)); + $ac->addSubmenuItem(WebGUI::URL::page("op=emailGroup&gid=".$session{form}{gid}), WebGUI::International::get(808)); + $ac->addSubmenuItem(WebGUI::URL::page("op=deleteGroup&gid=".$session{form}{gid}), WebGUI::International::get(806)); } - $menu{WebGUI::URL::page("op=listGroups")} = WebGUI::International::get(756); + $ac->addSubmenuItem(WebGUI::URL::page("op=listGroups"), WebGUI::International::get(756)); } else { - $menu{WebGUI::URL::page("op=listGroupsSecondary")} = WebGUI::International::get(756); + $ac->addSubmenuItem(WebGUI::URL::page("op=listGroupsSecondary"), WebGUI::International::get(756)); } - return menuWrapper($_[0],\%menu); + return $ac->render($workarea, $title); } @@ -178,14 +185,12 @@ sub www_deleteGroup { return WebGUI::Privilege::adminOnly() unless (WebGUI::Grouping::isInGroup(3)); my ($output); return WebGUI::Privilege::vitalComponent() if ($session{form}{gid} < 26 && $session{form}{gid} > 0); - $output .= helpIcon("group delete"); - $output .= '
'; $output .= '
'; - return _submenu($output); + return _submenu($output, '42',"group delete"); } #------------------------------------------------------------------- @@ -223,8 +228,6 @@ sub www_editGroup { } else { $g = WebGUI::Group->new($session{form}{gid}); } - $output .= helpIcon("group add/edit"); - $output .= '| '.WebGUI::International::get(84).' | ' - .WebGUI::International::get(85).' | ' - .WebGUI::International::get(748).' |
| '.WebGUI::International::get(84).' |
'.WebGUI::International::get(94).':';
- $output .= _seeAlso($help->{related},$namespace);
- $output .= '
';
- return WebGUI::Macro::negate($output);
+ $ac->addSubmenuItem(WebGUI::URL::page('op=viewHelpIndex'),WebGUI::International::get(95));
+ foreach my $row (@{$help->{related}}) {
+ my $relatedHelp = _get($row->{tag},$row->{namespace});
+ $ac->addSubmenuItem(_link($row->{tag},$row->{namespace}),WebGUI::International::get($relatedHelp->{title},$row->{namespace}));
+ }
+ return $ac->render(
+ WebGUI::Macro::negate(WebGUI::International::get($help->{body},$namespace)),
+ WebGUI::International::get(93).': '.WebGUI::International::get($help->{title},$namespace)
+ );
}
#-------------------------------------------------------------------
sub www_viewHelpIndex {
+ return WebGUI::Privilege::insufficient() unless (WebGUI::Grouping::isInGroup(12));
my %helpIndex;
tie %helpIndex, "Tie::IxHash";
my $i;
@@ -86,25 +90,23 @@ sub www_viewHelpIndex {
}
}
}
- my $output = '
';
+ my $output = '
'.WebGUI::International::get('Edit Metadata','MetaData').''; if($session{form}{fid} && $session{form}{fid} ne "new") { $fieldInfo = WebGUI::MetaData::getField($session{form}{fid}); @@ -78,10 +71,9 @@ sub www_editMetaDataField { -types=>WebGUI::MetaData::getFieldTypes() ); $f->textarea("possibleValues",WebGUI::International::get(487),$fieldInfo->{possibleValues}); - #$f->text("defaultValue", "Default value", $defaultValue); $f->submit(); $output .= $f->print; - return _submenu($output); + return _submenu($output,'Edit Metadata',"metadata edit property"); } #------------------------------------------------------------------- @@ -130,17 +122,13 @@ sub www_deleteMetaDataField { return WebGUI::Privilege::adminOnly() unless (WebGUI::Grouping::isInGroup(3)); return WebGUI::Privilege::vitalComponent() if ($session{form}{fid} < 1000 && $session{form}{fid} > 0); - #TODO HELP - my $output = helpIcon("theme delete"); - $output .= ''.WebGUI::International::get('Delete Metadata field','MetaData').''; - $output .= WebGUI::International::get('deleteConfirm','MetaData').''; + my $output = WebGUI::International::get('deleteConfirm','MetaData').' '; $output .= ' '; - return _submenu($output); - + return _submenu($output,'Delete Metadata field'); } #------------------------------------------------------------------- @@ -157,25 +145,6 @@ sub www_deleteMetaDataFieldConfirm { sub www_manageMetaData { return WebGUI::Privilege::adminOnly() unless (WebGUI::Grouping::isInGroup(3)); my $output; - $output = helpIcon('metadata manage'); - $output .= ''.WebGUI::International::get('Manage Metadata','MetaData').''; - my $f = new WebGUI::HTMLForm; - $f->hidden("op","saveMetaDataSettings"); - $f->yesNo( - -name=>"metaDataEnabled", - -label=>WebGUI::International::get("Enable Metadata ?", 'MetaData'), - -value=>$session{setting}{metaDataEnabled}, - ); - $f->yesNo( - -name=>"passiveProfilingEnabled", - -label=>WebGUI::International::get("Enable passive profiling ?", 'MetaData'), - -value=>$session{setting}{passiveProfilingEnabled}, - -extras=>' onChange="alert(\''.WebGUI::International::get("Illegal Warning","MetaData").'\')" ' - ); - - $f->submit(); - $output .= $f->print; - $output .= "".WebGUI::International::get('Manage Metadata fields','MetaData').""; my $fields = WebGUI::MetaData::getMetaDataFields(); foreach my $fieldId (keys %{$fields}) { $output .= deleteIcon("op=deleteMetaDataField&fid=".$fieldId); @@ -185,7 +154,7 @@ sub www_manageMetaData { $output .= ''. WebGUI::International::get('Add new field','MetaData'). ' '; - return _submenu($output); + return _submenu($output,undef,"metadata manage"); } diff --git a/lib/WebGUI/Operation/Settings.pm b/lib/WebGUI/Operation/Settings.pm index 2ce63db1d..10f3906f6 100644 --- a/lib/WebGUI/Operation/Settings.pm +++ b/lib/WebGUI/Operation/Settings.pm @@ -138,6 +138,17 @@ sub www_editMiscSettings { -value=>$session{setting}{adminStyleId}, -label=>WebGUI::International::get(1081) ); + $f->yesNo( + -name=>"metaDataEnabled", + -label=>WebGUI::International::get("Enable Metadata ?", 'MetaData'), + -value=>$session{setting}{metaDataEnabled}, + ); + $f->yesNo( + -name=>"passiveProfilingEnabled", + -label=>WebGUI::International::get("Enable passive profiling ?", 'MetaData'), + -value=>$session{setting}{passiveProfilingEnabled}, + -extras=>' onChange="alert(\''.WebGUI::International::get("Illegal Warning","MetaData").'\')" ' + ); $f->submit; $output .= $f->print; return _submenu($output); diff --git a/lib/WebGUI/i18n/English/MetaData.pm b/lib/WebGUI/i18n/English/MetaData.pm index 89b790c8c..d5195b304 100644 --- a/lib/WebGUI/i18n/English/MetaData.pm +++ b/lib/WebGUI/i18n/English/MetaData.pm @@ -16,11 +16,6 @@ our $I18N = { lastUpdated => 1089039511 }, - 'Manage Metadata fields' => { - message => q|Manage metadata properties|, - lastUpdated => 1089039511 - }, - 'Metadata' => { message => q|Metadata|, lastUpdated => 1089039511 @@ -41,11 +36,6 @@ our $I18N = { lastUpdated => 1089039511 }, - 'Manage Metadata' => { - message => q|Manage Metadata|, - lastUpdated => 1089039511 - }, - 'Add new field' => { message => q|Add new metadata property|, lastUpdated => 1089039511 @@ -82,6 +72,94 @@ our $I18N = { context => q|The title of the content profiling manager for the admin console.| }, + 'metadata edit property body' => { + message => q| +You may add as many Metadata properties as you like.+ +Field Name +The name of this metadata property.It must be unique. +It is advisable to use only letters (a-z), numbers (0-9) or underscores (_) for +the field names. + Description Data Type The content profiling system in WebGUI (also known as the meta data system) allows you to identify content. Metadata is +information about the content, and is defined in terms of property-value pairs. +Examples of metadata: +
In the example source: newspaper is source the property +and newspaper the value. +Metadata properties are defined globally, while Metadata values are set for +each wobject under the tab "Metadata" in the wobject properties. +Before you can use metadata, you'll have to switch the "Enable Metadata +?" setting to Yes. +Usage of metadata: +
The metadata system in WebGUI allows you to identify content. Metadata is -information about the content, and is defined in terms of property-value pairs. -Examples of metadata: -
In the example source: newspaper is source the property -and newspaper the value. -Metadata properties are defined globally, while Metadata values are set for -each wobject under the tab "Metadata" in the wobject properties. -Before you can use metadata, you'll have to switch the "Enable Metadata -?" setting to Yes. -Usage of metadata: -
- -Field Name -The name of this metadata propertie.It must be unique. -It is advisable to use only letters (a-z), numbers (0-9) or underscores (_) for -the field names. - Description Data Type The metadata system in WebGUI allows you to identify content. Metadata is -information about the content, and is defined in terms of property-value pairs. -Examples of metadata: -
In the example source: newspaper is source the property -and newspaper the value. -Metadata properties are defined globally, while Metadata values are set for -each wobject under the tab "Metadata" in the wobject properties. -Before you can use metadata, you'll have to switch the "Enable Metadata -?" setting to Yes. -Usage of metadata: -
|