4images Forum & Community

4images Modifications / Modifikationen => Mods & Plugins (Releases & Support) => Plugins => Topic started by: Acidgod on January 03, 2008, 10:30:42 PM

Title: [PLUGIN] Massmailer/Batch Mailer
Post by: Acidgod on January 03, 2008, 10:30:42 PM
Save it as email.php, massmailer.php or what ever and put it into your /admin/plugins/ folder...

Code: [Select]
<?php // PLUGIN_TITLE: Massmailer
/**************************************************************************
*                                                                        *
*    4images - A Web Based Image Gallery Management System               *
*    ----------------------------------------------------------------    *
*                                                                        *
*             File: email.php                                            *
*        Copyright: (C) 2002 Jan Sorgalla                                *
*            Email: jan@4homepages.de                                    *
*              Web: http://www.4homepages.de                             *
*    Scriptversion: 1.7.1                                                *
*                                                                        *
*    Never released without support from: Nicky (http://www.nicky.net)   *
*                                                                        *
**************************************************************************
*                                                                        *
*    Dieses Script ist KEINE Freeware. Bitte lesen Sie die Lizenz-       *
*    bedingungen (Lizenz.txt) für weitere Informationen.                 *
*    ---------------------------------------------------------------     *
*    This script is NOT freeware! Please read the Copyright Notice       *
*    (Licence.txt) for further information.                              *
*                                                                        *
*************************************************************************/

$nozip 1;
define('IN_CP'1);

$PHP_SELF = (isset($PHP_SELF)) ? $PHP_SELF $_SERVER['PHP_SELF'];
$root_path = (eregi("\/plugins\/"$PHP_SELF)) ? "./../../" "./../";
define('ROOT_PATH'$root_path);
require(
ROOT_PATH.'admin/admin_global.php');

// TEXT
define('MASSMAIL_TITEL'"Emails an User versenden");
define('MASSMAIL_MAXMAILS'"Anzahl der Mails die verschickt werden sollen");
define('MASSMAIL_BREAK'"Pause (sec.)");
define('MASSMAIL_AUTOREDIRECT'"Automatische Weiterleitung");
define('MASSMAIL_USERLEVEL'"Userlevel");
define('MASSMAIL_SUBJECT'"Betreff");
define('MASSMAIL_MESSAGE'"Nachricht");
define('MASSMAIL_BUTTON_SEND'"E-Mails an User versenden");
define('MASSMAIL_SUBJECT2'"Betreff (%=wildcard)");
define('MASSMAIL_MESSAGE2'"Nachricht (%=wildcard)");
define('MASSMAIL_LIMITFROM'"Starte bei:");
define('MASSMAIL_SENDTO'"<b>Mail an folgende User: </b>");
define('MASSMAIL_DONE'"<b>Alle Mails dieser Usergruppe wurden erfolgreich versendet... </b>");

// CONFIG
$config_break 3;
$config_maxemails 2;
$config_default_subject "Betreff...";
$config_default_message "Nachricht...";

if (
$action == "") {
    
$action "emailusers";
}

show_admin_header();

if (
$action == "sendemails") {
    
$error = array();
    
$maxemails stripslashes(trim($_REQUEST['maxemails']));
    
$break stripslashes(trim($_REQUEST['break']));
    
$autoredirect stripslashes(trim($_REQUEST['autoredirect']));
    
$user_level $_REQUEST['user_level'];
    
$subject stripslashes(trim($_REQUEST['subject']));
    
$message stripslashes(trim($_REQUEST['message']));

    if (
$maxemails == "") {
        
$error['maxemails'] = 1;
    }
    if (
$break == "") {
        
$error['break'] = 1;
    }
    if (
$user_level <= || $user_level == "") {
        
$error['user_level'] = 1;
    }
    if (
$subject == "") {
        
$error['subject'] = 1;
    }
    if (
$message == "") {
        
$error['message'] = 1;
    }
    if (empty(
$error)) {

        
// SQL Limit
        
if (isset($_REQUEST['limitfrom'])) {
            
$limitfrom $_REQUEST['limitfrom'];
            
$limitfrom $limitfrom $maxemails;
        }else{
            
$limitfrom 0;
        }
        if (isset(
$_REQUEST['i'])) {
            
$i $_REQUEST['i'];
        }else {
            
$i 0;
        }
        
define("PM_LIMIT""DESC LIMIT ".$limitfrom." , ".$maxemails);
        
// SQL Limit Ende

        //Where definieren
        
define('WHERE_ID'"WHERE user_level = '".$user_level."'");

        
// Mailaddi aus der Datenbank holen
        
global $site_db;
        
$sql "SELECT user_email, user_name
FROM "
.USERS_TABLE."
"
.WHERE_ID." AND ".get_user_table_field("""user_allowemails")." = 1
ORDER BY user_id
"
.PM_LIMIT;
        
$result $site_db->query($sql);
        
$num_of_rows mysql_num_rows($result);
        
//SQL Debug
        //echo $sql."<br>";

        //Empfänger
        
$emails = array();
        echo 
MASSMAIL_SENDTO."<br>";
        while(
$row $site_db->fetch_array($result)){
            
// Username (E-Mail) ausgeben
            
echo " ".$i++." - ".$row["user_name"]." (".$row["user_email"].")<br>";
            
array_push($emails$row["user_email"]);
        }
        
//Empfänger Ende

        //E-Mail
        
include(ROOT_PATH.'includes/email.php');
        
$site_email = new Email();
        
$site_email->set_to($config['site_email']);
        
$site_email->set_subject($subject);
        
$site_email->register_vars(array(
        
"message" => $message,
        
"site_email" => $config['site_email'],
        
"site_name" => $config['site_name']
        ));
        
$site_email->set_body("admin_email"$config['language_dir']);
        
$site_email->set_bcc($emails);
        echo (
$site_email->send_email()) ? $lang['send_emails_success'] : $lang['send_emails_error'];
        unset(
$site_email);
        
//E-Mail Ende

        //Alle Mails versendet
        
if ($num_of_rows $maxemails) {
            
$autoredirectfalse;
            echo 
"<br><br>".MASSMAIL_DONE."<br><br>";
        }

        
//Formular ausgeben
        
show_form_header("email.php""sendemails");
        
show_table_header(MASSMAIL_TITEL2);
        
show_input_row(MASSMAIL_LIMITFROM"limitfrom"$limitfrom3);
        
show_input_row(MASSMAIL_MAXMAILS"maxemails"$maxemails5);
        
show_input_row(MASSMAIL_BREAK"break"$break5);
        
show_radio_row(MASSMAIL_AUTOREDIRECT"autoredirect"1);
        
show_userlevel_select_row(MASSMAIL_USERLEVEL"user_level"$user_level);
        
show_input_row(MASSMAIL_SUBJECT"subject"$subject45);
        
show_textarea_row(MASSMAIL_MESSAGE"message"$message6020);
        
show_form_footer(MASSMAIL_BUTTON_SEND""2);


        if (
$autoredirect) {
            
$page $site_sess->url($_SERVER['PHP_SELF']."?action=sendemails&limitfrom=".$limitfrom."&maxemails=".$maxemails."&break=".$break."&user_level=".$user_level."&i=".$i."&autoredirect=".$autoredirect."&subject=".$subject."&message=".$message);
?>

<script language="javascript">
myvar = "";
timeout = <?php echo $break ?>;
function dorefresh() {
    window.status="Redirecting"+myvar;
    myvar = myvar + " .";
    timerID = setTimeout("dorefresh();", 1000);
    if (timeout > 0) {
        timeout -= 1;
    }
    else {
        clearTimeout(timerID);
        //document.formular.submit()
        window.status="";
        window.location="<?php echo $page?>";
    }
}
dorefresh();
</script>
<?php

        
}
    }else {
        
$msg sprintf("<span class=\"marktext\">%s</span>"$lang['lostfield_error']);
        
$action "emailusers";

    }

}

if (
$action == "emailusers") {
    if (
$msg != "") {
        
printf("<b>%s</b>\n"$msg);
    }
    
show_form_header("email.php""sendemails");
    
show_table_header(MASSMAIL_TITEL2);
    
show_input_row(MASSMAIL_MAXMAILS"maxemails"$config_maxemails5);
    
show_input_row(MASSMAIL_BREAK"break"$config_break5);
    
show_radio_row(MASSMAIL_AUTOREDIRECT"autoredirect"1);
    
show_userlevel_select_row(MASSMAIL_USERLEVEL"user_level"$user_row['user_level']);
    
show_input_row(MASSMAIL_SUBJECT"subject"$config_default_subject45);
    
show_textarea_row(MASSMAIL_MESSAGE"message"$config_default_message6020);
    
show_form_footer(MASSMAIL_BUTTON_SEND""2);
}

show_admin_footer();
?>

Please try it and give me Feedback...
I have not enough Users in on my Test System... (o:
Title: Re: [PLUGIN] Massmailer/Batch Mailer
Post by: thunderstrike on January 03, 2008, 10:33:26 PM
1 - I say for fix code before publish ...
2 - User is warn for set block from cPanel (SPAM email) filter ... check setting for see if enable ... if enable - is no work ...
Title: Re: [PLUGIN] Massmailer/Batch Mailer
Post by: nobby on January 03, 2008, 10:39:13 PM
Hallo Acidgod,

das ist gut. Werde es bei Gelegenheit mal testen.

nobby
Title: Re: [PLUGIN] Massmailer/Batch Mailer
Post by: Acidgod on January 03, 2008, 10:45:57 PM
 @ thunderstrike
8O
Sorry but i don't now what you mean... ^^

Kann das wer für den dummen Acid übersetzen?
Title: Re: [PLUGIN] Massmailer/Batch Mailer
Post by: thunderstrike on January 03, 2008, 10:49:13 PM
Quote
Sorry but i don't now what you mean... ^^

For no. 1 - hint: $_REQUEST is no use in 4images. ;)
Title: Re: [PLUGIN] Massmailer/Batch Mailer
Post by: nobby on January 03, 2008, 10:50:51 PM
Quote
Sorry but i don't now what you mean... ^^

For no. 1 - hint: $_REQUEST is no use in 4images. ;)

Deutsch: Für Nr. 1 - Hinweis: $ _REQUEST ist kein Einsatz in 4images.
Title: Re: [PLUGIN] Massmailer/Batch Mailer
Post by: Nicky on January 03, 2008, 11:55:00 PM
unnötige posts gelöscht.
peace!
Title: Re: [PLUGIN] Massmailer/Batch Mailer
Post by: mawenzi on January 04, 2008, 12:03:53 AM
@Acidgod
... eine Userauswahl / - einschränkung kann leider nur über den Userlevel erfolgen ...
... eine Userauswahl anhand von Usergruppen wäre für mich sehr hilfreich (eventuell für andere auch) ...
... kannst du das noch integrieren ... wäre toll ... !
Title: Re: [PLUGIN] Massmailer/Batch Mailer
Post by: Acidgod on January 04, 2008, 12:15:47 AM
Hier werden nur die Usergruppen benutzt...
Eine Auswahl einzelner User ist hier nicht möglich... ^^
Title: Re: [PLUGIN] Massmailer/Batch Mailer
Post by: mawenzi on January 04, 2008, 01:06:03 AM
... also eine Auswahl der Usergruppen ist bei mir nicht möglich ...
... es sei denn, du bezeichnest "Administartoren, Registrierte User, Nicht aktivierte registrierte User" als Usergruppen ...
... doch das sind die 4images Userlevel ...
... ich meine jedoch die "richtigen" Usergruppen, die man individuell im ACP->User verwalten definieren kann ...
... und den Mitgliedern solcher Usergruppen möchte ich die e-mails getrennt verschicken ...
... es müsste also noch ein Dropdownmenü her, in dem die Auswahl der Usergruppen (sofern vorhanden) erfolgen kann ...
Title: Re: [PLUGIN] Massmailer/Batch Mailer
Post by: Acidgod on January 04, 2008, 11:19:24 AM
War gester doch schon soooo spät... *g*

Ich werde später mal schauen ob ich das für dich erweitern/anpassen kann... (o:
Title: Re: [PLUGIN] Massmailer/Batch Mailer
Post by: mawenzi on January 04, 2008, 11:43:40 AM
... zumindest schon mal meine Problemstellung erkannt ... ;)
... Danke ...
Title: Re: [PLUGIN] Massmailer/Batch Mailer
Post by: Acidgod on January 04, 2008, 03:20:37 PM
Werde das schon hinbekommen... *g*
Nur bin ich mir bisher nicht mal sicher das dieses Plugin einwandfrei funzt... *g*

Daher sollten wir vielleicht mal abwarten bis es wer getestet hat... (o:
Title: Re: [PLUGIN] Massmailer/Batch Mailer
Post by: m.a on June 11, 2008, 02:46:06 AM
Hallo Acidgod,
ich habe es probiert!
Beim E-Mails an User versenden, wird es nicht funktionieren!
Es wird (Die Seite wurde nicht gefunden) angezeigt.

Daher sollten wir vielleicht mal abwarten bis es wer getestet hat... (o:

Grüß
m.a
Title: Re: [PLUGIN] Massmailer/Batch Mailer
Post by: k1lljoy on June 21, 2008, 04:58:54 PM
Is there english version of this plugin?  :oops:
Title: Re: [PLUGIN] Massmailer/Batch Mailer
Post by: nobby on June 21, 2008, 05:05:44 PM
Is there english version of this plugin?  :oops:

No, you probably translate itself  :wink:

edit
Did I just translated.

Unpack and file in the directory /Admin/Plugins copy.
Title: Re: [PLUGIN] Massmailer/Batch Mailer
Post by: k1lljoy on June 21, 2008, 05:50:17 PM
Nobby, thanx  :P

And now I get an error in my IE:

Code: [Select]
Line: 145
Symbol: 234
Error: The presence of ";" is supposed.
Code: 0
URL: /admin/plugins/email.php

and it seems like it sends just 2 emails  :oops:
Title: Re: [PLUGIN] Massmailer/Batch Mailer
Post by: nobby on June 21, 2008, 06:07:21 PM
This is partly because it is still BETA.

Acidgod has not yet finished.  :roll:
Title: Re: [PLUGIN] Massmailer/Batch Mailer
Post by: Sunny C. on June 21, 2008, 06:59:03 PM
Was macht dieses Teil genau?
Title: Re: [PLUGIN] Massmailer/Batch Mailer
Post by: nobby on June 21, 2008, 07:34:14 PM
im Moment noch nicht viel da es noch Fehler enthält.

Der Autor "Acidgod" ist leider Erkrankt und kann das Plugin derzeit nicht fertigstellen.

Das Plugin dient zum verschicken von Massenmails an User oder Usergruppen.

Im ACP kann man jeweils nur eine Mail gleichzeitig an den User schicken, und beim Massmailer kann die Anzahl eingegeben werden.
Title: Re: [PLUGIN] Massmailer/Batch Mailer
Post by: Sunny C. on June 21, 2008, 07:41:05 PM
das ist ja klasse! freue mnich wenn es klappt
Title: Re: [PLUGIN] Massmailer/Batch Mailer
Post by: Daniel on October 02, 2008, 10:25:00 PM
Man kann im ACP immer nur einem User eine Email schicken?
Ist das war?
Title: Re: [PLUGIN] Massmailer/Batch Mailer
Post by: nobby on October 02, 2008, 10:44:20 PM
Probier es aus dann weist Du es  :wink:
Title: Re: [PLUGIN] Massmailer/Batch Mailer
Post by: Daniel on October 02, 2008, 10:47:26 PM
Habs grad getestet, mit 30 ausgewählten Usern gehts...
Gibts da eine Grenze?
Title: Re: [PLUGIN] Massmailer/Batch Mailer
Post by: nobby on October 02, 2008, 10:48:01 PM
@ivan

Du musst doch nicht alles verraten  :lol:
Title: Re: [PLUGIN] Massmailer/Batch Mailer
Post by: Daniel on October 02, 2008, 10:51:57 PM
Stimmt auch nicht was ivan sagt...
Habs grad mit 450Usern getest, da gibt er einen Fehler aus. (Fehler beim versenden der Emails!)
Wenn es gehen würde, wozu würde dann jemand diesen MOD hier benötigen?
Ich bin verwirrt...  :?
Title: Re: [PLUGIN] Massmailer/Batch Mailer
Post by: nobby on October 02, 2008, 10:56:39 PM
Das PLUGIN ist doch noch BETA  :wink:
Title: Re: [PLUGIN] Massmailer/Batch Mailer
Post by: Daniel on October 02, 2008, 11:00:39 PM
Nein ich hab ja nicht den MOD getestet sondern den normalen Emailer im ACP.
Title: Re: [PLUGIN] Massmailer/Batch Mailer
Post by: nobby on October 02, 2008, 11:09:16 PM
Ach so...  :)
Title: Re: [PLUGIN] Massmailer/Batch Mailer
Post by: Daniel on October 02, 2008, 11:15:58 PM
Ich finds irgenwie komisch das da irgendwo ne Grenze ist ab der es nicht zu funktionieren scheint,
Ich weiß nicht ob das normal ist...  :?: :?: :?:
Title: Re: [PLUGIN] Massmailer/Batch Mailer
Post by: Daniel on October 12, 2008, 07:29:39 PM
Ich habs mit dem normalen Standartmailer nochmal versucht, irgendwo zwischen 60 und 100 Mail kann der vesenden...darüber gibt es einen Fehler.
Title: Re: [PLUGIN] Massmailer/Batch Mailer
Post by: Daniel on December 19, 2008, 07:37:31 PM
Ich war früher immer der Meinung das es sowieso ein Massmailer ist  :D :roll:
Title: Re: [PLUGIN] Massmailer/Batch Mailer
Post by: nobby on December 19, 2008, 08:54:23 PM
Ich war früher immer der Meinung das es sowieso ein Massmailer ist  :D :roll:

Das ist ja auch richtig.
Allerdings sind hier noch Fehler enthalten.

Dieses hat Acidgod ja auch geschrieben und er deshalb noch keine Garantie auf volle Funktionstüchtigkeit gibt  :wink:
Title: Re: [PLUGIN] Massmailer/Batch Mailer
Post by: desperate_housewif on December 30, 2008, 06:13:47 PM
Ich habe den Mod installiert. Im ACP taucht er auf, habe in "Usergruppe Administrator" mir selbst als Test eine Mail geschickt, kam an. Bin auf registrierte User gegangen, hat mir alle Usermails als versandt angezeigt, ist aber nirgends etwas angekommen. Was ist falsch? Habe jeweils immer nur an 30 Mitglieder gleichzeitig versandt.