Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Skrypt Newsow & edytor graficny :o ?
Forum PHP.pl > Forum > Gotowe rozwiązania
Forgoot
Witam mam systemik newsowy oparty o pliki tekstowe i chcialbym aby mial wbudowany edytor graficzny np: http://mike.aplosmedia.com/dev/AplosRTE/test_editor.php biggrin.gif. Oto niektore pliki systemiku biggrin.gif
Plik admin.php (w nim edytuje/usuwam newsy):

[code]
<?
include("functions.php");
$config = confload();
$logged = "false";
session_start();
if(isset($_POST['login'])){ $login = $_POST['login']; }
else{ $login = $_SESSION["login"]; }
if(isset($_POST['pass'])){ $pass = $_POST['pass']; }
else{ $pass = $_SESSION["pass"]; }
$userlist_f = file("users.inc.php");
unset($userlist_f[0]);
unset($userlist_f[count($userlist_f)]);
reset($userlist_f);
$pass_md5 = md5($pass);
while(list($key, $val) = each($userlist_f)){
$expl = explode("||", $val);
$userlist[$expl[0]] = $expl;
if(($expl[1] == $login)&&($expl[2] == $pass_md5)){
 $logged = "true";
 $_SESSION["login"] = $login;
 $_SESSION["pass"] = $pass;
 $loggeduser = $expl;
}

}

$rankname = array(
"0" => "Zawieszony",
"1" => "Moderator",
"2" => "Super Moderator",
"3" => "Newsman",
"4" => "Administrator",
);
if($logged != "true"){
$parse = '
<center><br>
<form action="admin.php" method="post">
<table border="1" style="border-collapse:collapse" bordercolor="#000000" class="light">
<tr>
<td colspan="2" align="center" class="dark">
EasyNews :: Logowanie
</td>
<tr>
<td>Login :</td><td><input type="text" name="login"></td>
</tr>
<tr>
<td>Hasło :</td><td><input type="password" name="pass"></td>
</tr>
<tr>
<td colspan="2"><input type="submit" value="Loguj"></td>
</tr>
</table>
</form>
</center>
';
}
else{
if(($loggeduser[5] == "0")||($loggeduser[5] > "4")){ $parse = "<center><br><b>Witaj, $loggeduser[3]. Niestety jeste&para; zawieszony, i nie masz dostępu do administracji.</b></center>"; }
else{
/* tu startuj&plusmn; funkcje administracji */
 $mod = $_GET['mod'];
 switch($mod){
 default:
  $print_center = "<center><br><br>Witaj, Jeste&para; zalogowany jako $loggeduser[3].<br>Twoja ranga to: ".$rankname["$loggeduser[5]"]."<br>";
  $newsy_user = zlicz_pl($loggeduser[0],"4","||","news.txt");
  $newsy_razem = count(file("news.txt"));
  $print_center.= "Baza zawiera aktualnie $newsy_razem news/y/ów,<br>w tym $newsy_user twoich.<br><br>";
 break;

/* DODAWANIE NEWSA */  
 case add:
 if($loggeduser[5]<2){ $print_center = wiadomosc("Nie masz uprawnień do kożystania z tej funkcji!"); }
 else{
  if($_GET["do"] == "save"){
   $title = $_POST['title'];
   $body = $_POST['body'];

   $title = preg_replace("'<'s", "&lt;", $title);
   $title = preg_replace("'>'s", "&gt;", $title);

   if($_POST['zezwol_html']!="tak"){
    $body = preg_replace("'<'s", "&lt;", $body);
    $body = preg_replace("'>'s", "&gt;", $body);
   }
   $body = stripslashes($body);
   $body = preg_replace("'\n|\r\n|\r'si", "<br>", $body);
   $body = str_replace("|", "\\|", $body);

   $title = stripslashes($title);
   $title = preg_replace("'\n|\r\n|\r'si", "", $title);
   $title = str_replace("|", "\\|", $title);

   $zrodlo = $_POST["zrodlo"];
   if($zrodlo == "brak"){ $zrodlo = "brak"; }

   $obrazek = $_POST["nimg"];
   if($obrazek == ""){ $obrazek = "brak"; }

   $liczba = max_l_plik("0", "||", "news.txt")+1;
 
   $puts = "$liczba||$title||$body||".time()."||$loggeduser[0]||$obrazek||$zrodlo||\n";
   $file = fopen("news.txt", "a+");
   flock($file, 2);
   fputs($file, $puts);
   flock($file, 3);
   fclose($file);

   $file = fopen("komentarze/$liczba", "w");
   fputs($file, "");
   fclose($file);

   $print_center = wiadomosc("News został dodany.<br>[<a href=admin.php>powrót do indexu administracji</a>]");
  }
  else{
   $print_center = formularz();
  }
 }
 break;

/* ZARZ&middot;DZANIE MEWSAMI */
 case manage:
  if($_GET["mode"]=="show"){
   $print_center = "<center><br>[<a href=admin.php?mod=manage&mode=hide>ukryj skrót newsa</a>]<br><br>";
  }
  else{
   $print_center = "<center><br>[<a href=admin.php?mod=manage&mode=show>pokaż skrót newsa</a>]<br><br>";
  }
  $newsfile = file("news.txt");
  $count = count($newsfile)-1;

  $print_center.= '<table width="98%" border="1" bordercolor="#000000" style="border-collapse:collapse">';
  for($i=$count;$i>=0;$i--){
   $expl = explode("||", $newsfile[$i]);
   if(($loggeduser[5]!="2")||($loggeduser[0] == $expl[4])){
    if(strlen($expl[1])>50){ $expl[1] = substr($expl[1], 0, 50)."..."; }
    $data = date("d.m.Y H:i", $expl[3]);
    if($i%2 == 0){ $color_class="light"; } else { $color_class="dark"; };
    $print_center.="<tr class=\"$color_class\"><td>> <b>$expl[1]</b></td><td align=\"center\">". $userlist[$expl[4]][3] ."</td><td align=\"center\"> $data</td>";
    if($loggeduser[5]!=1){
     $print_center.= "<td align=\"center\">[<a href=admin.php?mod=edit&no=$expl[0]>edytuj</a>]</td><td align=\"center\">[<a href=admin.php?mod=del&no=$expl[0]>usuń</a>]</td>";
    }
    if(file_exists("komentarze/$expl[0]")){
     $komfile = @file("komentarze/$expl[0]");
     $kom_count = count($komfile);
    }
    else{ $kom_count = 0; }
    if($kom_count<1){
     $print_center.= "<td align=\"center\">[komentarze (0)]</td>";
    }
    else{
     $print_center.= "<td align=\"center\">[<a href=admin.php?mod=manage_kom&no=$expl[0]>komentarze ($kom_count)</a>]</td>";
    }
    $print_center.= "</tr>";

    if($_GET["mode"] == "show"){
     $expl[2] = stripslashes($expl[2]);
     $expl[2] = preg_replace("'\\|\\|'s", "||", $expl[2]);

     $expl[1] = stripslashes($expl[1]);
     $expl[1] = preg_replace("'\\|\\|'s", "||", $expl[1]);

     $body = ps_substr($expl[2], "70", "...");
     $body = pscode($body);
     if($config["emoty_news"] == "tak"){
      $body = emots($body, ".");
     }
     $print_center.= "<tr class=\"$color_class\"><td colspan=6>$body</td></tr><tr class=\"$color_class\"><td height=5 colspan=6></td></tr>";
    }
   }
  }
  $print_center.= "</table><br></center>";

 break;

/* EDYCJA NEWSA */
 case edit:
  $newsfile = file("news.txt");
  reset($newsfile);

  if($_GET["do"] == "save"){
   $file = fopen("news.txt", "w");
   flock($file, 2);
   foreach($newsfile as $val){
    $val = preg_replace("'\r|\n|\r\n'si", "", $val);
    $expl = explode("||", $val);
    $puts = "$expl[0]||$expl[1]||$expl[2]||$expl[3]||$expl[4]||$expl[5]||$expl[6]||\n";
    if($expl[0] == $_POST["no"]){
     if(($loggeduser[5]!="2")||($loggeduser[0] == $expl[4])){
      $title = $_POST['title'];
      $body = $_POST['body'];
      $title = preg_replace("'<'s", "&lt;", $title);
      $title = preg_replace("'>'s", "&gt;", $title);

      if($_POST['zezwol_html']!="tak"){
       $body = preg_replace("'<'s", "&lt;", $body);
       $body = preg_replace("'>'s", "&gt;", $body);
      }
      $body = stripslashes($body);
      $body = preg_replace("'\n|\r\n|\r'si", "<br>", $body);
      $body = str_replace("|", "\\|", $body);

      $title = stripslashes($title);
      $title = preg_replace("'\r|\n|\r\n'si", "", $title);
      $title = str_replace("|", "\\|", $title);

      $zrodlo = $_POST["zrodlo"];
      if($zrodlo == ""){ $zrodlo = "brak"; }

      $obrazek = $_POST["nimg"];
      if($obrazek == ""){ $obrazek = "brak"; }
   
      $puts = "$expl[0]||$title||$body||$expl[3]||$expl[4]||$obrazek||$zrodlo||\n";
      $print_center = wiadomosc("News został zmodyfikowany.<br>[<a href=admin.php>wróć do indexu administracji</a>]");
     }
     else{
      $print_center = wiadomosc("Nie masz uprawnień do modyfikacji tego newsa!<br>[<a href=admin.php>wróć do indexu administracji</a>]");
     }
    }

    fputs($file, $puts);
   }
   flock($file, 3);
   fclose($file);

  }


  else{
   foreach($newsfile as $val){
    $expl = explode("||", $val);
    if($expl[0] == $_GET["no"]){
     if(($loggeduser[5]!="2")||($loggeduser[0] == $expl[4])){
      $expl[2] = stripslashes($expl[2]);
      $expl[2] = preg_replace("'<br>'s", "\n", $expl[2]);
      $expl[2] = preg_replace("'\\|\\|'s", "||", $expl[2]);

      $expl[1] = stripslashes($expl[1]);
      $expl[1] = preg_replace("'\\|\\|'s", "||", $expl[1]);
      $print_center = formularz("edit", "zapisz", $expl[1], $expl[2],$_GET["no"], $expl[5], $expl[6]);
     }
     else{
      $print_center = wiadomosc("Nie masz uprawnień do modyfikacji tego newsa!<br>[<a href=admin.php>wróć do indexu administracji</a>]");
     }
    }
   }
  }
 
 break;

/* USUWANIE NEWSA */
 case del:
  $newsfile = file("news.txt");
  reset($newsfile);

  if($_GET["confirm"] == "yes"){
   $file = fopen("news.txt", "w");
   flock($file, 2);
   foreach($newsfile as $val){
    $val = preg_replace("'\r|\n|\r\n'si", "", $val);
    $expl = explode("||", $val);
    $puts = "$expl[0]||$expl[1]||$expl[2]||$expl[3]||$expl[4]||$expl[5]||$expl[6]||\n";
    if($expl[0] == $_GET["no"]){
     if(($loggeduser[5]!="2")||($loggeduser[0] == $expl[4])){
      $puts="";
      $print_center = wiadomosc("News został usunięty.<br>[<a href=admin.php>wróć do indexu administracji</a>]");
     }
     else{
      $print_center = wiadomosc("Nie masz uprawnień do usunięcia tego newsa!<br>[<a href=admin.php>wróć do indexu administracji</a>]");
     }
    }

    fputs($file, $puts);
   }
   flock($file, 3);
   fclose($file);

   unlink("komentarze/".$_GET["no"]);

  }


  else{
   foreach($newsfile as $val){
    $expl = explode("||", $val);
    if($expl[0] == $_GET["no"]){
     if(($loggeduser[5]!="2")||($loggeduser[0] == $expl[4])){
      $print_center = wiadomosc("$expl[1]<br><br>Czy chcesz usun&plusmn;ć tego newsa?<br>[<a href=admin.php?mod=del&confirm=yes&no=".$_GET["no"].">tak</a>] [<a href=admin.php>nie</a>]");
     }
     else{
      $print_center = wiadomosc("Nie masz uprawnień do usunięcia tego newsa!<br>[<a href=admin.php>wróć do indexu administracji</a>]");
     }
    }
   }
  }
 
 break;

/* ZARZ&middot;DZANIE KOMENTARZAMI */
 case manage_kom:
  $newsfile = file("news.txt");
  reset($newsfile);
  foreach($newsfile as $val){
   $expl = explode("||", $val);
   if($expl[0] == $_GET["no"]){
    if(($loggeduser[5]!="2")||($loggeduser[0] == $expl[4])){
     $komfile = file("komentarze/".$_GET["no"]);
     $ilekomentarzy = count($komfile);
     if($ilekomentarzy<1){ $print_center.= wiadomosc("Do tego newsa nie dodano jeszcze żadnego komentarza.<br>[<a href=\"admin.php\">wróć do indexu administracji</a>]"); }
     else{
      $print_center = '<center><br>Komentarze do newsa <b>'.$expl[1].'</b>:<br><br><table width="98%" border="1" bordercolor="#000000" style="border-collapse:collapse">';
      $komfile = array_reverse($komfile);
      reset($komfile);
      $i=0;
      foreach($komfile as $kom){
       $kom = explode("||",$kom);
       if(strlen($kom[1])>40){ $kom[1] = substr($kom[1], 0, 40)."..."; }

       $kom[2] = stripslashes($kom[2]);
       $kom[2] = preg_replace("'\\|\\|'s", "||", $kom[2]);

       $kom[1] = stripslashes($kom[1]);
       $kom[1] = preg_replace("'\\|\\|'s", "||", $kom[1]);
       $kom[1] = str_replace("<br>", " ", $kom[1]);

       $data = date("d.m.Y, H:i", $kom[4]);

       if($i%2 == 0){ $color_class="light"; } else { $color_class="dark"; };
       $print_center.= "<tr class=\"$color_class\"><td>$kom[1]</td><td align=center>$kom[2] (<a href=\"mailto:$kom[3]\">$kom[3]</a>)</td>";
       if($loggeduser[5] == "4"){ $print_center.= "<td align=center><a href=\"admin.php?mod=ban_add&ip=$kom[5]\">$kom[5]</a></td>"; }
       else{ $print_center.= "<td align=center>$kom[5]</td>"; }
       $print_center.= "<td align=center>$data</td><td align=center>[<a href=admin.php?mod=edit_kom&no=".$_GET["no"]."&kom_no=$kom[0]>edytuj</a>]</td><td align=center>[<a href=admin.php?mod=del_kom&no=".$_GET["no"]."&kom_no=$kom[0]>usuń</a>]</td></tr>";
       $i++;
      }
      $print_center.= "</table><br></center>";
     }
    }
   }
  }

 break;

/* EDYCJA KOMENTARZA */
 case edit_kom:
  $newsfile = file("news.txt");
  reset($newsfile);
  foreach($newsfile as $val){
   $expl = explode("||", $val);
   if($expl[0] == $_GET["no"]){
    if(($loggeduser[5]!="2")||($loggeduser[0] == $expl[4])){
     $komfile = file("komentarze/".$_GET["no"]);
     if($_GET["do"] == "save"){
      $kom_autor = $_POST["kom_autor"];
      $kom_email = $_POST["kom_email"];
      $komentarz = $_POST["komentarz"];
      $kom_autor = strip_tags($kom_autor);
      $kom_email = strip_tags($kom_email);
      $komentarz = strip_tags($komentarz);
      $kom_autor = preg_replace("'\r|\n|\r\n'si", "", $kom_autor);
      $kom_email = preg_replace("'\r|\n|\r\n'si", "", $kom_email);
      $komentarz = preg_replace("'\r|\n|\r\n'si", "<br>", $komentarz);       $kom_autor = str_replace("|", "\\|", $kom_autor);
      $kom_email = str_replace("|", "\\|", $kom_email);
      $komentarz = str_replace("|", "\\|", $komentarz);
      reset($komfile);
      $file = fopen("komentarze/".$_GET["no"], "w");
      flock($file,2);
      foreach($komfile as $kom){
       $kom = explode("||",$kom);
       if($kom[0] == $_GET["kom_no"]){
        $puts = "$expl[0]||$komentarz||$kom_autor||$kom_email||$kom[4]||$kom[5]||\n";
        $print_center = wiadomosc("Komentarz został zmieniony.<br>[<a href=admin.php>wróć do indexu administracji</a>]");
       }
       else{
        $puts = "$kom[0]||$kom[1]||$kom[2]||$kom[3]||$kom[4]||$kom[5]||\n";
       }
       fputs($file, $puts);
      }
      flock($file,3);
      fclose($file);
     }
     else{
      reset($komfile);
      foreach($komfile as $kom){
       $kom = explode("||",$kom);
       if($kom[0] == $_GET["kom_no"]){
        $kom[2] = stripslashes($kom[2]);
        $kom[2] = preg_replace("'\\|\\|'s", "||", $kom[2]);

        $kom[2] = str_replace("<br>", "\n", $kom[2]);

        $kom[1] = stripslashes($kom[1]);
        $kom[1] = preg_replace("'\\|\\|'s", "||", $kom[1]);

        $print_center = "<center><table border=0><tr><td><form name=formularz action=admin.php?mod=edit_kom&do=save&no=".$_GET["no"]."&kom_no=".$_GET["kom_no"]." method=post>Autor:<br><input type=text name=kom_autor value=\"$kom[2]\" style=\"width:374\"><br>Email:<br><input type=text name=kom_email value=\"$kom[3]\" style=\"width:374\"><br>Komentarz:<br>";
        if($config["emoty_kom"] == "tak"){ $print_center.= "<table cellspacing=0 cellpadding=2 class=tblemots width=374><tr><td><center>".list_emots(".","komentarz")."</center></td></tr></table>"; }
        $print_center.= "<textarea name=komentarz style=\"width:374; height:250\">$kom[1]</textarea><br><br><input type=submit value=\"zapisz\"><br></form></td></tr></table></center>";
       }
      }
     }
    }
   }
  }


 break;

/* USUWANIE KOMENTARZA */
 case del_kom:
  $newsfile = file("news.txt");
  reset($newsfile);
  foreach($newsfile as $val){
   $expl = explode("||", $val);
   if($expl[0] == $_GET["no"]){
    if(($loggeduser[5]!="2")||($loggeduser[0] == $expl[4])){
     $komfile = file("komentarze/".$_GET["no"]);
     if($_GET["confirm"] == "yes"){
      reset($komfile);
      $file = fopen("komentarze/".$_GET["no"], "w");
      flock($file,2);
      foreach($komfile as $kom){
       $kom = explode("||",$kom);
       if($kom[0] == $_GET["kom_no"]){
        $print_center = wiadomosc("Komentarz został usunięty.<br>[<a href=admin.php>wróć do indexu administracji</a>]");
       }
       else{
        $puts = "$kom[0]||$kom[1]||$kom[2]||$kom[3]||$kom[4]||$kom[5]||\n";
        fputs($file, $puts);
       }
      }
      flock($file,3);
      fclose($file);
     }
     else{
      reset($komfile);
      foreach($komfile as $kom){
       $kom = explode("||",$kom);
       if($kom[0] == $_GET["kom_no"]){
        $kom[2] = stripslashes($kom[2]);
        $kom[2] = preg_replace("'\\|\\|'s", "||", $kom[2]);

        $kom[1] = stripslashes($kom[1]);
        $kom[1] = preg_replace("'\\|\\|'s", "||", $kom[1]);

        if(strlen($kom[1])>40){ $kom[1] = substr($kom[1], 0, 40)."..."; }

        $print_center = wiadomosc("Czy jeste&para; pewien, że chcesz usun&plusmn;ć komentarz<br><b>$kom[1]</b><br>do newsa<br><b>$expl[1]</b><br>dodany przez <b>$kom[2]</b>?<br>[<a href=admin.php?mod=del_kom&confirm=yes&no=".$_GET["no"]."&kom_no=".$_GET["kom_no"].">tak</a>] [<a href=admin.php>nie</a>]");
       }
      }
     }
    }
   }
  }




 break;

/* ZARZ&middot;DZANIE USERAMI */
 case manage_users:
 if($loggeduser[5]!="4"){ $print_center = wiadomosc("Nie masz uprawnień do kożystania z tej funkcji!"); }
 else{
  $print_center.= '<center><br>[<a href=admin.php?mod=add_user>dodaj usera</a>]<br><br><table width="98%" border="1" bordercolor="#000000" style="border-collapse:collapse">';
  $userslist = file("users.inc.php");
  unset($userslist[0]);
  unset($userslist[count($userslist)]);
  reset($userslist);
  foreach($userslist as $user){
   if($color_class == "light"){ $color_class = "dark"; } else { $color_class = "light"; }
   $user = explode("||", $user);
   $print_center.= "<tr class=\"$color_class\"><td align=\"center\">$user[0]</td><td align=\"center\">$user[1]</td><td align=\"center\">$user[3]</td><td align=\"center\">$user[4]</td><td align=\"center\">".$rankname["$user[5]"]."</td><td align=\"center\">[<a href=admin.php?mod=edit_user&no=$user[0]>edytuj</a>]</td><td align=\"center\">";
   if($user[0] == $loggeduser[0]){ $print_center.= "[usuń]"; }
   else{ $print_center.= "[<a href=admin.php?mod=del_user&no=$user[0]>usuń</a>]"; }
   $print_center.= "</td></tr>";
  }
  $print_center.= "</table><br></center>";
 }
 break;

/* DODAWANIE USERA */
 case add_user:
 if($loggeduser[5]!="4"){ $print_center = wiadomosc("Nie masz uprawnień do kożystania z tej funkcji!"); }
 else{
  if($_GET["do"]=="save"){
   $nu_pass = md5($_POST["nu_pass"]);
   $nu_pass_conf = md5($_POST["nu_pass_conf"]);
   if(check_userform($_POST["nu_login"], $nu_pass, $nu_pass_conf, $_POST["nu_podpis"])!="true"){
    $print_center.= wiadomosc(check_userform($_POST["nu_login"], $nu_pass, $nu_pass_conf, $_POST["nu_podpis"]));
   }
   else{
    $numer = max_l_plik("0", "||", "users.inc.php")+1;
   
    $userslist = file("users.inc.php");
    unset($userslist[0]);
    unset($userslist[count($userslist)]);
    reset($userslist);
   
    $file = fopen("users.inc.php", "w");
    flock($file, 2);
    fputs($file, '<? /*'."\n");
    foreach($userslist as $user){
     fputs($file, $user);
    }
    fputs($file, "$numer||".$_POST["nu_login"]."||$nu_pass||".$_POST["nu_podpis"]."||".$_POST["nu_mail"]."||".$_POST["nu_ranga"]."||\n".'*/ ?>');
    flock($file, 3);
    fclose($file);
    $print_center = wiadomosc("Użytkownik o loginie $nu_login został dodany.<br>[<a href=admin.php>wróć do indexu administracji</a>]");
   }
  }
  else{
   $print_center = "<form action=admin.php?mod=add_user&do=save method=POST>
    <center><table border=\"0\">
    <tr><td>login:</td><td><input type=text name=nu_login></td></tr>
    <tr><td>hasło:</td><td><input type=text name=nu_pass></td></tr>
    <tr><td>hasło (powt):</td><td><input type=text name=nu_pass_conf></td></tr>
    <tr><td>email:</td><td><input type=text name=nu_mail></td></tr>
    <tr><td>podpis:</td><td><input type=text name=nu_podpis></td></tr>
    <tr><td>ranga:</td><td><select name=nu_ranga>
   ";
   reset($rankname);
   while(list($key, $val) = each($rankname)){
    $print_center.= "<option value=$key>$val</option>";
   }
   $print_center.= "
    </select></td></tr>
    <tr><td colspan=2><input type=submit value=\"dodaj\"></td></tr>
    </table></center>
    </form>
   ";
  }
 }
 break;

/* EDYCJA USERA */
 case edit_user:
 if($loggeduser[5]!="4"){ $print_center = wiadomosc("Nie masz uprawnień do kożystania z tej funkcji!"); }
 else{
  $usersfile = file("users.inc.php");
  unset($usersfile[0]);
  unset($usersfile[count($usersfile)]);
  reset($usersfile);

  if($_GET["do"]=="save"){
   if(check_userform($_POST["nu_login"], $nu_pass, $nu_pass_conf, $_POST["nu_podpis"], $_POST["no"])!="true"){
    $print_center.= wiadomosc(check_userform($_POST["nu_login"], $nu_pass, $nu_pass_conf, $_POST["nu_podpis"]));
   }
   else{
    $file = fopen("users.inc.php", "w");
    flock($file, 2);
    fputs($file, '<? /*'."\n");
    foreach($usersfile as $user){
     $user = explode("||", $user);
     if($user[0] == $_POST["no"]){
      if($_POST["passchange"]=="yes"){
       $nu_pass = md5($_POST["nu_pass"]);
       $puts = "$user[0]||".$_POST["nu_login"]."||$nu_pass||".$_POST["nu_podpis"]."||".$_POST["nu_mail"]."||".$_POST["nu_ranga"]."||\n";
      }
      else{
       $puts = "$user[0]||".$_POST["nu_login"]."||$user[2]||".$_POST["nu_podpis"]."||".$_POST["nu_mail"]."||".$_POST["nu_ranga"]."||\n";
      }
      $print_center = wiadomosc("Dane użytkownika zostały zmienione. Je&para;li edytowałe&para; swój profil, konieczne może być ponowne zalogowanie.<br>[<a href=admin.php>wróć do indexu administracji</a>]");
     }
     else{
      $puts = "$user[0]||$user[1]||$user[2]||$user[3]||$user[4]||$user[5]||\n";
     }
     fputs($file, $puts);

    }
    fputs($file, '*/ ?>');
    flock($file, 3);
    fclose($file);
   }
 
  }
  else{
   foreach($usersfile as $user){
    $user = explode("||", $user);
    if($user[0] == $_GET["no"]){
     $print_center = "
      <form action=admin.php?mod=edit_user&do=save method=POST name=formularz>
      <input type=hidden name=no value=$user[0]>
      <center><table border=\"0\">
      <tr><td>login:</td><td><input type=text name=nu_login value=\"$user[1]\"></td></tr>
      <script language=javascript>
      function hid(){
      if(formularz.passchange.checked){
      formularz.nu_pass.disabled = false;
      formularz.nu_pass_conf.disabled = false;
      formularz.nu_pass.style.border=\"1px solid black\";
      formularz.nu_pass_conf.style.border=\"1px solid black\";
      }
      else{
      formularz.nu_pass.disabled = true;
      formularz.nu_pass_conf.disabled = true;
      formularz.nu_pass.style.border=\"1px solid silver\";
      formularz.nu_pass_conf.style.border=\"1px solid silver\";
      }
      }
      </script>
      <tr><td></td><td><input type=checkbox name=passchange value=yes onclick=\"hid()\"> zmień hasło</td></tr>
      <tr><td>hasło:</td><td><input type=text name=nu_pass value=\"\" disabled style='border:1px solid silver'></td></tr>
      <tr><td>hasło (powt):</td><td><input type=text name=nu_pass_conf value=\"\" disabled style='border:1px solid silver'></td></tr>
      <tr><td>email:</td><td><input type=text name=nu_mail value=\"$user[4]\"></td></tr>
      <tr><td>podpis:</td><td><input type=text name=nu_podpis value=\"$user[3]\"></td></tr>
      <tr><td>ranga:</td><td><select name=nu_ranga>
     ";
     reset($rankname);
     while(list($key, $val) = each($rankname)){
      if($key == $user[5]){ $print_center.= "<option value=$key selected>$val</option>"; }
      else{ $print_center.= "<option value=$key>$val</option>"; }
     }
     $print_center.= "
      </select></td></tr>
      <tr><td colspan=2><input type=submit value=\"zapisz\"></td></tr>
      </table></center>
      </form>
     ";
    }
   }
  }

 }
 break;

/* USUWANIE USERA */
 case del_user:
 if($loggeduser[5]!="4"){ $print_center = wiadomosc("Nie masz uprawnień do kożystania z tej funkcji!"); }
 elseif($loggeduser[0] == $_GET["no"]){ $print_center.= wiadomosc("Nie możesz usun&plusmn;ć profilu użytkownika, na którym jeste&para; zalogowany. Aby usun&plusmn;ć ten profil, wyloguj się i zaloguj ponownie na innym koncie administratora.<br>[<a href=admin.php>powrót do indexu administracji</a>]"); }
 else{
  $usersfile = file("users.inc.php");
  unset($usersfile[0]);
  unset($usersfile[count($usersfile)]);
  reset($usersfile);

  if($_GET["confirm"] == "yes"){
   $file = fopen("users.inc.php", "w");
   flock($file, 2);
   fputs($file, '<? /*'."\n");

   foreach($usersfile as $user){
    $user = explode("||", $user);
    if($user[0] != $_GET["no"]){
     $puts = "$user[0]||$user[1]||$user[2]||$user[3]||$user[4]||$user[5]||\n";
     fputs($file, $puts);
    }
    else{
     $print_center = wiadomosc("Użytkownik o loginie $user[1] został usunięty.<br>[<a href=admin.php>wróć do indexu administracji</a>]");
    }
   }
   fputs($file, '*/ ?>');

   flock($file, 3);
   fclose($file);
  }
  else{
   foreach($usersfile as $user){
    $user = explode("||", $user);
    if($user[0] == $_GET["no"]){
     $print_center = wiadomosc("Czy chcesz usun&plusmn;ć użytkownika o loginie $user[1]?<br>[<a href=admin.php?mod=del_user&confirm=yes&no=".$_GET["no"].">tak</a>] [<a href=admin.php>nie</a>]");
    }
   }
  }
 }
 break;

/* ZMIANA KONFIGURACJI */
 case config:
 if($loggeduser[5]!="4"){ $print_center = wiadomosc("Nie masz uprawnień do kożystania z tej funkcji!"); }
 else{
  if($_GET["do"]=="save"){
   $conffile = file("config.inc.php");
   unset($conffile[0]);
   unset($conffile[count($conffile)]);
   $file = fopen("config.inc.php", "w");
   flock($file, 2);
   fputs($file, '<? /*'."\n");
   reset($conffile);
   if($_POST["config_stronicowac"]!="tak"){ $_POST["config_stronicowanie"] = "off"; }
   if($_POST["config_skracac"]!="tak"){ $_POST["config_skracanie"] = "off"; }
   if($_POST["config_nimgs"]!="tak"){ $_POST["config_nimgs_align"] = $config["nimgs_align"]; $_POST["config_nimgs"] = "off"; }
   reset($conffile);
   foreach($conffile as $confline){
    $confline = explode("||", $confline);
    $puts = "$confline[0]||".$_POST["config_$confline[0]"]."||\n";
    fputs($file, $puts);
   }
   fputs($file, '*/ ?>');
   flock($file, 3);
   fclose($file);
   $print_center = wiadomosc("Konfiguracja została zachowana.<br>[<a href=admin.php>wróć do indexu administracji</a>]");
  }
  else{
   $print_center.= form_konf($config);
  }
 }
 break;

/* EDYCJA WYGL&middot;DU */
 case edit_tpl:
  $filename = "templates/".$config["template"]."/".$_GET["tpl"].".html";
  if($_GET["do"]=="save"){
   if(file_exists($filename)){
    $puts = $_POST["tplfilezaw"];
    $puts = stripslashes($puts);
    $file = fopen($filename, "w");
    flock($file, 2);
    fputs($file, $puts);
    flock($file, 3);
    fclose($file);
    $print_center = wiadomosc("Zmiany w pliku ".$_GET["tpl"].".html zostały zapisane.<br>[<a href=admin.php>wróć do indexu administracji</a>]");
   }
  }
  else{
   $print_center = "<center><br>Edytuj szablon: <a href=admin.php?mod=edit_tpl&tpl=news>News</a> || <a href=admin.php?mod=edit_tpl&tpl=komentarz>Komentarz</a> || <a href=admin.php?mod=edit_tpl&tpl=wiadomosc>Okno wiadomo&para;ci</a><br>";
   switch($_GET["tpl"]){
   default:
    $print_center.= wiadomosc("Wybierz z powyższej listy jeden z dostępnych plików do edycji.");
    $no_disp = "yes";
   break;
   case news:
    $zmienne = "{TYTUL}, {NEWS}, {AUTOR}, {EMAIL}, {DATA}, {KOMENTARZE}, {ILEKOMENTARZY}, {ZRODLO}, {SKOMENTUJ}";
   break;
   case komentarz:
    $zmienne = "{KOMENTARZ}, {AUTOR}, {EMAIL}, {DATA}";
   break;
   case wiadomosc:
    $zmienne = "{WIADOMOSC}";
   break;
   }
   if($no_disp!="yes"){
    $file = fopen($filename, "r");
    $zaw = fread($file, filesize($filename));
    fclose($file);
    $print_center.= "<form action=admin.php?mod=edit_tpl&tpl=".$_GET["tpl"]."&do=save method=post>Edycja pliku ".$_GET["tpl"].".html<br>Dostępne zmienne: $zmienne<br><textarea name=tplfilezaw style=\"width:600; height:350\">$zaw</textarea><br><input type=submit value=\"zapisz\"></form>";
   }

  }
 break;

/* LISTA ZBANOWANYCH IP */
 case ban:
 if($loggeduser[5]!=4){ $print_center = wiadomosc("Nie masz uprawnień do kożystania z tej funkcji."); }
 else{
  $banfile = file("ban.txt");
  if(count($banfile)<1){ $print_center = wiadomosc("Lista zbanowanych jest pusta.<br><a href=admin.php?mod=ban_add>dodaj IP do listy</a>"); }
  else{
   $print_center = "<center><br>[<a href=admin.php?mod=ban_add>dodaj IP do listy</a>]<br><br><table width=200 border=1 bordercolor=\"#000000\" style=\"border-collapse:collapse\">";
   reset($banfile);
   foreach($banfile as $ban){
    $ban = explode("||", $ban);
    if($color_class == "light"){ $color_class = "dark"; } else { $color_class = "light"; }
    $print_center.= "<tr class=\"$color_class\"><td align=center>$ban[0]</td><td align=center>[<a href=admin.php?mod=ban_del&ip=$ban[0]>usuń z listy</a>]</td></tr>";
   }
   $print_center.= "</table><br></center>";
  }
 }
 break;

/* BANOWANIE */
 case ban_add:
 if($loggeduser[5]!=4){ $print_center = wiadomosc("Nie masz uprawnień do kożystania z tej funkcji."); }
 else{
  if($_GET["do"]=="save"){
   $file = fopen("ban.txt", "a+");
   flock($file, 2);
   fputs($file, $_POST["ip"]."||\n");
   flock($file, 3);
   fclose($file);
   $print_center = wiadomosc("IP <b>".$_POST["ip"]."</b> zostało dodane do listy zbanowanych. Osoby o tym IP nie mog&plusmn; teraz dodawać komentarzy do newsów.<br>[<a href=admin.php>wróć do indexu administracji</a>]");
  }
  else{
   $print_center = "<form action=admin.php?mod=ban_add&do=save method=post><center><br><br>Podaj numer IP do zbanowania:<br><input type=text name=ip value=\"".$_GET["ip"]."\"><br><input type=submit value=\"dodaj\"></center></form>";
  }
 }
 break;

/* USUWANIE Z LISTY ZBANOWANYCH */
 case ban_del:
 if($loggeduser[5]!=4){ $print_center = wiadomosc("Nie masz uprawnień do kożystania z tej funkcji."); }
 else{
  if($_GET["confirm"]=="yes"){
   $banfile = file("ban.txt");
   reset($banfile);
   $file = fopen("ban.txt", "w");
   flock($file, 2);
   foreach($banfile as $ban){
    $ban = explode("||",$ban);
    if($ban[0] == $_GET["ip"]){
     $print_center = wiadomosc("IP ".$_GET["ip"]." zostało usunięte z listy zbanowanych.<br>[<a href=admin.php>wróć do indexu administracji</a>]");
    }
    else{
     fputs($file, "$ban[0]||\n");
    }
   }
   flock($file, 3);
   fclose($file);
  }
  else{
   $print_center = wiadomosc("Czy jeste&para; pewien, że chcesz usun&plusmn;ć IP ".$_GET["ip"]." z listy zbanowanych?<br>[<a href=\"admin.php?mod=ban_del&confirm=yes&ip=".$_GET["ip"]."\">tak</a>] [<a href=admin.php>nie</a>]");
  }
 }
 break;

/* WYLOGOWANIE */
 case logout:
  $_SESSION = array();
  session_destroy();
  $print_center = wiadomosc("Wylogowano użytkownika $loggeduser[3].<br>[<a href=admin.php>zaloguj ponownie</a>]<META HTTP-EQUIV=\"Refresh\" CONTENT=\"5; URL=admin.php\">");
 break;
 }


/* przygotowanie do wy&para;wietlania */

$menu = '<a href="admin.php?mod=manage">zarz&plusmn;dzaj newsami/komentarzami</a>';
if($loggeduser[5] > "1"){ $menu.= '  || <a href="admin.php?mod=add">dodaj news\'a</a>'; }
if($loggeduser[5] == "4"){ $menu.= '  || <a href="admin.php?mod=manage_users">zarz&plusmn;dzaj użytkownikami</a> || <a href="admin.php?mod=config">konfiguracja</a> || <a href="admin.php?mod=edit_tpl">wygl&plusmn;d</a> || <a href="admin.php?mod=ban">banowanie</a>'; }

 
ganimedes
Chodzi Ci chyba o htmlarea, proshe http://www.htmlarea.com po angielsku ale łatwy do zagnieżdrzenia w na stronie.

Pozdrawiam
Forgoot
OK, ale jak ten edytor zintegrowac z skryptem news'ow ?
ganimedes
Jak ściągnełeś htmlarea to czytasz readme.html, a do tego masz prosty przykład example.html. Powinieneś sobie poradzić smile.gif Ale jak coś to daj znać na gg biggrin.gif

Regards
miszqa
forgot jesli mieszkasz w suwalkach zglos sie do mnie lol tongue.gif
Forgoot
Dzieki miszqa za chec pomocy, ale juz sobie daaawno poradzilem winksmiley.jpg
Speedy
Ech... też chciałem sobie coś takiego zrobić...
Niestety przykład z http://www.htmlarea.com mimo, iż jest całkiem fajny , to się sypie :/ . Działa on tylko w IE . Niedziała natomiast w NN, Opera, Firefox, więc jest dość marny...

Przykład z http://mike.aplosmedia.com/dev/AplosRTE/test_editor.php działa w najbardziej popularnych przeglądarkach, ale po ściągnięciu tego i próbie uruchomienia , skrypt wyrzuca błędy w JS :/ . Czy wie ktoś może jak to poprawić ? Albo czy istnieją jeszcze jakieś alternatywne skrypty tego typu ?
W sumie można to żywcem skopiować ze strony, zamiast bawić się w jakieś poprawianie tego , co jest w downloadzie, pozmieniać ścieżki, ale później trzeba ten cały bałagan wyrzucony przez przeglądarkę ogarniać...

Pozdrawiam.
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2024 Invision Power Services, Inc.