Ciao,
scusami ma ho letto solo adesso il tuo messaggio..
Allora,
se vuoi togliere proprio la possibilità di utilizzare questa funzione prima di tutto fai un backup dei file che ti indico da modificare qui di seguito..
e quindi iniziamo, vai su:
ROOT DEL TUO SITO/COMPONENTS/COM_COMPROFILERApri il file
comprofiler.html.phpe circa alla riga 79 trovi questo codice che devi cancellare fino alla riga 136:
function emailUser($option,$rowFrom,$rowTo) {
global $ueConfig,$_REQUEST,$mosConfig_live_site, $_PLUGINS;
if($rowFrom->id == $rowTo->id) {
echo "<div class=\"contentheading\" >"._UE_NOSELFEMAIL."</div>";
return;
}
HTML_comprofiler::outputMosFormVal();
$_PLUGINS->loadPluginGroup('user');
$results = $_PLUGINS->trigger( 'onBeforeEmailUserForm', array( &$rowFrom, &$rowTo, 1 )); //$ui=1
if ($_PLUGINS->is_errors()) {
echo "<script type=\"text/javascript\">alert(\"".$_PLUGINS->getErrorMSG()."\"); window.history.go(-1); </script>\n";
exit();
}
?>
<div style="text-align:left;">
<div class="contentheading" ><?php echo sprintf(_UE_EMAILFORMTITLE,"<a href=\"".sefRelToAbs( "index.php?option=com_comprofiler&task=UserDetails&user=".$rowTo->id )."\">".getNameFormat($rowTo->name,$rowTo->username,$ueConfig['name_format'])."[/url]"); ?></div>
<form action="<?php echo sefRelToAbs("index.php?option=$option".getCBprofileItemid(true)); ?>" method="post" id="adminForm" name="adminForm" onsubmit="return submitbutton(this)">
<?php echo _UE_EMAILFORMSUBJECT; ?>
<?php
if (is_array($results)) {
echo implode( "
", $results );
}
?>
<input mosReq="1" mosLabel='<?php echo _UE_EMAILFORMSUBJECT; ?>' type="text" class="inputbox" name="emailSubject" size="50" /><?php echo "<img src='".$mosConfig_live_site."/components/com_comprofiler/images/required.gif' width='16' height='16' alt='*' title='"._UE_FIELDREQUIRED."' /> "; ?>
<?php echo _UE_EMAILFORMMESSAGE; ?>
<textarea mosReq="1" mosLabel='<?php echo _UE_EMAILFORMMESSAGE; ?>' class="inputbox" name="emailBody" cols="50" rows="15" ></textarea><?php echo "<img src='".$mosConfig_live_site."/components/com_comprofiler/images/required.gif' width='16' height='16' alt='*' title='"._UE_FIELDREQUIRED."' /> "; ?>
<?php
$warning = _UE_EMAILFORMWARNING;
$results = $_PLUGINS->trigger( 'onAfterEmailUserForm', array( &$rowFrom, &$rowTo, &$warning, 1 )); //$ui=1
if (is_array($results)) {
echo implode( "
", $results );
}
?>
<div><?php echo sprintf( $warning, $rowFrom->email ); ?></div>
<input type="hidden" name="fromID" value="<?php echo $rowFrom->id; ?>" />
<input type="hidden" name="toID" value="<?php echo $rowTo->id; ?>" />
<input type="hidden" name="protect" value="<?php
echo md5("hash".$rowTo->id.$rowTo->password.$rowTo->lastvisitDate.$rowFrom->password.$rowFrom->lastvisitDate); ?>" />
<?php
echo cbGetSpoofInputTag();
echo cbGetAntiSpamInputTag();
?>
<input type="hidden" name="option" value="<?php echo $option; ?>" />
<input type="hidden" name="task" value="sendUserEmail" />
<input type="submit" class="button" value="<?php echo _UE_SENDEMAIL; ?>" />
</form>
</div>
<div style="align:center;">
<?php
echo "<img src='".$mosConfig_live_site."/components/com_comprofiler/images/required.gif' width='16' height='16' alt='*' title='"._UE_FIELDREQUIRED."' /> "._UE_FIELDREQUIRED;
?>
</div>
<?php
}
Dovresti trovare questo codice, nel qual caso le righe del tuo file siano differenti + o - dopo queste righe:
<?php
} // end of php method HTML_comprofiler::outputMosFormVal()e questo codice:
/******************************
Profile Functions
******************************/dopo fai una ricerca sempre nello stesso file e rimuovi tutti questi richiami:
".$emailIMG."Poi apri il file comprofile.php
ed elimina tutte queste porzioni di codici:
Riga 171 circa:
case "emailUser":
case "emailuser":
emailUser($option,$uid);
break;
case "sendUserEmail":
case "senduseremail":
$oldignoreuserabort = ignore_user_abort(true);
sendUserEmail(mosGetParam($_POST,'toID'),mosGetParam($_POST,'fromID'),mosGetParam($_POST,'emailSubject'),mosGetParam($_POST,'emailBody'));
break;function sendUserEmail($toid,$fromid,$subject,$message) {
global $ueConfig,$my, $database, $_POST, $_PLUGINS;;
// simple spoof check security
cbSpoofCheck();
cbAntiSpamCheck();
if (($my->id == 0) || ($my->id != $fromid) || ($ueConfig['allow_email_display']!=1 && $ueConfig['allow_email_display']!=3)) {
mosNotAuth();
return;
}
$spamCheck = cbSpamProtect( $my->id, true );
if ( $spamCheck ) {
echo $spamCheck;
return;
}
$rowFrom = new mosUser( $database );
$rowFrom->load( (int) $fromid );
$rowTo = new mosUser( $database );
$rowTo->load( (int) $toid );
if (isset($_POST["protect"])
&& $_POST["protect"] == md5("hash".$rowTo->id.$rowTo->password.$rowTo->lastvisitDate.$rowFrom->password.$rowFrom->lastvisitDate) ) {
$_PLUGINS->loadPluginGroup('user');
$results = $_PLUGINS->trigger( 'onBeforeEmailUser', array( &$rowFrom, &$rowTo, 1 )); //$ui=1
if ($_PLUGINS->is_errors()) {
echo "<script type=\"text/javascript\">alert(\"".$_PLUGINS->getErrorMSG()."\"); window.history.go(-1); </script>\n";
exit();
}
if (is_array($results)) {
echo implode( "
", $results );
}
$cbNotification = new cbNotification();
$res=$cbNotification->sendUserEmail($toid,$fromid,$subject,$message, true);
if ($res) echo _UE_SENTEMAILSUCCESS;
else echo _UE_SENTEMAILFAILED;
} else {
echo _UE_SESSIONTIMEOUT." "._UE_SENTEMAILFAILED;
}
}
function emailUser($option,$uid) {
global $database,$ueConfig,$my;
if (($my->id == 0) || ($ueConfig['allow_email_display']!=1 && $ueConfig['allow_email_display']!=3)) {
mosNotAuth();
return;
}
$spamCheck = cbSpamProtect( $my->id, false );
if ( $spamCheck ) {
echo $spamCheck;
return;
}
$rowFrom = new mosUser( $database );
$rowFrom->load( $my->id );
$rowTo = new mosUser( $database );
$rowTo->load( (int) $uid );
HTML_comprofiler::emailUser($option,$rowFrom,$rowTo);
}
Fin qui inibisci completamente l'utilizzo di tale menu, resta da cancellare la voce però dal menu:
adesso apri il file cb.menu.php, seguendo il seguente percorso:
ROOT DEL TUO SITO/COMPONENTS/COM_COMPROFILER/PLUGINS/USER/PLUG_CBMENU/CB.MENU.PHPintorno alla riga 858 cancella questa porzione di codice
// Send Email
$emailHtml=getFieldValue('primaryemailaddress',$user->email,$user);
if ($ueConfig['allow_email_display']!=4 && $my->id != $user->id && $my->id > 0) {
switch ($ueConfig['allow_email_display']) {
case 1: // Display Email only
$caption = $emailHtml;
$url = "javascript:void(0);";
$desc = _UE_MENU_USEREMAIL_DESC;
break;
case 2: // Display Email with link:
$caption = null;
$url = $emailHtml;
$desc = _UE_MENU_SENDUSEREMAIL_DESC;
break;
case 3: // Display Email-to text with link to web-form:
$caption = _UE_MENU_SENDUSEREMAIL;
$url = $emailHtml;
$desc = _UE_MENU_SENDUSEREMAIL_DESC;
break;
}
$mi = array(); $mi["_UE_MENU_MESSAGES"]["_UE_MENU_SENDUSEREMAIL"]=null;
$this->menuBar->addObjectItem($mi, $caption, $url, "", "", "", $desc, "");
}così fancendo hai anche tolto la voce dal menu.
Spero ti sia stato d'aiuto.
ciao