Back to vBulletin 3.0 Add-Ons

vB Journal for vBulletin 3.0.3(v1.0.1)
Mod Version: 1.0.1, by AN-net

This modification is in the archives.
vB Version: 3.0.7 Rating: (6 votes - 4.50 average) Installs: 462
Released: 17 Sep 2004 Last Update: 23 Sep 2005 Downloads: 98
Not Supported DB Changes Template Edits Code Changes  

vB Journal v1.0.1
By Antonbomb22(Anthony Scudese)

vB Journal 1.5 Beta 1 is now available, click here.

Features:
  • Full vBulletin 3.0.3 intergration
  • Install file for SQL queries
  • Comment System
  • "GoToMyJournal"
  • link from postbit to journal
  • link from profile to journal
  • link from memberlist to journal
  • usergroup permissions
  • journal buddy system(by Wonko)
  • Journal Search Engine
  • journal highlight
  • bbcode parsing
  • smilie parsing
  • Admin Cp Support Section
  • Journal Status Icons
  • Who is viewing
  • most recent journal entries and journals
  • Who Can View for journals and entries
  • Complete journal and entry privacy
  • Comment on entries or journals
  • Journal Moderation(Like Post and Thread Moderation)
  • Entry Moderation(Like Post and Thread Moderation)
  • Pagination
  • Rating System
  • Lock System
  • Moods
  • "Can Have Journal" on a per user basis
  • Ip Logging
  • Journalists can name their journals
  • Export entries in TXT or XML format
  • Flood System
  • Administrators have absolute permissions
  • Search in Journal
  • Last Entry on Journal Index
  • Numerous AdminCp Settings
  • Unique Standard vB Images for vB Journal
  • View Single Entry
  • and so much more...

Version 1.0.1:
  • Many parts of vB Journal 1.0.0 were rewritten to cap security holes lurking within the code.

Features for later versions:
  • journalists can specify colors for their journal
  • attachments
  • subscriptions
  • journal moderators
  • report system
  • more administration options
  • complete phrasing

Demos:
  • http://www.animationation.net/community/journal.php
  • http://www.wellage.net/journal.php

Add-Ons(I Will not give support for these because i did not create them):
  • http://www.vbulletin.org/forum/showthread.php?p=555883
  • http://www.vbulletin.org/forum/showthread.php?&threadid=69846
  • RSS 1.0 for vB Journal 1.0.0

    Spoiler (click to open)


    Hi -

    I added RSS 1.0 (RDF) functionality to my install of vB Journal. Basically, you have to change "SELECT journalist" to "SELECT journalist,journalname,journaldesc" in the downloadjournal section of journal.php, make sure your Unregistered usergroup can view journals in the Admin CP, and paste this code in journal.php after the XML download part:

    Code:
    // RSS 1.0 Begins
    			else if($type=="rss1")
    			{
    				require_once('./includes/functions_bbcodeparse.php');
    				$rss1_header .= "<?xml version=\"1.0\" encoding=\"utf-8\" ?>\r\n\r\n";
    				$rss1_header .= "<rdf:RDF\r\n";
    				$rss1_header .= "  xmlns:rdf=\"http://www.w3.org/1999/02/22-rdf-syntax-ns#\"\r\n";
    				$rss1_header .= "  xmlns:dc=\"http://purl.org/dc/elements/1.1/\"\r\n";
    				$rss1_header .= "  xmlns:content=\"http://purl.org/rss/1.0/modules/content/\"\r\n";
    				$rss1_header .= "  xmlns=\"http://purl.org/rss/1.0/\"\r\n";
    				$rss1_header .= ">\r\n\r\n";
    				$rss1_header .= "<channel rdf:about=\"".$vboptions['bburl']."/journal.php?do=downloadjournal&amp;j=".$j."&amp;type=rss1\">\r\n";
    				if ($journal['journalname'] == "") { $journal['journalname'] = $journal['journalist'] . "'s Blog"; }
    				$rss1_header .= "<title>".htmlspecialchars($journal['journalname'])."</title>\r\n";
    				$rss1_header .= "<link>".$vboptions['bburl']."/journal.php?do=showjournal&amp;j=".$j."</link>\r\n";
    				if (empty($journal['journaldesc'])) { $journal['journaldesc'] = $journal['journalist']."'s Blog at ".$vboptions['bbtitle']; }
    				$rss1_header .= "<description>".htmlspecialchars($journal['journaldesc'])."</description>\r\n\r\n";
    				$rss1_header .= "<items>\r\n";
    				$rss1_header .= "\t<rdf:Seq>\r\n";
    				$totalentries = 0;
    				while($entry= $DB_site->fetch_array($getentries))
    				{
    					if($entry['private']!=1)
    					{
    						$totalentries++;
    						$entry['entrytext']= parse_bbcode2($entry['entrytext'], 0, $setting['allow_imgcode'], $setting['allow_smilies'], $setting['allow_bbcode']);
    						$entry['entrytext']= unhtmlspecialchars(stripslashes($entry['entrytext']));
    						$entry['entrytext']= ereg_replace("{smilies}", $vboptions['bburl']."/images/smilies", $entry['entrytext']);
    						$entry['entrytitle']= stripslashes($entry['entrytitle']);
    						$rss1_header .= "\t\t<rdf:li rdf:resource=\"".$vboptions['bburl']."/journal.php?do=showentry&amp;e=".$entry['entry_id']."\" />\r\n";
    						$rss1_body .= "\t<item rdf:about=\"".$vboptions['bburl']."/journal.php?do=showentry&amp;e=".$entry['entry_id']."\">\r\n";
    						$rss1_body .= "\t\t<title>".htmlspecialchars($entry['entrytitle'])."</title>\r\n";
    						$W3CDTFdate = preg_replace("/(\+|\-)([0-9]{2})([0-9]{2})/","$1$2:$3", date("O",$entry['entrydate']));
    						$rss1_body .= "\t\t<dc:date>".date("Y-m-d",$entry['entrydate'])."T".date("H:i:s",$entry['entrydate']).$W3CDTFdate."</dc:date>\r\n";
    						$rss1_body .= "\t\t<link>".$vboptions['bburl']."/journal.php?do=showentry&amp;e=".$entry['entry_id']."</link>\r\n";
    						$rss1_body .= "\t\t<content:encoded><![CDATA[".$entry['entrytext']."]]></content:encoded>\r\n";
    						$rss1_body .= "\t\t<description>".htmlspecialchars(strip_tags($entry['entrytext']))."</description>\r\n";
    						$rss1_body .= "\t</item>\r\n\r\n";
    					}
    					if($totalentries=="15") { break; }
    				}
    				$rss1_header .= "\t</rdf:Seq>\r\n";
    				$rss1_header .= "</items>\r\n\r\n";
    				$rss1_header .= "</channel>\r\n\r\n";
    				$rss1_body .= "</rdf:RDF>";
    				$filestring = utf8_encode($rss1_header.$rss1_body);
    				$filename = "$journal[journalist]_blog_".vbdate($vboptions['dateformat'], TIMENOW).'.rdf';
    				header("Content-Type: application/rdf+xml; charset=utf-8");
           			header('Expires: ' . gmdate('D, d M Y H:i:s') . ' GMT');
    		        header('Content-Disposition: attachment; filename="' . $filename . '"');
    		        header('Content-Length: ' . strlen($filestring));
    		        header('Cache-Control: must-revalidate, post-check=0, pre-check=0');
    		        header('Pragma: public');
    				echo $filestring;
    			}
    // RSS 1.0 Ends
    You'll then need to add a link to download it in the drop down menu. More as I figure it out...

    Edit (2005-03-30): The template is called journal_journalpage - change type=xml to type=rss1 and XML Format to RSS 1.0 Format. Fixed problem with a missing private check.

    Edit (2005-03-31): Added content:encoded CDATA, and removed UBB tags. Changed items to use URL instead of an arbitrary sequence number. I also like to change "ORDER by entrydate ASC" to DESC in downloadjournal, but this is personal preference.

    Edit (2005-04-14): I've made quite a few changes to the code, namely adding UTF-8 encoding and using corresponding content-type, adding a check to make sure the journal title isn't empty, limiting the number of items to 15.

    Close

Side Credits:
  • Journal Buddy System ~ WonkotheSane
  • Closed Beta Tester ~ Pitman
  • Closed Beta Tester ~ DantX
  • Helpful Person ~ Oblivion Knight
And to all those who helped me find my mistakes and encourage me

Notes:
  • The WOL(Who's Online) is not yet finished but will be released shortly due to some bugs and flaws
  • You may not remove the copyright notice!
  • An import script for Ryangle's ported Journal will be made so dont install this hack for now if you have the vb3 port of Ryangle's

Support:
~READ FIRST POST COMPLETELY BEFORE POSTING PROBLEMS AND MAKE SURE YOU DID ALL EDITS AND REQUIREMENTS!~

Support may be denied if provided files are edited/modified and support may be stopped at any time due to any circumstances.

If you should run into any errors, problems, confusion, or maybe even a suggestion please
foward them to one of the following places:
  • http://www.animationation.net/community/forumdisplay.php?f=68
  • AIM: Antonbomb22
  • Email: email
  • Or this thread

Contents of Zip:
  • install.txt
  • journal.php
  • journaladmin.php
  • journalinstall.php
  • images

I have also provided several screenshots

Please click install

If you are missing phrases or blank spaces in the usergroup manager click here

Spoiler (click to open)


Quote by rex_b
I still can't see the usergroup phrases in the admincp...

i did the fixphrases.php and it did nothing.

Same here, I just changed it to this, hope it doesn't screw anything up.

Code:
	print_table_header("Journal Permissions");
	print_yes_no_row("Can View Journal", 'usergroup[canviewjournal]', $ug_bitfield['canviewjournal']);
	print_yes_no_row("Can Have Journal", 'usergroup[canhavejournal]', $ug_bitfield['canhavejournal']);
	print_yes_no_row("Can View Comments", 'usergroup[canviewcomments]', $ug_bitfield['canviewcomments']);
	print_yes_no_row("Can Comment Journals", 'usergroup[cancommentjournals]', $ug_bitfield['cancommentjournals']);
	print_yes_no_row("Can Rate Journals", 'usergroup[canratejournals]', $ug_bitfield['canratejournals']);
	print_yes_no_row("Can Report Journals", 'usergroup[canreportentries]', $ug_bitfield['canreportentries']);
	print_yes_no_row("Can Edit Own Journal", 'usergroup[caneditownjournal]', $ug_bitfield['caneditownjournal']);
	print_yes_no_row("Can Edit Own Journal Entries", 'usergroup[caneditownentries]', $ug_bitfield['caneditownentries']);
	print_yes_no_row("Can Delete Own Journal", 'usergroup[candeleteownjournal]', $ug_bitfield['candeleteownjournal']);
	print_yes_no_row("Can Delete Own Journal Entries", 'usergroup[candeleteownentries]', $ug_bitfield['candeleteownentries']);
	print_yes_no_row("Can Search Journal", 'usergroup[cansearchjournal]', $ug_bitfield['cansearchjournal']);
// 	print_yes_no_row("Can Edit Others Journal", 'usergroup[caneditothersjournal]', $ug_bitfield['caneditothersjournal']);
// 	print_yes_no_row("Can Edit Others Entries", 'usergroup[caneditothersentries]', $ug_bitfield['caneditothersentries']);
// 	print_yes_no_row("Can Delete Others Journal", 'usergroup[candeleteothersjournal]', $ug_bitfield['candeleteothersjournal']);
// 	print_yes_no_row("Can Delete Otheers Entries", 'usergroup[candeleteothersentries]', $ug_bitfield['candeleteothersentries']);
	print_table_break();

Close
.


Updates/Fixes:
  • Updated zip and journalinstall.php due to a typo(click here for fix:

    Spoiler (click to open)


    there is a typo in journalinstall.php

    upload and overwrite the old with the attached file

    i will update the zip
    Attached Files
    File Type: php journalinstall.php (37.5 KB, 125 views)

    Close
    )
  • fixed a missing " in install.txt, it doesnt cause an error but its a fix (Click here for fix:

    Spoiler (click to open)


    Quote by kall
    In the admincp/usergroup.php modifications, you are missing a " on this line:
    PHP Code:
    print_yes_no_row("Can Delete Own Journal Entries, 'usergroup[candeleteownentries]', $ug_bitfield['candeleteownentries']); 
    Should be:
    PHP Code:
    print_yes_no_row("Can Delete Own Journal Entries"'usergroup[candeleteownentries]'$ug_bitfield['candeleteownentries']); 
    yes we noticed that but that doesnt cause an error so its not worry, the install file has been updated
    Attached Files
    File Type: txt install.txt (83.2 KB, 47 views)

    Close
    )
  • updated zip and journal.php, fixed sql queries that caused problems(Click here for fix:

    Spoiler (click to open)


    Seems to a problem with some of the queries using LEFT JOIN

    upload this updated file with the new journal.php, i will update the zip shortly

    edit:updated made a typo
    edit2: fixed missed a ".TABLE_PREFIX."
    Attached Files
    File Type: php journal.php (72.6 KB, 55 views)

    Close
    )
  • fixed a type in journal.php, zip and file updated(Click here for fix:

    Spoiler (click to open)


    ok this fixes 2 little typos by me

    upload and overwrite the old journal.php, i will update zip
    Attached Files
    File Type: php journal.php (72.6 KB, 46 views)

    Close
    )
  • updated zip,updated journalinstall.php, and uploaded phrasefix.php to fix the usergroup phrase problem(click here for fix:

    Spoiler (click to open)


    run this file, it should fix the usergroup phrase problem

    this moves the phrases to the permissions phrasegroup

    edit: forgot to include global.php
    Attached Files
    File Type: php phrasefix.php (328 Bytes, 221 views)

    Close
    )(09/16/04)
  • for those who may be experiencing problems due to conflicts with the articles hack follow these following changes:

    Spoiler (click to open)


    Quote by Silverdawn222
    Hi,

    Works excellently. However, I have a problem. We also run the Articles Hack on our forum. This popular hack uses plugin usergroup permission bitfields like yours (in includes/init.php). There seems to be a conflict because I can't properly set the permissions without it jumping between article permissions and journal permissions. And I'm afraid deleting the articles feature is really not an option because that's what our site is all about. I'm talking about this piece of code (the first part is your custom fields, the second is the Article Hack's):

    PHP Code:
    // field names for journal permissions
    $_BITFIELD['usergroup']['journalpermissions'] = array(
        
    'canviewjournal'            => 1,
        
    'canhavejournal'            => 2,
        
    'canviewcomments'            => 4,
        
    'cancommentjournals'          => 8,
        
    'canratejournals'            => 16,
        
    'canreportentries'        => 32,
        
    'caneditownjournal'        => 64,
        
    'caneditownentries'        => 128,
        
    'candeleteownjournal'         => 256,
        
    'candeleteownentries'         => 512,
        
    'cansearchjournal'        => 1024 //,
    //     'caneditothersjournal'        => 2048,
    //     'caneditothersentries'        => 4096,
    //     'candeleteothersjournal'      => 8192,
    //     'candeleteothersentries'      => 16384
    );

    // ### INSERT PLUGIN USERGROUP PERMISSIONS BITFIELDS HERE ###
    // ----------------------------------------------------------

    $_BITFIELD['usergroup']['articlepermissions'] = array(
        
    'canviewarticles'        => 1,
        
    'canviewcomments'        => 2,
        
    'canpostarticles'        => 4,
        
    'cancomment'             => 8,
        
    'canedownart'            => 16,
        
    'canedothart'            => 32,
        
    'candelownart'            => 64,
        
    'candelothart'            => 128,
        
    'canfeature'            => 256,
        
    'cansearchart'            => 512,
        
    'canratearticles'        => 1024,
        
    'canviewartmedia'        => 2048
    );

    // ----------------------------------------------------------
    // ###  END PLUGIN USERGROUP PERMISSIONS BITFIELDS HERE   ### 
    ok change the journals permissions to the following:
    PHP Code:
    // field names for journal permissions
    $_BITFIELD['usergroup']['journalpermissions'] = array(
        
    'canviewjournal'            => 1,
        
    'canhavejournal'            => 2,
        
    'canviewjournalcomments'            => 4,
        
    'cancommentjournals'          => 8,
        
    'canratejournals'            => 16,
        
    'canreportentries'        => 32,
        
    'caneditownjournal'        => 64,
        
    'caneditownentries'        => 128,
        
    'candeleteownjournal'         => 256,
        
    'candeleteownentries'         => 512,
        
    'cansearchjournal'        => 1024 //,
    //     'caneditothersjournal'        => 2048,
    //     'caneditothersentries'        => 4096,
    //     'candeleteothersjournal'      => 8192,
    //     'candeleteothersentries'      => 16384
    ); 
    and in journal.php
    change find:
    PHP Code:
    if($permissions['journalpermissions'] & CANVIEWCOMMENTS)
    {
        
    $canview['comments']= true;
    }
    else
    {
        
    $canview['comments']= false;

    replace that with:
    PHP Code:
    if($permissions['journalpermissions'] & CANVIEWJOURNALCOMMENTS)
    {
        
    $canview['comments']= true;
    }
    else
    {
        
    $canview['comments']= false;

    in usergroup.php find:
    PHP Code:
    print_yes_no_row("Can View Comments"'usergroup[canviewcomments]'$ug_bitfield['canviewcomments']); 
    replace that with:
    PHP Code:
    print_yes_no_row("Can View Comments"'usergroup[canviewjournalcomments]'$ug_bitfield['canviewjournalcomments']); 
    that should fix the conflict

    Close
    (09/18/04)
  • for those experiencing blanks or missing descriptions for usergroup permissions use this fix until further notice(for /admincp/usergroup.php):

    Spoiler (click to open)


    Quote by rex_b
    I still can't see the usergroup phrases in the admincp...

    i did the fixphrases.php and it did nothing.

    Same here, I just changed it to this, hope it doesn't screw anything up.

    Code:
    	print_table_header("Journal Permissions");
    	print_yes_no_row("Can View Journal", 'usergroup[canviewjournal]', $ug_bitfield['canviewjournal']);
    	print_yes_no_row("Can Have Journal", 'usergroup[canhavejournal]', $ug_bitfield['canhavejournal']);
    	print_yes_no_row("Can View Comments", 'usergroup[canviewcomments]', $ug_bitfield['canviewcomments']);
    	print_yes_no_row("Can Comment Journals", 'usergroup[cancommentjournals]', $ug_bitfield['cancommentjournals']);
    	print_yes_no_row("Can Rate Journals", 'usergroup[canratejournals]', $ug_bitfield['canratejournals']);
    	print_yes_no_row("Can Report Journals", 'usergroup[canreportentries]', $ug_bitfield['canreportentries']);
    	print_yes_no_row("Can Edit Own Journal", 'usergroup[caneditownjournal]', $ug_bitfield['caneditownjournal']);
    	print_yes_no_row("Can Edit Own Journal Entries", 'usergroup[caneditownentries]', $ug_bitfield['caneditownentries']);
    	print_yes_no_row("Can Delete Own Journal", 'usergroup[candeleteownjournal]', $ug_bitfield['candeleteownjournal']);
    	print_yes_no_row("Can Delete Own Journal Entries", 'usergroup[candeleteownentries]', $ug_bitfield['candeleteownentries']);
    	print_yes_no_row("Can Search Journal", 'usergroup[cansearchjournal]', $ug_bitfield['cansearchjournal']);
    // 	print_yes_no_row("Can Edit Others Journal", 'usergroup[caneditothersjournal]', $ug_bitfield['caneditothersjournal']);
    // 	print_yes_no_row("Can Edit Others Entries", 'usergroup[caneditothersentries]', $ug_bitfield['caneditothersentries']);
    // 	print_yes_no_row("Can Delete Others Journal", 'usergroup[candeleteothersjournal]', $ug_bitfield['candeleteothersjournal']);
    // 	print_yes_no_row("Can Delete Otheers Entries", 'usergroup[candeleteothersentries]', $ug_bitfield['candeleteothersentries']);
    	print_table_break();

    Close
    (09/18/04)
  • updated zip and journal.php for more compatiability with vb and more likeness with vb (use the following fix:

    Spoiler (click to open)


    For complete compatiably upload the following updated journal.php file

    this update will make it so that if a link/url is put in without a url bbocode tags that it will be parsed anyways
    Attached Files
    File Type: php journal.php (72.8 KB, 43 views)

    Close
    )(09/18/04)
  • updated zip and install.txt due to a mistake in functions.php file edit(use the following fix:

    Spoiler (click to open)


    In the file edits for functions.php instead of replacing :
    PHP Code:
    $shutdownqueries['sessionupdate'] = str_replace('###REPLACE###'',inforum = ' intval($foruminfo['forumid']) . ', inthread = ' intval($threadinfo['threadid']) . ', incalendar = ' intval($calendarinfo['calendarid']) . ', badlocation = ' intval($bbuserinfo['badlocation']), $shutdownqueries['sessionupdate']); 
    with:
    PHP Code:
    $shutdownqueries['sessionupdate'] = str_replace('###REPLACE###'',inforum = ' intval($foruminfo['forumid']) . ', ,injournal = ' intval($journalinfo['journal_id']) . ', inthread = ' intval($threadinfo['threadid']) . ', incalendar = ' intval($calendarinfo['calendarid']) . ', badlocation = ' intval($bbuserinfo['badlocation']), $shutdownqueries['sessionupdate']); 
    replace it with this:
    PHP Code:
    $shutdownqueries['sessionupdate'] = str_replace('###REPLACE###'',inforum = ' intval($foruminfo['forumid']) . ', injournal = ' intval($journalinfo['journal_id']) . ', inthread = ' intval($threadinfo['threadid']) . ', incalendar = ' intval($calendarinfo['calendarid']) . ', badlocation = ' intval($bbuserinfo['badlocation']), $shutdownqueries['sessionupdate']); 
    this may solve your problem rambo

    i will update the zip shortly
    Attached Files
    File Type: txt install.txt (83.2 KB, 27 views)

    Close
    )(09/18/04)
  • updated zip and journaladmin.php for moderate entries due to an sql error(use this fix:

    Spoiler (click to open)


    Quote by BitterLittleMan
    I get this error when I click "Moderate Journal Entries" in the ACP. Other than this error, the journal works perfectly.

    In addition, I justed wanted to thank you for this modification. Its beautiful!
    you and everyone is urged to update this!

    i will update zip soon

    upload and overwrite journaladmin.php
    Attached Files
    File Type: php journaladmin.php (18.7 KB, 63 views)

    Close
    )(09/19/04)
  • updated zip and journal.php for beefed up privacy in journals and their entries(use this fix:

    Spoiler (click to open)


    ok due to some complaints in privacy flaws i have hopefully beefed up privacy with some further conditionals and more exclusions such as guests accidentially falling into the whocanview privacy for entries and journals.
    please keep me updated if this new journal.php file fixes the privacy flaws

    i will update the zip soon
    Attached Files
    File Type: php journal.php (73.5 KB, 48 views)

    Close
    )(10/04/04)
  • update zip and journal.php, this fix fixes the permission troubles and mood problems occuring(

    Spoiler (click to open)


    Ok in this fix it fixes the permissions troubles people have been having and also the mood troubles occuring. please overwrite journal_entrybits template with this:

    HTML Code:
    <a name="e$entry[entry_id]"><table class="tborder" cellspacing="$stylevar[cellspacing]" cellpadding="$stylevar[cellpadding]" border="0" align="center" width="100%">
    <tr>
    <td class="thead" align="$stylevar[left]"><div style="float:right"><a href="#e$entry[entry_id]"># $enum</a></div><a href="journal.php?do=showentry&e=$entry[entry_id]">$entry[entrytitle]</a></td>
    </tr>
    <tr>
    <td class="alt1" align="$stylevar[right]"><div class="smallfont">Date Posted: $entry[date] at <span class="time">$entry[time]</span> <if condition="$canview[comments]"><a href="journal.php?do=showcomments&j=$j&e=$entry[entry_id]"></if>Comments ($entry[comments])<if condition="$canview[comments]"></a></if></div></td>
    </tr>
    <tr>
    <td class="alt2" align="$stylevar[left]"><if condition="$show[mood] OR $entry[mood]>0"><div class="smallfont">Mood: <img src="$entry[mood_image]" alt="$entry[mood_name]" /></div><hr /></if>$entry[entrytext]</td>
    </tr>
    <tr>
    <td class="alt1" align="$stylevar[right]"><div style="float:left"><!-- <a href="journal.php?do=report&e=$entry[entry_id]"><img src="$stylevar[imgdir_button]/report.gif" alt="Report This Journal Entry to an Administrator" border="0" /></a> --><if condition="$bbuserinfo[usergroupid]==6"><img src="$stylevar[imgdir_button]/ip.gif" border="0" title="Ip: $entry[ipaddress]" /></if><if condition="$can[comment] AND $canview[comments]"><a href="journal.php?do=showcomments&j=$j&e=$entry[entry_id]"><img src="$stylevar[imgdir_button]/discuss.gif" border="0" alt="Discuss This Entry" /></a></if></div><if condition="($caneditown[entry] AND $bbuserinfo[userid]==$journalinfo[journalist_id]) OR ($bbuserinfo[usergroupid]=='6')"><a href="journal.php?do=editentry&j=$j&e=$entry[entry_id]"><img src="$stylevar[imgdir_button]/edit.gif" border="0" /></a></if><if condition="($candeleteown[entry] AND $bbuserinfo[userid]==$journalinfo[journalist_id]) OR ($bbuserinfo[usergroupid]==6)"><a href="journal.php?do=delete&j=$j&e=$entry[entry_id]&t=e"><img src="$stylevar[imgdir_button]/delete.gif" border="0" /></a></if></td>
    </tr>
    </table></a>
    <br />
    and also upload the attached journal.php and overwrite the old one

    i will update the zip shortly
    Attached Files
    File Type: php journal.php (74.5 KB, 76 views)

    Close
    )(10/23/04)
  • updated zip and journal.php, this fix will provide a new update system which hopefully weeds out any potential problems!(

    Spoiler (click to open)


    Due to a possible problem with updating of the last journal entry field, i have created a new update system

    upload and overwrite the old journal.php with this new one this not a neccessary fix but this is a better way of updating

    I will update zip shortly
    Attached Files
    File Type: php journal.php (74.0 KB, 27 views)

    Close
    )(11/17/04)
  • updated zip and journal.php, fixing some guest loop holes(

    Spoiler (click to open)


    Ok this should fix some of guest loop holes in vB Journal, the other fixes proposed by PaulM i will be fixing

    please upload and overwrite the old journal.php file with this one
    Attached Files
    File Type: php journal.php (74.3 KB, 56 views)

    Close
    )(12/13/04)
  • updated zip and journal.php, fixes possible sql injection problem(

    Spoiler (click to open)


    Ok this update will fix a possible Sql injection problem and all are encouraged to upgrade!!

    To fix this flaw without overwriting find this line in journal.php:
    PHP Code:
                    $DB_site->query("UPDATE ".TABLE_PREFIX."journals 
                    SET lastentry='"
    .$lastentry['entrytitle']."', entrycount=entrycount-1, lastentry_date='".$lastentry['entrydate']."', 
                    lastentry_id='"
    .$lastentry['entry_id']."' 
                    WHERE journal_id='"
    .$j."'
                    "
    ); 
    replace that with:
    PHP Code:
                    $DB_site->query("UPDATE ".TABLE_PREFIX."journals 
                    SET lastentry='"
    .addslashes($lastentry['entrytitle'])."', entrycount=entrycount-1, lastentry_date='".$lastentry['entrydate']."', 
                    lastentry_id='"
    .$lastentry['entry_id']."' 
                    WHERE journal_id='"
    .$j."'
                    "
    ); 
    I will update the zip shortly. I have also attached an updated journal.php
    Attached Files
    File Type: php journal.php (74.3 KB, 21 views)

    Close
    )(3/12/05)
  • updated zip and journal.php, fixes LEFT JOIN typo(

    Spoiler (click to open)


    Somehow an old fix which i thought i did snuck back into the file. anyways here is an updated file which solves ismba's error

    will update zip soon
    Attached Files
    File Type: php journal.php (74.3 KB, 36 views)

    Close
    )(3/23/05)
  • vB Journal Upgraded to v.1.0.1 with many security holes patched.(7/1/05)
  • Security Update: a XSS vulnerability was found within journal.php, to patch this see this post

    Spoiler (click to open)


    Security Update:

    The following XSS Vulnerability was found by KirbyDE on 09/22/05.

    The zip has been updated with the patched journal.php file.

    For those who rather do a manual update simply open journal.php in your favorite text editor and find:
    PHP Code:
    $reccom['coment_text']= htmlspecialchars_uni($reccom['comment_text']); 
    Replace that line with:
    PHP Code:
    $reccom['comment_text']= htmlspecialchars_uni($reccom['comment_text']); 
    Sry for the security hole but even typos can do the darndest things.

    Close
    , the zip has been updated as well.(9/23/05)

Download

This modification is archived and cannot be downloaded.

Addons

  • Ryangel's vB3 Journal -> vBJournal 1.0.0 Importer

Supporters / CoAuthors

  • AN-net

Screenshots

       


vblts.ru supports vBulletin®, 2022-2024