SMFHacks.com

Newsletter Pro => Support => Topic started by: ApplianceJunk on August 07, 2009, 08:29:41 pm

Title: Message Editor?
Post by: ApplianceJunk on August 07, 2009, 08:29:41 pm
How do I get to the new message editor screen?

Were I type my normal newsletter message it looks the same as it always did, just a plan text box with this below it.

Quote
Send in HTML format. (with this you can put normal HTML in the email.)
Must be checked for Newsletter Pro
 Add <br />s and &nbsp;s to this message.

and I do have it checked for newsletter pro, but should it look like this screen shot, because it don't.

(http://www.smfhacks.com/gallery/1_21_05_08_8_19_16.PNG)
Title: Re: Message Editor?
Post by: ApplianceJunk on August 07, 2009, 08:40:41 pm
I should have added I'm using SMF 1.1.10, TP v0.9.8 and the Dilber MC theme.

I don't get any errors when I installed Newsletter Pro.
Title: Re: Message Editor?
Post by: SMFHacks on August 07, 2009, 08:42:29 pm
That should automatically appear. What version of SMF. And do you notice any errors like if you are using firefox check the error console.
Check also that the tiny_mce folder in the root of your forum is not empty.
Title: Re: Message Editor?
Post by: ApplianceJunk on August 07, 2009, 09:01:29 pm
Using SMF 1.1.10

No errors that I can find.

tiny_mce folder is there, but it is empty.
Title: Re: Message Editor?
Post by: SMFHacks on August 07, 2009, 09:03:36 pm
Ok that would do grab the tiny_mce folder from the zip from the download and copy to the root the forum to fix that issue.
Title: Re: Message Editor?
Post by: ApplianceJunk on August 07, 2009, 09:14:30 pm
That did the trick, looks good now.

Thanks,
Title: Re: Message Editor?
Post by: Boomslanger on August 08, 2009, 12:11:44 am
Just for info in case it happens to anyone else.

The Newsletter Pro installed tiny_mce with nothing in it and without me having any write permissions, but when I opened the newsletter_pro.zip the folder was named tinymce without the underscore '_'.

As I did not have any permissions to upload to the installed tiny_mce folder of my forum the way I got round it was to rename it to tinymce and then create a new folder named tiny_mce (i.e. with the underscore '_'). I could then upload the files from the unpacked zip to the tiny_mce folder on the forum and everything is working.

Don't know why this happened as I've no problems with packages or permission before including Gallery. I also found it strange that even though I didn't have any permissions to write files to the original tiny_mce folder on the forum, I was still able to rename the folder.
Title: Re: Message Editor?
Post by: ApplianceJunk on August 08, 2009, 12:45:59 am
Quote
but when I opened the newsletter_pro.zip the folder was named tinymce without the underscore '_'.

Same here. I just copied it as is to the desktop were I then changed the name to include the underscore. Next I uploaded it to the server and all was wonderful in the world again. :)
Title: Re: Message Editor?
Post by: SMFHacks on August 08, 2009, 09:51:35 am
Ah thanks for the information fixed the package added the underscore to the name.
Title: Re: Message Editor?
Post by: treasurenet on August 16, 2009, 04:17:57 am
hmm, well, I have the underscore and it still is not appearing for my very recent download and installation.

what should the permissions be set as?

I have even tried chmod -R 755 tiny_mce AND chmod -R 777 tiny_mce!


tiny_mce changed to 0777
tiny_mce/langs changed to 0777
.....snip....
tiny_mce/tiny_mce_popup.js changed to 0777
tiny_mce/tiny_mce_src.js changed to 0777
tiny_mce/tiny_mce.js changed to 0777


Title: Re: Message Editor?
Post by: SMFHacks on August 16, 2009, 03:59:47 pm
777 or 775 are fine.

What version of SMF and what browser are you using?
If you are using Firefox check the error console log under help for more information
Title: Re: Message Editor?
Post by: treasurenet on August 16, 2009, 04:25:10 pm
SMF 1.1.10

Safari on a Mac... is there a demo to see if I can get it to work on my browser?

I think I have used that editor before.
Title: Re: Message Editor?
Post by: treasurenet on August 16, 2009, 04:57:40 pm
I am attaching my ManageNews.php file - I just downloaded the latest version of it from smf, and reinstalled your code in it - can you take a look and see if you see any problems?

Thanks!
Title: Re: Message Editor?
Post by: SMFHacks on August 16, 2009, 05:42:33 pm
Try this modified file and let me know if it makes a difference.
Title: Re: Message Editor?
Post by: treasurenet on August 16, 2009, 05:47:26 pm
Nope - still no unsubscribe link.  ???

FYI - this is all I am putting in the newsletter... not sure if that would make any dif...

Code: [Select]
<html>
<head>
</head>
<body>
Hello
</body>
</html>
Title: Re: Message Editor?
Post by: SMFHacks on August 16, 2009, 06:05:22 pm
The message editor does not appear either?
Title: Re: Message Editor?
Post by: treasurenet on August 16, 2009, 06:09:20 pm
nope....  but I do see most of the functionality...

SETTINGS       LISTS   MESSAGES   REPORTS   CAMPAIGNS   SIGNUP FORM   MANAGE LINKS   UNSUBSCRIBE LIST   


etc....  they all seem to be ok....  btw how does the system know a newsletter has been viewed?


Title: Re: Message Editor?
Post by: SMFHacks on August 16, 2009, 06:15:02 pm
Can you attach a copy of the html of the message creation page on the newsletter page? Save the webpage to afile

What about the editor Newsletter Pro -> messages -> Add Message does it appear there?
Title: Re: Message Editor?
Post by: treasurenet on August 16, 2009, 06:27:40 pm
Can you attach a copy of the html of the message creation page on the newsletter page? Save the webpage to afile

What about the editor Newsletter Pro -> messages -> Add Message does it appear there?

It does not appear there either...  and I have been watching the Safari activity window and see no errors.

Attached is the html of....

http://.mysite.com/index.php?action=newspro;sa=addmessage

(minus header and personal info)



Title: Re: Message Editor?
Post by: SMFHacks on August 16, 2009, 06:56:18 pm
http://www.mysite.com/tiny_mce/tiny_mce.js
Does that show anything when you load it?
Title: Re: Message Editor?
Post by: treasurenet on August 17, 2009, 02:57:48 am
http://www.mysite.com/tiny_mce/tiny_mce.js
Does that show anything when you load it?

Yes.  A bunch of javascript text only.

Title: Re: Message Editor?
Post by: SMFHacks on August 17, 2009, 07:19:00 pm
hmm not sure what's up I tried your attached file and replaced it with my url and it works fine with the editor loading.
I also installed Sarfari on windows and the editor loaded.
Title: Re: Message Editor?
Post by: treasurenet on August 18, 2009, 02:12:30 am
Can you check my template file please? It's attached. Thanks.

Title: Re: Message Editor?
Post by: treasurenet on August 18, 2009, 02:46:09 am
I even went so far as to redo your install file.... (because from a manual install perspective, it was confusing to edit the ManageNews.php file, then the ManageNews.template.php file, then back to the MangeNews.php file etc.  It had me going back and forth between files...  I edited the file so I could focus on one file at a time.  8)

I also downloaded ALL the latest 1.1.10 news files and re-installed your mod...   still no editor.

Attached is what I did to your mod file - if you're interested.

SIGH.

One thing that may be worthwhile...  you do a find - if not found ignore.....

then you do a find for a very similar block of text....   the section that starts with

"// This is here to prevent spam filters from tagging this as spam."

I am assuming that block should be replaced either way.  My text editor doesn't find that block either way.

Below is what I replaced......


Code: [Select]
// This is here to prevent spam filters from tagging this as spam.
if (!empty($_POST['send_html']) && preg_match('~\<html~i', $_POST['message']) == 0)
{
if (preg_match('~\<body~i', $_POST['message']) == 0)
$_POST['message'] = '<html><head><title>' . $_POST['subject'] . '</title></head>' . "\n" . '<body>' . $_POST['message'] . '</body></html>';
else
$_POST['message'] = '<html>' . $_POST['message'] . '</html>';
}

$result = db_query("
SELECT realName, memberName, ID_MEMBER, emailAddress
FROM {$db_prefix}members
WHERE emailAddress IN ('" . implode("', '", addslashes__recursive($send_list)) . "')
AND is_activated = 1", __FILE__, __LINE__);
while ($row = mysql_fetch_assoc($result))
{
unset($send_list[$row['emailAddress']]);

$to_member = array(
$row['emailAddress'],
!empty($_POST['send_html']) ? '<a href="' . $scripturl . '?action=profile;u=' . $row['ID_MEMBER'] . '">' . $row['realName'] . '</a>' : $scripturl . '?action=profile;u=' . $row['ID_MEMBER'],
$row['ID_MEMBER'],
$row['realName']
);

// Send the actual email off, replacing the member dependent variables.
sendmail($row['emailAddress'], str_replace($from_member, $to_member, addslashes($_POST['subject'])), str_replace($from_member, $to_member, addslashes($_POST['message'])), null, null, !empty($_POST['send_html']));
}
mysql_free_result($result);

// Send the emails to people who weren't members....
if (!empty($send_list))
foreach ($send_list as $email)
{
$to_member = array(
$email,
!empty($_POST['send_html']) ? '<a href="mailto:' . $email . '">' . $email . '</a>' : $email,
'??',
$email
);

sendmail($email, str_replace($from_member, $to_member, addslashes($_POST['subject'])), str_replace($from_member, $to_member, addslashes($_POST['message'])), null, null, !empty($_POST['send_html']));
}



with.....

Code: [Select]

// Modified by Newsletter Pro
// This is here to prevent spam filters from tagging this as spam.
if (!empty($_POST['send_html']) && preg_match('~\<html~i', $_POST['message']) == 0)
{
if (preg_match('~\<body~i', $_POST['message']) == 0)
$_POST['message'] = '<html><head><title>' . $_POST['subject'] . '</title></head>' . "\n" . '<body>' . $_POST['message'] . '<#unsubscribe#><#trackimg#></body></html>';
else
$_POST['message'] = '<html>' . $_POST['message'] . '<#unsubscribe#><#trackimg#></html>';
}
   

global $boardurl;

// Replace Links
$pattern  = "/((@import\s+[\"'`]([\w:?=@&\/#._;-]+)[\"'`];)|";
    $pattern .= "(:\s*url\s*\([\s\"'`]*([\w:?=@&\/#._;-]+)";
    $pattern .= "([\s\"'`]*\))|<[^>]*\s+(href)\=[\"'`]*";
    $pattern .= "([^\"'`]+)[\"'`]*[^>]*>))/is";
    preg_match_all($pattern, $_POST['message'], $matches);

       foreach($matches[8] as $tmp)
       {
              if ($tmp != "" && !stristr($tmp, "mailto:") && !preg_match('/^#/', $tmp))
              {
                  $link = CreateMessageLink($tmp,$context['ID_LETTER']);
                  $_POST['message'] = preg_replace("/href=[\"'`]*?".str_replace("/", "\/",
preg_quote($tmp))."[\"'`]/is", 'href="'. $link.'"', $_POST['message']);
               }
       }
     


// Create Unsubscribe link
if (empty($modSettings['newspro_set_nounsubscribe']))
$_POST['message'] = str_replace('<#unsubscribe#>','<a href="' . $boardurl . '/newstracking.php?a=u&c=' . $context['ID_LETTER'] . '&i=#ID_EMAIL#">' . $txt['newspro_unsubscribe'] . '</a>',$_POST['message']);
else
$_POST['message'] = str_replace('<#unsubscribe#>','',$_POST['message']);

// Add tracking pixel
$_POST['message'] = str_replace('<#trackimg#>','<img src="' . $boardurl . '/newstracking.php?a=v&c=' . $context['ID_LETTER'] . '&i=#ID_EMAIL#">',$_POST['message']);


$result = db_query("
SELECT m.realName, m.memberName, m.ID_MEMBER, l.email, u.ID_OPTOUT, l.ID_EMAIL   
FROM " . $context['list_tableid'] . " AS l
LEFT JOIN {$db_prefix}members AS m ON (l.email = m.emailAddress)
LEFT JOIN {$db_prefix}newspro_unsubscribe AS u ON (l.email = u.emailAddress)
WHERE l.email IN ('" . implode("', '", addslashes__recursive($send_list)) . "')", __FILE__, __LINE__);

$emailCount = 0;
while ($row = mysql_fetch_assoc($result))
{

// Check if this email is on the unsubscribe list
if (!empty($row['ID_OPTOUT']))
continue;

$tempMSG = $_POST['message'];

// Add the tracking
$tempMSG = str_replace("#ID_EMAIL#",$row['ID_EMAIL'],$tempMSG);


if (!empty($row['realName']))
{
$to_member = array(
$row['email'],
!empty($_POST['send_html']) ? '<a href="' . $scripturl . '?action=profile;u=' . $row['ID_MEMBER'] . '">' . $row['realName'] . '</a>' : $scripturl . '?action=profile;u=' . $row['ID_MEMBER'],
$row['ID_MEMBER'],
$row['realName']
);

// Send the actual email off, replacing the member dependent variables.
sendmail($row['email'], str_replace($from_member, $to_member, addslashes($_POST['subject'])), str_replace($from_member, $to_member, addslashes($tempMSG)), null, null, !empty($_POST['send_html']));
$emailCount++;
}
else
{
// Send the emails to people who weren't members....
$to_member = array(
$row['email'],
!empty($_POST['send_html']) ? '<a href="mailto:' . $row['email'] . '">' .$row['email'] . '</a>' : $row['email'],
'??',
$row['email']
);

sendmail($row['email'], str_replace($from_member, $to_member, addslashes($_POST['subject'])), str_replace($from_member, $to_member, addslashes($tempMSG)), null, null, !empty($_POST['send_html']));
$emailCount++;
}

}
mysql_free_result($result);

// Increase the sent count
$result = db_query("
UPDATE {$db_prefix}newspro_newsletters SET sent = sent + $emailCount
WHERE ID_LETTER = "  . $context['ID_LETTER'], __FILE__, __LINE__);


// End modified Code by NewsLetter Pro









Title: Re: Message Editor?
Post by: treasurenet on August 18, 2009, 03:08:53 am
I just did a clean install on 1.1.10, and it installed fine, AND the editor IS there.... hmm...  I'll figure this out!  Sorry for the outburst!

I also see that my tracking showing emails read (does it doit with the SMF key?)

Dang I hope I can get this working on my main site!   :-\



Title: Re: Message Editor?
Post by: SMFHacks on August 18, 2009, 07:59:03 am
Tracking is based on a pixel added to each email sent out which allows me track whether a message was viewed or not.
Title: Re: Message Editor?
Post by: treasurenet on August 19, 2009, 02:02:21 am
Well - as I said in a pm to you, I just woke up this morning and the editor was there and all is fine!  Apparently Safari had cached the javascript files when the permissions where bunged up! (non-readable)   I wish I had restarted Safari to days ago!   :P
Title: Re: Message Editor?
Post by: SMFHacks on August 19, 2009, 08:01:01 am
Wow that was crazy glad it is working now.