hover help
This commit is contained in:
parent
eb3115d3f9
commit
0780aacfe5
15 changed files with 742 additions and 332 deletions
|
|
@ -205,15 +205,18 @@ sub getEditForm {
|
|||
-value=>$self->getValue('templateId'),
|
||||
-namespace=>"Product",
|
||||
-label=>WebGUI::International::get(62,"Asset_Product"),
|
||||
-hoverHelp=>WebGUI::International::get('62 description',"Asset_Product"),
|
||||
);
|
||||
$tabform->getTab("properties")->text(
|
||||
-name=>"price",
|
||||
-label=>WebGUI::International::get(10,"Asset_Product"),
|
||||
-hoverHelp=>WebGUI::International::get('10 description',"Asset_Product"),
|
||||
-value=>$self->getValue("price")
|
||||
);
|
||||
$tabform->getTab("properties")->text(
|
||||
-name=>"productNumber",
|
||||
-label=>WebGUI::International::get(11,"Asset_Product"),
|
||||
-hoverHelp=>WebGUI::International::get('11 description',"Asset_Product"),
|
||||
-value=>$self->getValue("productNumber")
|
||||
);
|
||||
$self->_addFileTab($tabform,"image1",7);
|
||||
|
|
@ -345,12 +348,24 @@ sub www_addAccessory {
|
|||
return WebGUI::Privilege::insufficient() unless ($self->canEdit);
|
||||
my ($f, $accessory, @usedAccessories);
|
||||
$f = WebGUI::HTMLForm->new(-action=>$self->getUrl);
|
||||
$f->hidden("func","addAccessorySave");
|
||||
$f->hidden(
|
||||
-name => "func",
|
||||
-value => "addAccessorySave",
|
||||
);
|
||||
@usedAccessories = WebGUI::SQL->buildArray("select accessoryAssetId from Product_accessory where assetId=".quote($self->getId));
|
||||
push(@usedAccessories,$self->getId);
|
||||
$accessory = WebGUI::SQL->buildHashRef("select assetId, title from asset where className='WebGUI::Asset::Wobject::Product' and assetId not in (".quoteAndJoin(\@usedAccessories).")");
|
||||
$f->selectList("accessoryAccessId",$accessory,WebGUI::International::get(17,'Asset_Product'));
|
||||
$f->yesNo("proceed",WebGUI::International::get(18,'Asset_Product'));
|
||||
$f->selectList(
|
||||
-name => "accessoryAccessId",
|
||||
-options => $accessory,
|
||||
-label => WebGUI::International::get(17,'Asset_Product'),
|
||||
-hoverHelp => WebGUI::International::get('17 description','Asset_Product'),
|
||||
);
|
||||
$f->yesNo(
|
||||
-name => "proceed",
|
||||
-label => WebGUI::International::get(18,'Asset_Product'),
|
||||
-hoverHelp => WebGUI::International::get('18 description','Asset_Product'),
|
||||
);
|
||||
$f->submit;
|
||||
return $self->getAdminConsole->render($f->print, "product accessory add/edit");
|
||||
}
|
||||
|
|
@ -372,12 +387,24 @@ sub www_addRelated {
|
|||
return WebGUI::Privilege::insufficient() unless ($self->canEdit);
|
||||
my ($f, $related, @usedRelated);
|
||||
$f = WebGUI::HTMLForm->new(-action=>$self->getUrl);
|
||||
$f->hidden("func","addRelatedSave");
|
||||
$f->hidden(
|
||||
-name => "func",
|
||||
-value => "addRelatedSave",
|
||||
);
|
||||
@usedRelated = WebGUI::SQL->buildArray("select relatedAssetId from Product_related where assetId=".quote($self->getId));
|
||||
push(@usedRelated,$self->getId);
|
||||
$related = WebGUI::SQL->buildHashRef("select assetId,title from asset where className='WebGUI::Asset::Wobject::Product' and assetId not in (".quoteAndJoin(\@usedRelated).")");
|
||||
$f->selectList("relatedAssetId",$related,WebGUI::International::get(20,'Asset_Product'));
|
||||
$f->yesNo("proceed",WebGUI::International::get(21,'Asset_Product'));
|
||||
$f->selectList(
|
||||
-name => "relatedAssetId",
|
||||
-options => $related,
|
||||
-label => WebGUI::International::get(20,'Asset_Product'),
|
||||
-hoverHelp => WebGUI::International::get('20 description','Asset_Product'),
|
||||
);
|
||||
$f->yesNo(
|
||||
-name => "proceed",
|
||||
-label => WebGUI::International::get(21,'Asset_Product'),
|
||||
-hoverHelp => WebGUI::International::get('21 description','Asset_Product'),
|
||||
);
|
||||
$f->submit;
|
||||
return $self->getAdminConsole->render($f->print,"product related add/edit");
|
||||
}
|
||||
|
|
@ -479,11 +506,27 @@ sub www_editBenefit {
|
|||
my ($data, $f, $benefits);
|
||||
$data = $self->getCollateral("Product_benefit","Product_benefitId",$session{form}{bid});
|
||||
$f = WebGUI::HTMLForm->new(-action=>$self->getUrl);
|
||||
$f->hidden("bid",$data->{Product_benefitId});
|
||||
$f->hidden("func","editBenefitSave");
|
||||
$f->hidden(
|
||||
-name => "bid",
|
||||
-value => $data->{Product_benefitId},
|
||||
);
|
||||
$f->hidden(
|
||||
-name => "func",
|
||||
-value => "editBenefitSave",
|
||||
);
|
||||
$benefits = WebGUI::SQL->buildHashRef("select benefit,benefit from Product_benefit order by benefit");
|
||||
$f->combo("benefit",$benefits,WebGUI::International::get(51,'Asset_Product'),[$data->{benefits}]);
|
||||
$f->yesNo("proceed",WebGUI::International::get(52,'Asset_Product'));
|
||||
$f->combo(
|
||||
-name => "benefit",
|
||||
-options => $benefits,
|
||||
-label => WebGUI::International::get(51,'Asset_Product'),
|
||||
-hoverHelp => WebGUI::International::get('51 description','Asset_Product'),
|
||||
-value => [$data->{benefits}],
|
||||
);
|
||||
$f->yesNo(
|
||||
-name => "proceed",
|
||||
-label => WebGUI::International::get(52,'Asset_Product'),
|
||||
-hoverHelp => WebGUI::International::get('52 description','Asset_Product'),
|
||||
);
|
||||
$f->submit;
|
||||
return $self->getAdminConsole->render($f->print, "product benefit add/edit");
|
||||
}
|
||||
|
|
@ -510,11 +553,27 @@ sub www_editFeature {
|
|||
my ($data, $f, $features);
|
||||
$data = $self->getCollateral("Product_feature","Product_featureId",$session{form}{fid});
|
||||
$f = WebGUI::HTMLForm->new(-action=>$self->getUrl);
|
||||
$f->hidden("fid",$data->{Product_featureId});
|
||||
$f->hidden("func","editFeatureSave");
|
||||
$f->hidden(
|
||||
-name => "fid",
|
||||
-value => $data->{Product_featureId},
|
||||
);
|
||||
$f->hidden(
|
||||
-name => "func",
|
||||
-value => "editFeatureSave",
|
||||
);
|
||||
$features = WebGUI::SQL->buildHashRef("select feature,feature from Product_feature order by feature");
|
||||
$f->combo("feature",$features,WebGUI::International::get(23,'Asset_Product'),[$data->{feature}]);
|
||||
$f->yesNo("proceed",WebGUI::International::get(24,'Asset_Product'));
|
||||
$f->combo(
|
||||
-name => "feature",
|
||||
-options => $features,
|
||||
-label => WebGUI::International::get(23,'Asset_Product'),
|
||||
-hoverHelp => WebGUI::International::get('23 description','Asset_Product'),
|
||||
-value => [$data->{feature}],
|
||||
);
|
||||
$f->yesNo(
|
||||
-name => "proceed",
|
||||
-label => WebGUI::International::get(24,'Asset_Product'),
|
||||
-hoverHelp => WebGUI::International::get('24 description','Asset_Product'),
|
||||
);
|
||||
$f->submit;
|
||||
return $self->getAdminConsole->render($f->print, "product feature add/edit");
|
||||
}
|
||||
|
|
@ -540,14 +599,41 @@ sub www_editSpecification {
|
|||
my ($data, $f, $hashRef);
|
||||
$data = $self->getCollateral("Product_specification","Product_specificationId",$session{form}{sid});
|
||||
$f = WebGUI::HTMLForm->new(-action=>$self->getUrl);
|
||||
$f->hidden("sid",$data->{Product_specificationId});
|
||||
$f->hidden("func","editSpecificationSave");
|
||||
$f->hidden(
|
||||
-name => "sid",
|
||||
-value => $data->{Product_specificationId},
|
||||
);
|
||||
$f->hidden(
|
||||
-name => "func",
|
||||
-value => "editSpecificationSave",
|
||||
);
|
||||
$hashRef = WebGUI::SQL->buildHashRef("select name,name from Product_specification order by name");
|
||||
$f->combo("name",$hashRef,WebGUI::International::get(26,'Asset_Product'),[$data->{name}]);
|
||||
$f->text("value",WebGUI::International::get(27,'Asset_Product'),$data->{value});
|
||||
$f->combo(
|
||||
-name => "name",
|
||||
-options => $hashRef,
|
||||
-label => WebGUI::International::get(26,'Asset_Product'),
|
||||
-hoverHelp => WebGUI::International::get('26 description','Asset_Product'),
|
||||
-value => [$data->{name}],
|
||||
);
|
||||
$f->text(
|
||||
-name => "value",
|
||||
-label => WebGUI::International::get(27,'Asset_Product'),
|
||||
-hoverHelp => WebGUI::International::get('27 description','Asset_Product'),
|
||||
-value => $data->{value},
|
||||
);
|
||||
$hashRef = WebGUI::SQL->buildHashRef("select units,units from Product_specification order by units");
|
||||
$f->combo("units",$hashRef,WebGUI::International::get(29,'Asset_Product'),[$data->{units}]);
|
||||
$f->yesNo("proceed",WebGUI::International::get(28,'Asset_Product'));
|
||||
$f->combo(
|
||||
-name => "units",
|
||||
-options => $hashRef,
|
||||
-label => WebGUI::International::get(29,'Asset_Product'),
|
||||
-hoverHelp => WebGUI::International::get('29 description','Asset_Product'),
|
||||
-value => [$data->{units}],
|
||||
);
|
||||
$f->yesNo(
|
||||
-name => "proceed",
|
||||
-label => WebGUI::International::get(28,'Asset_Product'),
|
||||
-hoverHelp => WebGUI::International::get('28 description','Asset_Product'),
|
||||
);
|
||||
$f->submit;
|
||||
return $self->getAdminConsole->render($f->print, "product specification add/edit");
|
||||
}
|
||||
|
|
|
|||
|
|
@ -175,9 +175,10 @@ our $HELP = {
|
|||
{ tag => "$tag add/edit",
|
||||
namespace => $namespace }
|
||||
}
|
||||
@{ $session{config}{assets} },
|
||||
@{ $session{config}{assetContainers} },
|
||||
@{ $session{config}{utilityAssets} },
|
||||
grep { $_ } ##Filter out empty entries
|
||||
@{ $session{config}{assets} },
|
||||
@{ $session{config}{assetContainers} },
|
||||
@{ $session{config}{utilityAssets} },
|
||||
],
|
||||
},
|
||||
|
||||
|
|
|
|||
|
|
@ -5,6 +5,51 @@ our $HELP = {
|
|||
title => '38',
|
||||
body => '39',
|
||||
fields => [
|
||||
{
|
||||
title => '62',
|
||||
description => '62 description',
|
||||
namespace => 'Asset_Product',
|
||||
},
|
||||
{
|
||||
title => '10',
|
||||
description => '10 description',
|
||||
namespace => 'Asset_Product',
|
||||
},
|
||||
{
|
||||
title => '11',
|
||||
description => '11 description',
|
||||
namespace => 'Asset_Product',
|
||||
},
|
||||
{
|
||||
title => '7',
|
||||
description => '7 description',
|
||||
namespace => 'Asset_Product',
|
||||
},
|
||||
{
|
||||
title => '8',
|
||||
description => '8 description',
|
||||
namespace => 'Asset_Product',
|
||||
},
|
||||
{
|
||||
title => '9',
|
||||
description => '9 description',
|
||||
namespace => 'Asset_Product',
|
||||
},
|
||||
{
|
||||
title => '13',
|
||||
description => '13 description',
|
||||
namespace => 'Asset_Product',
|
||||
},
|
||||
{
|
||||
title => '14',
|
||||
description => '14 description',
|
||||
namespace => 'Asset_Product',
|
||||
},
|
||||
{
|
||||
title => '15',
|
||||
description => '15 description',
|
||||
namespace => 'Asset_Product',
|
||||
},
|
||||
],
|
||||
related => [
|
||||
{
|
||||
|
|
@ -41,6 +86,16 @@ our $HELP = {
|
|||
title => '40',
|
||||
body => '41',
|
||||
fields => [
|
||||
{
|
||||
title => '23',
|
||||
description => '23 description',
|
||||
namespace => 'Asset_Product',
|
||||
},
|
||||
{
|
||||
title => '24',
|
||||
description => '24 description',
|
||||
namespace => 'Asset_Product',
|
||||
},
|
||||
],
|
||||
related => [
|
||||
{
|
||||
|
|
@ -57,6 +112,26 @@ our $HELP = {
|
|||
title => '42',
|
||||
body => '43',
|
||||
fields => [
|
||||
{
|
||||
title => '26',
|
||||
description => '26 description',
|
||||
namespace => 'Asset_Product',
|
||||
},
|
||||
{
|
||||
title => '27',
|
||||
description => '27 description',
|
||||
namespace => 'Asset_Product',
|
||||
},
|
||||
{
|
||||
title => '29',
|
||||
description => '29 description',
|
||||
namespace => 'Asset_Product',
|
||||
},
|
||||
{
|
||||
title => '28',
|
||||
description => '28 description',
|
||||
namespace => 'Asset_Product',
|
||||
},
|
||||
],
|
||||
related => [
|
||||
{
|
||||
|
|
@ -69,6 +144,16 @@ our $HELP = {
|
|||
title => '44',
|
||||
body => '45',
|
||||
fields => [
|
||||
{
|
||||
title => '17',
|
||||
description => '17 description',
|
||||
namespace => 'Asset_Product',
|
||||
},
|
||||
{
|
||||
title => '18',
|
||||
description => '18 description',
|
||||
namespace => 'Asset_Product',
|
||||
},
|
||||
],
|
||||
related => [
|
||||
{
|
||||
|
|
@ -81,6 +166,16 @@ our $HELP = {
|
|||
title => '46',
|
||||
body => '47',
|
||||
fields => [
|
||||
{
|
||||
title => '20',
|
||||
description => '20 description',
|
||||
namespace => 'Asset_Product',
|
||||
},
|
||||
{
|
||||
title => '21',
|
||||
description => '21 description',
|
||||
namespace => 'Asset_Product',
|
||||
},
|
||||
],
|
||||
related => [
|
||||
{
|
||||
|
|
@ -93,6 +188,16 @@ our $HELP = {
|
|||
title => '49',
|
||||
body => '50',
|
||||
fields => [
|
||||
{
|
||||
title => '51',
|
||||
description => '51 description',
|
||||
namespace => 'Asset_Product',
|
||||
},
|
||||
{
|
||||
title => '52',
|
||||
description => '52 description',
|
||||
namespace => 'Asset_Product',
|
||||
},
|
||||
],
|
||||
related => [
|
||||
{
|
||||
|
|
|
|||
|
|
@ -66,13 +66,13 @@ our $HELP = {
|
|||
description => 'enable context menu description',
|
||||
namespace => 'Asset_RichEdit',
|
||||
},
|
||||
]
|
||||
],
|
||||
related => [
|
||||
{
|
||||
tag => 'asset fields',
|
||||
namespace => 'Asset'
|
||||
},
|
||||
]
|
||||
],
|
||||
},
|
||||
|
||||
};
|
||||
|
|
|
|||
|
|
@ -23,6 +23,41 @@ our $HELP = {
|
|||
title => 'help edit product title',
|
||||
body => 'help edit product body',
|
||||
fields => [
|
||||
{
|
||||
title => 'title',
|
||||
description => 'title description',
|
||||
namespace => 'ProductManager',
|
||||
},
|
||||
{
|
||||
title => 'description',
|
||||
description => 'description description',
|
||||
namespace => 'ProductManager',
|
||||
},
|
||||
{
|
||||
title => 'price',
|
||||
description => 'price description',
|
||||
namespace => 'ProductManager',
|
||||
},
|
||||
{
|
||||
title => 'weight',
|
||||
description => 'weight description',
|
||||
namespace => 'ProductManager',
|
||||
},
|
||||
{
|
||||
title => 'sku',
|
||||
description => 'sku description',
|
||||
namespace => 'ProductManager',
|
||||
},
|
||||
{
|
||||
title => 'template',
|
||||
description => 'template description',
|
||||
namespace => 'ProductManager',
|
||||
},
|
||||
{
|
||||
title => 'sku template',
|
||||
description => 'sku template description',
|
||||
namespace => 'ProductManager',
|
||||
},
|
||||
],
|
||||
related => [
|
||||
{
|
||||
|
|
|
|||
|
|
@ -97,6 +97,96 @@ our $HELP = {
|
|||
title => '667',
|
||||
body => '622',
|
||||
fields => [
|
||||
{
|
||||
title => '84',
|
||||
description => '84 description',
|
||||
namespace => 'WebGUI',
|
||||
},
|
||||
{
|
||||
title => '85',
|
||||
description => '85 description',
|
||||
namespace => 'WebGUI',
|
||||
},
|
||||
{
|
||||
title => '367',
|
||||
description => '367 description',
|
||||
namespace => 'WebGUI',
|
||||
},
|
||||
{
|
||||
title => '865',
|
||||
description => '865 description',
|
||||
namespace => 'WebGUI',
|
||||
},
|
||||
{
|
||||
title => '864',
|
||||
description => '864 description',
|
||||
namespace => 'WebGUI',
|
||||
},
|
||||
{
|
||||
title => '866',
|
||||
description => '866 description',
|
||||
namespace => 'WebGUI',
|
||||
},
|
||||
{
|
||||
title => '863',
|
||||
description => '863 description',
|
||||
namespace => 'WebGUI',
|
||||
},
|
||||
{
|
||||
title => '538',
|
||||
description => '538 description',
|
||||
namespace => 'WebGUI',
|
||||
},
|
||||
{
|
||||
title => '857',
|
||||
description => '857 description',
|
||||
namespace => 'WebGUI',
|
||||
},
|
||||
{
|
||||
title => '945',
|
||||
description => '945 description',
|
||||
namespace => 'WebGUI',
|
||||
},
|
||||
{
|
||||
title => '974',
|
||||
description => '974 description',
|
||||
namespace => 'WebGUI',
|
||||
},
|
||||
{
|
||||
title => '975',
|
||||
description => '975 description',
|
||||
namespace => 'WebGUI',
|
||||
},
|
||||
{
|
||||
title => '1075',
|
||||
description => '1075 description',
|
||||
namespace => 'WebGUI',
|
||||
},
|
||||
{
|
||||
title => '1005',
|
||||
description => '1005 description',
|
||||
namespace => 'WebGUI',
|
||||
},
|
||||
{
|
||||
title => 'LDAPLink_ldapGroup',
|
||||
description => 'LDAPLink_ldapGroup description',
|
||||
namespace => 'AuthLDAP',
|
||||
},
|
||||
{
|
||||
title => 'LDAPLink_ldapGroupProperty',
|
||||
description => 'LDAPLink_ldapGroupProperty description',
|
||||
namespace => 'AuthLDAP',
|
||||
},
|
||||
{
|
||||
title => 'LDAPLink_ldapRecursiveProperty',
|
||||
description => 'LDAPLink_ldapRecursiveProperty description',
|
||||
namespace => 'AuthLDAP',
|
||||
},
|
||||
{
|
||||
title => '1004',
|
||||
description => '1004 description',
|
||||
namespace => 'WebGUI',
|
||||
},
|
||||
],
|
||||
related => [
|
||||
{
|
||||
|
|
|
|||
|
|
@ -262,38 +262,57 @@ sub www_editGroup {
|
|||
$f = WebGUI::HTMLForm->new;
|
||||
$f->hidden("op","editGroupSave");
|
||||
$f->hidden("gid",$session{form}{gid});
|
||||
$f->readOnly($g->groupId,WebGUI::International::get(379));
|
||||
$f->text("groupName",WebGUI::International::get(84),$g->name);
|
||||
$f->textarea("description",WebGUI::International::get(85),$g->description);
|
||||
$f->readOnly(
|
||||
-label => WebGUI::International::get(379),
|
||||
-value => $g->groupId,
|
||||
);
|
||||
$f->text(
|
||||
-name => "groupName",
|
||||
-label => WebGUI::International::get(84),
|
||||
-hoverHelp => WebGUI::International::get('84 description'),
|
||||
-value => $g->name,
|
||||
);
|
||||
$f->textarea(
|
||||
-name => "description",
|
||||
-label => WebGUI::International::get(85),
|
||||
-hoverHelp => WebGUI::International::get('85 description'),
|
||||
-value => $g->description,
|
||||
);
|
||||
$f->interval(
|
||||
-name=>"expireOffset",
|
||||
-label=>WebGUI::International::get(367),
|
||||
-hoverHelp=>WebGUI::International::get('367 description'),
|
||||
-value=>$g->expireOffset
|
||||
);
|
||||
$f->yesNo(
|
||||
-name=>"expireNotify",
|
||||
-value=>$g->expireNotify,
|
||||
-label=>WebGUI::International::get(865)
|
||||
-hoverHelp=>WebGUI::International::get('865 description')
|
||||
);
|
||||
$f->integer(
|
||||
-name=>"expireNotifyOffset",
|
||||
-value=>$g->expireNotifyOffset,
|
||||
-label=>WebGUI::International::get(864)
|
||||
-hoverHelp=>WebGUI::International::get('864 description')
|
||||
);
|
||||
$f->textarea(
|
||||
-name=>"expireNotifyMessage",
|
||||
-value=>$g->expireNotifyMessage,
|
||||
-label=>WebGUI::International::get(866)
|
||||
-hoverHelp=>WebGUI::International::get('866 description')
|
||||
);
|
||||
$f->integer(
|
||||
-name=>"deleteOffset",
|
||||
-value=>$g->deleteOffset,
|
||||
-label=>WebGUI::International::get(863)
|
||||
-hoverHelp=>WebGUI::International::get('863 description')
|
||||
);
|
||||
if ($session{setting}{useKarma}) {
|
||||
$f->integer(
|
||||
-name=>"karmaThreshold",
|
||||
-label=>WebGUI::International::get(538),
|
||||
-hoverHelp=>WebGUI::International::get('538 description'),
|
||||
-value=>$g->karmaThreshold
|
||||
);
|
||||
}
|
||||
|
|
@ -301,11 +320,13 @@ sub www_editGroup {
|
|||
-name=>"ipFilter",
|
||||
-value=>$g->ipFilter,
|
||||
-label=>WebGUI::International::get(857)
|
||||
-hoverHelp=>WebGUI::International::get('857 description')
|
||||
);
|
||||
$f->textarea(
|
||||
-name=>"scratchFilter",
|
||||
-value=>$g->scratchFilter,
|
||||
-label=>WebGUI::International::get(945)
|
||||
-hoverHelp=>WebGUI::International::get('945 description')
|
||||
);
|
||||
if ($session{form}{gid} eq "3") {
|
||||
$f->hidden(
|
||||
|
|
@ -321,11 +342,13 @@ sub www_editGroup {
|
|||
-name=>"autoAdd",
|
||||
-value=>$g->autoAdd,
|
||||
-label=>WebGUI::International::get(974)
|
||||
-hoverHelp=>WebGUI::International::get('974 description')
|
||||
);
|
||||
$f->yesNo(
|
||||
-name=>"autoDelete",
|
||||
-value=>$g->autoDelete,
|
||||
-label=>WebGUI::International::get(975)
|
||||
-hoverHelp=>WebGUI::International::get('975 description')
|
||||
);
|
||||
}
|
||||
$f->databaseLink(
|
||||
|
|
@ -335,26 +358,31 @@ sub www_editGroup {
|
|||
-name=>"dbQuery",
|
||||
-value=>$g->dbQuery,
|
||||
-label=>WebGUI::International::get(1005)
|
||||
-hoverHelp=>WebGUI::International::get('1005 description')
|
||||
);
|
||||
$f->text(
|
||||
-name=>"ldapGroup",
|
||||
-label=>WebGUI::International::get("LDAPLink_ldapGroup","AuthLDAP"),
|
||||
-hoverHelp=>WebGUI::International::get("LDAPLink_ldapGroup","AuthLDAP"),
|
||||
-value=>$g->ldapGroup
|
||||
);
|
||||
$f->text(
|
||||
-name=>"ldapGroupProperty",
|
||||
-label=>WebGUI::International::get("LDAPLink_ldapGroupProperty","AuthLDAP"),
|
||||
-hoverHelp=>WebGUI::International::get("LDAPLink_ldapGroupProperty","AuthLDAP"),
|
||||
-value=>$g->ldapGroupProperty,
|
||||
-defaultValue=>"member"
|
||||
);
|
||||
$f->text(
|
||||
-name=>"ldapRecursiveProperty",
|
||||
-label=>WebGUI::International::get("LDAPLink_ldapRecursiveProperty","AuthLDAP"),
|
||||
-hoverHelp=>WebGUI::International::get("LDAPLink_ldapRecursiveProperty","AuthLDAP"),
|
||||
-value=>$g->ldapRecursiveProperty
|
||||
);
|
||||
$f->interval(
|
||||
-name=>"dbCacheTimeout",
|
||||
-label=>WebGUI::International::get(1004),
|
||||
-hoverHelp=>WebGUI::International::get('1004 description'),
|
||||
-value=>$g->dbCacheTimeout
|
||||
);
|
||||
$f->submit;
|
||||
|
|
|
|||
|
|
@ -36,15 +36,6 @@ sub _link {
|
|||
return WebGUI::URL::page('op=viewHelp&hid='.WebGUI::URL::escape($_[0]).'&namespace='.$_[1]);
|
||||
}
|
||||
|
||||
#-------------------------------------------------------------------
|
||||
sub _seeAlso {
|
||||
my $related = shift;
|
||||
my $namespace = shift;
|
||||
my $output;
|
||||
return $output;
|
||||
}
|
||||
|
||||
|
||||
#-------------------------------------------------------------------
|
||||
sub www_viewHelp {
|
||||
return WebGUI::Privilege::insufficient() unless (WebGUI::Grouping::isInGroup(7));
|
||||
|
|
|
|||
|
|
@ -90,41 +90,48 @@ sub www_editProduct {
|
|||
$f->text(
|
||||
-name => 'title',
|
||||
-label => $i18n->get('title'),
|
||||
-hoverHelp => $i18n->get('title description'),
|
||||
-value => $session{form}{title} || $product->{title},
|
||||
-maxlength => 255,
|
||||
);
|
||||
$f->textarea(
|
||||
-name => 'description',
|
||||
-label => $i18n->get('description'),
|
||||
-hoverHelp => $i18n->get('description description'),
|
||||
-value => $session{form}{decsription} || $product->{description},
|
||||
);
|
||||
$f->float(
|
||||
-name => 'price',
|
||||
-label => $i18n->get('price'),
|
||||
-hoverHelp => $i18n->get('price description'),
|
||||
-value => $session{form}{price} || $product->{price},
|
||||
-maxlength => 13,
|
||||
);
|
||||
$f->float(
|
||||
-name => 'weight',
|
||||
-label => $i18n->get('weight'),
|
||||
-hoverHelp => $i18n->get('weight description'),
|
||||
-value => $session{form}{weight} || $product->{weight},
|
||||
-maxlength => 9,
|
||||
);
|
||||
$f->text(
|
||||
-name => 'sku',
|
||||
-label => $i18n->get('sku'),
|
||||
-hoverHelp => $i18n->get('sku description'),
|
||||
-value => $session{form}{sku} || $product->{SKU},
|
||||
-maxlength => 64,
|
||||
);
|
||||
$f->template(
|
||||
-name => 'templateId',
|
||||
-label => $i18n->get('template'),
|
||||
-hoverHelp => $i18n->get('template description'),
|
||||
-value => $session{form}{templateId} || $product->{templateId},
|
||||
-namespace => 'Commerce/Product',
|
||||
);
|
||||
$f->text(
|
||||
-name => 'skuTemplate',
|
||||
-label => $i18n->get('sku template'),
|
||||
-hoverHelp => $i18n->get('sku template description'),
|
||||
-value => $session{form}{skuTemplate} || $product->{skuTemplate},
|
||||
-maxlength => 255,
|
||||
);
|
||||
|
|
|
|||
|
|
@ -138,12 +138,18 @@ our $I18N = {
|
|||
your site navigation, and how to display them. Some of the default Navigation templates that come with WebGUI are
|
||||
vertical, horizontal and crumbtrail. These templates can often be styled via CSS to match your site's design, instead
|
||||
of rewriting the templates.</P>
|
||||
<P><B>Identifier</B><BR>This is the (unique) label you will later use to specify this Navigation definition in a ^Navigation(); macro.</P>
|
||||
<P><B>Base Page<BR></B>This identifies the spot in the Page Tree where the macro should commence listing pages. The first three choices will create 'absolute' menus -- ones which will display the same pages no matter which page you use the macro from. </P>
|
||||
<P></P>
|
||||
<P><B>Identifier</B><BR>
|
||||
This is the (unique) label you will later use to specify this Navigation definition in a ^Navigation(); macro.
|
||||
|
||||
<P><B>Base Page</B><BR>
|
||||
This identifies the spot in the Page Tree where the macro should commence listing pages. The first three choices will create 'absolute' menus -- ones which will display the same pages no matter which page you use the macro from.
|
||||
|
||||
<P>The next four create 'relative' menus -- ones in which the items which will be displayed depend on the location in the page tree of the page in which you use the macro.</P>
|
||||
|
||||
<P>Use the 'Add new value' option if you want to specify a custom starting page. You can refer to a starting page by its urlized title or its pageId.</P>
|
||||
<P><B>Return a Loop With</B><BR>This determines which pages relative to the base page will be included in the menu which the macro creates.</P>
|
||||
|
||||
<P><B>Return a Loop With</B><BR>
|
||||
This determines which pages relative to the base page will be included in the menu which the macro creates.</P>
|
||||
<UL>
|
||||
<LI>daughters - pages below the base page
|
||||
<LI>sisters - pages at the same level as the base page, excluding the base page itself.
|
||||
|
|
@ -155,17 +161,36 @@ our $I18N = {
|
|||
<LI>ancestors - all base page ancestors, starting with it's mother, then grandmother, etc, up to the root page.
|
||||
<LI>self and ancestors - same as ancestors but starting at base page.
|
||||
<LI>pedigree - This is what we know as the "FlexMenu". Starting at base page, it returns its daughters, self and sisters, ancestors and the sisters of each ancestor.<BR></LI></UL>
|
||||
<P><B>Stop traversing when reaching level</B><BR>This allows you to prune a menu -- in either direction -- when it reaches a <I>specific</I> level in the page tree. It's slightly different in effect than... </P>
|
||||
<P><B>Max Depth</B><BR>...which allows you to prune a menu -- in either direction -- when it reaches a <I>number of levels</I> in the page tree. 'Stop Traversing' is absolute; 'Max Depth' is relative. Presumably, if you set both, whichever one takes effect <I>first</I> will be the active limit (that is, they're OR'd together). </P>
|
||||
<P><B>Show System Pages</B><BR>Should the menus the macro creates include System pages such as Trash, Clipboard, Page not found, etc.? If you want Admins or Content Managers to be able to see System Pages, then select Yes and use the Navigation Template to hide them.</P>
|
||||
<P><B>Show Hidden Pages</B><BR>Should the menus include pages which are marked as Hidden? Similar to
|
||||
|
||||
<P><B>Stop traversing when reaching level</B><BR>
|
||||
This allows you to prune a menu -- in either direction -- when it reaches a <I>specific</I> level in the page tree. It's slightly different in effect than Max Depth.
|
||||
|
||||
<P><B>Max Depth</B><BR>
|
||||
This allows you to prune a menu -- in either direction -- when it reaches a <I>number of levels</I> in the page tree. 'Stop Traversing' is absolute; 'Max Depth' is relative. Presumably, if you set both, whichever one takes effect <I>first</I> will be the active limit (that is, they're OR'd together).
|
||||
|
||||
<P><B>Show System Pages</B><BR>
|
||||
Should the menus the macro creates include System pages such as Trash, Clipboard, Page not found, etc.? If you want Admins or Content Managers to be able to see System Pages, then select Yes and use the Navigation Template to hide them.
|
||||
|
||||
<P><B>Show Hidden Pages</B><BR>
|
||||
Should the menus include pages which are marked as Hidden? Similar to
|
||||
System Pages, if you want certain groups to be able to see Hidden Pages, then select Yes and use
|
||||
the Navigation Template to determine who can see them in the menu.</P>
|
||||
<P>NOTE: Any user in Admin mode will automatically be able to see all pages that they can edit regardless of whether they are hidden or the value of this property.</P>
|
||||
<P><B>Show Unprivileged Pages</B><BR>Should the menus the macro creates include pages which the currently logged-in user does not have the privilege to view? </P>
|
||||
<P><B>Template</B><BR>This menu permits you to select a template which is used to style the output created by the macro -- if you need the same collection of pages in multiple formats, you'll need to create multiple Navigation entries with (slightly) different names; the Copy Navigation button is useful for this.</P>
|
||||
<P><B>Reverse Output</B><BR>When this option is switched on, the menu will be in reverse order.</P>
|
||||
<P><B>Preview</B><BR>The Preview button allows you to view a navigation setup without actually saving it.</P>|,
|
||||
<P>NOTE: Any user in Admin mode will automatically be able to see all pages that they can edit regardless of whether they are hidden or the value of this property.
|
||||
|
||||
<P><B>Show Unprivileged Pages</B><BR>
|
||||
Should the menus the macro creates include pages which the currently logged-in user does not have the privilege to view?
|
||||
|
||||
<P><B>Template</B><BR>
|
||||
Select a template which is used to style the output created by the macro -- if you need the same collection of pages in multiple formats, you'll need to create multiple Navigation entries with (slightly) different names; the Copy Navigation button is useful for this.
|
||||
|
||||
<P><B>Reverse Output</B><BR>
|
||||
When this option is switched on, the menu will be in reverse order.
|
||||
|
||||
<P><B>Preview</B><BR>
|
||||
The Preview button allows you to view a navigation setup without actually saving it.
|
||||
|
||||
|,
|
||||
|
||||
lastUpdated => 1116701049,
|
||||
},
|
||||
|
||||
|
|
|
|||
|
|
@ -378,62 +378,84 @@ The WebGUI management controls for this related product.
|
|||
lastUpdated => 1031514049
|
||||
},
|
||||
|
||||
'51 description' => {
|
||||
message => q|You may enter a new benefit, or select from one you've already entered.
|
||||
<p>|,
|
||||
lastUpdated => 1120337226,
|
||||
},
|
||||
|
||||
'52 description' => {
|
||||
message => q|If you'd like to add another benefit right away, select "Yes".
|
||||
<p>|,
|
||||
lastUpdated => 1120337226,
|
||||
},
|
||||
|
||||
'50' => {
|
||||
message => q|Benefits are typically the result of the features of your product. They are why your product is so good. If you add benefits, you may also wish to consider adding some features.
|
||||
<p>
|
||||
|
||||
<b>Benefit</b><br>
|
||||
You may enter a new benefit, or select from one you've already entered.
|
||||
<p>
|
||||
|
||||
<b>Add another benefit?</b><br>
|
||||
If you'd like to add another benefit right away, select "Yes".
|
||||
<p>
|
||||
|,
|
||||
lastUpdated => 1031514049
|
||||
lastUpdated => 1120337252
|
||||
},
|
||||
|
||||
'62 description' => {
|
||||
message => q|Select a layout for this product.
|
||||
<p/>|,
|
||||
lastUpdated => 1120332527,
|
||||
},
|
||||
|
||||
'10 description' => {
|
||||
message => q|The price of this product. You may optionally enter text like "call for pricing" if you wish, or you may leave it blank.
|
||||
<p>|,
|
||||
lastUpdated => 1120332527,
|
||||
},
|
||||
|
||||
'11 description' => {
|
||||
message => q|The product number, SKU, ISBN, or other identifier for this product.
|
||||
<p>|,
|
||||
lastUpdated => 1120332527,
|
||||
},
|
||||
|
||||
'7 description' => {
|
||||
message => q|An image of this product.
|
||||
<p>|,
|
||||
lastUpdated => 1120332527,
|
||||
},
|
||||
|
||||
'8 description' => {
|
||||
message => q|An image of this product.
|
||||
<p>|,
|
||||
lastUpdated => 1120332527,
|
||||
},
|
||||
|
||||
'9 description' => {
|
||||
message => q|An image of this product.
|
||||
<p>|,
|
||||
lastUpdated => 1120332527,
|
||||
},
|
||||
|
||||
'13 description' => {
|
||||
message => q|The brochure for this product.
|
||||
<p>|,
|
||||
lastUpdated => 1120332527,
|
||||
},
|
||||
|
||||
'14 description' => {
|
||||
message => q|The product, user, or service manual for this product.
|
||||
<p>|,
|
||||
lastUpdated => 1120332527,
|
||||
},
|
||||
|
||||
'15 description' => {
|
||||
message => q|The warranty for this product.
|
||||
<p>|,
|
||||
lastUpdated => 1120332527,
|
||||
},
|
||||
|
||||
'39' => {
|
||||
message => q|WebGUI has a product management system built in to enable you to publish your products and services to your site quickly and easily.
|
||||
<p>
|
||||
|
||||
<b>Template</b><br/>
|
||||
Select a layout for this product.
|
||||
<p/>
|
||||
|
||||
<b>Price</b><br>
|
||||
The price of this product. You may optionally enter text like "call for pricing" if you wish, or you may leave it blank.
|
||||
<p>
|
||||
|
||||
<b>Product Number</b><br>
|
||||
The product number, SKU, ISBN, or other identifier for this product.
|
||||
<p>
|
||||
|
||||
<b>Product Image 1</b><br>
|
||||
An image of this product.
|
||||
<p>
|
||||
|
||||
<b>Product Image 2</b><br>
|
||||
An image of this product.
|
||||
<p>
|
||||
|
||||
<b>Product Image 3</b><br>
|
||||
An image of this product.
|
||||
<p>
|
||||
|
||||
<b>Brochure</b><br>
|
||||
The brochure for this product.
|
||||
<p>
|
||||
|
||||
<b>Manual</b><br>
|
||||
The product, user, or service manual for this product.
|
||||
<p>
|
||||
|
||||
<b>Warranty</b><br>
|
||||
The warranty for this product.
|
||||
<p>
|
||||
|,
|
||||
lastUpdated => 1038889846
|
||||
lastUpdated => 1120332572
|
||||
},
|
||||
|
||||
'36' => {
|
||||
|
|
@ -456,19 +478,23 @@ The warranty for this product.
|
|||
lastUpdated => 1031514049
|
||||
},
|
||||
|
||||
'23 description' => {
|
||||
message => q|You may enter a new feature, or select one you entered for another product in the system.
|
||||
<p>|,
|
||||
lastUpdated => 1120335791,
|
||||
},
|
||||
|
||||
'24 description' => {
|
||||
message => q|If you'd like to add another feature right away, select "Yes".
|
||||
<p>|,
|
||||
lastUpdated => 1120335791,
|
||||
},
|
||||
|
||||
'41' => {
|
||||
message => q|Features are selling points for a product. IE: Reasons to buy your product. Features often result in benefits, so you may want to also add some benefits to this product.
|
||||
<p>
|
||||
|
||||
<b>Feature</b><br>
|
||||
You may enter a new feature, or select one you entered for another product in the system.
|
||||
<p>
|
||||
|
||||
<b>Add another feature?</b><br>
|
||||
If you'd like to add another feature right away, select "Yes".
|
||||
<p>
|
||||
|,
|
||||
lastUpdated => 1031514049
|
||||
lastUpdated => 1120335841
|
||||
},
|
||||
|
||||
'58' => {
|
||||
|
|
@ -476,20 +502,22 @@ If you'd like to add another feature right away, select "Yes".
|
|||
lastUpdated => 1031514049
|
||||
},
|
||||
|
||||
'20 description' => {
|
||||
message => q|Choose from the list of products you've already entered.
|
||||
<p>|,
|
||||
lastUpdated => 1120337083,
|
||||
},
|
||||
|
||||
'21 description' => {
|
||||
message => q|Select "Yes" if you have another related product to add.
|
||||
<p>|,
|
||||
lastUpdated => 1120337083,
|
||||
},
|
||||
|
||||
'47' => {
|
||||
message => q|Related products are products that are comparable or complementary to other products.
|
||||
<p>
|
||||
|
||||
|
||||
<b>Related products</b><br>
|
||||
Choose from the list of products you've already entered.
|
||||
<p>
|
||||
|
||||
|
||||
<b>Add another related product?</b><br>
|
||||
Select "Yes" if you have another related product to add.
|
||||
<p>
|
||||
|
||||
|,
|
||||
lastUpdated => 1041876679
|
||||
},
|
||||
|
|
@ -534,17 +562,22 @@ Select "Yes" if you have another related product to add.
|
|||
lastUpdated => 1031514049
|
||||
},
|
||||
|
||||
'17 description' => {
|
||||
message => q|Choose from the list of products you've already entered.
|
||||
<p>|,
|
||||
lastUpdated => 1120336412,
|
||||
},
|
||||
|
||||
'18 description' => {
|
||||
message => q|Select "Yes" if you have another accessory to add.
|
||||
<p>|,
|
||||
lastUpdated => 1120336412,
|
||||
},
|
||||
|
||||
'45' => {
|
||||
message => q|Accessories are products that enhance other products.
|
||||
<p>
|
||||
|
||||
<b>Accessory</b><br>
|
||||
Choose from the list of products you've already entered.
|
||||
<p>
|
||||
|
||||
<b>Add another accessory?</b><br>
|
||||
Select "Yes" if you have another accessory to add.
|
||||
<p>
|
||||
|,
|
||||
lastUpdated => 1031514049
|
||||
},
|
||||
|
|
@ -554,32 +587,34 @@ Select "Yes" if you have another accessory to add.
|
|||
lastUpdated => 1031514049
|
||||
},
|
||||
|
||||
'26 description' => {
|
||||
message => q|The type of specification. For instance, height, weight, or color. You may select one you've entered for another product, or type in a new specification.
|
||||
<p>|,
|
||||
lastUpdated => 1120336437,
|
||||
},
|
||||
|
||||
'27 description' => {
|
||||
message => q|The actual specification value. For instance, if you chose height as the Label, then you'd enter a numeric value like "18".
|
||||
<p>|,
|
||||
lastUpdated => 1120336120,
|
||||
},
|
||||
|
||||
'29 description' => {
|
||||
message => q|The unit of measurement for this specification. For instance, if you chose height for your label, perhaps the units would be "meters".
|
||||
<p>|,
|
||||
lastUpdated => 1120336120,
|
||||
},
|
||||
|
||||
'28 description' => {
|
||||
message => q|If you'd like to add another specification, select "Yes".
|
||||
<p>|,
|
||||
lastUpdated => 1120336120,
|
||||
},
|
||||
|
||||
'43' => {
|
||||
message => q|Specifications are the technical details of your product.
|
||||
<p>
|
||||
|
||||
|
||||
<b>Label</b><br>
|
||||
The type of specification. For instance, height, weight, or color. You may select one you've entered for another product, or type in a new specification.
|
||||
<p>
|
||||
|
||||
|
||||
<b>Specification</b><br>
|
||||
The actual specification value. For instance, if you chose height as the Label, then you'd enter a numeric value like "18".
|
||||
<p>
|
||||
|
||||
|
||||
<b>Units</b><br>
|
||||
The unit of measurement for this specification. For instance, if you chose height for your label, perhaps the units would be "meters".
|
||||
<p>
|
||||
|
||||
|
||||
<b>Add another specification?</b><br>
|
||||
If you'd like to add another specification, select "Yes".
|
||||
<p>
|
||||
|
||||
|,
|
||||
lastUpdated => 1031514049
|
||||
<p>|,
|
||||
lastUpdated => 1120336146
|
||||
},
|
||||
|
||||
'19' => {
|
||||
|
|
|
|||
|
|
@ -663,16 +663,31 @@ Usually the RDN looks something like:</p>
|
|||
lastUpdated => 1116151382
|
||||
},
|
||||
|
||||
'LDAPLink_ldapGroup description' => {
|
||||
message => q|Group membership can also be controlled via LDAP. Provide the LDAP DN of a group to check users for. Next, set either the LDAP Group Property or the LDAP Recursive Group Property.|,
|
||||
lastUpdated => 1120447990,
|
||||
},
|
||||
|
||||
'LDAPLink_ldapGroupProperty' => {
|
||||
message => q|LDAP Group Property|,
|
||||
lastUpdated => 1116151382
|
||||
},
|
||||
|
||||
'LDAPLink_ldapGroupProperty description' => {
|
||||
message => q|LDAP property to retrieve from the LDAP Group. If both the LDAP Recursive Group Propery and LDAP Group Property are set, then the Recursive Group Property will be used.|,
|
||||
lastUpdated => 1120447986,
|
||||
},
|
||||
|
||||
'LDAPLink_ldapRecursiveProperty' => {
|
||||
message => q|LDAP Recursive Group Property|,
|
||||
lastUpdated => 1116151382
|
||||
},
|
||||
|
||||
'LDAPLink_ldapRecursiveProperty description' => {
|
||||
message => q|A property to recursively search the LDAP Group for. If both the LDAP Recursive Group Propery and LDAP Group Property are set, then the Recursive Group Property will be used.|,
|
||||
lastUpdated => 1120447983,
|
||||
},
|
||||
|
||||
'ldapconnections' => {
|
||||
message => q|LDAP Connections|,
|
||||
lastUpdated =>1092930637,
|
||||
|
|
|
|||
|
|
@ -64,21 +64,24 @@ our $I18N = {
|
|||
},
|
||||
|
||||
'help manage commerce body' => {
|
||||
message => q|The commerce system of WebGUI is highly configurable. You can set the following properties:<br>
|
||||
<br>
|
||||
message => q|The commerce system of WebGUI is highly configurable. You can set the following properties:<p>
|
||||
|
||||
<b>^International("confirm checkout template","Commerce");</b><br>
|
||||
This template is shown when a user is asked to confirm his purchase. The form data for the payment gateway is also shown here.<br>
|
||||
<br>
|
||||
|
||||
<b>^International("transaction error template","Commerce");</b><br>
|
||||
This is the template that's shown if any error occurs during the payment process. This could be a declined credit card or a false cvv2 code, for instance. Also an 'error' is triggered by a fraud protection filter or some other service that requires manual interaction from the merchant.<br>
|
||||
<br>
|
||||
|
||||
<b>^International("checkout canceled template","Commerce");</b><br>
|
||||
This is the template that the user sees when he cancels the transaction. This normally only occurs with remote-side payment gateways (like PayPal). This is because a site-side payment gateway usually uses a single step process.<br>
|
||||
<br>
|
||||
|
||||
<b>^International("daily report email","Commerce");</b>
|
||||
Everyday the scheduler plugin that checks and updates subscriptions send a report on on the successful and failed term payments. Here you can set to which email address it should send this report.<br>
|
||||
<br>
|
||||
<h2>Payment plugins</h2>
|
||||
|
||||
<b>Payment plugin</b><br>
|
||||
You can select the payment plugin to use here. Please note that you have to enable the plugins you want to choose from in the WebGUI configuration file. If you don't do this they won't show up here.<br>
|
||||
<br>
|
||||
|
|
|
|||
|
|
@ -258,149 +258,112 @@ left of it. Use the delete button to remove it.<br>
|
|||
lastUpdated => 0,
|
||||
context => q|The title of the manage product help page|
|
||||
},
|
||||
|
||||
'title description' => {
|
||||
message => q|The name of the product.|,
|
||||
lastUpdated => 1120449422,
|
||||
},
|
||||
|
||||
'description description' => {
|
||||
message => q|A description of the product.|,
|
||||
lastUpdated => 1120449422,
|
||||
},
|
||||
|
||||
'price description' => {
|
||||
message => q|The default price of the product.|,
|
||||
lastUpdated => 1120449422,
|
||||
},
|
||||
|
||||
'weight description' => {
|
||||
message => q|The default weight of the product.|,
|
||||
lastUpdated => 1120449422,
|
||||
},
|
||||
|
||||
'sku description' => {
|
||||
message => q|The base SKU of the product.|,
|
||||
lastUpdated => 1120449422,
|
||||
},
|
||||
|
||||
'template description' => {
|
||||
message => q|The default template associated with product.|,
|
||||
lastUpdated => 1120449422,
|
||||
},
|
||||
|
||||
'sku template description' => {
|
||||
message => q|This field defines how the SKU for each
|
||||
product variant will be composed. The syntax is the same as that of
|
||||
normal templates.|,
|
||||
lastUpdated => 1120449422,
|
||||
},
|
||||
|
||||
'help manage product body' => {
|
||||
message => q|The manage product menu allows you to inspect and edit the properties
|
||||
of your product.<br>
|
||||
<br>
|
||||
<span style="font-weight: bold;">Overview<br>
|
||||
</span><br>
|
||||
Products consist of their properties and parameters. The properties are
|
||||
the base of your product. They define the the default price, weight,
|
||||
sku and sku composition of the product and all it's variants.<br>
|
||||
<br>
|
||||
Parameters are the different forms in which your product comes. For
|
||||
instance if you're selling a T-shirt, 'Size' and 'Color' are parameters.<br>
|
||||
<br>
|
||||
Parameters consist of options. An option is a value a parameter can
|
||||
take, such as 'Blue', 'Grey' or 'Rainbow'. Options also allow you to
|
||||
set modifiers for price, weight and sku. These modifiers add to the the
|
||||
base price, weight and sku defined in the properties of your product. A
|
||||
price modifier of 5.00 for 'Rainbow' increases the price with
|
||||
$5.00 for rainbow-colored shirts.<br>
|
||||
<br>
|
||||
<span style="font-weight: bold;">Properties<br>
|
||||
</span><br>
|
||||
of your product.
|
||||
|
||||
<p>Overview<br/>
|
||||
Products consist of base Properties along with Parameters with various
|
||||
Options. The properties are the base of your product. They define the
|
||||
the default price, weight, sku and sku composition of the product and
|
||||
all it's variants.
|
||||
|
||||
<p><b>Properties</b><br/>
|
||||
The properties section shows the base values for your product. Every
|
||||
product configuration you sell is based on these values. Modifiers set
|
||||
in options are relative to these values. The properties of a product
|
||||
are:<br>
|
||||
<br>
|
||||
<div style="margin-left: 40px;"><span style="font-weight: bold;">Price</span>
|
||||
The default price of the product<br>
|
||||
<span style="font-weight: bold;">Weight</span> The default weight of
|
||||
the product<br>
|
||||
<span style="font-weight: bold;">SKU</span> The base SKU of the product<br>
|
||||
<span style="font-weight: bold;">Description</span> A description of
|
||||
the product<br>
|
||||
<span style="font-weight: bold;">SKU Template</span> This template
|
||||
defines how the SKU for each product variant <br>
|
||||
will be composed. You can enter any character you like and insert the
|
||||
SKU modifiers generated by the different parameters.<br>
|
||||
</div>
|
||||
<br>
|
||||
You can edit these properties by clicking the edit button above them.<br>
|
||||
<br>
|
||||
<span style="font-weight: bold;">Parameters<span
|
||||
style="font-weight: bold;"><span style="font-weight: bold;"><br>
|
||||
</span></span></span><br>
|
||||
Parameters define the variables of your product, like 'Color' or
|
||||
'Size'. You can add a parameter by clicking on the 'Add parameter'
|
||||
link. Editing or deleting a parameter can be accomplished by clicking
|
||||
on the edit or delete button on the left of the parameter respectively.<br>
|
||||
<br>
|
||||
If you add a parameter, you will be taken to the SKU Template edit
|
||||
in options are relative to these values. You can edit properties by
|
||||
clicking the edit button above them.
|
||||
|
||||
<p><b>Parameters</b><br/>
|
||||
<p>Parameters are the different forms in which your product comes,
|
||||
like 'Color' and 'Size' for a T-shift. You can add a parameter to define
|
||||
these forms by clicking on the 'Add parameter' link. Editing or deleting
|
||||
a parameter can be accomplished by clicking on the edit or delete button
|
||||
on the left of the parameter respectively.
|
||||
|
||||
<p>If you add a parameter, you will be taken to the SKU Template edit
|
||||
screen when you click on 'Save'. This allows you to add this parameter
|
||||
to the SKU Template of the product.<br>
|
||||
<br>
|
||||
If you edit a parameter to change its name. The SKU Template should be
|
||||
to the SKU Template of the product.
|
||||
|
||||
<p>If you edit a parameter to change its name, the SKU Template should be
|
||||
updated automatically and you will be taken back to the Manage product
|
||||
screen after clicking 'Save'.<br>
|
||||
<br>
|
||||
<span style="font-weight: bold;">Options<br>
|
||||
</span><br>
|
||||
Options are the values a parameter can take. Therefore you can only add
|
||||
an Option to an existing parameter. To do so, click on the 'Add option'
|
||||
link directly below the parameter you want to add it to.<br>
|
||||
<br>
|
||||
Options consist of modifiers for price, weight and sku. <br>
|
||||
<br>
|
||||
Editing an option can be done by clicking the 'edit' button left of it.
|
||||
The delete button left of an option allows you to delete that option.<br>
|
||||
<br>
|
||||
<span style="font-weight: bold;">List variants<br>
|
||||
<span style="font-weight: bold;"></span></span><br>
|
||||
screen after clicking 'Save'.
|
||||
|
||||
<p><b>Options</b><br/>
|
||||
<p>An option is a value a parameter can
|
||||
take, such as 'Blue' or 'Grey', and 'Large' or 'Small'. Options also allow you to
|
||||
set modifiers for price, weight and sku. These modifiers add to the the
|
||||
base price, weight and sku defined in the properties of your product. A
|
||||
price modifier of 5.00 for 'Rainbow' increases the price with
|
||||
$5.00 for rainbow-colored shirts.
|
||||
|
||||
<p>To add an Option to an existing Parameter, click on the 'Add option'
|
||||
link directly below it.
|
||||
|
||||
<p>Editing an option can be done by clicking the 'edit' button left of it.
|
||||
The delete button left of an option allows you to delete that option.
|
||||
|
||||
<p><b>List variants</b><br/>
|
||||
This menu option can be found in the righthand side menu, and allows
|
||||
you to view all product variants that are possible with the given
|
||||
options. Also this is the place to change the automatically generated
|
||||
price, weight and sku values and set availability of a product variant.<br>|,
|
||||
lastUpdated => 0,
|
||||
price, weight and sku values and set availability of a product variant.
|
||||
|,
|
||||
lastUpdated => 1120451652,
|
||||
context => q|The body of the manage product help page|
|
||||
},
|
||||
|
||||
'help edit product title' => {
|
||||
message => q|Edit product|,
|
||||
lastUpdated => 0,
|
||||
context => q|The title of the edit product help page|
|
||||
},
|
||||
|
||||
'help edit product body' => {
|
||||
message => q|The properties section shows the base values for your product. Every
|
||||
product configuration you sell is based on these values. Modifiers set
|
||||
in options are relative to these values. The properties of a product
|
||||
are:<br>
|
||||
<br>
|
||||
<span style="font-weight: bold;"><span style="font-weight: bold;">Title<br>
|
||||
</span></span>
|
||||
<div style="margin-left: 40px;">The name of the product.<br>
|
||||
</div>
|
||||
<span style="font-weight: bold;"><span style="font-weight: bold;"></span><br>
|
||||
Description</span> <br>
|
||||
<div style="margin-left: 40px;">A description of the product.<br>
|
||||
</div>
|
||||
<span style="font-weight: bold;"><br>
|
||||
Price</span> <br>
|
||||
<div style="margin-left: 40px;">The default price of the product.<br>
|
||||
<br>
|
||||
</div>
|
||||
<span style="font-weight: bold;">Weight</span> <br>
|
||||
<div style="margin-left: 40px;">The default weight of the product.<br>
|
||||
</div>
|
||||
<span style="font-weight: bold;"><br>
|
||||
SKU</span> <br>
|
||||
<div style="margin-left: 40px;">The base SKU of the product.<br>
|
||||
<br>
|
||||
</div>
|
||||
<span style="font-weight: bold;">Template<br>
|
||||
</span>
|
||||
<div style="margin-left: 40px;">The default template associated with
|
||||
product.<br>
|
||||
</div>
|
||||
<br>
|
||||
<span style="font-weight: bold;">SKU Template</span> <br>
|
||||
<div style="margin-left: 40px;">This field defines how the SKU for each
|
||||
product variant will be composed. The syntax is the same as that of
|
||||
normal templates. Available template variables are:<br>
|
||||
<br>
|
||||
<div style="margin-left: 40px;"><span style="font-weight: bold;"><tmpl_var
|
||||
base><span style="font-weight: bold;"> <br>
|
||||
</span></span>
|
||||
<div style="margin-left: 40px;">The default SKU defined above.<br>
|
||||
<br>
|
||||
</div>
|
||||
<span style="font-weight: bold;"><tmpl_var param.MyParameterName></span>
|
||||
<br>
|
||||
<div style="margin-left: 40px;">For each parameter a template variable
|
||||
of this format is generated. Spaces in the parameter name are converted
|
||||
to dots. For example if you have defined a parameter called 'Color' its
|
||||
template variable is called <span style="font-style: italic;"><tmpl_var
|
||||
param.color></span>. If you have defined a parameter with name
|
||||
'Number of pins' the template variable containing its SKU modifier is
|
||||
called <span style="font-style: italic;"><tmpl_var
|
||||
param.number.of.pins>.<br>
|
||||
</span></div>
|
||||
</div>
|
||||
</div>
|
||||
<span style="font-style: italic;"> <br>
|
||||
</span><span style="font-style: italic;"></span>|,
|
||||
lastUpdated => 0,
|
||||
are:<p>
|
||||
|,
|
||||
lastUpdated => 1120449342,
|
||||
context => q|The body of the edit product help page|
|
||||
},
|
||||
'help edit parameter title' => {
|
||||
|
|
@ -410,7 +373,7 @@ param.number.of.pins>.<br>
|
|||
},
|
||||
'help edit parameter body' => {
|
||||
message => q|Parameters define the variables of your product, like 'Color' or
|
||||
'Size'. A parameter only has a name. This name will also be used
|
||||
'Size'. A parameter only has a name. This name will also be used
|
||||
for the name of the template variable pointing to this parameter in the
|
||||
SKU Template.<br>
|
||||
<br>
|
||||
|
|
@ -580,9 +543,9 @@ called <span style="font-style: italic;"><tmpl_var
|
|||
param.number.of.pins>.<br>
|
||||
<br>
|
||||
</span></div>
|
||||
The complete list of available template varaibles is also printed above
|
||||
The complete list of available template variables is also printed above
|
||||
the form.<br>|,
|
||||
lastUpdated => 0,
|
||||
lastUpdated => 1120449297,
|
||||
context => q|The body of the edit sku template help page|
|
||||
},
|
||||
|
||||
|
|
|
|||
|
|
@ -1990,43 +1990,66 @@ You also cannot import a theme from a version of WebGUI that is newer than the o
|
|||
message => q|Clipboard, Manage|,
|
||||
lastUpdated => 1052850265
|
||||
},
|
||||
'84 description' => {
|
||||
message => q|A name for the group. It is best if the name is descriptive so you know what it is at a glance.
|
||||
<p>|,
|
||||
lastUpdated => 1120448672,
|
||||
},
|
||||
|
||||
'622' => {
|
||||
message => q|
|
||||
<p>
|
||||
'85 description' => {
|
||||
message => q|A longer description of the group so that other admins and content managers (or you if you forget) will know what the purpose of this group is.
|
||||
<p>|,
|
||||
lastUpdated => 1120448672,
|
||||
},
|
||||
|
||||
<b>Group Name</b><br>
|
||||
A name for the group. It is best if the name is descriptive so you know what it is at a glance.
|
||||
<p>
|
||||
|
||||
<b>Description</b><br>
|
||||
A longer description of the group so that other admins and content managers (or you if you forget) will know what the purpose of this group is.
|
||||
<p>
|
||||
|
||||
<b>Expire Offset</b><br>
|
||||
The amount of time that a user will belong to this group before s/he is expired (or removed) from it. This is very useful for membership sites where users have certain privileges for a specific period of time.
|
||||
'367 description' => {
|
||||
message => q|The amount of time that a user will belong to this group before s/he is expired (or removed) from it. This is very useful for membership sites where users have certain privileges for a specific period of time.
|
||||
<p>
|
||||
<b>NOTE:</b> This can be overridden on a per-user basis.
|
||||
<p>
|
||||
<p>|,
|
||||
lastUpdated => 1120448672,
|
||||
},
|
||||
|
||||
<b>Notify user about expiration?</b><br>
|
||||
Set this value to yes if you want WebGUI to contact the user when they are about to be expired from the group.
|
||||
<p>
|
||||
'865 description' => {
|
||||
message => q|Set this value to yes if you want WebGUI to contact the user when they are about to be expired from the group.
|
||||
<p>|,
|
||||
lastUpdated => 1120448672,
|
||||
},
|
||||
|
||||
<b>Expire Notification Offset</b><br>
|
||||
The difference in the number of days from the expiration to the notification. You may set this to any valid integer. For instance, set this to "0" if you wish the notification to be sent on the same day that the grouping expires. Set it to "-7" if you want the notification to go out 7 days <b>before</b> the grouping expires. Set it to "7" if you wish the notification to be sent 7 days after the expiration.
|
||||
<p>
|
||||
'864 description' => {
|
||||
message => q|The difference in the number of days from the expiration to the notification. You may set this to any valid integer. For instance, set this to "0" if you wish the notification to be sent on the same day that the grouping expires. Set it to "-7" if you want the notification to go out 7 days <b>before</b> the grouping expires. Set it to "7" if you wish the notification to be sent 7 days after the expiration.
|
||||
<p>|,
|
||||
lastUpdated => 1120448672,
|
||||
},
|
||||
|
||||
<b>Expire Notification Message</b><br>
|
||||
Type the message you wish to be sent to the user telling them about the expiration.
|
||||
<p>
|
||||
'866 description' => {
|
||||
message => q|Type the message you wish to be sent to the user telling them about the expiration.
|
||||
<p>|,
|
||||
lastUpdated => 1120448672,
|
||||
},
|
||||
|
||||
<b>Delete Offset</b><br>
|
||||
The difference in the number of days from the expiration to the grouping being deleted from the system. You may set this to any valid integer. For instance, set this to "0" if you wish the grouping to be deleted on the same day that the grouping expires. Set it to "-7" if you want the grouping to be deleted 7 days <b>before</b> the grouping expires. Set it to "7" if you wish the grouping to be deleted 7 days after the expiration.
|
||||
<p>
|
||||
'863 description' => {
|
||||
message => q|The difference in the number of days from the expiration to the grouping being deleted from the system. You may set this to any valid integer. For instance, set this to "0" if you wish the grouping to be deleted on the same day that the grouping expires. Set it to "-7" if you want the grouping to be deleted 7 days <b>before</b> the grouping expires. Set it to "7" if you wish the grouping to be deleted 7 days after the expiration.
|
||||
<p>|,
|
||||
lastUpdated => 1120448672,
|
||||
},
|
||||
|
||||
<b>Scratch Filter</b><br>
|
||||
A user can be dynamically bound to a group by a scratch variable in their session. Scratch variables can be set programatically, or via the web. To set a scratch variable via the web, tack the following on to the end of any URL:
|
||||
'538 description' => {
|
||||
message => q|If you've enabled Karma, then you'll be able to set this value. Karma Threshold is the amount of karma a user must have to be considered part of this group.
|
||||
<p>|,
|
||||
lastUpdated => 1120448672,
|
||||
},
|
||||
|
||||
'857 description' => {
|
||||
message => q|Specify an IP address or an IP mask to match. If the user's IP address matches, they'll automatically be included in this group. An IP mask is simply the IP address minus an octet or two. You may also specify multiple IP masks separated by semicolons.
|
||||
<p>
|
||||
<i>IP Mask Example:</i> 10.;192.168.;101.42.200.142
|
||||
<p>|,
|
||||
lastUpdated => 1120448672,
|
||||
},
|
||||
|
||||
'945 description' => {
|
||||
message => q|A user can be dynamically bound to a group by a scratch variable in their session. Scratch variables can be set programatically, or via the web. To set a scratch variable via the web, tack the following on to the end of any URL:
|
||||
<p>
|
||||
<i>?op=setScratch&scratchName=somename&scratchValue=somevalue</i>
|
||||
<p>
|
||||
|
|
@ -2035,35 +2058,30 @@ Having done that, when a user clicks on that link they will have a scratch varia
|
|||
To set a scratch filter simply add a line to the scratch filter field that looks like:
|
||||
<p>
|
||||
<i>www_somename=somevalue</i>
|
||||
<p>
|
||||
<p>|,
|
||||
lastUpdated => 1120448672,
|
||||
},
|
||||
|
||||
<b>IP Address</b><br>
|
||||
Specify an IP address or an IP mask to match. If the user's IP address matches, they'll automatically be included in this group. An IP mask is simply the IP address minus an octet or two. You may also specify multiple IP masks separated by semicolons.
|
||||
<p>
|
||||
<i>IP Mask Example:</i> 10.;192.168.;101.42.200.142
|
||||
<p>
|
||||
'974 description' => {
|
||||
message => q|Do you wish to let users add themselves to this group? See the GroupAdd macro for more info.
|
||||
<p>|,
|
||||
lastUpdated => 1120448672,
|
||||
},
|
||||
|
||||
<b>Karma Threshold</b><br>
|
||||
If you've enabled Karma, then you'll be able to set this value. Karma Threshold is the amount of karma a user must have to be considered part of this group.
|
||||
<p>
|
||||
'975 description' => {
|
||||
message => q|Do you wish to let users remove themselves from this group? See the GroupDelete macro for more info.
|
||||
<p>|,
|
||||
lastUpdated => 1120448672,
|
||||
},
|
||||
|
||||
<b>Users can add themselves?</b><br>
|
||||
Do you wish to let users add themselves to this group? See the GroupAdd macro for more info.
|
||||
<p>
|
||||
'1075 description' => {
|
||||
message => q|If you'd like to have this group validate users using an external database, choose the database link to use.
|
||||
<p>|,
|
||||
lastUpdated => 1120448672,
|
||||
},
|
||||
|
||||
<b>Users can remove themselves?</b><br>
|
||||
Do you wish to let users remove themselves from this group? See the GroupDelete macro for more info.
|
||||
<p>
|
||||
|
||||
<i>The following options are recommended only for advanced WebGUI administrators.</i>
|
||||
<p>
|
||||
|
||||
<b>Database Link</b><br>
|
||||
If you'd like to have this group validate users using an external database, choose the database link to use.
|
||||
<p>
|
||||
|
||||
<b>SQL Query</b><br>
|
||||
Many organizations have external databases that map users to groups; for example an HR database might map Employee ID to Health Care Plan. To validate users against an external database, you need to construct a SQL statement that will return 1 if a user is in the group. Make sure to begin your statement with "select 1". You may use macros in this query to access data in a user's profile, such as Employee ID. Here is an example that checks a user against a fictional HR database. This assumes you have created an additional WebGUI profile field called employeeId.<br>
|
||||
'1005 description' => {
|
||||
message => q|Many organizations have external databases that map users to groups; for example an HR database might map Employee ID to Health Care Plan. To validate users against an external database, you need to construct a SQL statement that will return 1 if a user is in the group. Make sure to begin your statement with "select 1". You may use macros in this query to access data in a user's profile, such as Employee ID. Here is an example that checks a user against a fictional HR database. This assumes you have created an additional WebGUI profile field called employeeId.<br>
|
||||
<br>
|
||||
select 1 from employees, health_plans, empl_plan_map<br>
|
||||
where employees.employee_id = ^User("employeeId");<br>
|
||||
|
|
@ -2072,11 +2090,19 @@ and employees.employee_id = empl_plan_map.employee_id<br>
|
|||
and health_plans.health_plan_id = empl_plan_mp.health_plan_id<br>
|
||||
<br>
|
||||
This group could then be named "Employees in HMO 1", and would allow you to restrict any page or wobject to only those users who are part of this health plan in the external database.
|
||||
<p>
|
||||
<p>|,
|
||||
lastUpdated => 1120448672,
|
||||
},
|
||||
|
||||
<b>Cache external groups for how long?</b><br>
|
||||
Large sites using external group data will be making many calls to the external database. To help reduce the load, you may select how long you'd like to cache the results of the external database query within the WebGUI database. More advanced background caching may be included in a future version of WebGUI.|,
|
||||
lastUpdated => 1101775417
|
||||
'1004 description' => {
|
||||
message => q|Large sites using external group data will be making many calls to the external database. To help reduce the load, you may select how long you'd like to cache the results of the external database query within the WebGUI database. More advanced background caching may be included in a future version of WebGUI.|,
|
||||
lastUpdated => 1120448672,
|
||||
},
|
||||
|
||||
|
||||
'622' => {
|
||||
message => q||,
|
||||
lastUpdated => 1120448740
|
||||
},
|
||||
|
||||
'361' => {
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue