Gossamer Forum
Quote Reply
Category Drop Down Field
Hi champs,

I have the folowing global, which I assume originated from andy or laura. I want to add the possiblity to pass a parameter of the top category, so that I can call the global like <%global('1')%>, whereas 1 stands for the top category that will be included in the selection of the categories. For example, if I have

catid 1 = ABC
catid 2 = CDE

if I use the global <%global('1')%>, only the caid 1 and all the subcategories should be shown in the drop down field.

sub {
my $show_count = $_[0];
my $category;
my $db = $DB->table('Category') || return $GT::SQL::error;
$db->select_options('ORDER BY Full_Name') || return $GT::SQL::error;
my $sth = $db->select( ['ID','Full_Name','Number_of_Links'] ) || return $GT::SQL::error;

my $back;

while (my ($id,$full_name,$numberoflinks) = $sth->fetchrow_array) {

my $full_name2;
my @cut = split /\//, $full_name;
for (my $i=0; $i < $#cut; $i++) {

$full_name2 .= "&nbsp;&nbsp;";

}

$full_name2 .= $cut[$#cut];
if ($show_count) {
$full_name2 .= " ($numberoflinks)";
}

$back .= "<option value=\"$id\">$full_name2</option>";

}

my $send_back = qq|<select size="1" name="catid"><option value=""<------</option>$back</select>|;

return $send_back;

}



Cheers.
Quote Reply
Re: [vacationrentals] Category Drop Down Field In reply to
Wrong forum Wink (I've moved it for you)

A quick answer, would be something like this;

Code:
my $cond = GT::SQL::Condition->new('Full_Name','LIKE','CategoryName%');
my $sth = $db->select( ['ID','Full_Name','Number_of_Links'], $cond )
|| return $GT::SQL::error;

...which should then grab the category in question, and its sub-categories.

You would also modify it a little bit more... by adding;

Code:
my $category_name = $_[1];

... right below;

Code:
my $show_count = $_[0];

Then, you will need to use;

Code:
my $cond = GT::SQL::Condition->new('Full_Name','LIKE',"$category_name%");
my $sth = $db->select( ['ID','Full_Name','Number_of_Links'], $cond )
|| return $GT::SQL::error;


.. and then call with;

Code:
<%global('1','Category Name')%>

Not tested.. but should work / get you on the right tracks :)

Hope that helps.

Cheers

Andy (mod)
andy@ultranerds.co.uk


IMPORTANT: I've now moved to ultranerds.co.uk, and the .com will no longer work!
Want to give me something back for my help? Please see my Amazon Wish List
GLinks ULTRA Package (plugins total "value" $3,325 & rising, for just $350)| GLinks ULTRA Package PRO (plugins total "value" $5,625 & rising, for just $500)
Support Forum | Links SQL Plugins | DMOZ Dumps | UltraNerds | ULTRAGLobals Plugin | Pre-Made Template Sets | FREE GLinks Plugins!
Compare our different Plugin packages *new* Free CSS Templates
Quote Reply
Re: [Andy] Category Drop Down Field In reply to
Cheers for that! Works.