maj.world

maj.world

Git

This blob has been accessed 408 times via Git panel.

  1. <?php
  2.  
  3. session_start();
  4.  
  5. header("Cache-control: private");
  6.  
  7. error_reporting(E_ERROR);
  8.  
  9. if (isset($_SESSION['logged_in']) and ($_SESSION['user_agent'] != $_SERVER['HTTP_USER_AGENT'])) {
  10.         header("Location: login.php");
  11. }
  12.  
  13. if (get_magic_quotes_gpc()) {
  14.         function stripslashes_array($data) {
  15.                 if (is_array($data)) {
  16.                         foreach ($data as $key => $value) {
  17.                                 $data[$key] = stripslashes_array($value);
  18.                         }
  19.                         return $data;
  20.                 }
  21.                 else {
  22.                         return stripslashes($data);
  23.                 }
  24.         }
  25.         $_REQUEST = stripslashes_array($_REQUEST);
  26. }
  27.  
  28. $login_username = file_get_contents("data/username.txt");
  29.  
  30. if (isset($_POST['title_input']) and isset($_POST['body_input'])) {
  31.         header("Location: edit.php?entry={$_REQUEST['entry']}");
  32. }
  33.  
  34. if (!isset($_REQUEST['entry'])) {
  35.         exit();
  36. }
  37.  
  38. if (!file_exists("data/items/{$_REQUEST['entry']}")) {
  39.         exit();
  40. }
  41.  
  42. if (!isset($_SESSION['logged_in'])) {
  43.         exit();
  44. }
  45.  
  46. $do = 0;
  47.  
  48. if (file_exists("data/members/active/{$_SESSION['logged_in']}/rw.txt") and file_exists("data/wiki.txt") and (file_exists("data/items/{$_REQUEST['entry']}/edit.txt") or (file_get_contents("data/items/{$_REQUEST['entry']}/author.txt") == $_SESSION['logged_in']))) {
  49.         $do = 1;
  50. }
  51.  
  52. if (file_exists("data/items/{$_REQUEST['entry']}/lock.txt")) {
  53.         $do = 0;
  54. }
  55.  
  56. if ($_SESSION['logged_in'] == $login_username) {
  57.         $do = 1;
  58. }
  59.  
  60. if ($do == 0) {
  61.         exit();
  62. }
  63.  
  64. function rmdirr($recurse_dirname) {
  65.  
  66.     if (!file_exists($recurse_dirname)) {
  67.         return false;
  68.     }
  69.  
  70.     if (is_file($recurse_dirname)) {
  71.         return unlink($recurse_dirname);
  72.     }
  73.  
  74.     $recurse_dir = dir($recurse_dirname);
  75.     while (false !== $recurse_entry = $recurse_dir->read()) {
  76.  
  77.         if ($recurse_entry == '.' || $recurse_entry == '..') {
  78.             continue;
  79.         }
  80.  
  81.         rmdirr("$recurse_dirname/$recurse_entry");
  82.     }
  83.  
  84.     $recurse_dir->close();
  85.     return rmdir($recurse_dirname);
  86. }
  87.  
  88. function entry2date($f_entry) {
  89.  
  90.         $f_entry_year = substr($f_entry,0,4);
  91.         $f_entry_month = substr($f_entry,4,2);
  92.         $f_entry_day = substr($f_entry,6,2);
  93.         $f_entry_hour = substr($f_entry,8,2);
  94.         $f_entry_min = substr($f_entry,10,2);
  95.         $f_entry_sec = substr($f_entry,12,2);
  96.  
  97.         echo date("l, M j, Y, g:i A",mktime($f_entry_hour,$f_entry_min,$f_entry_sec,$f_entry_month,$f_entry_day,$f_entry_year));
  98. }
  99.  
  100. $title_file = "data/items/{$_REQUEST['entry']}/title.txt";
  101. $body_file = "data/items/{$_REQUEST['entry']}/body.txt";
  102. $date_file = "data/items/{$_REQUEST['entry']}/date.txt";
  103. $img_file = "data/items/{$_REQUEST['entry']}/image.txt";
  104. $revisions_file = "data/items/{$_REQUEST['entry']}/revisions.txt";
  105.  
  106. function return_bytes($val) {
  107.         $val = trim($val);
  108.         $last = $val{strlen($val)-1};
  109.    
  110.         switch($last) {
  111.                 case 'k':
  112.                 case 'K':
  113.                         return (int) $val * 1024;
  114.                         break;
  115.                 case 'm':
  116.                 case 'M':
  117.                         return (int) $val * 1048576;
  118.                         break;
  119.                 default:
  120.                         return $val;
  121.         }
  122. }
  123.  
  124. $server_upload_max_filesize = return_bytes(ini_get('upload_max_filesize'));
  125. $server_post_max_size = return_bytes(ini_get('post_max_size'));
  126. $server_memory_limit = return_bytes(ini_get('memory_limit'));
  127.  
  128. $max_file_size = $server_upload_max_filesize;
  129.  
  130. if ($server_upload_max_filesize > $server_post_max_size) {
  131.         $max_file_size = $server_post_max_size;
  132. }
  133.  
  134. if ($server_post_max_size > $server_memory_limit) {
  135.         $max_file_size = $server_memory_limit;
  136. }
  137.  
  138. ?>
  139.  
  140. <title>Edit</title>
  141.  
  142. <style>
  143.  
  144. body {
  145.         color: #666666;
  146.         margin: 10px;
  147.         padding: 0px;
  148.         text-align: left;
  149.         font-family: <?php
  150.                                 if (file_exists("data/fonts/body.txt")) {
  151.                                         $font_body = file_get_contents("data/fonts/body.txt");
  152.                                         echo "{$font_body},";
  153.                                 }
  154.         ?> arial, helvetica, sans-serif;
  155.         background-color: #ffffff;
  156. }
  157.  
  158. p, td {
  159.         font-size: 11px;
  160. }
  161.  
  162. a {
  163.         font-weight: bold;
  164.         text-decoration: none;
  165. }
  166.  
  167. a:link, a:visited {
  168.         color: #666666;
  169. }
  170.  
  171. a:hover {
  172.         color: #336699;
  173. }
  174.  
  175. a:active {
  176.         color: #336699;
  177. }
  178.  
  179. .input_title {  
  180.         color: #666666;
  181.         background: #ffffff;
  182.         border: #999999 solid 1px;
  183.         width: 525px;
  184.         font-family: <?php
  185.                                 if (file_exists("data/fonts/panel-title.txt")) {
  186.                                         $font_panel_title = file_get_contents("data/fonts/panel-title.txt");
  187.                                         echo "{$font_panel_title},";
  188.                                 }
  189.         ?> arial, helvetica, sans-serif;
  190.         font-size: 11px;
  191.         font-weight: bold
  192. }
  193.  
  194. .input_body {  
  195.         color: #666666;
  196.         background: #ffffff;
  197.         border: #999999 solid 1px;
  198.         width: 525px;
  199.         font-family: <?php
  200.                                 if (file_exists("data/fonts/panel-body.txt")) {
  201.                                         $font_panel_body = file_get_contents("data/fonts/panel-body.txt");
  202.                                         echo "{$font_panel_body},";
  203.                                 }
  204.         ?> arial, helvetica, sans-serif;
  205.         font-size: 11px
  206. }
  207.  
  208. #panel_title {
  209.         font-family: <?php
  210.                                 if (file_exists("data/fonts/panel-title.txt")) {
  211.                                         $font_panel_title = file_get_contents("data/fonts/panel-title.txt");
  212.                                         echo "{$font_panel_title},";
  213.                                 }
  214.         ?> arial, helvetica, sans-serif;
  215.         font-size: 12px;
  216.         font-weight: bold;
  217.         color: #666666;
  218.         padding: 5px 5px 5px 5px;
  219.         background-color: #ffffff;
  220.         margin: 0px;
  221.         border-color: #cccccc;
  222.         border-width: 1px 1px 0px 1px;
  223.         border-style: solid solid none solid;
  224. }
  225.  
  226. #panel_body {
  227.         font-family: <?php
  228.                                 if (file_exists("data/fonts/panel-body.txt")) {
  229.                                         $font_panel_body = file_get_contents("data/fonts/panel-body.txt");
  230.                                         echo "{$font_panel_body},";
  231.                                 }
  232.         ?> arial, helvetica, sans-serif;
  233.         font-size: 11px;
  234.         color: #666666;
  235.         padding: 5px 5px 5px 5px;
  236.         background-color: #ffffff;
  237.         margin: 0px;
  238.         border-color: #cccccc;
  239.         border-width: 1px 1px 1px 1px;
  240.         border-style: solid solid solid solid;
  241. }
  242.  
  243. #panel_footer {
  244.         font-family: <?php
  245.                                 if (file_exists("data/fonts/panel-footer.txt")) {
  246.                                         $font_panel_footer = file_get_contents("data/fonts/panel-footer.txt");
  247.                                         echo "{$font_panel_footer},";
  248.                                 }
  249.         ?> arial, helvetica, sans-serif;
  250.         font-size: 11px;
  251.         color: #666666;
  252.         padding: 5px 5px 5px 5px;
  253.         background-color: #ffffff;
  254.         margin: 0px;
  255.         border-color: #cccccc;
  256.         border-width: 0px 1px 1px 1px;
  257.         border-style: none solid solid solid;
  258. }
  259.  
  260. .input_cat {    
  261.         color: #666666;
  262.         background: #ffffff;
  263.         border: #999999 solid 1px;
  264.         width: 40px;
  265.         font-family: <?php
  266.                                 if (file_exists("data/fonts/panel-body.txt")) {
  267.                                         $font_panel_body = file_get_contents("data/fonts/panel-body.txt");
  268.                                         echo "{$font_panel_body},";
  269.                                 }
  270.         ?> arial, helvetica, sans-serif;
  271.         font-size: 11px
  272. }
  273.  
  274. <?php if (file_exists("data/css.txt")) { readfile("data/css.txt"); } ?>
  275.  
  276. </style>
  277.  
  278. <?php
  279.  
  280. if (isset($_POST['auth_member']) and !empty($_POST['auth_member']) and isset($_POST['auth_toggle']) and !empty($_POST['auth_toggle'])) {
  281.        
  282.         if (($_POST['auth_toggle'] == "ack") and file_exists("data/members/active/{$_POST['auth_member']}")) {
  283.  
  284.                 if (!file_exists("data/items/{$_REQUEST['entry']}/members")) {
  285.                         mkdir("data/items/{$_REQUEST['entry']}/members");
  286.                 }
  287.  
  288.                 if (!file_exists("data/items/{$_REQUEST['entry']}/members/{$_POST['auth_member']}")) {
  289.                         mkdir("data/items/{$_REQUEST['entry']}/members/{$_POST['auth_member']}");
  290.                 }
  291.  
  292.                 if (!file_exists("data/items/{$_REQUEST['entry']}/imembers")) {
  293.                         mkdir("data/items/{$_REQUEST['entry']}/imembers");
  294.                 }
  295.  
  296.                 if (!file_exists("data/items/{$_REQUEST['entry']}/imembers/{$_POST['auth_member']}")) {
  297.                         mkdir("data/items/{$_REQUEST['entry']}/imembers/{$_POST['auth_member']}");
  298.                 }
  299.         }
  300.  
  301.         if (($_POST['auth_toggle'] == "nak") and file_exists("data/members/active/{$_POST['auth_member']}")) {
  302.  
  303.                 if (file_exists("data/items/{$_REQUEST['entry']}/members/{$_POST['auth_member']}")) {
  304.                         rmdirr("data/items/{$_REQUEST['entry']}/members/{$_POST['auth_member']}");
  305.                 }
  306.  
  307.                 if (file_exists("data/items/{$_REQUEST['entry']}/imembers/{$_POST['auth_member']}")) {
  308.                         rmdirr("data/items/{$_REQUEST['entry']}/imembers/{$_POST['auth_member']}");
  309.                 }
  310.         }
  311. }
  312.  
  313. if (isset($_POST['category']) and !empty($_POST['category'])) {
  314.  
  315.         if (file_exists("data/categories/{$_REQUEST['category']}/members")) {
  316.  
  317.                 if ($dh_cat_members = opendir("data/categories/{$_REQUEST['category']}/members")) {
  318.                
  319.                         while (($get_cat_member = readdir($dh_cat_members)) !== false) {
  320.                
  321.                                 if ($get_cat_member != "." && $get_cat_member != "..") {
  322.  
  323.                                         if (file_exists("data/members/active/$get_cat_member")) {
  324.                                                 $get_cat_members[] = $get_cat_member;                                  
  325.                                         }
  326.                                         else {
  327.                                                 rmdirr("data/categories/{$_REQUEST['category']}/members/$get_cat_member");
  328.                                         }
  329.                                 }
  330.                         }
  331.                         closedir($dh_cat_members);
  332.                 }
  333.         }
  334.  
  335.         if (($_POST['do'] == "unfile") and file_exists("data/items/{$_REQUEST['entry']}/categories/{$_REQUEST['category']}")) {
  336.  
  337.                 rmdirr("data/items/{$_REQUEST['entry']}/categories/{$_REQUEST['category']}");
  338.  
  339.                 if (count(glob("data/items/{$_REQUEST['entry']}/categories/*")) < 1) {
  340.                         rmdirr("data/items/{$_REQUEST['entry']}/categories");
  341.                 }
  342.  
  343.                 if (file_exists("data/categories")) {
  344.  
  345.                         if ($dh_get_categories = opendir("data/categories")) {
  346.                
  347.                                 while (($get_category = readdir($dh_get_categories)) !== false) {
  348.                
  349.                                         if ($get_category != "." && $get_category != "..") {
  350.                                                 $get_categories[] = $get_category;
  351.                                         }
  352.                                 }
  353.                                 closedir($dh_get_categories);
  354.                         }
  355.  
  356.                         foreach ($get_cat_members as $get_cat_mem) {
  357.  
  358.                                 $count_mem = 0;
  359.  
  360.                                 foreach ($get_categories as $get_category) {
  361.  
  362.                                         if (file_exists("data/categories/$get_category/members/$get_cat_mem") and ($_REQUEST['category'] != $get_category) and file_exists("data/items/{$_REQUEST['entry']}/categories/$get_category")) {
  363.                                                 $count_mem = $count_mem + 1;
  364.                                         }
  365.                                 }
  366.  
  367.                                 if (($count_mem < 1) and !file_exists("data/items/{$_REQUEST['entry']}/imembers/$get_cat_mem")) {
  368.                                         rmdirr("data/items/{$_REQUEST['entry']}/members/$get_cat_mem");
  369.                                 }
  370.                         }
  371.  
  372.                 }
  373.         }
  374.  
  375.         if (($_POST['do'] == "file") and !file_exists("data/items/{$_REQUEST['entry']}/categories/{$_REQUEST['category']}")) {
  376.  
  377.                 if (!file_exists("data/items/{$_REQUEST['entry']}/categories")) {
  378.                         mkdir("data/items/{$_REQUEST['entry']}/categories");
  379.                 }
  380.  
  381.                 mkdir("data/items/{$_REQUEST['entry']}/categories/{$_REQUEST['category']}");
  382.  
  383.                 foreach ($get_cat_members as $get_cat_mem) {
  384.  
  385.                         if (!file_exists("data/items/{$_REQUEST['entry']}/members/$get_cat_mem")) {
  386.                                 mkdir("data/items/{$_REQUEST['entry']}/members/$get_cat_mem");
  387.                         }
  388.                 }
  389.         }
  390. }
  391.  
  392. if (isset($_REQUEST['comment']) and !empty($_REQUEST['comment']) and isset($_POST['comment_txt']) and !empty($_POST['comment_txt']) and isset($_REQUEST['type']) and !empty($_REQUEST['type']) and (($_REQUEST['type'] == "live") or ($_REQUEST['type'] == "pending"))) {
  393.         $comment_txt = ucfirst($_POST['comment_txt']);
  394.         $comment_txt = str_replace("\n", '<br />', $comment_txt);
  395.         $comment_txt = str_replace(':((', '<img src="images/smileys/crying.png" border="0">', $comment_txt);
  396.         $comment_txt = str_replace(':(', '<img src="images/smileys/frown.png" border="0">', $comment_txt);
  397.         $comment_txt = str_replace(':|', '<img src="images/smileys/indifferent.png" border="0">', $comment_txt);
  398.         $comment_txt = str_replace(':D', '<img src="images/smileys/laughing.png" border="0">', $comment_txt);
  399.         $comment_txt = str_replace(':P', '<img src="images/smileys/lick.png" border="0">', $comment_txt);
  400.         $comment_txt = str_replace(':O', '<img src="images/smileys/ohno.png" border="0">', $comment_txt);
  401.         $comment_txt = str_replace(':)', '<img src="images/smileys/smile.png" border="0">', $comment_txt);
  402.         $comment_txt = str_replace('=)', '<img src="images/smileys/surprised.png" border="0">', $comment_txt);
  403.         $comment_txt = str_replace(':\\', '<img src="images/smileys/undecided.png" border="0">', $comment_txt);
  404.         $comment_txt = str_replace(';)', '<img src="images/smileys/wink.png" border="0">', $comment_txt);
  405.         $comment_txt_file = "data/items/{$_REQUEST['entry']}/comments/{$_REQUEST['type']}/{$_REQUEST['comment']}/comment.txt";
  406.         $open_comment_txt_file = fopen($comment_txt_file,"w");
  407.         fwrite($open_comment_txt_file,$comment_txt);
  408.         fclose($open_comment_txt_file);
  409.  
  410.         $comment_revisions_file = "data/items/{$_REQUEST['entry']}/comments/{$_REQUEST['type']}/{$_REQUEST['comment']}/revisions.txt";
  411.         $fp_comment_revisions_file = fopen($comment_revisions_file, "r");
  412.         $comment_revisions_count = fread($fp_comment_revisions_file, filesize($comment_revisions_file));
  413.         fclose($fp_comment_revisions_file);
  414.  
  415.         $comment_revisions_count = $comment_revisions_count + 1;
  416.         $fp_comment_revisions_file = fopen($comment_revisions_file, "w");
  417.         fwrite($fp_comment_revisions_file, $comment_revisions_count);
  418.         fclose($fp_comment_revisions_file);
  419. }
  420.  
  421. if (isset($_REQUEST['comment']) and !empty($_REQUEST['comment']) and isset($_REQUEST['type']) and !empty($_REQUEST['type']) and (($_REQUEST['type'] == "live") or ($_REQUEST['type'] == "pending"))) {
  422.  
  423.         if (!file_exists("data/items/{$_REQUEST['entry']}/comments/{$_REQUEST['type']}/{$_REQUEST['comment']}")) {
  424.                 exit();
  425.         }
  426.  
  427. ?>
  428.         <table border="0" cellspacing="0" cellpadding="0" bgcolor="#cccccc"><tr><td width="525">
  429.         <div id="panel_title"><?php readfile("data/items/{$_REQUEST['entry']}/comments/{$_REQUEST['type']}/{$_REQUEST['comment']}/firstname.txt"); ?>&nbsp;<?php readfile("data/items/{$_REQUEST['entry']}/comments/{$_REQUEST['type']}/{$_REQUEST['comment']}/lastname.txt"); ?>&nbsp;&lt;<?php readfile("data/items/{$_REQUEST['entry']}/comments/{$_REQUEST['type']}/{$_REQUEST['comment']}/email.txt"); ?>&gt;</div>
  430.         <div id="panel_body"><?php readfile("data/items/{$_REQUEST['entry']}/comments/{$_REQUEST['type']}/{$_REQUEST['comment']}/comment.txt"); ?></div>
  431.         <div id="panel_footer"><font style="font-size: 10px; color: #999999;">
  432.         <?php
  433.                 entry2date($_REQUEST['comment']);
  434.  
  435.                 if (file_exists("data/items/{$_REQUEST['entry']}/comments/{$_REQUEST['type']}/{$_REQUEST['comment']}/revisions.txt")) {
  436.                         echo " (Revision ";
  437.                         readfile("data/items/{$_REQUEST['entry']}/comments/{$_REQUEST['type']}/{$_REQUEST['comment']}/revisions.txt");
  438.                         echo ")";
  439.                 }
  440.         ?>
  441.         </font></div>
  442.         </td></tr></table>
  443.  
  444.         <table border="0" cellspacing="2" cellpadding="0">
  445.         <form enctype="multipart/form-data" action="edit.php" method="post">
  446.         <tr><td><textarea class="input_body" name="comment_txt" rows="10"><?php
  447.  
  448.         $comment_txt_file = "data/items/{$_REQUEST['entry']}/comments/{$_REQUEST['type']}/{$_REQUEST['comment']}/comment.txt";
  449.         $open_comment_txt_file = fopen($comment_txt_file,"r");
  450.         $read_comment_txt_file = fread($open_comment_txt_file,filesize($comment_txt_file));
  451.         fclose($open_comment_txt_file);
  452.  
  453.         $comment_smiley2emoticon = str_replace('<br />', "\n", $read_comment_txt_file);
  454.         $comment_smiley2emoticon = str_replace('<img src="images/smileys/crying.png" border="0">', ':((', $comment_smiley2emoticon);
  455.         $comment_smiley2emoticon = str_replace('<img src="images/smileys/frown.png" border="0">', ':(', $comment_smiley2emoticon);
  456.         $comment_smiley2emoticon = str_replace('<img src="images/smileys/indifferent.png" border="0">', ':|', $comment_smiley2emoticon);
  457.         $comment_smiley2emoticon = str_replace('<img src="images/smileys/laughing.png" border="0">', ':D', $comment_smiley2emoticon);
  458.         $comment_smiley2emoticon = str_replace('<img src="images/smileys/lick.png" border="0">', ':P', $comment_smiley2emoticon);
  459.         $comment_smiley2emoticon = str_replace('<img src="images/smileys/ohno.png" border="0">', ':O', $comment_smiley2emoticon);
  460.         $comment_smiley2emoticon = str_replace('<img src="images/smileys/smile.png" border="0">', ':)', $comment_smiley2emoticon);
  461.         $comment_smiley2emoticon = str_replace('<img src="images/smileys/surprised.png" border="0">', '=)', $comment_smiley2emoticon);
  462.         $comment_smiley2emoticon = str_replace('<img src="images/smileys/undecided.png" border="0">', ':\\', $comment_smiley2emoticon);
  463.         $comment_smiley2emoticon = str_replace('<img src="images/smileys/wink.png" border="0">', ';)', $comment_smiley2emoticon);
  464.  
  465.         echo $comment_smiley2emoticon;
  466.  
  467.         ?></textarea></td></tr>
  468.         <tr><td><input type="hidden" name="entry" value="<?php echo $_REQUEST['entry']; ?>"></td></tr>
  469.         <tr><td><input type="hidden" name="comment" value="<?php echo $_REQUEST['comment']; ?>"></td></tr>
  470.         <tr><td><input type="hidden" name="type" value="<?php echo $_REQUEST['type']; ?>"></td></tr>
  471.         <tr><td><input class="input_body" type="submit" value="click here to update this comment"></td></tr>
  472.         </form>
  473.  
  474.         <form enctype="multipart/form-data" action="index.php?entry=<?php echo $_REQUEST['entry']; ?>&show=comments" method="post">
  475.         <tr><td><input class="input_body" type="submit" value="click here to view posted entry"></td></tr>
  476.         </form>
  477.  
  478.         <form enctype="multipart/form-data" action="index.php" method="post">
  479.         <tr><td><input class="input_body" type="submit" value="click here to go to the index page"></td></tr>
  480.         </form>
  481.         </table>
  482.  
  483. <?php
  484.         exit();
  485. }
  486.  
  487. ?>
  488.  
  489. <table border="0" cellspacing="0" cellpadding="0"><tr><td valign="top">
  490.  
  491. <table border="0" cellspacing="0" cellpadding="0" bgcolor="#cccccc"><tr><td width="525">
  492.  
  493. <div id="panel_title"><?php readfile($title_file); ?></div>
  494. <div id="panel_body"><table border="0" cellspacing="0" cellpadding="0"><tr><td><?php readfile($body_file); ?></td></tr></table></div>
  495. <div id="panel_footer"><font style="font-size: 10px; color: #999999;"><?php
  496.  
  497. if (file_exists("data/items/{$_REQUEST['entry']}/author.txt")) {
  498.         readfile("data/items/{$_REQUEST['entry']}/author.txt");
  499.         echo " - ";
  500. }
  501.  
  502. entry2date($_REQUEST['entry']);
  503.  
  504. if (file_exists($revisions_file)) {
  505.                 echo ' (Revision ';
  506.                 readfile($revisions_file);
  507.                 echo " - ";
  508.                 echo date("l, M j, Y, g:i A", filemtime("data/items/{$_REQUEST['entry']}/body.txt"));
  509.                 echo ')';
  510. }
  511.  
  512. ?>
  513.  
  514. </font></div>
  515. </td></tr></table>
  516.  
  517. <form enctype="multipart/form-data" action="edit.php" method="post">
  518.  
  519. <?php if (($_SESSION['logged_in'] == $login_username) or (file_exists("data/members/active/{$_SESSION['logged_in']}/ul.txt") and file_exists("data/members/active/{$_SESSION['logged_in']}/rw.txt"))) { ?>
  520.  
  521. <input type="hidden" name="max_file_size" value="<?php echo $max_file_size; ?>">
  522.  
  523. <p><table border="0" cellspacing="2" cellpadding="0" bgcolor="#ffffff">
  524.  
  525. <tr><td><input autocomplete="off" type="file" name="album_image_input"> Upload optional album image. Enter optional caption below.</td></tr>
  526. <tr><td><input autocomplete="off" type="text" name="caption" class="input_body"></td></tr>
  527. <tr><td><input type="hidden" name="max_file_size" value="<?php echo $max_file_size; ?>"></td></tr>
  528. <tr><td><input autocomplete="off" type="file" name="entry_image_input"> Upload optional GIF, JPG, or PNG entry image.</td></tr>
  529. <tr><td><input type="hidden" name="max_file_size" value="<?php echo $max_file_size; ?>"></td></tr>
  530. <tr><td><input autocomplete="off" type="file" name="file_input"> Upload optional file. Max size supported by server is <?php echo ($max_file_size/(1024*1024)); ?>MB.</td></tr>
  531.  
  532. <?php
  533.  
  534. }
  535.  
  536. if ($_SESSION['logged_in'] == $login_username) {
  537.  
  538. ?>
  539.  
  540.         <tr><td><input autocomplete="off" type="password" name="passwd" <?php
  541.  
  542.         if (file_exists("data/items/{$_REQUEST['entry']}/passwd.txt")) {
  543.                 echo "value=\"password\"";
  544.         }
  545.         ?>
  546.  
  547.         > <?php
  548.  
  549.         if (file_exists("data/items/{$_REQUEST['entry']}/passwd.txt")) {
  550.                 echo "Enter new password or clear field to disable password protection.";
  551.         }
  552.         else {
  553.                 echo "Enter optional password.";
  554.         }
  555.         ?></td></tr>
  556.  
  557.         <tr><td><input autocomplete="off" type="text" name="maxlines" <?php
  558.  
  559.         if (file_exists("data/items/{$_REQUEST['entry']}/maxlines.txt")) {
  560.                 echo "value=\"";
  561.                 readfile("data/items/{$_REQUEST['entry']}/maxlines.txt");
  562.                 echo "\"";
  563.         }
  564.         ?>
  565.  
  566.         > <?php
  567.  
  568.         if (file_exists("data/items/{$_REQUEST['entry']}/maxlines.txt")) {
  569.                 echo "Enter new maximum lines for initial display or clear field to disable.";
  570.         }
  571.         else {
  572.                 echo "Enter optional maximum lines for initial display.";
  573.         }
  574.         ?></td></tr>
  575.  
  576.         <tr><td><input type="checkbox" name="sticky" <?php $sticky_sem = 'data/sticky/' . $_REQUEST['entry']; if (file_exists($sticky_sem)) { echo checked; } ?>>Put entry title in Quick Links box.</td></tr>
  577.         <tr><td><input type="checkbox" name="pdf" <?php if (file_exists("data/items/{$_REQUEST['entry']}/pdf/file")) { echo checked; } ?>>Allow PDF generation for this entry.</td></tr>
  578.         <tr><td><input type="checkbox" name="display" <?php $display_sem = "data/items/{$_REQUEST['entry']}/cat.txt"; if (file_exists($display_sem)) { echo checked; } ?>>Always display. If this is not a private entry, it will be displayed even if its category is hidden or isolated.</td></tr>
  579.         <tr><td><input type="checkbox" name="private" <?php $private_sem = "data/items/{$_REQUEST['entry']}/private.txt"; if (file_exists($private_sem)) { echo checked; } ?>>Private entry. This entry will unconditionally be invisible to visitors<?php if (file_exists("data/ml.txt")) { echo " and to the mailing list"; } ?>, even if always display is set.</td></tr>
  580.  
  581.         <?php if (file_exists("data/bb.txt")) { ?>
  582.  
  583.         <tr><td><input type="checkbox" name="member" <?php $member_sem = "data/items/{$_REQUEST['entry']}/member.txt"; if (file_exists($member_sem)) { echo checked; } ?>>Only registered members can view this entry.</td></tr>
  584.  
  585.         <?php } ?>
  586.  
  587.         <?php
  588.  
  589.         if (file_exists("data/bb.txt") and file_exists("data/wiki.txt")) { ?>
  590.  
  591.         <tr><td><input type="checkbox" name="edit" <?php $edit_sem = "data/items/{$_REQUEST['entry']}/edit.txt"; if (file_exists($edit_sem)) { echo checked; } ?>>Registered members can edit this entry.</td></tr>
  592.         <tr><td><input type="checkbox" name="lock" <?php if (file_exists("data/items/{$_REQUEST['entry']}/lock.txt")) { echo checked; } ?>>Only the administrator can edit this entry. </td></tr>
  593.  
  594.         <?php
  595.  
  596.         }
  597.  
  598.         ?>
  599.  
  600.         <tr><td><input type="checkbox" name="lastmod" <?php $lastmod_sem = "data/items/{$_REQUEST['entry']}/lastmod.txt"; if (file_exists($lastmod_sem)) { echo checked; } ?>>Display last modification date and time.</td></tr>
  601.  
  602. <?php } ?>
  603.  
  604. </table></p>
  605.  
  606. <input type="hidden" name="entry" value="<?php echo $_REQUEST['entry']; ?>">
  607.  
  608. <table border="0" cellspacing="0" cellpadding="0"><tr><td>
  609.  
  610. <table border="0" cellspacing="2" cellpadding="0">
  611. <tr><td><input autocomplete="off" class="input_title" type="text" name="title_input" value="<?php readfile($title_file); ?>"></td></tr>
  612. <tr><td><textarea class="input_body" name="body_input" rows="15">
  613. <?php
  614.  
  615. $open_body_file = fopen($body_file,"r");
  616. $read_body_file = fread($open_body_file,filesize($body_file));
  617. fclose($open_body_file);
  618.  
  619. $body_read_content = str_replace('<br />', "\n", $read_body_file);
  620. $body_read_content = str_replace('<img src="images/smileys/crying.png" border="0">', ':((', $body_read_content);
  621. $body_read_content = str_replace('<img src="images/smileys/frown.png" border="0">', ':(', $body_read_content);
  622. $body_read_content = str_replace('<img src="images/smileys/indifferent.png" border="0">', ':|', $body_read_content);
  623. $body_read_content = str_replace('<img src="images/smileys/laughing.png" border="0">', ':D', $body_read_content);
  624. $body_read_content = str_replace('<img src="images/smileys/lick.png" border="0">', ':P', $body_read_content);
  625. $body_read_content = str_replace('<img src="images/smileys/ohno.png" border="0">', ':O', $body_read_content);
  626. $body_read_content = str_replace('<img src="images/smileys/smile.png" border="0">', ':)', $body_read_content);
  627. $body_read_content = str_replace('<img src="images/smileys/surprised.png" border="0">', '=)', $body_read_content);
  628. $body_read_content = str_replace('<img src="images/smileys/undecided.png" border="0">', ':\\', $body_read_content);
  629. $body_read_content = str_replace('<img src="images/smileys/wink.png" border="0">', ';)', $body_read_content);
  630. $body_read_content = str_replace('<!-- html -->', '<html>', $body_read_content);
  631. $body_read_content = str_replace('<!-- /html -->', '</html>', $body_read_content);
  632. $body_read_content = str_replace('<span style="background-color: #ffff00;">', '<highlight>', $body_read_content);
  633. $body_read_content = str_replace('</span>', '</highlight>', $body_read_content);
  634.  
  635. echo $body_read_content;
  636.  
  637. ?>
  638. </textarea></td></tr>
  639. <tr><td><input class="input_body" type="submit" value="click here to update this entry"></td></tr>
  640. </form>
  641.  
  642. <form enctype="multipart/form-data" action="index.php?entry=<?php echo $_REQUEST['entry']; ?>" method="post">
  643. <tr><td><input class=input_body type=submit value="click here to view posted entry"></td></tr>
  644. </form>
  645.  
  646. <form enctype="multipart/form-data" action="index.php" method="post">
  647. <tr><td><input class="input_body" type="submit" value="click here to go to the index page"></td></tr>
  648. </form>
  649.  
  650. </table>
  651.  
  652. </td><td width="10"></td><td>
  653.  
  654. <table border="0" cellspacing="1" cellpadding="2">
  655. <tr><td><img src="images/smileys/crying.png" border="0"></td><td>:((</td><td >crying</td></tr>
  656. <tr><td><img src="images/smileys/frown.png" border="0"></td><td>:(</td><td>frown</td></tr>
  657. <tr><td><img src="images/smileys/indifferent.png" border="0"></td><td>:|</td><td>indifferent</td></tr>
  658. <tr><td><img src="images/smileys/laughing.png" border="0"></td><td>:D</td><td>laughing</td></tr>
  659. <tr><td><img src="images/smileys/lick.png" border="0"></td><td>:P</td><td>lick</td></tr>
  660. <tr><td><img src="images/smileys/ohno.png" border="0"></td><td>:O</td><td>oh no!</td></tr>
  661. <tr><td><img src="images/smileys/smile.png" border="0"></td><td>:)</td><td>smile</td></tr>
  662. <tr><td><img src="images/smileys/surprised.png" border="0"></td><td>=)</td><td>surprised</td></tr>
  663. <tr><td><img src="images/smileys/undecided.png" border="0"></td><td>:\</td><td>undecided</td></tr>
  664. <tr><td><img src="images/smileys/wink.png" border="0"></td><td>;)</td><td>wink</td></tr>
  665. </table>
  666.  
  667. </td></tr></table>
  668.  
  669. </td><td width="25"></td><td valign="top">
  670.  
  671. <?php
  672.  
  673. // improve category handling (20100221) - start
  674.  
  675. if (file_exists("data/categories")) {
  676.  
  677.         echo "<table border=\"0\" cellspacing=\"1\" cellpadding=\"2\"><tr><td valign=\"top\" width=\"150\">";
  678.  
  679.         if ($dh_cat = opendir("data/categories")) {
  680.  
  681.                 while (($entry_cat = readdir($dh_cat)) !== false) {
  682.        
  683.                         if ($entry_cat != "." && $entry_cat != "..") {
  684.  
  685.                                 if (file_exists("data/categories/$entry_cat/private.txt") and ($login_username != $_SESSION['logged_in'])) {
  686.                                         continue;
  687.                                 }
  688.  
  689.                                 if (file_exists("data/items/{$_REQUEST['entry']}/categories/$entry_cat")) {
  690.                                         $filed_cat[] = $entry_cat;
  691.                                 }
  692.  
  693.                                 if (!file_exists("data/items/{$_REQUEST['entry']}/categories/$entry_cat")) {
  694.                                         $unfiled_cat[] = $entry_cat;
  695.                                 }
  696.                         }
  697.                 }
  698.                 closedir($dh_cat);
  699.        
  700.                 sort($filed_cat);
  701.                 sort($unfiled_cat);
  702.  
  703.                 reset($filed_cat);
  704.                 reset($unfiled_cat);
  705.  
  706.                 $count_filed_cat = count($filed_cat);
  707.                 $count_unfiled_cat = count($unfiled_cat);
  708.         }
  709.        
  710.         if ($count_filed_cat > 0) {
  711.  
  712.                 echo "<p><b>Filed Under</b></p>";
  713.  
  714.                 echo "<table border=\"0\" cellspacing=\"1\" cellpadding=\"2\" bgcolor=\"#cccccc\" width=\"150\">";
  715.  
  716.                 foreach ($filed_cat as $filed_category) {
  717.                         echo "<form enctype=\"multipart/form-data\" action=\"edit.php\" method=\"post\">";
  718.                         echo "<input type=\"hidden\" name=\"entry\" value=\"{$_REQUEST['entry']}\">";
  719.                         echo "<input type=\"hidden\" name=\"category\" value=\"$filed_category\">";
  720.                         echo "<input type=\"hidden\" name=\"do\" value=\"unfile\">";
  721.                         echo "<tr bgcolor=\"#ffffff\"><td><a href=\"index.php?category=$filed_category\">$filed_category</a></td>";
  722.                         echo "<td width=\"14\"><input type=\"image\" src=\"images/widget.x.png\"></td></tr>";
  723.                         echo "</form>";
  724.                 }
  725.  
  726.                 echo "</table>";
  727.         }
  728.  
  729.         echo "</td><td width=\"25\"></td><td valign=\"top\" width=\"150\">";
  730.  
  731.         if ($count_unfiled_cat > 0) {
  732.  
  733.                 echo "<p><b>Available Categories</b></p>";
  734.  
  735.                 echo "<table border=\"0\" cellspacing=\"1\" cellpadding=\"2\" bgcolor=\"#cccccc\" width=\"150\">";
  736.  
  737.                 foreach ($unfiled_cat as $unfiled_category) {
  738.                         echo "<form enctype=\"multipart/form-data\" action=\"edit.php\" method=\"post\">";
  739.                         echo "<input type=\"hidden\" name=\"entry\" value=\"{$_REQUEST['entry']}\">";
  740.                         echo "<input type=\"hidden\" name=\"category\" value=\"$unfiled_category\">";
  741.                         echo "<input type=\"hidden\" name=\"do\" value=\"file\">";
  742.                         echo "<tr bgcolor=\"#ffffff\"><td width=\"14\"><input type=\"image\" src=\"images/widget.ok.png\"></td>";
  743.                         echo "<td align=\"right\"><a href=\"index.php?category=$unfiled_category\">$unfiled_category</a></td></tr>";
  744.                         echo "</form>";
  745.                 }
  746.  
  747.                 echo "</table>";
  748.         }
  749.  
  750.         echo "</td></tr></table><br>";
  751. }
  752.  
  753. // improve category handling (20100221) - end
  754.  
  755. // add member authorization (20100221) - start
  756.  
  757. if (file_exists("data/members/active")) {
  758.  
  759.         echo "<table border=\"0\" cellspacing=\"1\" cellpadding=\"2\"><tr><td valign=\"top\" width=\"150\">";
  760.  
  761.         if ($dh_ack_members = opendir("data/items/{$_REQUEST['entry']}/members")) {
  762.  
  763.                 while (($ack_member = readdir($dh_ack_members)) !== false) {
  764.  
  765.                         if ($ack_member != "." && $ack_member != "..") {
  766.  
  767.                                 if (file_exists("data/members/active/$ack_member")) {
  768.                                         $ack_members[] = $ack_member;
  769.                                 }
  770.                                 else {
  771.                                         rmdirr("data/items/{$_REQUEST['entry']}/members/$ack_member");
  772.                                 }
  773.                         }
  774.                 }
  775.                 closedir($dh_ack_members);
  776.                 sort($ack_members);
  777.                 reset($ack_members);
  778.                 $count_ack_members = count($ack_members);
  779.         }
  780.  
  781.         if ($dh_nak_members = opendir("data/members/active")) {
  782.  
  783.                 while (($nak_member = readdir($dh_nak_members)) !== false) {
  784.  
  785.                         if ($nak_member != "." && $nak_member != "..") {
  786.  
  787.                                 if (file_exists("data/items/{$_REQUEST['entry']}/members/$nak_member")) {
  788.                                         continue;
  789.                                 }
  790.  
  791.                                 if (!file_exists("data/items/{$_REQUEST['entry']}/members/$nak_member")) {
  792.                                         $nak_members[] = $nak_member;
  793.                                 }
  794.                         }
  795.                 }
  796.                 closedir($dh_nak_members);
  797.                 sort($nak_members);
  798.                 reset($nak_members);
  799.                 $count_nak_members = count($nak_members);
  800.         }
  801.  
  802.         if ($count_ack_members > 0) {
  803.  
  804.                 echo "<p><b>Authorized Members</b></p>";
  805.  
  806.                 echo "<table border=\"0\" cellspacing=\"1\" cellpadding=\"2\" bgcolor=\"#cccccc\" width=\"150\">";
  807.  
  808.                 foreach ($ack_members as $ack_member) {
  809.                         echo "<form enctype=\"multipart/form-data\" action=\"edit.php\" method=\"post\">";
  810.                         echo "<input type=\"hidden\" name=\"entry\" value=\"{$_REQUEST['entry']}\">";
  811.                         echo "<input type=\"hidden\" name=\"auth_member\" value=\"$ack_member\">";
  812.                         echo "<input type=\"hidden\" name=\"auth_toggle\" value=\"nak\">";
  813.                         echo "<tr bgcolor=\"#ffffff\"><td><a href=\"member.php?id=$ack_member\">$ack_member</a></td>";
  814.                         echo "<td width=\"14\"><input type=\"image\" src=\"images/widget.x.png\"></td></tr>";
  815.                         echo "</form>";
  816.                 }
  817.                 echo "</table>";
  818.         }
  819.  
  820.         echo "</td><td width=\"25\"></td><td valign=\"top\" width=\"150\">";
  821.  
  822.         if ($count_nak_members > 0) {
  823.  
  824.                 echo "<p><b>Registered Members</b></p>";
  825.  
  826.                 echo "<table border=\"0\" cellspacing=\"1\" cellpadding=\"2\" bgcolor=\"#cccccc\" width=\"150\">";
  827.  
  828.                 foreach ($nak_members as $nak_member) {
  829.  
  830.                         echo "<form enctype=\"multipart/form-data\" action=\"edit.php\" method=\"post\">";
  831.                         echo "<input type=\"hidden\" name=\"entry\" value=\"{$_REQUEST['entry']}\">";
  832.                         echo "<input type=\"hidden\" name=\"auth_member\" value=\"$nak_member\">";
  833.                         echo "<input type=\"hidden\" name=\"auth_toggle\" value=\"ack\">";
  834.                         echo "<tr bgcolor=\"#ffffff\"><td width=\"14\"><input type=\"image\" src=\"images/widget.ok.png\"></td>";
  835.                         echo "<td align=\"right\"><a href=\"member.php?id=$nak_member\">$nak_member</a></td></tr>";
  836.                         echo "</form>";
  837.                 }
  838.                 echo "</table>";
  839.         }
  840.  
  841.         echo "</td></tr></table><br>";
  842. }
  843.  
  844. // add member authorization (20100221) - end
  845.  
  846. ?>
  847.  
  848. </td></tr></table>
  849.  
  850. <?php
  851.  
  852. if (!isset($_POST['title_input']) or !isset($_POST['body_input']) or empty($_POST['title_input']) or empty($_POST['body_input'])) {
  853.         exit();
  854. }
  855.  
  856. if (file_exists("data/items/{$_REQUEST['entry']}/title.old")) {
  857.         unlink("data/items/{$_REQUEST['entry']}/title.old");
  858. }
  859.  
  860. if (file_exists("data/items/{$_REQUEST['entry']}/body.old")) {
  861.         unlink("data/items/{$_REQUEST['entry']}/body.old");
  862. }
  863.  
  864. copy("data/items/{$_REQUEST['entry']}/title.txt","data/items/{$_REQUEST['entry']}/title.old");
  865. copy("data/items/{$_REQUEST['entry']}/body.txt","data/items/{$_REQUEST['entry']}/body.old");
  866.  
  867. // 20100113 - auto-captialize title except articles, prepositions and conjunctions less tha 4 letters, and particle "to"
  868. $title_write_content = ucwords($_POST['title_input']);
  869. $title_write_content = str_replace('<','&lt;',$title_write_content);
  870. $title_write_content = str_replace('>','&gt;',$title_write_content);
  871. $title_write_content = str_replace(' A ',' a ',$title_write_content);
  872. $title_write_content = str_replace(' An ',' an ',$title_write_content);
  873. $title_write_content = str_replace(' And ',' and ',$title_write_content);
  874. $title_write_content = str_replace(' As ',' as ',$title_write_content);
  875. $title_write_content = str_replace(' At ',' at ',$title_write_content);
  876. $title_write_content = str_replace(' But ',' but ',$title_write_content);
  877. $title_write_content = str_replace(' By ',' by ',$title_write_content);
  878. $title_write_content = str_replace(' For ',' for ',$title_write_content);
  879. $title_write_content = str_replace(' In ',' in ',$title_write_content);
  880. $title_write_content = str_replace(' Of ',' of ',$title_write_content);
  881. $title_write_content = str_replace(' On ',' on ',$title_write_content);
  882. $title_write_content = str_replace(' Or ',' or ',$title_write_content);
  883. $title_write_content = str_replace(' The ',' the ',$title_write_content);
  884. $title_write_content = str_replace(' To ',' to ',$title_write_content);
  885.  
  886. $open_title_file = fopen($title_file,"w");
  887. fwrite($open_title_file,$title_write_content);
  888. fclose($open_title_file);
  889.  
  890. function reformat_html($defang_html) {
  891.         $store_html=split("<html>",$defang_html);
  892.         $defang_html="";
  893.         $defang_html.=$store_html[0];
  894.         foreach($store_html as $itm_html=>$refh_html) {
  895.                 if(eregi("</html>",$refh_html)) {
  896.                         $store_html1=split("</html>",$refh_html);
  897.                         $store_html1[0]=eregi_replace("\n","",$store_html1[0]);
  898.                         foreach($store_html1 as $itm_html1=>$refh_html1) {
  899.                                 if($itm_html1==0)
  900.                                         $refh_html1="<!-- html -->$refh_html1<!-- /html -->";
  901.                                         $defang_html.=$refh_html1;
  902.                                 }
  903.                         }
  904.                 }
  905.         return $defang_html;
  906. }
  907.  
  908. function reformat_code($defang_code) {
  909.         $store_code=split("<code>",$defang_code);
  910.         $defang_code="";
  911.         $defang_code.=$store_code[0];
  912.         foreach($store_code as $itm_code=>$refh_code) {
  913.                 if(eregi("</code>",$refh_code)) {
  914.                         $store_code1=split("</code>",$refh_code);
  915.                         $store_code1[0] = eregi_replace('<img src="images/smileys/crying.png" border="0">',':((',$store_code1[0]);
  916.                         $store_code1[0] = eregi_replace('<img src="images/smileys/frown.png" border="0">',':(',$store_code1[0]);
  917.                         $store_code1[0] = eregi_replace('<img src="images/smileys/indifferent.png" border="0">',':|',$store_code1[0]);
  918.                         $store_code1[0] = eregi_replace('<img src="images/smileys/laughing.png" border="0">',':D',$store_code1[0]);
  919.                         $store_code1[0] = eregi_replace('<img src="images/smileys/lick.png" border="0">',':P',$store_code1[0]);
  920.                         $store_code1[0] = eregi_replace('<img src="images/smileys/ohno.png" border="0">',':O',$store_code1[0]);
  921.                         $store_code1[0] = eregi_replace('<img src="images/smileys/smile.png" border="0">',':)',$store_code1[0]);
  922.                         $store_code1[0] = eregi_replace('<img src="images/smileys/surprised.png" border="0">','=)',$store_code1[0]);
  923.                         $store_code1[0] = eregi_replace('<img src="images/smileys/undecided.png" border="0">',':\\',$store_code1[0]);
  924.                         $store_code1[0] = eregi_replace('<img src="images/smileys/wink.png" border="0">',';)',$store_code1[0]);
  925.                         $store_code1[0]=htmlentities($store_code1[0],ENT_NOQUOTES);
  926.                         foreach($store_code1 as $itm_code1=>$refh_code1) {
  927.                                 if($itm_code1==0)
  928.                                         $refh_code1="<code>$refh_code1</code>";
  929.                                         $defang_code.=$refh_code1;
  930.                                 }
  931.                         }
  932.                 }
  933.         return $defang_code;
  934. }
  935.  
  936. $body_write_content = ucfirst($_POST['body_input']);
  937. $body_write_content = str_replace("[html]", '<html>', $body_write_content);
  938. $body_write_content = str_replace("[/html]", '</html>', $body_write_content);
  939. $body_write_content = reformat_html($body_write_content);
  940. $body_write_content = str_replace(':((', '<img src="images/smileys/crying.png" border="0">', $body_write_content);
  941. $body_write_content = str_replace(':(', '<img src="images/smileys/frown.png" border="0">', $body_write_content);
  942. $body_write_content = str_replace(':|', '<img src="images/smileys/indifferent.png" border="0">', $body_write_content);
  943. $body_write_content = str_replace(':D', '<img src="images/smileys/laughing.png" border="0">', $body_write_content);
  944. $body_write_content = str_replace(':P', '<img src="images/smileys/lick.png" border="0">', $body_write_content);
  945. $body_write_content = str_replace(':O', '<img src="images/smileys/ohno.png" border="0">', $body_write_content);
  946. $body_write_content = str_replace(':)', '<img src="images/smileys/smile.png" border="0">', $body_write_content);
  947. $body_write_content = str_replace('=)', '<img src="images/smileys/surprised.png" border="0">', $body_write_content);
  948. $body_write_content = str_replace(':\\', '<img src="images/smileys/undecided.png" border="0">', $body_write_content);
  949. $body_write_content = str_replace(';)', '<img src="images/smileys/wink.png" border="0">', $body_write_content);
  950. $body_write_content = str_replace('[code]', '<code>', $body_write_content);
  951. $body_write_content = str_replace('[/code]', '</code>', $body_write_content);
  952. $body_write_content = reformat_code($body_write_content);
  953. $body_write_content = str_replace("\n", '<br />', $body_write_content);
  954. $body_write_content = str_replace('[b]', '<b>', $body_write_content);
  955. $body_write_content = str_replace('[/b]', '</b>', $body_write_content);
  956. $body_write_content = str_replace('[i]', '<i>', $body_write_content);
  957. $body_write_content = str_replace('[/i]', '</i>', $body_write_content);
  958. $body_write_content = str_replace('[u]', '<u>', $body_write_content);
  959. $body_write_content = str_replace('[/u]', '</u>', $body_write_content);
  960. $body_write_content = str_replace('[strike]', '<strike>', $body_write_content);
  961. $body_write_content = str_replace('[/strike]', '</strike>', $body_write_content);
  962. $body_write_content = str_replace('[sup]', '<sup>', $body_write_content);
  963. $body_write_content = str_replace('[/sup]', '</sup>', $body_write_content);
  964. $body_write_content = str_replace('[sub]', '<sub>', $body_write_content);
  965. $body_write_content = str_replace('[/sub]', '</sub>', $body_write_content);
  966. $body_write_content = str_replace('[highlight]', '<highlight>', $body_write_content);
  967. $body_write_content = str_replace('[/highlight]', '</highlight>', $body_write_content);
  968. $body_write_content = str_replace('<highlight>', '<span style="background-color: #ffff00;">', $body_write_content);
  969. $body_write_content = str_replace('</highlight>', '</span>', $body_write_content);
  970. $body_write_content =  preg_replace("/<([_\.0-9a-z-]+)@([0-9a-z][0-9a-z-]+)\.([_\.0-9a-z-]+)>/", '&lt;$1@$2.$3&gt;',$body_write_content);
  971.  
  972. $fp_revisions_file = fopen($revisions_file, "r");
  973. $revisions_count = fread($fp_revisions_file, filesize($revisions_file));
  974. fclose($fp_revisions_file);
  975.  
  976. $revisions_count = $revisions_count + 1;
  977.  
  978. $fp_revisions_file = fopen($revisions_file, "w");
  979. fwrite($fp_revisions_file, $revisions_count);
  980. fclose($fp_revisions_file);
  981.  
  982. if (isset($_FILES['album_image_input']) and !empty($_FILES['album_image_input'])) {
  983.  
  984.         if (is_uploaded_file($_FILES['album_image_input']['tmp_name'])) {
  985.  
  986.                 if ($_FILES['album_image_input']['size']<=$max_file_size) {
  987.  
  988.                         if (($_FILES['album_image_input']['type']=="image/gif") || ($_FILES['album_image_input']['type']=="image/pjpeg") || ($_FILES['album_image_input']['type']=="image/jpeg") || ($_FILES['album_image_input']['type']=="image/png")) {
  989.  
  990.                                 $album_image_input_name = str_replace(" ","_",$_FILES['album_image_input']['name']);
  991.  
  992.                                 if (!file_exists("images/{$_REQUEST['entry']}/album/$album_image_input_name")) {
  993.  
  994.                                         if (!file_exists("images/{$_REQUEST['entry']}")) {
  995.                                                 mkdir("images/{$_REQUEST['entry']}");
  996.                                         }
  997.  
  998.                                         if (!file_exists("images/{$_REQUEST['entry']}/album")) {
  999.                                                 mkdir("images/{$_REQUEST['entry']}/album");
  1000.                                         }
  1001.  
  1002.                                         if (!file_exists("data/albums")) {
  1003.                                                 mkdir("data/albums");
  1004.                                         }
  1005.  
  1006.                                         if (!file_exists("data/albums/{$_REQUEST['entry']}")) {
  1007.                                                 mkdir("data/albums/{$_REQUEST['entry']}");
  1008.                                         }
  1009.  
  1010.                                         if (isset($_POST['caption']) and !empty($_POST['caption'])) {
  1011.  
  1012.                                                 if (!file_exists("data/items/{$_REQUEST['entry']}/album")) {
  1013.                                                         mkdir("data/items/{$_REQUEST['entry']}/album");
  1014.                                                 }
  1015.  
  1016.                                                 if (!file_exists("data/items/{$_REQUEST['entry']}/album/captions")) {
  1017.                                                         mkdir("data/items/{$_REQUEST['entry']}/album/captions");
  1018.                                                 }
  1019.  
  1020.                                                 if (!file_exists("data/items/{$_REQUEST['entry']}/album/captions/{$album_image_input_name}.txt")) {
  1021.                                                         $caption_txt = ucfirst($_POST['caption']);
  1022.                                                         $caption_txt = str_replace(':((', '<img src="images/smileys/crying.png" border="0">', $caption_txt);
  1023.                                                         $caption_txt = str_replace(':(', '<img src="images/smileys/frown.png" border="0">', $caption_txt);
  1024.                                                         $caption_txt = str_replace(':|', '<img src="images/smileys/indifferent.png" border="0">', $caption_txt);
  1025.                                                         $caption_txt = str_replace(':D', '<img src="images/smileys/laughing.png" border="0">', $caption_txt);
  1026.                                                         $caption_txt = str_replace(':P', '<img src="images/smileys/lick.png" border="0">', $caption_txt);
  1027.                                                         $caption_txt = str_replace(':O', '<img src="images/smileys/ohno.png" border="0">', $caption_txt);
  1028.                                                         $caption_txt = str_replace(':)', '<img src="images/smileys/smile.png" border="0">', $caption_txt);
  1029.                                                         $caption_txt = str_replace('=)', '<img src="images/smileys/surprised.png" border="0">', $caption_txt);
  1030.                                                         $caption_txt = str_replace(':\\', '<img src="images/smileys/undecided.png" border="0">', $caption_txt);
  1031.                                                         $caption_txt = str_replace(';)', '<img src="images/smileys/wink.png" border="0">', $caption_txt);
  1032.                                                         $caption_txt = str_replace('[code]', '<code>', $caption_txt);
  1033.                                                         $caption_txt = str_replace('[/code]', '</code>', $caption_txt);
  1034.                                                         $caption_txt = str_replace("\n", '<br />', $caption_txt);
  1035.                                                         $caption_txt = str_replace('[b]', '<b>', $caption_txt);
  1036.                                                         $caption_txt = str_replace('[/b]', '</b>', $caption_txt);
  1037.                                                         $caption_txt = str_replace('[i]', '<i>', $caption_txt);
  1038.                                                         $caption_txt = str_replace('[/i]', '</i>', $caption_txt);
  1039.                                                         $caption_txt = str_replace('[u]', '<u>', $caption_txt);
  1040.                                                         $caption_txt = str_replace('[/u]', '</u>', $caption_txt);
  1041.                                                         $caption_txt = str_replace('[strike]', '<strike>', $caption_txt);
  1042.                                                         $caption_txt = str_replace('[/strike]', '</strike>', $caption_txt);
  1043.                                                         $caption_txt = str_replace('[sup]', '<sup>', $caption_txt);
  1044.                                                         $caption_txt = str_replace('[/sup]', '</sup>', $caption_txt);
  1045.                                                         $caption_txt = str_replace('[sub]', '<sub>', $caption_txt);
  1046.                                                         $caption_txt = str_replace('[/sub]', '</sub>', $caption_txt);
  1047.                                                         $caption_txt = str_replace('[highlight]', '<highlight>', $caption_txt);
  1048.                                                         $caption_txt = str_replace('[/highlight]', '</highlight>', $caption_txt);
  1049.                                                         $caption_txt = str_replace('<highlight>', '<span style="background-color: #ffff00;">', $caption_txt);
  1050.                                                         $caption_txt = str_replace('</highlight>', '</span>', $caption_txt);
  1051.  
  1052.                                                         $fp_caption_txt = fopen("data/items/{$_REQUEST['entry']}/album/captions/{$album_image_input_name}.txt","w");
  1053.                                                         fwrite($fp_caption_txt,$caption_txt);
  1054.                                                         fclose($fp_caption_txt);
  1055.                                                 }
  1056.                                         }
  1057.  
  1058.                                         $res = copy($_FILES['album_image_input']['tmp_name'],"images/{$_REQUEST['entry']}/album/$album_image_input_name");
  1059.                                         unlink($_FILES['album_image_input']['tmp_name']);
  1060.                                 }
  1061.                                 else {
  1062.                                         unlink($_FILES['album_image_input']['tmp_name']);
  1063.                                 }
  1064.                         }
  1065.                         else {
  1066.                                 unlink($_FILES['album_image_input']['tmp_name']);
  1067.                         }
  1068.                 }
  1069.                 else {
  1070.                         unlink($_FILES['album_image_input']['tmp_name']);
  1071.                 }
  1072.         }
  1073.         else {
  1074.                 unlink($_FILES['album_image_input']['tmp_name']);
  1075.         }
  1076. }
  1077.  
  1078. if (isset($_FILES['entry_image_input']) and !empty($_FILES['entry_image_input'])) {
  1079.  
  1080.         if (is_uploaded_file($_FILES['entry_image_input']['tmp_name'])) {
  1081.  
  1082.                 if ($_FILES['entry_image_input']['size']<=$max_file_size) {
  1083.  
  1084.                         if (($_FILES['entry_image_input']['type']=="image/gif") || ($_FILES['entry_image_input']['type']=="image/pjpeg") || ($_FILES['entry_image_input']['type']=="image/jpeg") || ($_FILES['entry_image_input']['type']=="image/png")) {
  1085.  
  1086.                                 $entry_image_input_name = str_replace(" ","_",$_FILES['entry_image_input']['name']);
  1087.  
  1088.                                 if (!file_exists("images/{$_REQUEST['entry']}/$entry_image_input_name")) {
  1089.  
  1090.                                         if (!file_exists("images/{$_REQUEST['entry']}")) {
  1091.                                                 mkdir("images/{$_REQUEST['entry']}");
  1092.                                         }
  1093.  
  1094.                                         $res = copy($_FILES['entry_image_input']['tmp_name'], "images/{$_REQUEST['entry']}/$entry_image_input_name");
  1095.                                         unlink($_FILES['entry_image_input']['tmp_name']);
  1096.  
  1097.                                         $entry_image_size = getimagesize("images/{$_REQUEST['entry']}/$entry_image_input_name");
  1098.                                         $entry_image_width = $entry_image_size[0];
  1099.                                         $entry_image_height = $entry_image_size[1];
  1100.  
  1101.                                         $max_entry_image_width = 513;
  1102.  
  1103.                                         if ($entry_image_width > $max_entry_image_width) {  
  1104.                                                 $sizefactor = (double) ($max_entry_image_width / $entry_image_width) ;
  1105.                                                 $entry_image_width = (int) ($entry_image_width * $sizefactor);
  1106.                                                 $entry_image_height = (int) ($entry_image_height * $sizefactor);
  1107.                                         }
  1108.  
  1109.                                         $body_write_content = "<img src=\"images/{$_REQUEST['entry']}/$entry_image_input_name\" border=\"0\" width=\"$entry_image_width\" height=\"$entry_image_height\">\n\r$body_write_content";
  1110.                                 }
  1111.                                 else {
  1112.                                         unlink($_FILES['entry_image_input']['tmp_name']);
  1113.                                 }
  1114.                         }
  1115.                         else {
  1116.                                 unlink($_FILES['entry_image_input']['tmp_name']);
  1117.                         }
  1118.                 }
  1119.                 else {
  1120.                         unlink($_FILES['entry_image_input']['tmp_name']);
  1121.                 }
  1122.         }
  1123.         else {
  1124.                 unlink($_FILES['entry_image_input']['tmp_name']);
  1125.         }
  1126. }
  1127.  
  1128. if (isset($_FILES['file_input']) and !empty($_FILES['file_input'])) {
  1129.  
  1130.         if (is_uploaded_file($_FILES['file_input']['tmp_name'])) {
  1131.  
  1132.                 if ($_FILES['file_input']['size']<=$max_file_size) {
  1133.  
  1134.                         if (!file_exists("data/items/{$_REQUEST['entry']}/filedrop")) {
  1135.                                 mkdir("data/items/{$_REQUEST['entry']}/filedrop");
  1136.                         }
  1137.  
  1138.                         if (!file_exists("data/items/{$_REQUEST['entry']}/filedrop/files")) {
  1139.                                 mkdir("data/items/{$_REQUEST['entry']}/filedrop/files");
  1140.                         }
  1141.  
  1142.                         $file_input_name = str_replace(" ","_",$_FILES['file_input']['name']);
  1143.  
  1144.                         if (!file_exists("data/items/{$_REQUEST['entry']}/filedrop/files/$file_input_name")) {
  1145.                                 $res = copy($_FILES['file_input']['tmp_name'], "data/items/{$_REQUEST['entry']}/filedrop/files/$file_input_name");
  1146.                                 unlink($_FILES['file_input']['tmp_name']);
  1147.  
  1148.                                 $fp_file_txt = fopen("data/items/{$_REQUEST['entry']}/filedrop/{$file_input_name}.txt","w");
  1149.                                 fwrite($fp_file_txt,"data/items/{$_REQUEST['entry']}/filedrop/files/$file_input_name");
  1150.                                 fclose($fp_file_txt);
  1151.                         }
  1152.                         else {
  1153.                                 unlink($_FILES['file_input']['tmp_name']);
  1154.                         }
  1155.                 }
  1156.                 else {
  1157.                         unlink($_FILES['file_input']['tmp_name']);
  1158.                 }
  1159.         }
  1160.         else {
  1161.                 unlink($_FILES['file_input']['tmp_name']);
  1162.         }
  1163. }
  1164.  
  1165. if (file_exists("data/wiki.txt")) {
  1166.  
  1167.         $old_title = file_get_contents("data/items/{$_REQUEST['entry']}/title.old");
  1168.         $old_body = file_get_contents("data/items/{$_REQUEST['entry']}/body.old");
  1169.  
  1170.         if (($old_title != $title_write_content) or ($old_body != $body_write_content)) {
  1171.  
  1172.                 if (!file_exists("data/items/{$_REQUEST['entry']}/wiki")) {
  1173.                         mkdir("data/items/{$_REQUEST['entry']}/wiki");
  1174.                 }
  1175.  
  1176.                 if (!file_exists("data/items/{$_REQUEST['entry']}/wiki/delta")) {
  1177.                         mkdir("data/items/{$_REQUEST['entry']}/wiki/delta");
  1178.                 }
  1179.  
  1180.                 if (file_exists("data/offset.txt")) {
  1181.                         $offset = file_get_contents("data/offset.txt");
  1182.                 }
  1183.                 else {
  1184.                         $offset = 0;
  1185.                 }
  1186.  
  1187.                 $ddate = date("YmdHis", time() + $offset);
  1188.  
  1189.                 if (!file_exists("data/items/{$_REQUEST['entry']}/wiki/delta/$ddate")) {
  1190.                         mkdir("data/items/{$_REQUEST['entry']}/wiki/delta/$ddate");
  1191.                 }
  1192.  
  1193.                 $new_body = fopen("data/items/{$_REQUEST['entry']}/wiki/delta/$ddate/body.txt","w");
  1194.                 fwrite($new_body,$body_write_content);
  1195.                 fclose($new_body);
  1196.  
  1197.                 $new_title = fopen("data/items/{$_REQUEST['entry']}/wiki/delta/$ddate/title.txt","w");
  1198.                 fwrite($new_title,$title_write_content);
  1199.                 fclose($new_title);
  1200.  
  1201.                 copy("data/items/{$_REQUEST['entry']}/body.txt","data/items/{$_REQUEST['entry']}/wiki/delta/$ddate/prev.txt");
  1202.                 copy("data/items/{$_REQUEST['entry']}/date.txt","data/items/{$_REQUEST['entry']}/wiki/delta/$ddate/date.txt");
  1203.  
  1204.                 if (file_exists("data/items/{$_REQUEST['entry']}/contrib.txt")) {
  1205.                         copy("data/items/{$_REQUEST['entry']}/contrib.txt","data/items/{$_REQUEST['entry']}/wiki/delta/$ddate/contrib.txt");
  1206.                 }
  1207.  
  1208.                 $open_editor_file = fopen("data/items/{$_REQUEST['entry']}/wiki/delta/$ddate/editor.txt","w");
  1209.                 fwrite($open_editor_file,$_SESSION['logged_in']);
  1210.                 fclose($open_editor_file);
  1211.         }
  1212. }
  1213.  
  1214. $open_body_file = fopen($body_file,"w");
  1215. fwrite($open_body_file,$body_write_content);
  1216. fclose($open_body_file);
  1217.  
  1218. if (file_exists("data/wiki.txt") and (file_exists("data/items/{$_REQUEST['entry']}/edit.txt") or (file_get_contents("data/items/{$_REQUEST['entry']}/author.txt") == $_SESSION['logged_in']))) {
  1219.         $open_contrib_file = fopen("data/items/{$_REQUEST['entry']}/contrib.txt","w");
  1220.         fwrite($open_contrib_file,$_SESSION['logged_in']);
  1221.         fclose($open_contrib_file);
  1222. }
  1223.  
  1224. if ($_SESSION['logged_in'] == $login_username) {
  1225.  
  1226.         $sticky_sem = 'data/sticky/' . $_REQUEST['entry'];
  1227.  
  1228.         if (isset($_POST['sticky']) and !empty($_POST['sticky']) and ($_POST['sticky'] == "on")) {
  1229.                 if (!file_exists("data/sticky")) {
  1230.                         mkdir("data/sticky");
  1231.                 }
  1232.                 if (!file_exists($sticky_sem)) {
  1233.                         touch($sticky_sem);
  1234.                 }
  1235.         }
  1236.         if (!isset($_POST['sticky']) or empty($_POST['sticky'])) {
  1237.                 if (file_exists($sticky_sem)) {
  1238.                         unlink($sticky_sem);
  1239.                 }
  1240.         }
  1241.  
  1242.         $display_sem = "data/items/{$_REQUEST['entry']}/cat.txt";
  1243.  
  1244.         if (isset($_POST['display']) and !empty($_POST['display']) and ($_POST['display'] == "on")) {
  1245.                 if (!file_exists($display_sem)) {
  1246.                         touch($display_sem);
  1247.                 }
  1248.         }
  1249.         if (!isset($_POST['display']) or empty($_POST['display'])) {
  1250.                 if (file_exists($display_sem)) {
  1251.                         unlink($display_sem);
  1252.                 }
  1253.         }
  1254.  
  1255.         $private_sem = "data/items/{$_REQUEST['entry']}/private.txt";
  1256.  
  1257.         if (isset($_POST['private']) and !empty($_POST['private']) and ($_POST['private'] == "on")) {
  1258.                 if (!file_exists($private_sem)) {
  1259.                         touch($private_sem);
  1260.                 }
  1261.         }
  1262.         if (!isset($_POST['private']) or empty($_POST['private'])) {
  1263.                 if (file_exists($private_sem)) {
  1264.                         unlink($private_sem);
  1265.                 }
  1266.         }
  1267.  
  1268.         $member_sem = "data/items/{$_REQUEST['entry']}/member.txt";
  1269.  
  1270.         if (isset($_POST['member']) and !empty($_POST['member']) and ($_POST['member'] == "on")) {
  1271.                 if (!file_exists($member_sem)) {
  1272.                         touch($member_sem);
  1273.                 }
  1274.         }
  1275.         if (!isset($_POST['member']) or empty($_POST['member'])) {
  1276.                 if (file_exists($member_sem)) {
  1277.                         unlink($member_sem);
  1278.                 }
  1279.         }
  1280.        
  1281.         $edit_sem = "data/items/{$_REQUEST['entry']}/edit.txt";
  1282.  
  1283.         if (isset($_POST['edit']) and !empty($_POST['edit']) and ($_POST['edit'] == "on")) {
  1284.                 if (!file_exists($edit_sem)) {
  1285.                         touch($edit_sem);
  1286.                 }
  1287.         }
  1288.  
  1289.         if (!isset($_POST['edit']) or empty($_POST['edit'])) {
  1290.                 if (file_exists($edit_sem)) {
  1291.                         unlink($edit_sem);
  1292.                 }
  1293.         }
  1294.  
  1295.         if (isset($_POST['lock']) and !empty($_POST['lock']) and ($_POST['lock'] == "on")) {
  1296.  
  1297.                 if (file_exists("data/items/{$_REQUEST['entry']}/edit.txt")) {
  1298.                         unlink("data/items/{$_REQUEST['entry']}/edit.txt");
  1299.                 }
  1300.  
  1301.                 if (!file_exists("data/items/{$_REQUEST['entry']}/lock.txt")) {
  1302.                         touch("data/items/{$_REQUEST['entry']}/lock.txt");
  1303.                 }
  1304.         }
  1305.         if (!isset($_POST['lock']) or empty($_POST['lock'])) {
  1306.                 if (file_exists("data/items/{$_REQUEST['entry']}/lock.txt")) {
  1307.                         unlink("data/items/{$_REQUEST['entry']}/lock.txt");
  1308.                 }
  1309.         }
  1310.        
  1311.         $lastmod_sem = "data/items/{$_REQUEST['entry']}/lastmod.txt";
  1312.  
  1313.         if (isset($_POST['lastmod']) and !empty($_POST['lastmod']) and ($_POST['lastmod'] == "on")) {
  1314.                 if (!file_exists($lastmod_sem)) {
  1315.                         touch($lastmod_sem);
  1316.                 }
  1317.         }
  1318.  
  1319.         if (!isset($_POST['lastmod']) or empty($_POST['lastmod'])) {
  1320.                 if (file_exists($lastmod_sem)) {
  1321.                         unlink($lastmod_sem);
  1322.                 }
  1323.         }
  1324.        
  1325.         if (isset($_POST['pdf']) and !empty($_POST['pdf']) and ($_POST['pdf'] == "on")) {
  1326.  
  1327.                 if (!file_exists("data/items/{$_REQUEST['entry']}/pdf")) {
  1328.                         mkdir("data/items/{$_REQUEST['entry']}/pdf");
  1329.                 }
  1330.  
  1331.                 if (!file_exists("data/items/{$_REQUEST['entry']}/pdf/file")) {
  1332.                         mkdir("data/items/{$_REQUEST['entry']}/pdf/file");
  1333.                 }
  1334.  
  1335.                 if (!file_exists("data/items/{$_REQUEST['entry']}/pdf/count")) {
  1336.                         mkdir("data/items/{$_REQUEST['entry']}/pdf/count");
  1337.                 }
  1338.        
  1339.                 $entry = $_REQUEST['entry'];
  1340.                 $author_file = "data/author.txt";
  1341.                 $title_file = "data/items/$entry/title.txt";
  1342.                 $date_file = "data/items/$entry/date.txt";
  1343.                 $body_file = "data/items/$entry/body.txt";
  1344.        
  1345.                 $author = file_get_contents($author_file);
  1346.                 $title = file_get_contents($title_file);
  1347.                 $date = file_get_contents($date_file);
  1348.        
  1349.                 $link = "<a href=\"http://{$_SERVER['SERVER_NAME']}{$_SERVER['PHP_SELF']}?entry=$entry\">http://{$_SERVER['SERVER_NAME']}{$_SERVER['PHP_SELF']}?entry=$entry</a>";
  1350.                 $link = str_replace("pdf.php?entry=","index.php?entry=",$link);
  1351.                 $link = str_replace("edit.php?entry=","index.php?entry=",$link);
  1352.        
  1353.                 $body = file_get_contents($body_file);
  1354.                 $body = str_replace("\n","<br />",$body);
  1355.        
  1356.                 $html = "<br><i>by $author</i><br><br>$date<br><br>Canonical Source<br>$link<br><br><br>$body";
  1357.        
  1358.                 $filename = strtolower($title);
  1359.                 $filename = strtolower($_SERVER['SERVER_NAME']) . "-" . $entry . "-" . $filename . ".pdf";
  1360.                 $filename = str_replace(" ","-",$filename);
  1361.                 $filename = "data/items/$entry/pdf/file/$filename";
  1362.        
  1363.                 require('fpdf.php');
  1364.        
  1365.                 class PDF extends FPDF
  1366.                 {
  1367.                         var $B;
  1368.                         var $I;
  1369.                         var $U;
  1370.                         var $HREF;
  1371.                        
  1372.                         function PDF($orientation='P',$unit='mm',$format='letter')
  1373.                         {
  1374.                             $this->FPDF($orientation,$unit,$format);
  1375.                             $this->B=0;
  1376.                             $this->I=0;
  1377.                             $this->U=0;
  1378.                             $this->HREF='';
  1379.                         }
  1380.                
  1381.                         function WriteHTML($html)
  1382.                         {
  1383.                             $html=str_replace("\n",' ',$html);
  1384.                             $a=preg_split('/<(.*)>/U',$html,-1,PREG_SPLIT_DELIM_CAPTURE);
  1385.                             foreach($a as $i=>$e)
  1386.                             {
  1387.                                 if($i%2==0)
  1388.                                 {
  1389.                                     if($this->HREF)
  1390.                                         $this->PutLink($this->HREF,$e);
  1391.                                     else
  1392.                                         $this->Write(5,$e);
  1393.                                 }
  1394.                                 else
  1395.                                 {
  1396.                                     if($e{0}=='/')
  1397.                                         $this->CloseTag(strtoupper(substr($e,1)));
  1398.                                     else
  1399.                                     {
  1400.                                         $a2=explode(' ',$e);
  1401.                                         $tag=strtoupper(array_shift($a2));
  1402.                                         $attr=array();
  1403.                                         foreach($a2 as $v)
  1404.                                             if(ereg('^([^=]*)=["\']?([^"\']*)["\']?$',$v,$a3))
  1405.                                                 $attr[strtoupper($a3[1])]=$a3[2];
  1406.                                         $this->OpenTag($tag,$attr);
  1407.                                     }
  1408.                                 }
  1409.                             }
  1410.                         }
  1411.                        
  1412.                         function OpenTag($tag,$attr)
  1413.                         {
  1414.                             if($tag=='B' or $tag=='I' or $tag=='U')
  1415.                                 $this->SetStyle($tag,true);
  1416.                             if($tag=='A')
  1417.                                 $this->HREF=$attr['HREF'];
  1418.                             if($tag=='BR')
  1419.                                 $this->Ln(5);
  1420.                         }
  1421.                        
  1422.                         function CloseTag($tag)
  1423.                         {
  1424.                             if($tag=='B' or $tag=='I' or $tag=='U')
  1425.                                 $this->SetStyle($tag,false);
  1426.                             if($tag=='A')
  1427.                                 $this->HREF='';
  1428.                         }
  1429.                        
  1430.                         function SetStyle($tag,$enable)
  1431.                         {
  1432.                             $this->$tag+=($enable ? 1 : -1);
  1433.                             $style='';
  1434.                             foreach(array('B','I','U') as $s)
  1435.                                 if($this->$s>0)
  1436.                                     $style.=$s;
  1437.                             $this->SetFont('',$style);
  1438.                         }
  1439.                        
  1440.                         function PutLink($URL,$txt)
  1441.                         {
  1442.                             $this->SetTextColor(0,0,255);
  1443.                             $this->SetStyle('U',true);
  1444.                             $this->Write(5,$txt,$URL);
  1445.                             $this->SetStyle('U',false);
  1446.                             $this->SetTextColor(0);
  1447.                         }
  1448.                 }
  1449.        
  1450.                 $pdf=new PDF();
  1451.                 $pdf->AddPage();
  1452.                 $pdf->SetTitle($title);
  1453.                 $pdf->SetAuthor($author);
  1454.                 $pdf->SetFont('Helvetica','B',14);
  1455.                 $pdf->WriteHTML($title);
  1456.                 $pdf->SetFont('Helvetica','',10);
  1457.                 $pdf->WriteHTML($html);
  1458.                 $pdf->Output($filename);
  1459.         }
  1460.        
  1461.         if (!isset($_POST['pdf']) or empty($_POST['pdf'])) {
  1462.                 if (file_exists("data/items/{$_REQUEST['entry']}/pdf/file")) {
  1463.                         rmdirr("data/items/{$_REQUEST['entry']}/pdf/file");
  1464.                 }
  1465.         }
  1466.  
  1467.         $passwd_file = "data/items/{$_REQUEST['entry']}/passwd.txt";
  1468.  
  1469.         if (isset($_POST['passwd']) and !empty($_POST['passwd']) and ($_POST['passwd'] != "password")) {
  1470.                 $fp_passwd_txt = fopen("$passwd_file","w");
  1471.                 $passwd_crypt = sha1($_POST['passwd']);
  1472.                 $passwd_crypt = md5($passwd_crypt);
  1473.                 $passwd_crypt = crypt($passwd_crypt, $passwd_crypt);
  1474.                 fwrite($fp_passwd_txt, $passwd_crypt);
  1475.                 fclose($fp_passwd_txt);
  1476.         }
  1477.  
  1478.         if (!isset($_POST['passwd']) or empty($_POST['passwd'])) {
  1479.                 if (file_exists($passwd_file)) {
  1480.                         unlink($passwd_file);
  1481.                 }
  1482.         }
  1483.  
  1484.         if (isset($_POST['maxlines']) and !empty($_POST['maxlines']) and is_numeric($_POST['maxlines'])) {
  1485.                 $fp_maxlines_txt = fopen("data/items/{$_REQUEST['entry']}/maxlines.txt","w");
  1486.                 fwrite($fp_maxlines_txt, $_POST['maxlines']);
  1487.                 fclose($fp_maxlines_txt);
  1488.         }
  1489.  
  1490.         if (!isset($_POST['maxlines']) or empty($_POST['maxlines'])) {
  1491.                 if (file_exists("data/items/{$_REQUEST['entry']}/maxlines.txt")) {
  1492.                         unlink("data/items/{$_REQUEST['entry']}/maxlines.txt");
  1493.                 }
  1494.         }
  1495. }
  1496.  
  1497. if (file_exists("data/items/{$_REQUEST['entry']}/title.old")) {
  1498.         unlink("data/items/{$_REQUEST['entry']}/title.old");
  1499. }
  1500.  
  1501. if (file_exists("data/items/{$_REQUEST['entry']}/body.old")) {
  1502.         unlink("data/items/{$_REQUEST['entry']}/body.old");
  1503. }
  1504.  
  1505. if (file_exists("data/ping.txt")) {
  1506.  
  1507.         $ping_urls = explode("|", file_get_contents("data/ping.txt"));
  1508.  
  1509.         foreach ($ping_urls as $ping_url) {
  1510.                 $ping = file_get_contents($ping_url);
  1511.                 unset($ping);
  1512.         }
  1513. }
  1514.  
  1515. ?>
  1516.  
filedropmaj.git-01822e4.tar.bz2
147.95 KB
82 downloads
filedropmaj.git-01822e4.zip
201.96 KB
29 downloads
filedropmaj.git-0291349.tar.bz2
152.85 KB
81 downloads
filedropmaj.git-0291349.zip
211.90 KB
29 downloads
filedropmaj.git-02cb3b7.tar.bz2
151.48 KB
84 downloads
filedropmaj.git-02cb3b7.zip
209.82 KB
29 downloads
filedropmaj.git-0811dd5.tar.bz2
152.90 KB
79 downloads
filedropmaj.git-0811dd5.zip
211.90 KB
27 downloads
filedropmaj.git-083625f.tar.bz2
132.92 KB
77 downloads
filedropmaj.git-083625f.zip
179.59 KB
29 downloads
filedropmaj.git-0885d7b.tar.bz2
92.63 KB
79 downloads
filedropmaj.git-0885d7b.zip
132.34 KB
26 downloads
filedropmaj.git-09c6f33.tar.bz2
151.51 KB
79 downloads
filedropmaj.git-09c6f33.zip
202.12 KB
27 downloads
filedropmaj.git-0b26a85.tar.bz2
151.44 KB
75 downloads
filedropmaj.git-0b26a85.zip
209.75 KB
25 downloads
filedropmaj.git-0b32424.tar.bz2
151.66 KB
78 downloads
filedropmaj.git-0b32424.zip
206.72 KB
25 downloads
filedropmaj.git-0f3ac59.tar.bz2
152.14 KB
75 downloads
filedropmaj.git-0f3ac59.zip
211.45 KB
22 downloads
filedropmaj.git-11d4582.tar.bz2
143.02 KB
7 downloads
filedropmaj.git-11d4582.zip
195.12 KB
21 downloads
filedropmaj.git-17f105a.tar.bz2
137.96 KB
73 downloads
filedropmaj.git-17f105a.zip
193.02 KB
21 downloads
filedropmaj.git-183270b.tar.bz2
137.54 KB
77 downloads
filedropmaj.git-183270b.zip
187.93 KB
22 downloads
filedropmaj.git-197a49d.tar.bz2
152.03 KB
74 downloads
filedropmaj.git-197a49d.zip
211.32 KB
24 downloads
filedropmaj.git-1b9af25.tar.bz2
152.87 KB
70 downloads
filedropmaj.git-1b9af25.zip
211.96 KB
21 downloads
filedropmaj.git-1be2914.tar.bz2
149.30 KB
71 downloads
filedropmaj.git-1be2914.zip
203.09 KB
20 downloads
filedropmaj.git-1bed800.tar.bz2
138.15 KB
68 downloads
filedropmaj.git-1bed800.zip
190.15 KB
24 downloads
filedropmaj.git-1d330de.tar.bz2
151.65 KB
71 downloads
filedropmaj.git-1d330de.zip
210.80 KB
22 downloads
filedropmaj.git-1df190d.tar.bz2
151.72 KB
72 downloads
filedropmaj.git-1df190d.zip
210.85 KB
20 downloads
filedropmaj.git-1ee1167.tar.bz2
151.52 KB
72 downloads
filedropmaj.git-1ee1167.zip
202.16 KB
21 downloads
filedropmaj.git-2057838.tar.bz2
151.76 KB
68 downloads
filedropmaj.git-2057838.zip
202.36 KB
20 downloads
filedropmaj.git-2075213.tar.bz2
155.81 KB
69 downloads
filedropmaj.git-2075213.zip
208.39 KB
20 downloads
filedropmaj.git-211b7b0.tar.bz2
142.53 KB
71 downloads
filedropmaj.git-211b7b0.zip
194.64 KB
21 downloads
filedropmaj.git-2331f5a.tar.bz2
75.55 KB
73 downloads
filedropmaj.git-2331f5a.zip
100.32 KB
23 downloads
filedropmaj.git-25e3c4c.tar.bz2
147.57 KB
71 downloads
filedropmaj.git-25e3c4c.zip
201.46 KB
20 downloads
filedropmaj.git-2622313.tar.bz2
151.47 KB
68 downloads
filedropmaj.git-2622313.zip
206.44 KB
18 downloads
filedropmaj.git-273e4b2.tar.bz2
152.60 KB
68 downloads
filedropmaj.git-273e4b2.zip
203.40 KB
22 downloads
filedropmaj.git-2753e51.tar.bz2
136.37 KB
73 downloads
filedropmaj.git-2753e51.zip
184.34 KB
19 downloads
filedropmaj.git-2c1a589.tar.bz2
155.89 KB
67 downloads
filedropmaj.git-2c1a589.zip
208.69 KB
20 downloads
filedropmaj.git-2c3d544.tar.bz2
151.33 KB
10 downloads
filedropmaj.git-2c3d544.zip
206.23 KB
21 downloads
filedropmaj.git-2c85f72.tar.bz2
143.23 KB
67 downloads
filedropmaj.git-2c85f72.zip
194.84 KB
18 downloads
filedropmaj.git-2dc622c.tar.bz2
151.76 KB
67 downloads
filedropmaj.git-2dc622c.zip
202.35 KB
21 downloads
filedropmaj.git-2fabf8a.tar.bz2
151.35 KB
70 downloads
filedropmaj.git-2fabf8a.zip
206.24 KB
22 downloads
filedropmaj.git-322736b.tar.bz2
137.81 KB
62 downloads
filedropmaj.git-322736b.zip
190.18 KB
20 downloads
filedropmaj.git-374279c.tar.bz2
137.54 KB
63 downloads
filedropmaj.git-374279c.zip
189.58 KB
19 downloads
filedropmaj.git-37e852d.tar.bz2
151.32 KB
58 downloads
filedropmaj.git-37e852d.zip
206.21 KB
18 downloads
filedropmaj.git-38636de.tar.bz2
147.35 KB
60 downloads
filedropmaj.git-38636de.zip
201.16 KB
76 downloads
filedropmaj.git-3b25d71.tar.bz2
147.88 KB
53 downloads
filedropmaj.git-3b25d71.zip
201.85 KB
20 downloads
filedropmaj.git-3b6df7a.tar.bz2
153.39 KB
49 downloads
filedropmaj.git-3b6df7a.zip
204.55 KB
24 downloads
filedropmaj.git-3bf6bd2.tar.bz2
137.77 KB
54 downloads
filedropmaj.git-3bf6bd2.zip
190.16 KB
21 downloads
filedropmaj.git-3e012ff.tar.bz2
152.83 KB
53 downloads
filedropmaj.git-3e012ff.zip
211.89 KB
23 downloads
filedropmaj.git-4129ab8.tar.bz2
135.86 KB
60 downloads
filedropmaj.git-4129ab8.zip
184.30 KB
21 downloads
filedropmaj.git-414dbb4.tar.bz2
91.09 KB
58 downloads
filedropmaj.git-414dbb4.zip
130.29 KB
21 downloads
filedropmaj.git-43755d0.tar.bz2
150.25 KB
51 downloads
filedropmaj.git-43755d0.zip
204.44 KB
21 downloads
filedropmaj.git-4c20005.tar.bz2
55.59 KB
52 downloads
filedropmaj.git-4c20005.zip
74.20 KB
21 downloads
filedropmaj.git-4ccdbcd.tar.bz2
136.38 KB
55 downloads
filedropmaj.git-4ccdbcd.zip
185.22 KB
23 downloads
filedropmaj.git-4cd1a1c.tar.bz2
155.25 KB
51 downloads
filedropmaj.git-4cd1a1c.zip
207.88 KB
24 downloads
filedropmaj.git-4cf16d1.tar.bz2
76.32 KB
56 downloads
filedropmaj.git-4cf16d1.zip
101.80 KB
19 downloads
filedropmaj.git-4ec45a0.tar.bz2
131.16 KB
52 downloads
filedropmaj.git-4ec45a0.zip
172.66 KB
21 downloads
filedropmaj.git-4f73c22.tar.bz2
134.46 KB
52 downloads
filedropmaj.git-4f73c22.zip
182.45 KB
20 downloads
filedropmaj.git-5457969.tar.bz2
155.21 KB
54 downloads
filedropmaj.git-5457969.zip
207.63 KB
21 downloads
filedropmaj.git-57ee8a1.tar.bz2
145.49 KB
56 downloads
filedropmaj.git-57ee8a1.zip
198.12 KB
73 downloads
filedropmaj.git-592978d.tar.bz2
138.38 KB
54 downloads
filedropmaj.git-592978d.zip
190.58 KB
18 downloads
filedropmaj.git-5935b42.tar.bz2
135.60 KB
51 downloads
filedropmaj.git-5935b42.zip
183.28 KB
22 downloads
filedropmaj.git-5b443b6.tar.bz2
152.00 KB
54 downloads
filedropmaj.git-5b443b6.zip
211.07 KB
20 downloads
filedropmaj.git-5b4a9bf.tar.bz2
155.29 KB
50 downloads
filedropmaj.git-5b4a9bf.zip
207.93 KB
19 downloads
filedropmaj.git-5b6c01d.tar.bz2
147.13 KB
52 downloads
filedropmaj.git-5b6c01d.zip
200.86 KB
23 downloads
filedropmaj.git-5da45f7.tar.bz2
147.27 KB
52 downloads
filedropmaj.git-5da45f7.zip
201.02 KB
20 downloads
filedropmaj.git-5e53618.tar.bz2
75.57 KB
56 downloads
filedropmaj.git-5e53618.zip
100.78 KB
21 downloads
filedropmaj.git-5f8ca35.tar.bz2
136.39 KB
50 downloads
filedropmaj.git-5f8ca35.zip
185.32 KB
20 downloads
filedropmaj.git-61e3d7b.tar.bz2
153.52 KB
50 downloads
filedropmaj.git-61e3d7b.zip
204.73 KB
21 downloads
filedropmaj.git-62a635c.tar.bz2
155.90 KB
54 downloads
filedropmaj.git-62a635c.zip
208.73 KB
21 downloads
filedropmaj.git-6390d34.tar.bz2
138.39 KB
54 downloads
filedropmaj.git-6390d34.zip
190.56 KB
24 downloads
filedropmaj.git-649dfbe.tar.bz2
151.78 KB
53 downloads
filedropmaj.git-649dfbe.zip
210.91 KB
21 downloads
filedropmaj.git-65d6570.tar.bz2
151.63 KB
56 downloads
filedropmaj.git-65d6570.zip
210.80 KB
23 downloads
filedropmaj.git-660433f.tar.bz2
151.67 KB
53 downloads
filedropmaj.git-660433f.zip
206.68 KB
21 downloads
filedropmaj.git-6619ae5.tar.bz2
153.23 KB
11 downloads
filedropmaj.git-6619ae5.zip
204.28 KB
20 downloads
filedropmaj.git-68e4e3a.tar.bz2
135.13 KB
51 downloads
filedropmaj.git-68e4e3a.zip
182.91 KB
20 downloads
filedropmaj.git-6995297.tar.bz2
144.93 KB
56 downloads
filedropmaj.git-6995297.zip
197.18 KB
18 downloads
filedropmaj.git-69d6fd3.tar.bz2
143.23 KB
51 downloads
filedropmaj.git-69d6fd3.zip
194.89 KB
23 downloads
filedropmaj.git-6aa872a.tar.bz2
142.95 KB
55 downloads
filedropmaj.git-6aa872a.zip
195.11 KB
22 downloads
filedropmaj.git-6bad5c7.tar.bz2
147.04 KB
56 downloads
filedropmaj.git-6bad5c7.zip
200.79 KB
21 downloads
filedropmaj.git-6e96a2d.tar.bz2
152.13 KB
55 downloads
filedropmaj.git-6e96a2d.zip
207.21 KB
74 downloads
filedropmaj.git-73d46de.tar.bz2
138.42 KB
52 downloads
filedropmaj.git-73d46de.zip
190.59 KB
20 downloads
filedropmaj.git-75e0478.tar.bz2
144.54 KB
56 downloads
filedropmaj.git-75e0478.zip
196.70 KB
22 downloads
filedropmaj.git-784fc35.tar.bz2
143.07 KB
55 downloads
filedropmaj.git-784fc35.zip
195.01 KB
20 downloads
filedropmaj.git-7872a83.tar.bz2
138.51 KB
56 downloads
filedropmaj.git-7872a83.zip
190.69 KB
19 downloads
filedropmaj.git-788fb89.tar.bz2
138.30 KB
54 downloads
filedropmaj.git-788fb89.zip
191.26 KB
25 downloads
filedropmaj.git-796d8a3.tar.bz2
138.92 KB
53 downloads
filedropmaj.git-796d8a3.zip
191.24 KB
20 downloads
filedropmaj.git-79a5e8d.tar.bz2
132.43 KB
55 downloads
filedropmaj.git-79a5e8d.zip
176.90 KB
21 downloads
filedropmaj.git-7b3b2e0.tar.bz2
147.24 KB
53 downloads
filedropmaj.git-7b3b2e0.zip
201.05 KB
21 downloads
filedropmaj.git-7e28eed.tar.bz2
138.89 KB
50 downloads
filedropmaj.git-7e28eed.zip
191.24 KB
21 downloads
filedropmaj.git-8279296.tar.bz2
135.56 KB
55 downloads
filedropmaj.git-8279296.zip
183.25 KB
21 downloads
filedropmaj.git-84c17fe.tar.bz2
152.87 KB
56 downloads
filedropmaj.git-84c17fe.zip
211.90 KB
21 downloads
filedropmaj.git-87c5d5f.tar.bz2
135.78 KB
53 downloads
filedropmaj.git-87c5d5f.zip
183.64 KB
19 downloads
filedropmaj.git-8a48901.tar.bz2
147.27 KB
55 downloads
filedropmaj.git-8a48901.zip
201.06 KB
21 downloads
filedropmaj.git-8ad9892.tar.bz2
164.04 KB
53 downloads
filedropmaj.git-8ad9892.zip
224.42 KB
20 downloads
filedropmaj.git-8b4cf2a.tar.bz2
134.06 KB
53 downloads
filedropmaj.git-8b4cf2a.zip
180.78 KB
21 downloads
filedropmaj.git-8b7e38d.tar.bz2
138.04 KB
60 downloads
filedropmaj.git-8b7e38d.zip
190.39 KB
77 downloads
filedropmaj.git-8df6e40.tar.bz2
143.11 KB
56 downloads
filedropmaj.git-8df6e40.zip
194.66 KB
25 downloads
filedropmaj.git-8e80c84.tar.bz2
138.18 KB
10 downloads
filedropmaj.git-8e80c84.zip
190.30 KB
21 downloads
filedropmaj.git-8ec0fba.tar.bz2
138.37 KB
56 downloads
filedropmaj.git-8ec0fba.zip
191.39 KB
20 downloads
filedropmaj.git-8f7abf6.tar.bz2
153.36 KB
55 downloads
filedropmaj.git-8f7abf6.zip
211.80 KB
19 downloads
filedropmaj.git-923f11a.tar.bz2
138.14 KB
52 downloads
filedropmaj.git-923f11a.zip
191.03 KB
22 downloads
filedropmaj.git-955e82e.tar.bz2
42.71 KB
6 downloads
filedropmaj.git-955e82e.zip
59.77 KB
20 downloads
filedropmaj.git-95add4a.tar.bz2
151.23 KB
57 downloads
filedropmaj.git-95add4a.zip
205.91 KB
20 downloads
filedropmaj.git-96fe0ba.tar.bz2
137.68 KB
48 downloads
filedropmaj.git-96fe0ba.zip
190.34 KB
20 downloads
filedropmaj.git-99a90ce.tar.bz2
137.82 KB
57 downloads
filedropmaj.git-99a90ce.zip
191.20 KB
23 downloads
filedropmaj.git-9a69bb9.tar.bz2
143.19 KB
56 downloads
filedropmaj.git-9a69bb9.zip
194.70 KB
22 downloads
filedropmaj.git-9b6538e.tar.bz2
151.45 KB
54 downloads
filedropmaj.git-9b6538e.zip
202.15 KB
18 downloads
filedropmaj.git-9c4292d.tar.bz2
132.06 KB
55 downloads
filedropmaj.git-9c4292d.zip
176.93 KB
20 downloads
filedropmaj.git-9c78d40.tar.bz2
137.70 KB
54 downloads
filedropmaj.git-9c78d40.zip
190.49 KB
23 downloads
filedropmaj.git-9f1363f.tar.bz2
43.12 KB
57 downloads
filedropmaj.git-9f1363f.zip
60.31 KB
20 downloads
filedropmaj.git-a16c3eb.tar.bz2
90.22 KB
51 downloads
filedropmaj.git-a16c3eb.zip
128.62 KB
20 downloads
filedropmaj.git-a3aa72d.tar.bz2
153.00 KB
54 downloads
filedropmaj.git-a3aa72d.zip
203.86 KB
22 downloads
filedropmaj.git-a6886e4.tar.bz2
144.69 KB
55 downloads
filedropmaj.git-a6886e4.zip
196.95 KB
21 downloads
filedropmaj.git-a8669dc.tar.bz2
135.60 KB
53 downloads
filedropmaj.git-a8669dc.zip
183.34 KB
20 downloads
filedropmaj.git-a9477f1.tar.bz2
135.59 KB
55 downloads
filedropmaj.git-a9477f1.zip
183.45 KB
22 downloads
filedropmaj.git-aa285db.tar.bz2
151.73 KB
55 downloads
filedropmaj.git-aa285db.zip
210.85 KB
20 downloads
filedropmaj.git-aa6ae87.tar.bz2
135.44 KB
55 downloads
filedropmaj.git-aa6ae87.zip
183.88 KB
21 downloads
filedropmaj.git-ab6bc22.tar.bz2
151.71 KB
49 downloads
filedropmaj.git-ab6bc22.zip
210.84 KB
23 downloads
filedropmaj.git-adef726.tar.bz2
153.48 KB
52 downloads
filedropmaj.git-adef726.zip
212.32 KB
21 downloads
filedropmaj.git-afe5877.tar.bz2
144.73 KB
49 downloads
filedropmaj.git-afe5877.zip
197.01 KB
20 downloads
filedropmaj.git-b2d9f8e.tar.bz2
133.22 KB
51 downloads
filedropmaj.git-b2d9f8e.zip
179.27 KB
20 downloads
filedropmaj.git-b41f320.tar.bz2
151.56 KB
50 downloads
filedropmaj.git-b41f320.zip
209.85 KB
25 downloads
filedropmaj.git-b4432ce.tar.bz2
152.96 KB
52 downloads
filedropmaj.git-b4432ce.zip
203.86 KB
22 downloads
filedropmaj.git-b67b08f.tar.bz2
151.27 KB
53 downloads
filedropmaj.git-b67b08f.zip
206.15 KB
23 downloads
filedropmaj.git-b899831.tar.bz2
143.12 KB
53 downloads
filedropmaj.git-b899831.zip
194.60 KB
21 downloads
filedropmaj.git-b8b49c1.tar.bz2
132.59 KB
50 downloads
filedropmaj.git-b8b49c1.zip
178.90 KB
19 downloads
filedropmaj.git-b9c5bcf.tar.bz2
155.92 KB
52 downloads
filedropmaj.git-b9c5bcf.zip
208.70 KB
19 downloads
filedropmaj.git-bbddb1f.tar.bz2
151.63 KB
51 downloads
filedropmaj.git-bbddb1f.zip
209.92 KB
23 downloads
filedropmaj.git-bcaa744.tar.bz2
146.98 KB
55 downloads
filedropmaj.git-bcaa744.zip
200.79 KB
22 downloads
filedropmaj.git-c1ff9dc.tar.bz2
138.39 KB
54 downloads
filedropmaj.git-c1ff9dc.zip
191.43 KB
104 downloads
filedropmaj.git-c20c4b0.tar.bz2
151.64 KB
53 downloads
filedropmaj.git-c20c4b0.zip
210.79 KB
19 downloads
filedropmaj.git-c37f3f7.tar.bz2
145.45 KB
68 downloads
filedropmaj.git-c37f3f7.zip
198.11 KB
30 downloads
filedropmaj.git-c532394.tar.bz2
146.39 KB
54 downloads
filedropmaj.git-c532394.zip
199.91 KB
23 downloads
filedropmaj.git-c6317a4.tar.bz2
152.01 KB
52 downloads
filedropmaj.git-c6317a4.zip
207.08 KB
21 downloads
filedropmaj.git-c748176.tar.bz2
89.44 KB
52 downloads
filedropmaj.git-c748176.zip
126.35 KB
21 downloads
filedropmaj.git-c9ed81f.tar.bz2
135.56 KB
52 downloads
filedropmaj.git-c9ed81f.zip
183.28 KB
23 downloads
filedropmaj.git-c9f9b80.tar.bz2
138.50 KB
51 downloads
filedropmaj.git-c9f9b80.zip
190.66 KB
22 downloads
filedropmaj.git-ca65b73.tar.bz2
152.69 KB
52 downloads
filedropmaj.git-ca65b73.zip
207.87 KB
21 downloads
filedropmaj.git-cd80b77.tar.bz2
153.12 KB
52 downloads
filedropmaj.git-cd80b77.zip
212.01 KB
19 downloads
filedropmaj.git-cffbb2a.tar.bz2
138.22 KB
50 downloads
filedropmaj.git-cffbb2a.zip
190.28 KB
22 downloads
filedropmaj.git-d061ad7.tar.bz2
55.78 KB
68 downloads
filedropmaj.git-d061ad7.zip
74.39 KB
22 downloads
filedropmaj.git-d0af4d6.tar.bz2
57.28 KB
53 downloads
filedropmaj.git-d0af4d6.zip
78.56 KB
22 downloads
filedropmaj.git-d1caa0a.tar.bz2
144.57 KB
55 downloads
filedropmaj.git-d1caa0a.zip
196.63 KB
22 downloads
filedropmaj.git-d5679b5.tar.bz2
152.37 KB
53 downloads
filedropmaj.git-d5679b5.zip
207.52 KB
23 downloads
filedropmaj.git-d72f459.tar.bz2
147.90 KB
55 downloads
filedropmaj.git-d72f459.zip
201.92 KB
18 downloads
filedropmaj.git-d958c91.tar.bz2
144.67 KB
55 downloads
filedropmaj.git-d958c91.zip
196.88 KB
25 downloads
filedropmaj.git-d96784f.tar.bz2
135.58 KB
52 downloads
filedropmaj.git-d96784f.zip
183.46 KB
20 downloads
filedropmaj.git-da4b73f.tar.bz2
152.62 KB
49 downloads
filedropmaj.git-da4b73f.zip
203.48 KB
21 downloads
filedropmaj.git-dd24240.tar.bz2
138.27 KB
51 downloads
filedropmaj.git-dd24240.zip
190.45 KB
80 downloads
filedropmaj.git-e11e772.tar.bz2
152.09 KB
50 downloads
filedropmaj.git-e11e772.zip
211.33 KB
20 downloads
filedropmaj.git-e61478e.tar.bz2
135.95 KB
54 downloads
filedropmaj.git-e61478e.zip
183.91 KB
21 downloads
filedropmaj.git-e7a2547.tar.bz2
133.80 KB
49 downloads
filedropmaj.git-e7a2547.zip
180.05 KB
24 downloads
filedropmaj.git-e8a3b95.tar.bz2
138.15 KB
56 downloads
filedropmaj.git-e8a3b95.zip
191.04 KB
19 downloads
filedropmaj.git-eac86d5.tar.bz2
155.65 KB
51 downloads
filedropmaj.git-eac86d5.zip
208.28 KB
22 downloads
filedropmaj.git-ed83bf9.tar.bz2
135.16 KB
54 downloads
filedropmaj.git-ed83bf9.zip
182.91 KB
24 downloads
filedropmaj.git-ee50d40.tar.bz2
135.59 KB
57 downloads
filedropmaj.git-ee50d40.zip
183.48 KB
25 downloads
filedropmaj.git-efdb4df.tar.bz2
155.87 KB
58 downloads
filedropmaj.git-efdb4df.zip
208.72 KB
24 downloads
filedropmaj.git-f1554f8.tar.bz2
151.30 KB
57 downloads
filedropmaj.git-f1554f8.zip
206.22 KB
25 downloads
filedropmaj.git-f72a07b.tar.bz2
153.44 KB
56 downloads
filedropmaj.git-f72a07b.zip
212.11 KB
26 downloads
filedropmaj.git-f7ea5a1.tar.bz2
147.46 KB
55 downloads
filedropmaj.git-f7ea5a1.zip
201.32 KB
26 downloads
filedropmaj.git-f8a7353.tar.bz2
138.49 KB
56 downloads
filedropmaj.git-f8a7353.zip
190.66 KB
27 downloads
filedropmaj.git-fb84a8d.tar.bz2
137.61 KB
61 downloads
filedropmaj.git-fb84a8d.zip
190.70 KB
28 downloads
filedropmaj.git-fdcf5d3.tar.bz2
152.34 KB
60 downloads
filedropmaj.git-fdcf5d3.zip
207.53 KB
27 downloads
filedropmaj.git-feca42d.tar.bz2
132.90 KB
60 downloads
filedropmaj.git-feca42d.zip
179.44 KB
30 downloads