292971
tom
Re: Autologin for Xoops 2.0.x
  • 2003/6/19 0:55

  • tom

  • Friend of XOOPS

  • Posts: 1359

  • Since: 2002/9/21


Wicked work, although I won't personaly use it, I expect some will, you should make it a news post.

I would like to see the Devs include this as part of the core, as I'm always reluctant to use modifications unless they are core, because when the next release is made this may not be compatible, or at least I would then need to re-code everything back in.

If the devs make it core, can we have the options from admin to chose when we want it to expire, and even chose by groups who we want to allow this feature too.... that would be cool.

Any way good work keep it up my friend.



292972
AndreyRa
X2 NewBB: QuickReply Form
  • 2003/6/18 23:49

  • AndreyRa

  • Just popping in

  • Posts: 17

  • Since: 2003/3/16


This and other hacks available to download here: Some useful hacks

X2 NewBB: QuickReply Form.

Tested with XOOPS 2.0.2, 2.0.3.

File: modules/newbb/viewtopic.php, line 251, after $key1 = $eachpost->postid();:
Quote:

//Begin: QuickReply Hack
$post_id=$key1;
//End: QuickReply Hack


line 309, after foreach ( $postsArray as $eachpost ) {:
Quote:

//Begin: QuickReply Hack
$post_id=$eachpost->postid();
//End: QuickReply Hack


and pre-last line of viewtopic.php, before include XOOPS_ROOT_PATH.'/footer.php';:
Quote:

//Begin: QuickReply Hack
if (!empty($post_id)){
$sql = "SELECT forum_type, forum_name, forum_access, allow_html, allow_sig, posts_per_page, hot_threshold, topics_per_page FROM ".$xoopsDB->prefix("bb_forums")." WHERE forum_id = $forum";
if ( !$result = $xoopsDB->query($sql) ) {
} else {
$forumdata = $xoopsDB->fetchArray($result);
$myts =& MyTextSanitizer::getInstance();
if ( $forumdata['forum_type'] == 1 ) {
$accesserror = 0; //initialize
if ( $xoopsUser ) {
if ( !$xoopsUser->isAdmin($xoopsModule->mid()) ) {
if ( !check_priv_forum_auth($xoopsUser->uid(), $forum, true) ) {$accesserror = 1;};
};
} else {$accesserror = 1;};
} else {
$accesserror = 0;
if ( $forumdata['forum_access'] == 3 ) {
if ( $xoopsUser ) {
if ( !$xoopsUser->isAdmin($xoopsModule->mid()) ) {
if ( !is_moderator($forum, $xoopsUser->uid()) ) {$accesserror = 1;};
};
} else {$accesserror = 1;};
} elseif ( $forumdata['forum_access'] == 1 && !$xoopsUser ) {$accesserror = 1;};
};
if ( $accesserror != 1 ) {
include_once 'class/class.forumposts.php';
$forumpost = new ForumPosts($post_id);
$r_message = $forumpost->text();
$r_date = formatTimestamp($forumpost->posttime());
$r_name = ($forumpost->uid() != 0) ? XoopsUser::getUnameFromId($forumpost->uid()) : $xoopsConfig['anonymous'];
$r_content = _MD_BY." ".$r_name." "._MD_ON." ".$r_date."

";
$r_content.= $r_message;
$r_subject = $forumpost->subject();
if (!preg_match("/^Re:/i",$r_subject)) {$qa['subject'] = 'Re: '.$myts->htmlSpecialChars($r_subject);} else {$qa['subject'] = $myts->htmlSpecialChars($r_subject);};
$q_message = $forumpost->text("Quotes");
$hidden = "["."quote]\n";
$hidden .= sprintf(_MD_USERWROTE,$r_name);
$hidden .= "\n".$q_message."["."/quote]";
$message = "";
$pid = $post_id;
unset($post_id);
$topic_id = $forumpost->topic();
$forum = $forumpost->forum();
$isreply =1;
$istopic = 0;
include_once XOOPS_ROOT_PATH."/class/xoopslists.php";
include XOOPS_ROOT_PATH."/include/xoopscodes.php";

$lists = new XoopsLists;
$filelist = $lists->getSubjectsList();

$count = 1;
$qa['icons_list'] = '';
while ( list($key, $file) = each($filelist) ) {
$checked = "";
if ( isset($icon) && $file==$icon ) {$checked = " checked='checked'";}
$qa['icons_list'].=" ";
$qa['icons_list'].=" ";
if ( $count == 8 ) {
$qa['icons_list'].="
";
$count = 0;
};
$count++;
};

ob_start();
xoopsCodeTarea("message");

if ( !empty($isreply) && isset($hidden) && $hidden != "" ) {
echo "";
echo "
 ";
}
xoopsSmilies("message");
$qa['message_area']=ob_get_contents();
ob_clean();

//-- Options
if ( $xoopsUser && $forumdata['forum_access'] == 2 && !empty($post_id) ) {
echo " if ( isset($noname) && $noname ) {
echo " checked='checked'";
};
echo " /> "._MD_POSTANONLY."
\n";
};

echo " if ( isset($nosmiley) && $nosmiley ) {
echo " checked='checked'";
};
echo " /> "._MD_DISABLESMILEY."
\n";

if ( $forumdata['allow_html'] ) {
echo " if ( $nohtml ) {
echo " checked='checked'";
};
echo " /> "._MD_DISABLEHTML."
\n";
} else {
echo "";
};

if ( $forumdata['allow_sig'] && $xoopsUser ) {
echo " if (isset($HTTP_POST_VARS['contents_preview'])) {
if ( $attachsig ) {
echo " checked='checked' /> ";
} else {
echo " /> ";
};
} else {
if ($xoopsUser->getVar('attachsig') || !empty($attachsig)) {
echo " checked='checked' /> ";
} else {
echo "/> ";
};
};

echo _MD_ATTACHSIG."
\n";
};

if (!empty($xoopsUser) && !empty($xoopsModuleConfig['notification_enabled'])) {
echo "";
echo " // Check previous subscribed status...
$notification_handler =& xoops_gethandler('notification');
if (!empty($topic_id) && $notification_handler->isSubscribed('thread', $topic_id, 'new_post', $xoopsModule->getVar('mid'), $xoopsUser->getVar('uid'))) {
echo ' checked="checked"';
};
echo " /> "._MD_NEWPOSTNOTIFY."
\n";
};
$qa['options_area']=ob_get_contents();
ob_clean();
//--Ñàáìèò è õèääåíû
$post_id = isset($post_id) ? intval($post_id) : '';
$topic_id = isset($topic_id) ? intval($topic_id) : '';
$order = isset($order) ? intval($order) : '';
$pid = isset($pid) ? intval($pid) : 0;

echo "





 
} else {
echo "viewforum.php?forum=".intval($forum)."\"'";
};
echo " class='formButton' value='"._MD_CANCELPOST."' />";
$qa['submit_area']=ob_get_contents();
ob_end_clean();

$xoopsTpl->assign("qa",$qa);
};
};
};
//Begin: QuickReply Hack


4. Goto Control Panel->Administration->Template Editor->Forum->newbb_viewtopic_flat.html (and newbb_viewtopic_thread.html)
insert there you like, closer to end (for example before <{include file='db:system_notification_select.html'}>):
Quote:









<{$qa.icons_list}>
<{$qa.message_area}>
<{$qa.options_area}>
<{$qa.submit_area}>



That's all.

PS. Ðóññêóþ âåðñèþ õàêà - ÷èòàéòå íà xoops.ru



292973
AndreyRa
Autologin for Xoops 2.0.x
  • 2003/6/18 23:29

  • AndreyRa

  • Just popping in

  • Posts: 17

  • Since: 2003/3/16


This and other hacks available to download here: Some useful hacks

Tested with XOOPS 2.0RC3 (please read comments at 2nd step), 2.0.2, 2.0.3.

All line numbers based on XOOPS 2.0.3.

1. File: include/common.php, line 128
after // ############## Login a user with a valid session ##############
*updated:Quote:

//Begin: Autologin hack
if ((empty($HTTP_SESSION_VARS['xoopsUserId'])) && (!empty($HTTP_COOKIE_VARS['al_pass'])&&(!empty($HTTP_COOKIE_VARS['al_uid'])))) {
$al_uid=$HTTP_COOKIE_VARS['al_uid'];
$pass=trim($HTTP_COOKIE_VARS['al_pass']);
$member_handler =& xoops_gethandler('member');
$user =& $member_handler->getUser($al_uid);
if (is_object($user)) {
$uname= $user->getVar('uname');
} else {
unset($uname);
};
unset($user);
$myts =& MyTextsanitizer::getInstance();
$user =& $member_handler->loginUser(addslashes($myts->stripSlashesGPC($uname)), addslashes($myts->stripSlashesGPC($pass)),true);
if ($user != false){
setcookie('al_pass', $pass, time()+86400*100,'/','',0);
setcookie('al_uid',$user->uid(),time()+86400*100,'/','',0);
$user->setVar('last_login', time());
if (session_id()==''){session_destroy(); session_start();};
$HTTP_SESSION_VARS = array();
$HTTP_SESSION_VARS['xoopsUserId'] = $user->getVar('uid');
$HTTP_SESSION_VARS['xoopsUserGroups'] = $user->getGroups();
if ($xoopsConfig['use_mysession'] && $xoopsConfig['session_name'] != '') {
setcookie($xoopsConfig['session_name'], session_id(), time()+$xoopsConfig['session_expire'], '/', '', 0);
$HTTP_COOKIE_VARS[$xoopsConfig['session_name']]=session_id();
}
$user_theme = $user->getVar('theme');
if (in_array($user_theme, $xoopsConfig['theme_set_allowed'])) {
$HTTP_SESSION_VARS['xoopsUserTheme'] = $user_theme;
}

};
};
//End: Autologin Hack


2. File: kernel/member.php, line 320, replacement for function loginUser:
for ver. 2.0.2 & 2.0.3 (maybe above)
Quote:

//Begin: Autologin hack
function &loginUser($uname, $pwd, $al_login = false)
{
$criteria = new CriteriaCompo(new Criteria('uname', $uname));
if (!$al_login){$mypwd=md5($pwd);} else {$mypwd=$pwd;};
$criteria->add(new Criteria('pass', $mypwd));
$user =& $this->_uHandler->getObjects($criteria, false);
if (!$user || count($user) != 1) {
return false;
}
return $user[0];
}
//End: Autologin hack


...for ver. 2.0RC3:
Quote:

//Begin: Autologin hack
function &loginUser($uname, $pwd, $al_login = false)
{
$criteria = new CriteriaCompo(new Criteria('uname', $uname));
$criteria->add(new Criteria('pass', $pwd));
$user =& $this->_uHandler->getObjects($criteria, false);
if (!$user || count($user) != 1) {
return false;
}
return $user[0];
}
//End: Autologin hack


3.File: include/checklogin.php, line 46, after line if (false != $user) {:
*updated:Quote:

//Begin: Autologin hack
if (!empty($HTTP_POST_VARS['union_al'])&&($HTTP_POST_VARS['union_al']=='Yes')){
setcookie('al_pass', md5($pass), time()+86400*100,'/','',0);
setcookie('al_uid',$user->uid(),time()+86400*100,'/','',0);
};
//End: Autologin hack


4. File: /user.php, line 73, after line session_destroy();:
*updated:Quote:

//Begin: Autologin hack
setcookie('al_pass', '', time()-33600,'/','',0);
setcookie('al_uname', '', time()-33600,'/','',0);
setcookie('al_uid', '', time()-3600,'/','',0);
//End: Autologin hack


5. Goto Control Panel->Administration->Template Editor->Sytem->system_block_login.html (Edit) and add this there:
<input type="checkbox" name="union_al" value="Yes">Remember password<br>


That's all.

By default it mean 100-days autologin. If you want more - just replace all '100' nums by count of days that you want.

Password stored as md5 hash. No open-text password here.
Username stored as ID.

-- Changed 2003-06-21, 17:20 (GMT+4)
Changed al_uname to al_uid, and other code interconnected with it.


PS. Ðóññêóþ âåðñèþ õàêà - ÷èòàéòå íà xoops.ru



292974
Hober
Re: Ecal fixes
  • 2003/6/18 22:13

  • Hober

  • Just popping in

  • Posts: 40

  • Since: 2003/6/13


I'm still working out a few, but when I'm done I'll make sure to put it all online.



292975
hsalazar
Re: Item-Specific Page Titles in News, wfsection
  • 2003/6/18 15:27

  • hsalazar

  • Just popping in

  • Posts: 78

  • Since: 2003/2/6 1


BelaS:

I'd also like to be able to include the story headline in the title. So far I haven't figured a way, and the reason is the page title is set in the file theme.html, while the story headline get retrieved until you click on a story link. I guess the logic would be to put an IF statement in the title tags, but I'm not sure it can be done this way... I'll keep trying, and perhaps a wiser fellow can help us...

Happy Xoopsing!



292976
BelaS
Item-Specific Page Titles in News, wfsection
  • 2003/6/18 14:33

  • BelaS

  • Just popping in

  • Posts: 62

  • Since: 2003/5/26


Hi folks,

I'd like to have the page titles of individual news and wfsection items reflect the title of that specific item, rather than merely the title of the XOOPS module.

e.g. for a news story on my site, http://www.internetadsales.com, the page title currently reads only "The Latest" (the Module title) rather than "The Latest: Google Launches AdSense for Small Publishers" (the title of a specific article). Are there any hacks or expanded News modules that can do that?

Much obliged!

Bela
InternetAdSales.com



292977
Digiegirl
Re: desperately need help tracking and banning trolls.
  • 2003/6/18 1:47

  • Digiegirl

  • Just popping in

  • Posts: 44

  • Since: 2002/8/23


I just had someone sign up using a pornographic avatar then posting a pornographic piture on the forums.

I deleted the account, but would like to stop them signing up again or accessing the site.

What is the best way to go about this?

I'm unsure if I should block the ip as I don't want to accidently block other users. I got the ip from the who's online block, more link.

Any ideas?

Cheers,
Dee



292978
cmsuser
Re: convert phpnuke to xoops
  • 2003/6/17 22:25

  • cmsuser

  • Friend of XOOPS

  • Posts: 14

  • Since: 2003/6/15


this is the file to use. you might have better luck.

http://www.xoops.sytes.net/modules/mydownloads/singlefile.php?lid=408



292979
ozp11
Re: convert phpnuke to xoops
  • 2003/6/17 17:12

  • ozp11

  • Just popping in

  • Posts: 74

  • Since: 2003/6/2 1


I'm very interested in upgrading phpnuke and old postnuke to xoops.

I dont have a clue about how to do this.




292980
josecruz
Re: phpESP for XOOPS?
  • 2003/6/17 15:44

  • josecruz

  • Just popping in

  • Posts: 68

  • Since: 2003/3/28


That's great wjue

If you need help in any way (japanese language files, or maybe beta testing) tell me and I'll do my best.

Jose







Login

Who's Online

303 user(s) are online (110 user(s) are browsing Support Forums)


Members: 0


Guests: 303


more...

Donat-O-Meter

Stats
Goal: $100.00
Due Date: Aug 31
Gross Amount: $0.00
Net Balance: $0.00
Left to go: $100.00
Make donations with PayPal!

Latest GitHub Commits