richter 2002/10/25 06:21:11
Modified: eg/web Tag: Embperl2c footer.htm messages.pl
eg/web/db Tag: Embperl2c add.epl addsel.epl data.epd
epwebapp.pl loginform.epl show.epl
eg/web/db/news Tag: Embperl2c data.epd
Log:
Lots of bugfixes and now implemented features in the Embperl website. Works now
quite fine. Multilingual error messages still missing. (abe)
Revision Changes Path
No revision
No revision
1.1.2.5 +6 -1 embperl/eg/web/footer.htm
Index: footer.htm
===================================================================
RCS file: /home/cvs/embperl/eg/web/footer.htm,v
retrieving revision 1.1.2.4
retrieving revision 1.1.2.5
diff -u -r1.1.2.4 -r1.1.2.5
--- footer.htm 30 Jul 2002 05:15:09 -0000 1.1.2.4
+++ footer.htm 25 Oct 2002 13:21:10 -0000 1.1.2.5
@@ -2,6 +2,11 @@
<table width="100%" border=0 cellspacing=0 cellpadding=0><tr>
<td align=left class="cFoot">© 1997-2002 Gerald Richter / <a
href="http://www.ecos.de/">ecos gmbh</a></td>
[$if $udat{user_id} $]
-<td align=right class="cFoot">[= logged_in_as =] [+ $udat{user_email} +]</td>
+<td align=right class="cFoot">
+[= logged_in_as =] [+ $udat{user_email} +]
+[$ if $udat{user_admin} $]
+[Admin]
+[$ endif $]
+</td>
[$endif$]
</tr></table>
1.1.2.11 +33 -2 embperl/eg/web/messages.pl
Index: messages.pl
===================================================================
RCS file: /home/cvs/embperl/eg/web/messages.pl,v
retrieving revision 1.1.2.10
retrieving revision 1.1.2.11
diff -u -r1.1.2.10 -r1.1.2.11
--- messages.pl 27 Aug 2002 19:12:41 -0000 1.1.2.10
+++ messages.pl 25 Oct 2002 13:21:10 -0000 1.1.2.11
@@ -15,6 +15,7 @@
'addsel_login3' => '.',
'add1' => 'Hinzuf�gen eines neuen Eintrages zu',
'edit1' => 'Bearbeiten eines Eintrages von',
+ 'del1' => 'L�schen eines Eintrages',
'add2a' => 'Bitte geben Sie die Beschreibung in so vielen Sprachen wie
Ihnen m�glich ein.',
'add2b' => 'Falls Sie die �bersetzung nicht wissen, lassen Sie das
entsprechende Eingabefeld leer.',
'add3' => 'Hinzuf�gen zu',
@@ -23,7 +24,9 @@
'heading' => '�berschrift',
'url' => 'URL',
'description' => 'Beschreibung',
+ 'state' => 'Status',
'show2' => 'Folgender Eintrag wurde erfolgreich der Datenbank
hinzugef�gt/ge�ndert',
+ 'del2' => 'Der Eintrag wurde erfolgreich aus der Datenbank entfernt',
'Search' => 'Suchen',
'under_construction' => 'Hinweis: Dieser Teil der Website befindet sich
noch im Aufbau.',
'more_news' => 'Weitere News...',
@@ -46,8 +49,20 @@
'email' => 'E-Mail Adresse',
'password' => 'Kennwort',
'login' => 'Anmelden',
+ 'logout' => 'Abmelden',
'newuser' => 'Neuen Benutzer-Account einrichten',
'newpassword' => 'Neues Kennwort',
+ 'mail_greeting' => 'Hallo!',
+ 'mail_account_request' => 'Sie oder jemand anderes haben ein Benutzer-Konto
auf der Embperl Website angefordert.',
+ 'mail_note1' => 'Ihr Kontoname ist Ihre E-Mail-Adresse, d.h. sie sollten auf
der Embperl-Webseite',
+ 'mail_note2' => 'als Login-Name angeben.',
+ 'mail_your_pw_is' => 'Ihr Pa�wort ist auf',
+ 'mail_note_quotes' => 'gesetzt (ohne die Hochkommata)',
+ 'mail_note_login' => 'Sie k�nnen sich jetzt unter folgender Adresse anmelden:',
+ 'mail_sig' => 'Gr��e von der Embperl Webseite',
+ 'mail_pw' => 'Sie oder jemand anders hat ein neues Pa�wort f�r Ihr
Benutzerkonto auf der Embperl Webseite beantragt.',
+ 'mail_subj_newuser' => 'Ihr Benutzerkonto auf der Embperl Webseite',
+ 'mail_subj_newpw' => 'Ihr neues Pa�wort auf der Embperl Webseite',
},
'en' =>
{
@@ -60,7 +75,8 @@
'addsel_login2' => 'login',
'addsel_login3' => 'first.',
'add1' => 'Add a new item to',
- 'add1' => 'Edit item of',
+ 'edit1' => 'Edit item of',
+ 'del1' => 'Delete item',
'add2a' => 'Please enter the description in as much languages as
possible.',
'add2b' => 'If you don\'t know the translation leave the corresponding
input field empty.',
'add3' => 'Add to',
@@ -68,8 +84,10 @@
'delete3' => 'Delete',
'heading' => 'Heading',
'url' => 'URL',
- 'description' => 'Description',
+ 'description' => 'Description',
+ 'state' => 'State',
'show2' => 'The following entry has been sucessfully added/modified to
the database',
+ 'del2' => 'The entry has been sucessfully removed from the database',
'Search' => 'Search',
'under_construction' => 'NOTE: This part of the site is still under
contruction.',
'more_news' => 'more news...',
@@ -95,8 +113,20 @@
'email' => 'E-Mail address',
'password' => 'Password',
'login' => 'Login',
+ 'logout' => 'Logout',
'newuser' => 'Create new account',
'newpassword' => 'New password',
+ 'mail_greeting' => 'Hi!',
+ 'mail_account_request' => 'You or someone else requested a user account for
the Embperl website.',
+ 'mail_note1' => 'Your account name is your e-mail address, that means you
should enter',
+ 'mail_note2' => 'as login name on the Embperl website.',
+ 'mail_your_pw_is' => 'Your password is set to',
+ 'mail_note_quotes' => '(without the single quotes)',
+ 'mail_note_login' => 'You can now log in at the following address:',
+ 'mail_sig' => 'Regards, Your Embperl Website',
+ 'mail_pw' => 'You or possible someone else requested a new password for
your account on the Embperl Website',
+ 'mail_subj_newuser' => 'Your Embperl Website Account',
+ 'mail_subj_newpw' => 'Your new Embperl Website password',
},
) ;
@@ -105,4 +135,5 @@
push @{$r -> messages}, $messages{$lang} ;
push @{$r -> default_messages}, $messages{'en'} if ($lang ne 'en') ;
+
No revision
No revision
1.1.2.9 +15 -8 embperl/eg/web/db/add.epl
Index: add.epl
===================================================================
RCS file: /home/cvs/embperl/eg/web/db/add.epl,v
retrieving revision 1.1.2.8
retrieving revision 1.1.2.9
diff -u -r1.1.2.8 -r1.1.2.9
--- add.epl 27 Aug 2002 19:12:41 -0000 1.1.2.8
+++ add.epl 25 Oct 2002 13:21:10 -0000 1.1.2.9
@@ -1,9 +1,9 @@
[-
use File::Basename ;
+use Data::Dumper ;
-$r = shift
+$r = shift ;
-]
-
<table width="100%">
<tr bgcolor="#fefcad">
<td><font size="4">[$ if $r -> {edit} $][= edit1 =] [$else$][= add1 =]
[$endif$] [+ $r -> {category_set}{category} +]</font></td>
@@ -24,10 +24,10 @@
[$if $r -> {user_admin} $]
<table>
<tr>
- <td class="cText">[= state =]<td><td class="cInput"><input type="radio"
name="state" value="0"> [= display =]</td>
+ <td class="cText" rowspan="2" valign="top">[= state =]: </td><td
class="cInput"><input type="radio" name="state" value="1"[$ if $r->{item_set}{state}
$] CHECKED[$ endif $]>[= display =]</td>
</tr>
<tr>
- <td class="cText">[= state =]<td><td class="cInput"><input type="radio"
name="state" value="1"> [= hide =]</td>
+ <td class="cInput"><input type="radio" name="state" value="0"[$ if
!$r->{item_set}{state} $] CHECKED[$ endif $]>[= hide =]</td>
</tr>
</table>
[$endif$]
@@ -41,13 +41,13 @@
<tr>
<td>
<table>
- [$foreach $type ('heading', 'url', 'description', 'keywords') $]
+ [$foreach $type (qw(heading url description keywords)) $]
[$ if $txt = $r -> {category_set}{$type . '_text'} $]
<tr>
[$if $type ne 'description' $]
- <td class="cText">[+ $txt +]:</td><td
class="cInput"><input type="text" name="[+ $type +]_[+ $rec -> {id} +]" size=80></td>
+ <td class="cText" valign="top">[+ $txt
+]: </td><td class="cInput"><input type="text" name="[+ $type +]_[+ $rec -> {id}
+]" size=80></td>
[$else$]
- <td class="cText">[+ $txt +]:</td><td
class="cInput"><textarea name="[+ $type +]_[+ $rec -> {id} +]" cols=60
rows=10></textarea></td>
+ <td class="cText" valign="top">[+ $txt +]:</td><td
class="cInput"><textarea name="[+ $type +]_[+ $rec -> {id} +]" cols=60
rows=10></textarea></td>
[$endif$]
</tr>
[$endif$]
@@ -71,4 +71,11 @@
<input type="hidden" name="item_id">
</form>
-
\ No newline at end of file
+
+<PRE>
+[+ Dumper
$r->{edit},$r->{category_set},$r->{category_set}{add_info},$r->{action_prefix},$r->{language_set},$r->{category_set}{category},[keys
%$r],$r->{user_admin} +]
+edit1 = [= edit1 =]
+add1 = [= add1 =]
+add2a = [= add2a =]
+add2b = [= add2b =]
+</PRE>
1.1.2.11 +7 -0 embperl/eg/web/db/addsel.epl
Index: addsel.epl
===================================================================
RCS file: /home/cvs/embperl/eg/web/db/addsel.epl,v
retrieving revision 1.1.2.10
retrieving revision 1.1.2.11
diff -u -r1.1.2.10 -r1.1.2.11
--- addsel.epl 27 Aug 2002 19:12:41 -0000 1.1.2.10
+++ addsel.epl 25 Oct 2002 13:21:10 -0000 1.1.2.11
@@ -64,6 +64,13 @@
[$endif$]
+DEBUGGING:
+
+[! use Data::Dumper; !]
+<PRE>
+[+ Dumper $ENV{SERVER_NAME}, $ENV{SERVER_PORT}, [keys %$r] +]
+
+
[#
<form action="[+ $r -> {action_prefix}?($r->{action_prefix} . dirname($r-> param ->
uri) .'/'):''+]addsel.epl" OnSubmit="">
1.1.2.9 +7 -2 embperl/eg/web/db/data.epd
Index: data.epd
===================================================================
RCS file: /home/cvs/embperl/eg/web/db/data.epd,v
retrieving revision 1.1.2.8
retrieving revision 1.1.2.9
diff -u -r1.1.2.8 -r1.1.2.9
--- data.epd 27 Aug 2002 19:12:41 -0000 1.1.2.8
+++ data.epd 25 Oct 2002 13:21:10 -0000 1.1.2.9
@@ -20,10 +20,15 @@
=head1 [+ $rec -> {heading} +]
+[# Without the if-then-else this goes wrong if description is empty #]
+[$ if $rec -> {description} $]
[+ $rec -> {description} +] [[[+ $date +]]
+[$ else $]
+[[[+ $date +]]
+[$ endif $]
[+ $rec -> {url} +]
-[$if $r -> {user_id} && $r -> {user_id} == $rec -> {user_id}
$]L<Edit|../show.epl?item_id=[+ $rec -> {item_id} +]&-edit_item=1> [$endif$]
+[$ if ($r->{user_id} && $r->{user_id} == $rec->{user_id}) || $r->{user_admin}
$]L<Edit|../add.epl?item_id=[+ $rec->{item_id} +]&-edit_item=1&category_id=[+
$rec->{category_id} +]> | Status: [+ $r->{item_set}{state} ? 'Shown' : 'Hidden' +][$
endif $]
-[$endwhile$]
+[$ endwhile $]
1.1.2.14 +86 -22 embperl/eg/web/db/epwebapp.pl
Index: epwebapp.pl
===================================================================
RCS file: /home/cvs/embperl/eg/web/db/epwebapp.pl,v
retrieving revision 1.1.2.13
retrieving revision 1.1.2.14
diff -u -r1.1.2.13 -r1.1.2.14
--- epwebapp.pl 23 Oct 2002 12:29:11 -0000 1.1.2.13
+++ epwebapp.pl 25 Oct 2002 13:21:10 -0000 1.1.2.14
@@ -30,9 +30,9 @@
}
elsif ($fdat{-add_item})
{
- $self -> add_item ($r) ;
$self -> get_category($r) ;
- $self -> get_item_lang($r) ;
+ $self -> add_item ($r) ;
+ #$self -> get_item_lang($r) ;
}
elsif ($fdat{-update_item})
{
@@ -131,7 +131,7 @@
my $self = shift ;
my $r = shift ;
- if ($udat{user_id} && $udat{user_email})
+ if ($udat{user_id} && $udat{user_email} && !$fdat{-logout})
{
$r -> {user_id} = $udat{user_id} ;
$r -> {user_email} = $udat{user_email} ;
@@ -160,7 +160,8 @@
{
$r -> {user_id} = $udat{user_id} = $user -> {id} ;
$r -> {user_email} = $udat{user_email} = $user -> {email} ;
- $r -> {user_admin} = $udat{user_admin} = $user -> {admim} ;
+ $r -> {user_admin} = $udat{user_admin} = $user -> {admin} ;
+ $r -> {error} = "suc_login";
return $r -> {user_admin}?2:1 ;
}
@@ -173,6 +174,7 @@
$r -> {user_id} = $udat{user_id} = undef ;
$r -> {user_email} = $udat{user_email} = undef ;
$r -> {user_admin} = $udat{user_admin} = undef ;
+ $r -> {error} = 'suc_logout';
return ;
}
@@ -209,21 +211,22 @@
$r -> {error} .= 'err_db: '.DBIx::Recordset -> LastError
if DBIx::Recordset -> LastError;
- $usermail = Embperl::Mail::Execute ({
+ (my $usermail = Embperl::Mail::Execute ({
inputfile => 'newuser.mail',
to => $fdat{user_email},
- subject => 'Your Embperl Website Account',
+ subject => $r->gettext('mail_subj_newuser'),
errors => \@errors_user})
- and $r -> {error} .= 'err_mail: '.join('; ',@errors_user) ;
+ and $r -> {error} .= 'err_user_mail: '.join('; ',@errors_user))
+ or $r -> {error} .= 'suc_password_sent';
- $adminmail = Embperl::Mail::Execute ({
+ my $adminmail = Embperl::Mail::Execute ({
inputfile => 'newuser.admin.mail',
to => $r->{config}->{adminemail},
subject => ($r->{error} ?
"Error while creating new Embperl website user
'$fdat{user_email}'" :
"New Embperl website user: $fdat{user_email}"),
errors => \@errors_admin})
- and $r -> {error} .= 'err_mail: '.join('; ',@errors_admin);
+ and $r -> {error} .= 'err_user_admin_mail: '.join('; ',@errors_admin);
# $r->{error} .= "\n". Dumper($adminmail,
# \@errors_admin,
@@ -235,13 +238,22 @@
return ;
}
- if ($fdat{-newpasswd} && $fdat{user_email})
+ if ($fdat{-newpassword} && $fdat{user_email})
{
+ my @errors_pw;
my $set = DBIx::Recordset -> Update ({'!DataSource' => $r -> {db},
'!Table' => 'user',
'password' => $fdat{user_password},
'email' => $fdat{user_email}}) ;
- #Embperl::Mail::Execute ({inputfile => 'newpassword.mail', to =>
$fdat{user_email}) and $r -> {error} = 'err_mail' ;
+
+ (Embperl::Mail::Execute ({
+ inputfile => 'newpw.mail',
+ to => $fdat{user_email},
+ subject => $r->gettext('mail_subj_newpw'),
+ errors => \@errors_pw})
+ and $r -> {error} .= 'err_pw_mail: '.join('; ',@errors_pw))
+ or $r -> {error} .= 'suc_password_sent';
+
return ;
}
@@ -293,6 +305,20 @@
return ;
}
+ # Check the URL
+
+ if ($fdat{url} && $fdat{url} =~ /\s/)
+ {
+ $fdat{url} =~ s/\s//g;
+ $r -> {error} = ' warn_url_removed_white_space';
+ }
+
+ if ($fdat{url} && $fdat{url} !~ m{http://})
+ {
+ $fdat{url} =~ s{^}{http://};
+ $r -> {error} .= ' warn_url_added_http';
+ }
+
my $set = DBIx::Recordset -> Insert ({'!DataSource' => $r -> {db},
'!Table' => 'item',
'!Serial' => 'id',
@@ -308,6 +334,20 @@
$$langset -> Reset ;
while ($rec = $$langset -> Next)
{
+ # Check the URL
+
+ if ($fdat{"url_$rec->{id}"} && $fdat{"url_$rec->{id}"} =~ /\s/)
+ {
+ $fdat{"url_$rec->{id}"} =~ s/\s//g;
+ $r -> {error} = ' warn_url_removed_white_space';
+ }
+
+ if ($fdat{"url_$rec->{id}"} && $fdat{"url_$rec->{id}"} !~ m{http://})
+ {
+ $fdat{"url_$rec->{id}"} =~ s{^}{http://};
+ $r -> {error} .= ' warn_url_added_http';
+ }
+
$$txtset -> Insert ({item_id => $id,
language_id => $rec->{id},
description => $fdat{"description_$rec->{id}"},
@@ -316,6 +356,18 @@
}
$fdat{item_id} = $id ;
+
+ $self->get_item_lang($r);
+
+ my @errors;
+ Embperl::Mail::Execute ({
+ inputfile => 'newitem.mail',
+ to => $r->{config}->{adminemail},
+ subject => 'New item on Embperl Website (Category
'.$r->{category_set}->{category}.')',
+ errors => \@errors})
+ and $r -> {error} .= 'err_item_admin_mail: '.join('; ',@errors) ;
+
+
}
@@ -333,9 +385,9 @@
}
# make sure we have an id
- if ($fdat{item_id})
+ if (!$fdat{item_id})
{
- $r -> {error} = 'err_cannot_update' ;
+ $r -> {error} = 'err_cannot_update_no_id';
return ;
}
@@ -351,7 +403,7 @@
if ($rows <= 0)
{ # error if nothing was found (this will happen when the record isdn't
owned by the user)
- $r -> {error} = 'err_cannot_update' ;
+ $r -> {error} = 'err_cannot_update_maybe_wrong_user' ;
return ;
}
@@ -392,9 +444,9 @@
}
# make sure we have an id
- if ($fdat{item_id})
+ if (!$fdat{item_id})
{
- $r -> {error} = 'err_cannot_delete' ;
+ $r -> {error} = 'err_cannot_delete_no_id' ;
return ;
}
@@ -402,18 +454,23 @@
my $set = DBIx::Recordset -> Search ({'!DataSource' => $r -> {db},
'!Table' => 'item',
id => $fdat{item_id},
- $r ->{user_admin}?():(user_id => $r
-> {user_id})}) ;
+ $r->{user_admin}?():(user_id => $r
-> {user_id})}) ;
- if (!$set -> MoreRecord())
+ if (!$$set -> MoreRecords())
{ # error if nothing was found (this will happen when the record isdn't
owned by the user
- $r -> {error} = 'err_cannot_delete' ;
+ $r -> {error} = 'err_cannot_delete_maybe_wrong_user_or_no_such_item' ;
return ;
}
# delete the entry, but only if it has the correct user id or the has admin
rights
- $$set -> Delete ({id => $fdat{item_id},
- $r ->{user_admin}?():(user_id => $r ->
{user_id})}) ;
-
+ $$set -> Delete ({id => $fdat{item_id},
+ $r ->{user_admin}?():(user_id => $r->{user_id})}) ;
+
+ if (DBIx::Recordset->LastError)
+ {
+ $r -> {error} = 'err_cannot_delete_db_error: '.DBIx::Recordset->LastError;
+ return;
+ }
my $id = $fdat{item_id} ;
my $langset = $r -> {language_set} ;
@@ -427,6 +484,13 @@
$$txtset -> Delete ({ item_id => $id,
id => $fdat{"id_$rec->{id}"}}) ;
+ if (DBIx::Recordset->LastError)
+ {
+ $r -> {error} = 'err_cannot_delete_db_error: '.DBIx::Recordset->LastError;
+ return;
+ }
+
+
}
}
1.1.2.3 +1 -0 embperl/eg/web/db/Attic/loginform.epl
Index: loginform.epl
===================================================================
RCS file: /home/cvs/embperl/eg/web/db/Attic/loginform.epl,v
retrieving revision 1.1.2.2
retrieving revision 1.1.2.3
diff -u -r1.1.2.2 -r1.1.2.3
--- loginform.epl 23 Oct 2002 12:29:11 -0000 1.1.2.2
+++ loginform.epl 25 Oct 2002 13:21:10 -0000 1.1.2.3
@@ -25,6 +25,7 @@
<input type="submit" name="-login" value="[= login =]">
<input type="submit" name="-newuser" value="[= newuser =]">
<input type="submit" name="-newpassword" value="[= newpassword =]">
+ <input type="submit" name="-logout" value="[= logout =]">
[$ hidden $]
</p>
</form>
1.1.2.5 +26 -4 embperl/eg/web/db/show.epl
Index: show.epl
===================================================================
RCS file: /home/cvs/embperl/eg/web/db/show.epl,v
retrieving revision 1.1.2.4
retrieving revision 1.1.2.5
diff -u -r1.1.2.4 -r1.1.2.5
--- show.epl 27 Aug 2002 19:12:41 -0000 1.1.2.4
+++ show.epl 25 Oct 2002 13:21:10 -0000 1.1.2.5
@@ -4,15 +4,25 @@
<table width="100%">
<tr bgcolor="#fefcad">
- <td><font size="4">[$ if $fdat{-update_item} $][= edit1 =] [$else$][= add1
=] [$endif$] [+ $r -> {category_set}{category} +]</font></td>
+ <td><font size="4">
+ [$ if $fdat{-update_item} $]
+ [= edit1 =] [+ $r->{category_set}{category} +]
+ [$ elsif $fdat{-delete_item} $]
+ [= del1 =]
+ [$ else $]
+ [= add1 =] [+ $r->{category_set}{category} +]
+ [$ endif $]
+ </font></td>
</tr>
</table>
-
-
-
+[$ if $fdat{-delete_item} $]
+[= del2 =]
+[$ else $]
[= show2 =]<br><br>
+Status: [+ $r->{item_set}{state} ? 'Shown' : 'Hidden' +]
+
<table width="100%">
<tr bgcolor="#fefcad">
[- $rec = $r -> {item_set}[$row] -]
@@ -33,4 +43,16 @@
</tr>
</table>
+[$ if $udat{user_email} $]
+<A HREF="add.epl?item_id=[+ $fdat{item_id} +]&-edit_item=1&category_id=[+
$fdat{category_id} +]">Edit</A>
+[$ endif $]
+
+[$ endif $]
+
<br><br>
+
+[! use Data::Dumper; !]
+[- $DBIx::Recordset::FetchsizeWarn = 0; -]
+<PRE>
+[+ Dumper $r->{error},\%fdat,[keys %$r],{%{$r->{category_set}}},[@{$r->{item_set}}]
+]
+</PRE>
\ No newline at end of file
No revision
No revision
1.1.2.3 +2 -1 embperl/eg/web/db/news/data.epd
Index: data.epd
===================================================================
RCS file: /home/cvs/embperl/eg/web/db/news/data.epd,v
retrieving revision 1.1.2.2
retrieving revision 1.1.2.3
diff -u -r1.1.2.2 -r1.1.2.3
--- data.epd 27 Aug 2002 19:12:42 -0000 1.1.2.2
+++ data.epd 25 Oct 2002 13:21:11 -0000 1.1.2.3
@@ -21,5 +21,6 @@
[+ $rec -> {description} +]
-[$if $r -> {user_id} && $r -> {user_id} == $rec -> {user_id}
$]L<[Edit]|../add.epl?item_id=[+ $rec -> {item_id} +]&-edit_item=1> [$endif$]
+[$ if ($r->{user_id} && $r->{user_id} == $rec->{user_id}) || $r->{user_admin}
$]L<Edit|../add.epl?item_id=[+ $rec->{item_id} +]&-edit_item=1&category_id=[+
$rec->{category_id} +]> | Status: [+ $r->{item_set}{state} ? 'Shown' : 'Hidden' +][$
endif $]
+[# [$if $r -> {user_id} && $r -> {user_id} == $rec -> {user_id}
$]L<[Edit]|../add.epl?item_id=[+ $rec -> {item_id} +]&-edit_item=1> [$endif$] #]
[$endwhile$]
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]