Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- <?php
- include('openinviter.php');
- $inviter=new OpenInviter();
- $oi_services=$inviter->getPlugins();
- if (isset($_POST['provider_box']))
- {
- if (isset($oi_services['email'][$_POST['provider_box']])) $plugType='email';
- elseif (isset($oi_services['social'][$_POST['provider_box']])) $plugType='social';
- else $plugType='';
- }
- else $plugType = '';
- function ers($ers)
- {
- if (!empty($ers))
- {
- $contents="<table cellspacing='0' cellpadding='0' style='border:1px solid red;' align='center'><tr><td valign='middle' style='padding:3px' valign='middle'><img src='images/ers.gif'></td><td valign='middle' style='color:red;padding:5px;'>";
- foreach ($ers as $key=>$error)
- $contents.="{$error}<br >";
- $contents.="</td></tr></table><br >";
- return $contents;
- }
- }
- function oks($oks)
- {
- if (!empty($oks))
- {
- $contents="<table border='0' cellspacing='0' cellpadding='10' style='border:1px solid #5897FE;' align='center'><tr><td valign='middle' valign='middle'><img src='images/oks.gif' ></td><td valign='middle' style='color:#5897FE;padding:5px;'> ";
- foreach ($oks as $key=>$msg)
- $contents.="{$msg}<br >";
- $contents.="</td></tr></table><br >";
- return $contents;
- }
- }
- if (!empty($_POST['step'])) $step=$_POST['step'];
- else $step='get_contacts';
- $ers=array();$oks=array();$import_ok=false;$done=false;
- if ($_SERVER['REQUEST_METHOD']=='POST')
- {
- if ($step=='get_contacts')
- {
- if (empty($_POST['email_box']))
- $ers['email']="Email missing !";
- if (empty($_POST['password_box']))
- $ers['password']="Password missing !";
- if (empty($_POST['provider_box']))
- $ers['provider']="Provider missing !";
- if (count($ers)==0)
- {
- $inviter->startPlugin($_POST['provider_box']);
- $internal=$inviter->getInternalError();
- if ($internal)
- $ers['inviter']=$internal;
- elseif (!$inviter->login($_POST['email_box'],$_POST['password_box']))
- {
- $internal=$inviter->getInternalError();
- $ers['login']=($internal?$internal:"Login failed. Please check the email and password you have provided and try again later !");
- }
- elseif (false===$contacts=$inviter->getMyContacts())
- $ers['contacts']="Unable to get contacts !";
- else
- {
- $import_ok=true;
- $step='send_invites';
- $_POST['oi_session_id']=$inviter->plugin->getSessionID();
- $_POST['message_box']='';
- }
- }
- }
- elseif ($step=='send_invites')
- {
- if (empty($_POST['provider_box'])) $ers['provider']='Provider missing !';
- else
- {
- $inviter->startPlugin($_POST['provider_box']);
- $internal=$inviter->getInternalError();
- if ($internal) $ers['internal']=$internal;
- else
- {
- if (empty($_POST['email_box'])) $ers['inviter']='Inviter information missing !';
- if (empty($_POST['oi_session_id'])) $ers['session_id']='No active session !';
- if (empty($_POST['message_box'])) $ers['message_body']='Message missing !';
- else $_POST['message_box']=strip_tags($_POST['message_box']);
- $selected_contacts=array();$contacts=array();
- $message=array('subject'=>$inviter->settings['message_subject'],'body'=>$inviter->settings['message_body'],'attachment'=>"\n\rAttached message: \n\r".$_POST['message_box']);
- if ($inviter->showContacts())
- {
- foreach ($_POST as $key=>$val)
- if (strpos($key,'check_')!==false)
- $selected_contacts[$_POST['email_'.$val]]=$_POST['name_'.$val];
- elseif (strpos($key,'email_')!==false)
- {
- $temp=explode('_',$key);$counter=$temp[1];
- if (is_numeric($temp[1])) $contacts[$val]=$_POST['name_'.$temp[1]];
- }
- if (count($selected_contacts)==0) $ers['contacts']="You haven't selected any contacts to invite !";
- }
- }
- }
- if (count($ers)==0)
- {
- $sendMessage=$inviter->sendMessage($_POST['oi_session_id'],$message,$selected_contacts);
- $inviter->logout();
- if ($sendMessage===-1)
- {
- $message_footer="\r\n\r\nThis invite was sent using OpenInviter technology.";
- $message_subject=$_POST['email_box'].$message['subject'];
- $message_body=$message['body'].$message['attachment'].$message_footer;
- $headers="From: {$_POST['email_box']}";
- foreach ($selected_contacts as $email=>$name)
- mail($email,$message_subject,$message_body,$headers);
- $oks['mails']="Mails sent successfully";
- }
- elseif ($sendMessage===false)
- {
- $internal=$inviter->getInternalError();
- $ers['internal']=($internal?$internal:"There were errors while sending your invites.<br>Please try again later!");
- }
- else $oks['internal']="Invites sent successfully!";
- $done=true;
- }
- }
- }
- else
- {
- $_POST['email_box']='';
- $_POST['password_box']='';
- $_POST['provider_box']='';
- }
- $contents="<script type='text/javascript'>
- function toggleAll(element)
- {
- var form = document.forms.openinviter, z = 0;
- for(z=0; z<form.length;z++)
- {
- if(form[z].type == 'checkbox')
- form[z].checked = element.checked;
- }
- }
- </script>";
- $contents.="<form action='' method='POST' name='openinviter'>".ers($ers).oks($oks);
- if (!$done)
- {
- if ($step=='get_contacts')
- {
- $contents.="<table align='center' class='thTable' cellspacing='2' cellpadding='0' style='border:none;'>
- <tr class='thTableRow'><td align='right'><label for='email_box'>Email</label></td><td><input class='thTextbox' type='text' name='email_box' value='{$_POST['email_box']}'></td></tr>
- <tr class='thTableRow'><td align='right'><label for='password_box'>Password</label></td><td><input class='thTextbox' type='password' name='password_box' value='{$_POST['password_box']}'></td></tr>
- <tr class='thTableRow'><td align='right'><label for='provider_box'>Email provider</label></td><td><select class='thSelect' name='provider_box'><option value=''></option>";
- foreach ($oi_services as $type=>$providers)
- {
- $contents.="<optgroup label='{$inviter->pluginTypes[$type]}'>";
- foreach ($providers as $provider=>$details)
- $contents.="<option value='{$provider}'".($_POST['provider_box']==$provider?' selected':'').">{$details['name']}</option>";
- $contents.="</optgroup>";
- }
- $contents.="</select></td></tr>
- <tr class='thTableImportantRow'><td colspan='2' align='center'><input class='thButton' type='submit' name='import' value='Import Contacts'></td></tr>
- </table><input type='hidden' name='step' value='get_contacts'>";
- }
- else
- $contents.="<table class='thTable' cellspacing='0' cellpadding='0' style='border:none;'>
- <tr class='thTableRow'><td align='right' valign='top'><label for='message_box'>Message</label></td><td><textarea rows='5' cols='50' name='message_box' class='thTextArea' style='width:300px;'>{$_POST['message_box']}</textarea></td></tr>
- <tr class='thTableRow'><td align='center' colspan='2'><input type='submit' name='send' value='Send Invites' class='thButton' ></td></tr>
- </table>";
- }
- $contents.="<center><a href='http://openinviter.com/'><img src='http://openinviter.com/images/banners/banner_blue_1.gif?nr=4094' border='0' alt='Powered by OpenInviter.com' title='Powered by OpenInviter.com'></a></center>";
- if (!$done)
- {
- if ($step=='send_invites')
- {
- if ($inviter->showContacts())
- {
- $contents.="<table class='thTable' align='center' cellspacing='0' cellpadding='0'><tr class='thTableHeader'><td colspan='".($plugType=='email'? "3":"2")."'>Your contacts</td></tr>";
- if (count($contacts)==0)
- $contents.="<tr class='thTableOddRow'><td align='center' style='padding:20px;' colspan='".($plugType=='email'? "3":"2")."'>You do not have any contacts in your address book.</td></tr>";
- else
- {
- $contents.="<tr class='thTableDesc'><td><input type='checkbox' onChange='toggleAll(this)' name='toggle_all' title='Select/Deselect all' checked>Invite?</td><td>Name</td>".($plugType == 'email' ?"<td>E-mail</td>":"")."</tr>";
- $odd=true;$counter=0;
- foreach ($contacts as $email=>$name)
- {
- $counter++;
- if ($odd) $class='thTableOddRow'; else $class='thTableEvenRow';
- $contents.="<tr class='{$class}'><td><input name='check_{$counter}' value='{$counter}' type='checkbox' class='thCheckbox' checked><input type='hidden' name='email_{$counter}' value='{$email}'><input type='hidden' name='name_{$counter}' value='{$name}'></td><td>{$name}</td>".($plugType == 'email' ?"<td>{$email}</td>":"")."</tr>";
- $odd=!$odd;
- }
- $contents.="<tr class='thTableFooter'><td colspan='".($plugType=='email'? "3":"2")."' style='padding:3px;'><input type='submit' name='send' value='Send invites' class='thButton'></td></tr>";
- }
- $contents.="</table>";
- }
- $contents.="<input type='hidden' name='step' value='send_invites'>
- <input type='hidden' name='provider_box' value='{$_POST['provider_box']}'>
- <input type='hidden' name='email_box' value='{$_POST['email_box']}'>
- <input type='hidden' name='oi_session_id' value='{$_POST['oi_session_id']}'>";
- }
- }
- $contents.="</form>";
- echo $contents;
- ?>
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement