Index: openacs-4/packages/download/www/admin/report-by-ip-oracle.xql =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/download/www/admin/report-by-ip-oracle.xql,v diff -u -r1.1 -r1.1.4.1 --- openacs-4/packages/download/www/admin/report-by-ip-oracle.xql 22 May 2001 04:17:45 -0000 1.1 +++ openacs-4/packages/download/www/admin/report-by-ip-oracle.xql 6 Dec 2002 11:31:28 -0000 1.1.4.1 @@ -4,9 +4,9 @@ - select min(u.last_name || ', ' || u.first_names) as user_name, + select min(d.user_id) as user_id, + min(u.last_name || ', ' || u.first_names) as user_name, min(u.email) as email, - min(d.user_id) as user_id, d.download_ip, nvl(min(d.download_hostname),'unavailable') as download_hostname, count(*) as num_downloads, Index: openacs-4/packages/download/www/admin/report-by-ip-postgresql.xql =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/download/www/admin/report-by-ip-postgresql.xql,v diff -u -r1.1 -r1.1.4.1 --- openacs-4/packages/download/www/admin/report-by-ip-postgresql.xql 22 May 2001 04:17:45 -0000 1.1 +++ openacs-4/packages/download/www/admin/report-by-ip-postgresql.xql 6 Dec 2002 11:31:28 -0000 1.1.4.1 @@ -6,9 +6,9 @@ - select min(u.last_name || ', ' || u.first_names) as user_name, + select min(d.user_id) as user_id, + min(u.last_name || ', ' || u.first_names) as user_name, min(u.email) as email, - min(d.user_id) as user_id, d.download_ip, coalesce(min(d.download_hostname),'unavailable') as download_hostname, count(*) as num_downloads, Index: openacs-4/packages/download/www/admin/report-by-ip.adp =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/download/www/admin/report-by-ip.adp,v diff -u -r1.5 -r1.5.2.1 --- openacs-4/packages/download/www/admin/report-by-ip.adp 6 Sep 2002 21:50:32 -0000 1.5 +++ openacs-4/packages/download/www/admin/report-by-ip.adp 6 Dec 2002 11:31:28 -0000 1.5.2.1 @@ -3,7 +3,7 @@ @context@

-Spam Downloaders +Spam Downloaders

@dimensional_html@ @table@ \ No newline at end of file Index: openacs-4/packages/download/www/admin/report-by-ip.tcl =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/download/www/admin/report-by-ip.tcl,v diff -u -r1.6 -r1.6.2.1 --- openacs-4/packages/download/www/admin/report-by-ip.tcl 10 Sep 2002 22:22:35 -0000 1.6 +++ openacs-4/packages/download/www/admin/report-by-ip.tcl 6 Dec 2002 11:31:28 -0000 1.6.2.1 @@ -1,5 +1,6 @@ -# /packages/download/www/admin/all-user-downloads.tcl +# /packages/download/www/admin/report-by-ip.tcl ad_page_contract { + List of IP addresses that have downloaded a specific archive @author jbank@arsdigita.com [jbank@arsdigita.com] @creation-date Wed Dec 13 13:39:29 2000 @@ -11,29 +12,26 @@ set repository_id [download_repository_id] ##TODO: Add support for other -# vinodk: put in the full query name so that when I -# pass this var to spam-users, it can find -# the right query set dimensional { {downloaded "Download Period" 1m { - {1d "last 24hrs" {where "[db_map dbqd.download.www.admin.report-by-ip.date_clause_1]"}} - {1w "last week" {where "[db_map dbqd.download.www.admin.report-by-ip.date_clause_7]"}} - {1m "last month" {where "[db_map dbqd.download.www.admin.report-by-ip.date_clause_30]"}} + {1d "last 24hrs" {where "[db_map date_clause_1]"}} + {1w "last week" {where "[db_map date_clause_7]"}} + {1m "last month" {where "[db_map date_clause_30]"}} {all "all" {}}}} } set table_def { {download_ip "From IP" {no_sort} - {$download_ip}} + {$download_ip}} {download_hostname "Hostname" {} {}} {num_downloads "# Downloads" {no_sort} {}} } set sql_query " - select min(u.last_name || ', ' || u.first_names) as user_name, + select min(d.user_id) as user_id, + min(u.last_name || ', ' || u.first_names) as user_name, min(u.email) as email, - min(d.user_id) as user_id, d.download_ip, nvl(min(d.download_hostname),'unavailable') as download_hostname, count(*) as num_downloads, @@ -46,14 +44,20 @@ order by 2 desc " -set export_sql_query [export_vars -url -sign {downloaded repository_id dimensional}] - set dimensional_html [ad_dimensional $dimensional] set table [ad_table \ -Ttable_extra_html { width= 90% align=center} \ -bind [ad_tcl_vars_to_ns_set repository_id downloaded] \ download_table $sql_query $table_def ] +# vinodk: the download_table query gets the list of users (plus other data) +# we reuse the same query to get the list of user_id's to spam. +# Since we're using db_list, it's important that the first column +# of the query is the user_id. + +set user_id_list [db_list download_table { *SQL* }] +set user_id_list_export [export_vars -url -sign user_id_list] + set context [list "Downloads by IP"] ad_return_template \ No newline at end of file Index: openacs-4/packages/download/www/admin/report-by-user-oracle.xql =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/download/www/admin/report-by-user-oracle.xql,v diff -u -r1.1 -r1.1.4.1 --- openacs-4/packages/download/www/admin/report-by-user-oracle.xql 22 May 2001 04:17:45 -0000 1.1 +++ openacs-4/packages/download/www/admin/report-by-user-oracle.xql 6 Dec 2002 11:31:28 -0000 1.1.4.1 @@ -4,9 +4,9 @@ - select min(u.last_name || ', ' || u.first_names) as user_name, + select d.user_id, + min(u.last_name || ', ' || u.first_names) as user_name, min(u.email) as email, - d.user_id, count(*) as num_downloads, min('$downloaded') as downloaded from download_downloads_repository d, cc_users u Index: openacs-4/packages/download/www/admin/report-by-user-postgresql.xql =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/download/www/admin/report-by-user-postgresql.xql,v diff -u -r1.1 -r1.1.4.1 --- openacs-4/packages/download/www/admin/report-by-user-postgresql.xql 22 May 2001 04:17:45 -0000 1.1 +++ openacs-4/packages/download/www/admin/report-by-user-postgresql.xql 6 Dec 2002 11:31:28 -0000 1.1.4.1 @@ -6,9 +6,9 @@ - select min(u.last_name || ', ' || u.first_names) as user_name, + select d.user_id, + min(u.last_name || ', ' || u.first_names) as user_name, min(u.email) as email, - d.user_id, count(*) as num_downloads, min('$downloaded'::varchar) as downloaded from download_downloads_repository d, cc_users u Index: openacs-4/packages/download/www/admin/report-by-user.adp =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/download/www/admin/report-by-user.adp,v diff -u -r1.4 -r1.4.2.1 --- openacs-4/packages/download/www/admin/report-by-user.adp 6 Sep 2002 21:50:32 -0000 1.4 +++ openacs-4/packages/download/www/admin/report-by-user.adp 6 Dec 2002 11:31:28 -0000 1.4.2.1 @@ -3,7 +3,7 @@ @context@

-Spam Downloaders +Spam Downloaders

@dimensional_html@ @table@ \ No newline at end of file Index: openacs-4/packages/download/www/admin/report-by-user.tcl =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/download/www/admin/report-by-user.tcl,v diff -u -r1.6 -r1.6.2.1 --- openacs-4/packages/download/www/admin/report-by-user.tcl 10 Sep 2002 22:22:35 -0000 1.6 +++ openacs-4/packages/download/www/admin/report-by-user.tcl 6 Dec 2002 11:31:28 -0000 1.6.2.1 @@ -1,6 +1,6 @@ -# /packages/download/www/admin/all-user-downloads.tcl +# /packages/download/www/admin/report-by-user.tcl ad_page_contract { - + Show list of users who have downloaded a specified archive. @author jbank@arsdigita.com [jbank@arsdigita.com] @creation-date Wed Dec 13 13:39:29 2000 @cvs-id $Id$ @@ -11,28 +11,25 @@ set repository_id [download_repository_id] ##TODO: Add support for other -# vinodk: put in the full query name so that when I -# pass this var to spam-users, it can find -# the right query set dimensional { {downloaded "Download Period" 1m { - {1d "last 24hrs" {where "[db_map dbqd.download.www.admin.report-by-user.date_clause_1]"}} - {1w "last week" {where "[db_map dbqd.download.www.admin.report-by-user.date_clause_7]"}} - {1m "last month" {where "[db_map dbqd.download.www.admin.report-by-user.date_clause_30]"}} + {1d "last 24hrs" {where "[db_map date_clause_1]"}} + {1w "last week" {where "[db_map date_clause_7]"}} + {1m "last month" {where "[db_map date_clause_30]"}} {all "all" {}}}} } set table_def { {user_name "User Name (Last name, first name)" {no_sort} - {$user_name ($email)}} + {$user_name ($email)}} {num_downloads "# Downloads" {no_sort} {}} } set sql_query " - select min(u.last_name || ', ' || u.first_names) as user_name, + select d.user_id, + min(u.last_name || ', ' || u.first_names) as user_name, min(u.email) as email, - d.user_id, count(*) as num_downloads, min('$downloaded') as downloaded from download_downloads_repository d, cc_users u @@ -43,13 +40,19 @@ order by 2 desc " -set export_sql_query [export_vars -url -sign {downloaded repository_id dimensional}] - set dimensional_html [ad_dimensional $dimensional] set table [ad_table \ - -Ttable_extra_html { width= 90% align=center} \ + -Ttable_extra_html { width="90%" align="center"} \ -bind [ad_tcl_vars_to_ns_set repository_id downloaded] \ download_table $sql_query $table_def ] +# vinodk: the download_table query gets the list of users (plus other data) +# we reuse the same query to get the list of user_id's to spam. +# Since we're using db_list, it's important that the first column +# of the query is the user_id. + +set user_id_list [db_list download_table { *SQL* }] +set user_id_list_export [export_vars -url -sign user_id_list] + set context [list "Downloads by User"] ad_return_template \ No newline at end of file Index: openacs-4/packages/download/www/admin/report-one-ip-oracle.xql =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/download/www/admin/report-one-ip-oracle.xql,v diff -u -r1.2 -r1.2.4.1 --- openacs-4/packages/download/www/admin/report-one-ip-oracle.xql 23 May 2001 16:35:03 -0000 1.2 +++ openacs-4/packages/download/www/admin/report-one-ip-oracle.xql 6 Dec 2002 11:31:28 -0000 1.2.4.1 @@ -4,14 +4,14 @@ - select da.archive_name, + select u.user_id, + u.last_name || ', ' || u.first_names as user_name, + u.email, + da.archive_name, da.archive_id, dar.revision_id, dar.version_name, d.download_date, - u.last_name || ', ' || u.first_names as user_name, - u.user_id, - u.email, nvl(d.download_hostname,'unavailable') as download_hostname, nvl2(d.reason_id, dr.reason, d.reason) as reason from download_archives_obj da, download_arch_revisions_obj dar, download_downloads d, download_reasons dr, cc_users u Index: openacs-4/packages/download/www/admin/report-one-ip-postgresql.xql =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/download/www/admin/report-one-ip-postgresql.xql,v diff -u -r1.1 -r1.1.4.1 --- openacs-4/packages/download/www/admin/report-one-ip-postgresql.xql 22 May 2001 04:17:45 -0000 1.1 +++ openacs-4/packages/download/www/admin/report-one-ip-postgresql.xql 6 Dec 2002 11:31:28 -0000 1.1.4.1 @@ -6,14 +6,14 @@ - select da.archive_name, + select u.user_id, + u.last_name || ', ' || u.first_names as user_name, + u.email, + da.archive_name, da.archive_id, dar.revision_id, dar.version_name, d.download_date, - u.last_name || ', ' || u.first_names as user_name, - u.user_id, - u.email, coalesce(d.download_hostname,'unavailable') as download_hostname, case when d.reason_id is null then d.reason else dr.reason end as reason from download_downloads d left join download_reasons dr Index: openacs-4/packages/download/www/admin/report-one-ip.adp =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/download/www/admin/report-one-ip.adp,v diff -u -r1.4 -r1.4.2.1 --- openacs-4/packages/download/www/admin/report-one-ip.adp 6 Sep 2002 21:50:32 -0000 1.4 +++ openacs-4/packages/download/www/admin/report-one-ip.adp 6 Dec 2002 11:31:28 -0000 1.4.2.1 @@ -3,7 +3,7 @@ @context@

-Spam Downloaders +Spam Downloaders

@dimensional_html@ @table@ \ No newline at end of file Index: openacs-4/packages/download/www/admin/report-one-ip.tcl =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/download/www/admin/report-one-ip.tcl,v diff -u -r1.5 -r1.5.2.1 --- openacs-4/packages/download/www/admin/report-one-ip.tcl 10 Sep 2002 22:22:35 -0000 1.5 +++ openacs-4/packages/download/www/admin/report-one-ip.tcl 6 Dec 2002 11:31:28 -0000 1.5.2.1 @@ -41,14 +41,14 @@ } set sql_query " - select da.archive_name, + select u.user_id, + u.last_name || ', ' || u.first_names as user_name, + u.email, + da.archive_name, da.archive_id, dar.revision_id, dar.version_name, d.download_date, - u.last_name || ', ' || u.first_names as user_name, - u.user_id, - u.email, nvl(d.download_hostname,'unavailable') as download_hostname, nvl2(d.reason_id, d.reason, dr.reason) as reason from download_archives_obj da, download_arch_revisions_obj dar, download_downloads d, download_reasons dr, cc_users u @@ -62,14 +62,15 @@ [ad_order_by_from_sort_spec $orderby $table_def] " -set export_sql_query [export_vars -url -sign {downloaded repository_id dimensional}] - set dimensional_html [ad_dimensional $dimensional] set table [ad_table \ - -Ttable_extra_html { width= 90% align=center} \ + -Ttable_extra_html { width="90%" align="center"} \ -bind [ad_tcl_vars_to_ns_set repository_id download_ip] \ download_table $sql_query $table_def ] +set user_id_list [db_list download_table { *SQL* }] +set user_id_list_export [export_vars -url -sign user_id_list] + set context [list [list "report-by-ip" "Downloads by IP"] "$download_ip"] ad_return_template Index: openacs-4/packages/download/www/admin/report-one-user.tcl =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/download/www/admin/report-one-user.tcl,v diff -u -r1.5 -r1.5.2.1 --- openacs-4/packages/download/www/admin/report-one-user.tcl 10 Sep 2002 22:22:35 -0000 1.5 +++ openacs-4/packages/download/www/admin/report-one-user.tcl 6 Dec 2002 11:31:28 -0000 1.5.2.1 @@ -1,4 +1,4 @@ -# /packages/download/www/admin/one-user-downloads.tcl +# /packages/download/www/admin/report-one-user.tcl ad_page_contract { @author jbank@arsdigita.com [jbank@arsdigita.com] @@ -65,7 +65,7 @@ set dimensional_html [ad_dimensional $dimensional] set table [ad_table \ - -Ttable_extra_html { width= 90% align=center} \ + -Ttable_extra_html { width="90%" align="center"} \ -bind [ad_tcl_vars_to_ns_set repository_id user_id] \ download_table $sql_query $table_def ] Index: openacs-4/packages/download/www/admin/report-version-downloads-oracle.xql =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/download/www/admin/report-version-downloads-oracle.xql,v diff -u -r1.2 -r1.2.4.1 --- openacs-4/packages/download/www/admin/report-version-downloads-oracle.xql 23 May 2001 16:35:03 -0000 1.2 +++ openacs-4/packages/download/www/admin/report-version-downloads-oracle.xql 6 Dec 2002 11:31:28 -0000 1.2.4.1 @@ -6,14 +6,14 @@ - select u.last_name || ', ' || u.first_names as user_name, + select u.user_id, + u.email, + u.last_name || ', ' || u.first_names as user_name, d.download_date, d.download_ip, nvl(d.download_hostname,'unavailable') as download_hostname, nvl(dar.version_name, 'unnamed') as version_name, dar.revision_id, - u.user_id, - u.email, nvl2(d.reason_id, dr.reason, d.reason) as reason from download_arch_revisions_obj dar, download_downloads d, download_reasons dr, cc_users u where d.user_id = u.user_id Index: openacs-4/packages/download/www/admin/report-version-downloads-postgresql.xql =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/download/www/admin/report-version-downloads-postgresql.xql,v diff -u -r1.2 -r1.2.4.1 --- openacs-4/packages/download/www/admin/report-version-downloads-postgresql.xql 23 May 2001 01:00:43 -0000 1.2 +++ openacs-4/packages/download/www/admin/report-version-downloads-postgresql.xql 6 Dec 2002 11:31:28 -0000 1.2.4.1 @@ -6,14 +6,14 @@ -select u.last_name || ', ' || u.first_names as user_name, +select u.user_id, + u.email, + u.last_name || ', ' || u.first_names as user_name, d.download_date, d.download_ip, coalesce(d.download_hostname,'unavailable') as download_hostname, coalesce(dar.version_name, 'unnamed') as version_name, dar.revision_id, - u.user_id, - u.email, case when d.reason_id is null then d.reason else dr.reason end as reason from download_downloads d left join download_reasons dr on (d.reason_id=dr.download_reason_id), Index: openacs-4/packages/download/www/admin/report-version-downloads.adp =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/download/www/admin/report-version-downloads.adp,v diff -u -r1.4 -r1.4.2.1 --- openacs-4/packages/download/www/admin/report-version-downloads.adp 6 Sep 2002 21:50:32 -0000 1.4 +++ openacs-4/packages/download/www/admin/report-version-downloads.adp 6 Dec 2002 11:31:28 -0000 1.4.2.1 @@ -4,8 +4,7 @@ @dimensional_html@ Index: openacs-4/packages/download/www/admin/report-version-downloads.tcl =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/download/www/admin/report-version-downloads.tcl,v diff -u -r1.5 -r1.5.2.1 --- openacs-4/packages/download/www/admin/report-version-downloads.tcl 10 Sep 2002 22:22:35 -0000 1.5 +++ openacs-4/packages/download/www/admin/report-version-downloads.tcl 6 Dec 2002 11:31:28 -0000 1.5.2.1 @@ -30,16 +30,16 @@ set table_def { {user_name "User Name" {user_name $order} - {$user_name}} + {$user_name}} {version_name "Version" {version_name $order} - {$version_name}} + {$version_name}} {download_date "Download Date" {download_date $order} {}} {download_ip "From IP (hostname)" {download_ip $order} - {$download_ip ($download_hostname)}} + {$download_ip ($download_hostname)}} {reason "Download Reason" {reason $order} {$reason}} @@ -84,14 +84,14 @@ set downloaded $temp_downloaded set sql_query " - select u.last_name || ', ' || u.first_names as user_name, + select u.user_id, + u.email, + u.last_name || ', ' || u.first_names as user_name, d.download_date, d.download_ip, nvl(d.download_hostname,'unavailable') as download_hostname, nvl(dar.version_name, 'unnamed') as version_name, dar.revision_id, - u.user_id, - u.email, nvl2(d.reason_id, d.reason, dr.reason) as reason from download_arch_revisions_obj dar, download_downloads d, download_reasons dr, cc_users u where d.user_id = u.user_id @@ -102,14 +102,15 @@ [ad_order_by_from_sort_spec $orderby $table_def] " -set export_sql_query [export_vars -url -sign {sql_query}] - set dimensional_html [ad_dimensional $dimensional] set table [ad_table \ -Ttable_extra_html { width= 90% align=center} \ -bind [ad_tcl_vars_to_ns_set archive_id] \ download_table $sql_query $table_def ] +set user_id_list [db_list download_table { *SQL* }] +set user_id_list_export [export_vars -url -sign user_id_list] + set context [list "$archive_name Download History"] ad_return_template Index: openacs-4/packages/download/www/admin/spam-users-2.tcl =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/download/www/admin/spam-users-2.tcl,v diff -u -r1.4 -r1.4.2.1 --- openacs-4/packages/download/www/admin/spam-users-2.tcl 10 Sep 2002 22:22:35 -0000 1.4 +++ openacs-4/packages/download/www/admin/spam-users-2.tcl 6 Dec 2002 11:31:28 -0000 1.4.2.1 @@ -5,7 +5,7 @@ @creation-date Mon Jan 8 18:05:51 2001 @cvs-id $Id$ } { - userid_list:verify + user_id_list:verify subject:notnull msgbody:notnull } @@ -18,7 +18,7 @@

Spam Downloaders

-[list "Spam Downloader"] +[ad_context_bar "Spam Downloader"]

Spam Downloader

@@ -34,7 +34,7 @@ # send out email set count 0 -foreach to_user_id $userid_list { +foreach to_user_id $user_id_list { db_exec_plsql sendmail { select acs_mail_nt__post_request ( :user_id, -- p_party_from Index: openacs-4/packages/download/www/admin/spam-users.adp =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/download/www/admin/spam-users.adp,v diff -u -r1.3 -r1.3.2.1 --- openacs-4/packages/download/www/admin/spam-users.adp 6 Sep 2002 21:50:32 -0000 1.3 +++ openacs-4/packages/download/www/admin/spam-users.adp 6 Dec 2002 11:31:28 -0000 1.3.2.1 @@ -2,8 +2,19 @@ Spam Downloaders "Spam downloaders" + + After weeding out users who don't want to be spammed, there was no one + left on your list. Sorry! + + + +

+ Users who have requested not to be spammed will + NOT receive your email. +

+
- @userid_list_export@ + @user_id_list_export@ @@ -23,6 +34,14 @@

The following users will receive your spam:

    - @userlist_str@ + + +
  • @users.user_name@ (@users.email@)
  • +
    +
    + +
  • @users:rowcount@ users will receive your message.
  • +
-

\ No newline at end of file +

+ \ No newline at end of file Index: openacs-4/packages/download/www/admin/spam-users.tcl =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/download/www/admin/spam-users.tcl,v diff -u -r1.3 -r1.3.2.1 --- openacs-4/packages/download/www/admin/spam-users.tcl 10 Sep 2002 22:22:35 -0000 1.3 +++ openacs-4/packages/download/www/admin/spam-users.tcl 6 Dec 2002 11:31:28 -0000 1.3.2.1 @@ -1,49 +1,27 @@ # /packages/download/www/admin/spam-users.tcl ad_page_contract { - Spam downloaders based on the queyr passed in + Spam downloaders based on the user_id list passed in. The user_id list + must be signed. + @author jbank@arsdigita.com [jbank@arsdigita.com] @creation-date Mon Jan 8 17:33:15 2001 @cvs-id $Id$ } { - downloaded:verify - repository_id:verify - dimensional:verify + user_id_list:verify +} -properties { + users:multirow + user_id_list_export:onevalue } ad_require_permission [ad_conn package_id] "admin" set user_id [ad_verify_and_get_user_id] # ACS version passed sql_query as a query variable -# I changed it to pass the important parameters -# and then build the query by grabbing the -# appropriate query using the query dispatcher +# I've changed it to send only a list of signed user_ids # -- vinodk -set sql_query [subst [db_fullquery_get_querytext [db_qd_fetch dbqd.download.www.admin.report-by-user.download_table]]] +db_multirow users user_select { *SQL* } -ns_log notice "vinodk: $sql_query" -ns_log notice "vinodk: $dimensional" +set user_id_list_export [export_vars -form -sign {user_id_list}] -set userlist_str "" -set email_list [list] -set old_userid 0 -set count 0 - -#TODO: Add where clause that checks from no_spam pref. -db_foreach user_select "select u.email, u.user_id, u.user_name from ($sql_query) u" { - if { $user_id != $old_userid } { - append userlist_str "
  • $user_name ($email)" - lappend userid_list $user_id - } - set old_userid $user_id - incr count -} - -# Display user name only when count is less than 25 -if { $count > 25 } { - set userlist_str "
  • $count users will receive your spam." -} - -set userid_list_export [export_vars -form -sign {userid_list}] - ad_return_template Index: openacs-4/packages/download/www/admin/spam-users.xql =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/download/www/admin/spam-users.xql,v diff -u -r1.1 -r1.1.4.1 --- openacs-4/packages/download/www/admin/spam-users.xql 10 May 2001 20:51:31 -0000 1.1 +++ openacs-4/packages/download/www/admin/spam-users.xql 6 Dec 2002 11:31:28 -0000 1.1.4.1 @@ -3,7 +3,13 @@ - select u.email, u.user_id, u.user_name from ($sql_query) u + select u.email, + u.user_id, + u.last_name || ', ' || u.first_names as user_name + from cc_users u, user_preferences up + where u.user_id in ([join $user_id_list ,]) and + u.user_id = up.user_id and + up.dont_spam_me_p = 'f'
  • Email Subject: