Temos pavadinimas: WordPress, Shopify ir PHPFusion programuotojų bendruomenė :: Kaip padaryti tik kad admin galėtu spausti?

Parašė zukke· 2013 Vas. 13 16:02:27
#1

Sveiki, taigi iš reputacijas sistemos perdarinėju į kitą sistemą ir reikia kad kas padėtumėt.
Man reikia kad nariam rodytu tik kaip tekstą o adminas galėtu spausti.

Kodas:

function userreputation($user_id, $post_id="", $type="") {
global $db_prefix;
$result = dbquery("SELECT SUM(IF(type=1,1,-1)) as total FROM ".$db_prefix."reputation WHERE to_id = '$user_id' GROUP BY to_id");
if (dbrows($result) != 0) {
$data = dbarray($result);
$total = $data['total'];
$info = " <a href='lygiai.php?uid=$user_id&pid=$post_id'><font color='".($total<0?"red":($total>0?"green":"black"))."'><b>".($total<=0?"":"")."$total</b></font></a>";
} else {
$info = " <a href='lygiai.php?uid=$user_id&pid=$post_id'><font color='black'><b>0</b></font></a>";
}
return $info;
}

Parašė Scarletas· 2013 Vas. 13 16:02:20
#2

Prašau, peržiūrėti narių reputacijas gali tik administratoriai, o duoti reputaciją nariams visi vartotojai.


function userreputation($user_id, $post_id="", $type="") {
global $db_prefix;
$result = dbquery("SELECT
SUM(IF(type=1,1,-1)) as total FROM ".$db_prefix."reputation WHERE to_id =
'$user_id' GROUP BY to_id");
if (dbrows($result) != 0) {
$data = dbarray($result);
$total = $data['total'];
	if (iADMIN) {
	$info = "<sup><strong>Reputacija:</strong><a style='cursor:help;'
	href='reputation.php?uid=$user_id&pid=$post_id'><font
	color='".($total<0?"red":($total>0?"green":"black"))."'><b>".($total<=0?"":"+")."$total</b></font></a></sup>";
	} else {
	$info = "<sup><strong>Reputacija:</strong><font
	color='".($total<0?"red":($total>0?"green":"black"))."'><b>".($total<=0?"":"+")."$total</b></font></sup>";
	}
} else {
$info = "<sup><strong>Reputacija:</strong><a style='cursor:help;'
href='reputation.php?uid=$user_id&pid=$post_id'><font color='green'> <b>0</b>
Suteikti</font></a></sup>";
}
return $info;
}

Parašė zukke· 2013 Vas. 13 16:02:02
#3

Pagal tavo kodą jei 0 turi tada spaudžiasi o jei daugiau tada nesispaudžia reik kad ir su 0 nesispaustu

Parašė PreFix· 2013 Vas. 13 16:02:51
#4

tai daryk blemba if $total != 0 tada leistų norimą kodą...Sakai perdarinėji nors tokio paprasto dalyko nesugebi parašyt ?|

Parašė zukke· 2013 Vas. 13 19:02:23
#5

PreFix parašė:
tai daryk blemba if $total != 0 tada leistų norimą kodą...Sakai perdarinėji nors tokio paprasto dalyko nesugebi parašyt ?|


gal norėtum pakoreguot kodą? mm? :?

Parašė PreFix· 2013 Vas. 13 19:02:54
#6

Čia tam reikia jau reputation.php failą redaguoti o ne šitą f-ja :)

Parašė Scarletas· 2013 Vas. 13 20:02:28
#7

zukke, tu kalbi apie paspaudimą, kai narys nori duoti kitam nariui reputacijos taškų? Jei taip - tai taip ir turi būti, nes kitu atveju narys negalės suteikti kitam nariui reputacijos.
Narys gavęs 1 reputacijos + ir 1 reputacijos - = 0 (šiuo atveju nesispaus).
Tačiau, jei nori padaryti, kad narys net negalėtų suteikti kitam nariui reputacijos (net negalintis paspausti), tada jie matys forume atvaizduojantį savo ir kitų narių reputaciją.
Jei tau taip reikia - sakyk, pateiksiu kodą.

Parašė zukke· 2013 Vas. 13 21:02:11
#8

Scarletas parašė:
zukke, tu kalbi apie paspaudimą, kai narys nori duoti kitam nariui reputacijos taškų? Jei taip - tai taip ir turi būti, nes kitu atveju narys negalės suteikti kitam nariui reputacijos.
Narys gavęs 1 reputacijos + ir 1 reputacijos - = 0 (šiuo atveju nesispaus).
Tačiau, jei nori padaryti, kad narys net negalėtų suteikti kitam nariui reputacijos (net negalintis paspausti), tada jie matys forume atvaizduojantį savo ir kitų narių reputaciją.
Jei tau taip reikia - sakyk, pateiksiu kodą.


Ne, aš nekalbu apie reputacija, nes iš reputacijos sistemos bandau perdarynėti į lygių sistemą, tai reikia kad tik adminam spaustusi ta nuoroda, o nariam ja rodytu bet neitu spaustis. To ir užtektų

Parašė PreFix· 2013 Vas. 14 08:02:33
#9

uždėk if (iADMIN) kur nori ir rodys tik adminams tą kodo vietą.

Parašė zukke· 2013 Vas. 14 13:02:30
#10

PreFix parašė:
uždėk if (iADMIN) kur nori ir rodys tik adminams tą kodo vietą.


Aš tau sakau jau 3 kartą kad man reikia kad adminam eitų spaust, bet nariam rodytu tą vietą ir neitų spaust jmj.

Parašė Pakartoti slaptažodį· 2013 Vas. 14 14:02:38
#11

Leidžia spaust:
<input type="submit" name="form" value="Siųsti" />


Neleidžia spaust:
<input type="submit" name="form" value="Siųsti" disabled="disabled" />

Parašė acTesT.· 2013 Vas. 14 16:02:31
#12

Jopapa, nejau sunku pasigooglinti...

Įdėk reputation.php kodą, padarysiu...

Parašė zukke· 2013 Vas. 14 16:02:22
#13

<?php
/*---------------------------------------------------+
|
| 2007 (c)
|
| ver. 1.0
|
| skype: Mr.bdZ
| mod site: http://tts.lt/~vln/test/news.php
|
+----------------------------------------------------*/
require_once "../maincore.php";
//require_once INCLUDES."forum_functions_include.php";
require_once THEMES."templates/header.php";
include LOCALE.LOCALESET."forum/main.php";
include INFUSIONS."reputation/infusion_db.php";
error_reporting(E_ALL);

if (file_exists(INFUSIONS."reputation/locale/".$settings['locale'].".php")) {
   include INFUSIONS."reputation/locale/".$settings['locale'].".php";
} else {
   include INFUSIONS."reputation/locale/English.php";
}

if (!isset($_GET['uid']) || !isnum($_GET['uid'])) redirect("index.php");

if (!isset($_GET['pid']) || !isnum($_GET['pid'])) redirect("index.php");

$uid = $_GET['uid'];
$pid = $_GET['pid'];

$udata = dbarray(dbquery("SELECT user_id, user_name, user_posts, user_level FROM ".$db_prefix."users WHERE user_id = '".mysql_escape_string($_GET['uid'])."'"));

# Function
function maxpost() {
   global $db_prefix, $userdata;
   
$rsettings = dbarray(dbquery("SELECT * FROM ".$db_prefix."reputation_settings"));
   $max_post = 0;
   
   if ($rsettings['selecttype'] == 1) {
      if ($userdata['user_level'] == 103) {
         $max_post = $rsettings['max_post_sadm'];
      } else if ($userdata['user_level'] == 102) {
         $max_post = $rsettings['max_post_adm'];
      } else if ($userdata['user_level'] == 101) {
         $max_post = $rsettings['max_posts'];
      }
   } else {
      $forum_post = dbcount("(post_author)", "".$db_prefix."posts", " post_author='".$userdata['user_id']."'");
      
      if ($forum_post > $rsettings['forum_post1'] && $forum_post < $rsettings['forum_post2']) {
         $max_post = 1; #$rsettings['forum_post1'];
      } else if ($forum_post > $rsettings['forum_post2'] && $forum_post < $rsettings['forum_post3']) {
         $max_post = 2; #$rsettings['forum_post2'];
      }else if ($forum_post > $rsettings['forum_post3']) {
         $max_post = 3; #$rsettings['forum_post3'];
      }
   }
   
   return $max_post;
}

function cheakpost($user_id, $post_id) {
   global $db_prefix, $userdata;
   
   $result = dbquery("SELECT * FROM ".$db_prefix."reputation WHERE from_id='".$userdata['user_id']."' AND to_id='$user_id' AND post_id='$post_id'");
   $info = 0;
   if (dbrows($result) != 0) {
      $info = 1;
   }
   return $info;
}

function totalrep($user_id) {
   global $userdata;
   
return dbcount("(reputation_id)", "".DB_REPUTATION."", "from_id='".$userdata['user_id']."' AND to_id='".$user_id."'");
}

function postauthor($user_id, $post_id) {
   global $db_prefix;
   
   $result = dbquery("SELECT * FROM ".$db_prefix."posts WHERE post_id='$post_id' AND post_author='$user_id'");
   
   if (dbrows($result) != 0) {
      return true;
   } else {
      return false;
   }
}

# ADD
opentable($locale['rpm230'].$udata['user_name']);

if (iMEMBER && isset($_POST['addreputation'])) {
   $error = 0; # no errors
   $uid = $_GET['uid'];
   $pid = $_GET['pid'];
   $cangive = false;
   if (isset($_POST['cangive'])) {
      $cangive = true;
   }
   
   if ((cheakpost($uid,$pid) != 0) && (totalrep($uid) < maxpost())) {
      $error = 1; # Can`t give any more rep. for this post
      $cangive = false;
   } else if (totalrep($uid) >= maxpost()) {
      $error = 2; # Rep. limit
      $cangive = false;
   }

   if ($cangive) {
      if (isset($_POST['type'])) {
         if (isnum($_POST['type'])) {
            $type = $_POST['type'];
            $rsettings = dbarray(dbquery("SELECT * FROM ".$db_prefix."reputation_settings"));
            if (!isset ($_POST['message']) or (($_POST['message'] == "") && ($rsettings['discription'] == 1))) {
               $error = 4; # message error
            } else if (postauthor($uid, $pid)) {
               $message = stripinput(censorwords($_POST['message']));
               $addresult = dbquery("
                        INSERT INTO
                           ".$db_prefix."reputation
                              (reputation_id, from_id, to_id, post_id, type, message, datestamp)
                        VALUES
                              ('', '".$userdata['user_id']."', '$uid', '$pid', '$type', '$message', '".time()."')
                        ");
            } else {
               $error = 5; # This post NOT written by this user
            }
         } else {
            $error = 20; # type not NUM
         }
      } else {
         $error = 3; # NO select rep.
      }
   }
   redirect(FUSION_SELF."?uid=$uid&pid=$pid&error=$error", "script");
}

# ADD meniu reputation

if (iMEMBER) {
   $info = "";
   
   $error = 0;
   if(isset($_GET['error']) && isnum($_GET['error'])) $error = $_GET['error'];
   
   if ($userdata['user_id'] == $uid) {
      #edit to user_id
      $info = $locale['rpm210'];
   } else if(!$error) {
      if ((cheakpost($uid,$pid) == 0) && (totalrep($uid) < maxpost()) && postauthor($uid,$pid)) {
         $info = "<form name='inputform' method='post' action='".FUSION_SELF."?uid=$uid&pid=$pid'>
            <table cellpadding='0' cellspacing='1' width='80%' class='tbl-border' align='center'>
               <tr>
                  <td align='center' class='tbl2'><input type='radio' name='type' value='1'> +1 ".$locale['rpm231']." <input type='radio' name='type' value='0'> -1 ".$locale['rpm231']."</td>
               </tr>
               <tr>
                  <td align='center' class='tbl2'><textarea name='message' cols='70' rows='5' class='textbox'></textarea></td>
               </tr>
               <tr>
                  <td align='center' class='tbl2'>
                     <input type='button' value='b' class='button' style='font-weight:bold;width:25px;' onClick=\"addText('message', '', '');\">
                     <input type='button' value='i' class='button' style='font-style:italic;width:25px;' onClick=\"addText('message', '', '');\">
                     <input type='button' value='u' class='button' style='text-decoration:underline;width:25px;' onClick=\"addText('message', '', '');\">
                     <input type='button' value='url' class='button' style='width:30px;' onClick=\"addText('message', '[url]', '[/url]');\">
                     <input type='button' value='mail' class='button' style='width:35px;' onClick=\"addText('message', '[mail]', '[/mail]');\">
                     <input type='button' value='img' class='button' style='width:30px;' onClick=\"addText('message', '[img]', '[/img]');\">
                     <input type='button' value='center' class='button' style='width:45px;' onClick=\"addText('message', '
', '
');\">
                     <input type='button' value='small' class='button' style='width:40px;' onClick=\"addText('message', '', '');\">
                     <input type='button' value='code' class='button' style='width:40px;' onClick=\"addText('message', '
', '


');\">
                     <input type='button' value='quote' class='button' style='width:45px;' onClick=\"addText('message', '
', '
');\">
                  </td>
               </tr>
               <tr>
                  <td align='center' class='tbl2'>".displaysmileys("message")."</td>
               </tr>
               <tr>
                  <td align='center' class='tbl2'>
                     <input type='hidden' name='cangive' value='true' class='button'>
                     <input type='submit' name='addreputation' value='".$locale['rpm241']."' class='button'>
                  </td>
               </tr>
            </table></form>";
      } else if ((cheakpost($uid,$pid) != 0) && (totalrep($uid) < maxpost())) {
         $info = $locale['rpm211'];
      } else if (totalrep($uid) >= maxpost()) {
         $info = $locale['rpm212'].maxpost().$locale['rpm213'];
      } else if (!postauthor($uid,$pid)) {
         $info = "ERROR";
      }
   } else {
      if ($error == 1) {
         $info = "<br>".$locale['rpm211'];
      } else if ($error == 2) {
         $info = "<br>".$locale['rpm221'];
      } else if ($error == 3) {
         $info = "<br>".$locale['rpm222'];
      } else if ($error == 4) {
         $info = "<br>".$locale['rpm223'];
      } else if ($error == 20) {
         $info = "<br>".$locale['rpm224'];
      }
   }
} else {
   $info = "<br>".$locale['rpm214'];
}

echo "<center>".$info."</center>";

closetable();

### SHOW REP.
$result = dbquery("SELECT r.*, u.user_name, u.user_id, p.thread_id, p.forum_id, p.post_id FROM ".$db_prefix."reputation r
               LEFT JOIN ".$db_prefix."users u ON u.user_id = r.from_id
               LEFT JOIN ".$db_prefix."posts p ON p.post_id=r.post_id
               WHERE to_id = '".mysql_escape_string($_GET['uid'])."' ORDER BY r.datestamp DESC");

opentable($locale['rpm232'].$udata['user_name']);

if (dbrows($result) != 0) {
   echo "<br><table cellpadding='0' cellspacing='1' width='100%' class='tbl-border' align='center'>
      <tr class='tbl2' height='50'>
         <td align='center' width='110'><b>".$locale['rpm200']."</b></td>
         <td align='center' width='250'><b>".$locale['rpm201']."</b></td>
      </tr>";
   while ($data = dbarray($result)) {
   
      $message = $data['message'];
      if ($message != "") {
         $message = parsesmileys($message);
         $message = parseubb($message);
         $message = nl2br($message);
      }
      echo "
         <tr class='tbl1' height='40'>
            <td align='center'><a href='".BASEDIR."profile.php?lookup=".$data['user_id']."'>".$data['user_name']."</a></td>
            <td align='center'>$message</td>
         </tr>";
   }
   echo "</table>";
   
   echo "<br><br><center>".$locale['rpm233']."<b>".(dbcount("(to_id)", "".DB_REPUTATION."", " to_id='".$uid."'"))."</b>".$locale['rpm234'];
} else {
   echo "<center><br><br><br>".$locale['rpm217']."<br><br><br>";
}

$data = dbarray(dbquery("SELECT thread_id, forum_id, post_id FROM ".$db_prefix."posts WHERE post_id='$pid'"));

echo "<br><br><a href='".BASEDIR."forum/viewthread.php?forum_id=".$data['forum_id']."&thread_id=".$data['thread_id']."&pid=".$data['post_id']."#post_".$data['post_id']."'>".$locale['rpm240']."</a></center>";
closetable();

require_once THEMES."templates/footer.php";
?>



Redagavo MaFetas· 2013 Vas. 14 16:02:33

Parašė acTesT.· 2013 Vas. 14 17:02:36
#14

Susirandi eilutę <input type='submit' name='addreputation' value='".$locale['rpm241']."' class='button'>

ir padarai


if (iADMIN) {
echo "<input type='submit' name='addreputation' value='".$locale['rpm241']."' class='button'>";
} else {
echo "<input type='submit' name='addreputation' value='".$locale['rpm241']."' class='button'>";
}


nžn ar veikia, gal veiks...

Parašė zukke· 2013 Vas. 14 19:02:24
#15

acTesT. parašė:
Susirandi eilutę <input type='submit' name='addreputation' value='".$locale['rpm241']."' class='button'>

ir padarai


if (iADMIN) {
echo "<input type='submit' name='addreputation' value='".$locale['rpm241']."' class='button'>";
} else {
echo "<input type='submit' name='addreputation' value='".$locale['rpm241']."' class='button'>";
}


nžn ar veikia, gal veiks...


neveikia

Parašė MaFetas· 2013 Vas. 14 19:02:31
#16


if (iADMIN) {
 
echo "<input type='submit' name='addreputation' value='".$locale['rpm241']."' class='button'>";
 
} else {
 
echo "<input type='submit' name='addreputation' value='".$locale['rpm241']."' class='button' disabled='disabled'>";
 
}

Parašė zukke· 2013 Vas. 14 19:02:00
#17

MaFetas parašė:

if (iADMIN) {
 
echo "<input type='submit' name='addreputation' value='".$locale['rpm241']."' class='button'>";
 
} else {
 
echo "<input type='submit' name='addreputation' value='".$locale['rpm241']."' class='button' disabled='disabled'>";
 
}


Neveikia nei tavo variantas :\\

Parašė PreFix· 2013 Vas. 14 22:02:27
#18

pamėgink tiesiog

if (iADMIN) {

echo "<input type='submit' name='addreputation' value='".$locale['rpm241']."' class='button'>";

}

Parašė zukke· 2013 Vas. 15 10:02:44
#19

PreFix parašė:
pamėgink tiesiog

if (iADMIN) {

echo "<input type='submit' name='addreputation' value='".$locale['rpm241']."' class='button'>";

}


nepadėjo :\\

Parašė Pakartoti slaptažodį· 2013 Vas. 15 11:02:18
#20

Tai kas per nesąmonė ten pas tave? Aiškinkit pats, nes visi pateikti būdai yra tinkantys.

Parašė zukke· 2013 Vas. 15 11:02:26
#21

Pakartoti slaptažodį parašė:
Tai kas per nesąmonė ten pas tave? Aiškinkit pats, nes visi pateikti būdai yra tinkantys.

Vališh iš temos jei nemoki, atsiras kas padės ir be tavęs.

Parašė PreFix· 2013 Vas. 15 11:02:17
#22

Man tai atrodo arba tu nemoki nukopijuoti, arba pas tave sugadintas php fusionas ,arba pasenęs.

Redagavo PreFix· 2013 Vas. 15 11:02:35

Parašė zukke· 2013 Vas. 15 11:02:15
#23

PHP Fusion yra naujausia versija!!!!

Šis kodas beveik tinka tik kad kaip būna 0 tada spaudžiasi o kai daugiau nesispaudžia padėkit padaryt kad ir 0 nesispaustų:


function userreputation($user_id, $post_id="", $type="") {
 
global $db_prefix;
 
$result = dbquery("SELECT
 
SUM(IF(type=1,1,-1)) as total FROM ".$db_prefix."reputation WHERE to_id =
 
'$user_id' GROUP BY to_id");
 
if (dbrows($result) != 0) {
 
$data = dbarray($result);
 
$total = $data['total'];
 
	if (iADMIN) {
 
	$info = "<sup><strong>Reputacija:</strong><a style='cursor:help;'
 
	href='reputation.php?uid=$user_id&pid=$post_id'><font
 
	color='".($total<0?"red":($total>0?"green":"black"))."'><b>".($total<=0?"":"+")."$total</b></font></a></sup>";
 
	} else {
 
	$info = "<sup><strong>Reputacija:</strong><font
 
	color='".($total<0?"red":($total>0?"green":"black"))."'><b>".($total<=0?"":"+")."$total</b></font></sup>";
 
	}
 
} else {
 
$info = "<sup><strong>Reputacija:</strong><a style='cursor:help;'
 
href='reputation.php?uid=$user_id&pid=$post_id'><font color='green'> <b>0</b>
 
Suteikti</font></a></sup>";
 
}
 
return $info;
 
}

Parašė PreFix· 2013 Vas. 15 12:02:31
#24

pačiam kodo gale kur yra else ir linkas, nutrink jį.

Parašė Pakartoti slaptažodį· 2013 Vas. 15 12:02:58
#25

zukke parašė:
Vališh iš temos jei nemoki, atsiras kas padės ir be tavęs.

Man atrodo tu vienintelis čia, kuris nieko nemoka. Ir nereikia čia siuntinėt visų.

Parašė zukke· 2013 Vas. 15 12:02:10
#26

Pakartoti slaptažodį parašė:
zukke parašė:
Vališh iš temos jei nemoki, atsiras kas padės ir be tavęs.

Man atrodo tu vienintelis čia, kuris nieko nemoka. Ir nereikia čia siuntinėt visų.


Apie mane nešnekam grybe, nevisus siuntinėju o tik tokius kaip tu.