mirror of https://github.com/BOINC/boinc.git
More utiliites for converting things to bbcode. This was needed because
otherwise the stuff in the signatures was totally messing up the forum pages. svn path=/trunk/boinc/; revision=8348
This commit is contained in:
parent
df4bc39cad
commit
cb260c471b
|
@ -59,6 +59,8 @@ function formatting_as_bb($text){
|
||||||
$in[]="<pre>";$out[]="[pre]";
|
$in[]="<pre>";$out[]="[pre]";
|
||||||
$in[]="</pre>";$out[]="[/pre]";
|
$in[]="</pre>";$out[]="[/pre]";
|
||||||
|
|
||||||
|
$in[]="</br>";$out[]="\n";
|
||||||
|
$in[]="<br/>";$out[]="\n";
|
||||||
$in[]="<br>";$out[]="\n";
|
$in[]="<br>";$out[]="\n";
|
||||||
$in[]=">";$out[]=">";
|
$in[]=">";$out[]=">";
|
||||||
$in[]="<";$out[]="<";
|
$in[]="<";$out[]="<";
|
||||||
|
|
|
@ -0,0 +1,122 @@
|
||||||
|
<?php
|
||||||
|
require_once("../inc/db.inc");
|
||||||
|
require_once("../inc/util.inc");
|
||||||
|
require_once('../inc/sanitize_html.inc');
|
||||||
|
db_init();
|
||||||
|
|
||||||
|
set_time_limit(0);
|
||||||
|
|
||||||
|
function image_as_bb($text){
|
||||||
|
// This function depends on sanitized HTML
|
||||||
|
|
||||||
|
$pattern = '@<img(.*) src=\"([^>^"]+)\"([^>]*)>@si';
|
||||||
|
$replacement = '[img]$2[/img]';
|
||||||
|
$text = preg_replace($pattern, $replacement, $text);
|
||||||
|
|
||||||
|
$pattern = "@<img(.*) src='([^>^']+)'([^>]*)>@si";
|
||||||
|
$replacement = '[img]$2[/img]';
|
||||||
|
$text = preg_replace($pattern, $replacement, $text);
|
||||||
|
|
||||||
|
return $text;
|
||||||
|
}
|
||||||
|
|
||||||
|
function link_as_bb($text){
|
||||||
|
/* This function depends on sanitized HTML */
|
||||||
|
// Build some regex (should be a *lot* faster)
|
||||||
|
$pattern = '@<a href=\"([^>]+)\">@si'; // Gives us the URL in $1...
|
||||||
|
$replacement = '[url=$1]'; // Turns that URL into a hyperlink
|
||||||
|
$text = preg_replace($pattern, $replacement, $text);
|
||||||
|
$pattern = "@<a href='([^>]+)'>@si"; // Gives us the URL in $1...
|
||||||
|
$replacement = '[url=$1]'; // Turns that URL into a hyperlink
|
||||||
|
$text = preg_replace($pattern, $replacement, $text);
|
||||||
|
|
||||||
|
$pattern = "@</a>@si";
|
||||||
|
$replacement = '[/url]';
|
||||||
|
$text = preg_replace($pattern, $replacement, $text);
|
||||||
|
return $text;
|
||||||
|
}
|
||||||
|
|
||||||
|
function formatting_as_bb($text){
|
||||||
|
/* This function depends on sanitized HTML */
|
||||||
|
$in[]="<b>";$out[]="[b]";
|
||||||
|
$in[]="</b>";$out[]="[/b]";
|
||||||
|
|
||||||
|
$in[]="<i>";$out[]="[i]";
|
||||||
|
$in[]="</i>";$out[]="[/i]";
|
||||||
|
|
||||||
|
$in[]="<u>";$out[]="[u]";
|
||||||
|
$in[]="</u>";$out[]="[/u]";
|
||||||
|
|
||||||
|
$in[]="<b>";$out[]="[b]";
|
||||||
|
$in[]="</b>";$out[]="[/b]";
|
||||||
|
|
||||||
|
$in[]="<ul>";$out[]="[list]";
|
||||||
|
$in[]="</ul>";$out[]="[/list]";
|
||||||
|
|
||||||
|
$in[]="<ol>";$out[]="[list=1]";
|
||||||
|
$in[]="</ol>";$out[]="[/list]";
|
||||||
|
|
||||||
|
$in[]="<pre>";$out[]="[pre]";
|
||||||
|
$in[]="</pre>";$out[]="[/pre]";
|
||||||
|
|
||||||
|
$in[]="</br>";$out[]="\n";
|
||||||
|
$in[]="<br/>";$out[]="\n";
|
||||||
|
$in[]="<br>";$out[]="\n";
|
||||||
|
$in[]=">";$out[]=">";
|
||||||
|
$in[]="<";$out[]="<";
|
||||||
|
$in[]="&";$out[]="&";
|
||||||
|
|
||||||
|
return str_replace($in, $out, $text);
|
||||||
|
}
|
||||||
|
|
||||||
|
function fix_text($text) {
|
||||||
|
$text = sanitize_html($text);
|
||||||
|
$text = image_as_bb($text);
|
||||||
|
$text = link_as_bb($text);
|
||||||
|
$text = formatting_as_bb($text);
|
||||||
|
return $text;
|
||||||
|
}
|
||||||
|
|
||||||
|
function fix_profile($profile) {
|
||||||
|
$text = fix_text($profile->response1);
|
||||||
|
if ($text != $profile->response1) {
|
||||||
|
$query = "update profile set response1 = '".mysql_escape_string($text)."' where userid=".$profile->userid;
|
||||||
|
//echo "$profile->response1\n\n";
|
||||||
|
//echo "$profile->thread $query\n\n";
|
||||||
|
$retval = mysql_query($query);
|
||||||
|
if (!$retval) {
|
||||||
|
echo mysql_error();
|
||||||
|
exit();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
function fix_profiles() {
|
||||||
|
$start_id = 0; //Set this to something else if you like
|
||||||
|
$profiles = mysql_query("select * from profile where userid>$start_id order by userid");
|
||||||
|
echo mysql_error();
|
||||||
|
$i=0;
|
||||||
|
while ($profile = mysql_fetch_object($profiles)){
|
||||||
|
$i++;
|
||||||
|
if ($i%100 == 0) { //For every 100 profiles
|
||||||
|
echo $profile->userid.". "; flush(); // print out where we are
|
||||||
|
//usleep(200000);
|
||||||
|
}
|
||||||
|
|
||||||
|
if ($profile->userid > $start_id){
|
||||||
|
fix_profile($profile);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
// use this to patch problem cases; hand-edit
|
||||||
|
function fix_fix() {
|
||||||
|
$profiles = mysql_query("select * from profile where id=99");
|
||||||
|
$profile = mysql_fetch_object($profiles);
|
||||||
|
fix_profile($profile);
|
||||||
|
}
|
||||||
|
|
||||||
|
fix_profiles();
|
||||||
|
//fix_fix();
|
||||||
|
|
||||||
|
?>
|
|
@ -0,0 +1,122 @@
|
||||||
|
<?php
|
||||||
|
require_once("../inc/db.inc");
|
||||||
|
require_once("../inc/util.inc");
|
||||||
|
require_once('../inc/sanitize_html.inc');
|
||||||
|
db_init();
|
||||||
|
|
||||||
|
set_time_limit(0);
|
||||||
|
|
||||||
|
function image_as_bb($text){
|
||||||
|
// This function depends on sanitized HTML
|
||||||
|
|
||||||
|
$pattern = '@<img(.*) src=\"([^>^"]+)\"([^>]*)>@si';
|
||||||
|
$replacement = '[img]$2[/img]';
|
||||||
|
$text = preg_replace($pattern, $replacement, $text);
|
||||||
|
|
||||||
|
$pattern = "@<img(.*) src='([^>^']+)'([^>]*)>@si";
|
||||||
|
$replacement = '[img]$2[/img]';
|
||||||
|
$text = preg_replace($pattern, $replacement, $text);
|
||||||
|
|
||||||
|
return $text;
|
||||||
|
}
|
||||||
|
|
||||||
|
function link_as_bb($text){
|
||||||
|
/* This function depends on sanitized HTML */
|
||||||
|
// Build some regex (should be a *lot* faster)
|
||||||
|
$pattern = '@<a href=\"([^>]+)\">@si'; // Gives us the URL in $1...
|
||||||
|
$replacement = '[url=$1]'; // Turns that URL into a hyperlink
|
||||||
|
$text = preg_replace($pattern, $replacement, $text);
|
||||||
|
$pattern = "@<a href='([^>]+)'>@si"; // Gives us the URL in $1...
|
||||||
|
$replacement = '[url=$1]'; // Turns that URL into a hyperlink
|
||||||
|
$text = preg_replace($pattern, $replacement, $text);
|
||||||
|
|
||||||
|
$pattern = "@</a>@si";
|
||||||
|
$replacement = '[/url]';
|
||||||
|
$text = preg_replace($pattern, $replacement, $text);
|
||||||
|
return $text;
|
||||||
|
}
|
||||||
|
|
||||||
|
function formatting_as_bb($text){
|
||||||
|
/* This function depends on sanitized HTML */
|
||||||
|
$in[]="<b>";$out[]="[b]";
|
||||||
|
$in[]="</b>";$out[]="[/b]";
|
||||||
|
|
||||||
|
$in[]="<i>";$out[]="[i]";
|
||||||
|
$in[]="</i>";$out[]="[/i]";
|
||||||
|
|
||||||
|
$in[]="<u>";$out[]="[u]";
|
||||||
|
$in[]="</u>";$out[]="[/u]";
|
||||||
|
|
||||||
|
$in[]="<b>";$out[]="[b]";
|
||||||
|
$in[]="</b>";$out[]="[/b]";
|
||||||
|
|
||||||
|
$in[]="<ul>";$out[]="[list]";
|
||||||
|
$in[]="</ul>";$out[]="[/list]";
|
||||||
|
|
||||||
|
$in[]="<ol>";$out[]="[list=1]";
|
||||||
|
$in[]="</ol>";$out[]="[/list]";
|
||||||
|
|
||||||
|
$in[]="<pre>";$out[]="[pre]";
|
||||||
|
$in[]="</pre>";$out[]="[/pre]";
|
||||||
|
|
||||||
|
$in[]="</br>";$out[]="\n";
|
||||||
|
$in[]="<br/>";$out[]="\n";
|
||||||
|
$in[]="<br>";$out[]="\n";
|
||||||
|
$in[]=">";$out[]=">";
|
||||||
|
$in[]="<";$out[]="<";
|
||||||
|
$in[]="&";$out[]="&";
|
||||||
|
|
||||||
|
return str_replace($in, $out, $text);
|
||||||
|
}
|
||||||
|
|
||||||
|
function fix_text($text) {
|
||||||
|
$text = sanitize_html($text);
|
||||||
|
$text = image_as_bb($text);
|
||||||
|
$text = link_as_bb($text);
|
||||||
|
$text = formatting_as_bb($text);
|
||||||
|
return $text;
|
||||||
|
}
|
||||||
|
|
||||||
|
function fix_profile($profile) {
|
||||||
|
$text = fix_text($profile->response2);
|
||||||
|
if ($text != $profile->response2) {
|
||||||
|
$query = "update profile set response2 = '".mysql_escape_string($text)."' where userid=".$profile->userid;
|
||||||
|
//echo "$profile->response2\n\n";
|
||||||
|
//echo "$profile->thread $query\n\n";
|
||||||
|
$retval = mysql_query($query);
|
||||||
|
if (!$retval) {
|
||||||
|
echo mysql_error();
|
||||||
|
exit();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
function fix_profiles() {
|
||||||
|
$start_id = 0; //Set this to something else if you like
|
||||||
|
$profiles = mysql_query("select * from profile where userid>$start_id order by userid");
|
||||||
|
echo mysql_error();
|
||||||
|
$i=0;
|
||||||
|
while ($profile = mysql_fetch_object($profiles)){
|
||||||
|
$i++;
|
||||||
|
if ($i%100 == 0) { //For every 100 profiles
|
||||||
|
echo $profile->userid.". "; flush(); // print out where we are
|
||||||
|
//usleep(200000);
|
||||||
|
}
|
||||||
|
|
||||||
|
if ($profile->userid > $start_id){
|
||||||
|
fix_profile($profile);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
// use this to patch problem cases; hand-edit
|
||||||
|
function fix_fix() {
|
||||||
|
$profiles = mysql_query("select * from profile where id=99");
|
||||||
|
$profile = mysql_fetch_object($profiles);
|
||||||
|
fix_profile($profile);
|
||||||
|
}
|
||||||
|
|
||||||
|
fix_profiles();
|
||||||
|
//fix_fix();
|
||||||
|
|
||||||
|
?>
|
|
@ -0,0 +1,122 @@
|
||||||
|
<?php
|
||||||
|
require_once("../inc/db.inc");
|
||||||
|
require_once("../inc/util.inc");
|
||||||
|
require_once('../inc/sanitize_html.inc');
|
||||||
|
db_init();
|
||||||
|
|
||||||
|
set_time_limit(0);
|
||||||
|
|
||||||
|
function image_as_bb($text){
|
||||||
|
// This function depends on sanitized HTML
|
||||||
|
|
||||||
|
$pattern = '@<img(.*) src=\"([^>^"]+)\"([^>]*)>@si';
|
||||||
|
$replacement = '[img]$2[/img]';
|
||||||
|
$text = preg_replace($pattern, $replacement, $text);
|
||||||
|
|
||||||
|
$pattern = "@<img(.*) src='([^>^']+)'([^>]*)>@si";
|
||||||
|
$replacement = '[img]$2[/img]';
|
||||||
|
$text = preg_replace($pattern, $replacement, $text);
|
||||||
|
|
||||||
|
return $text;
|
||||||
|
}
|
||||||
|
|
||||||
|
function link_as_bb($text){
|
||||||
|
/* This function depends on sanitized HTML */
|
||||||
|
// Build some regex (should be a *lot* faster)
|
||||||
|
$pattern = '@<a href=\"([^>]+)\">@si'; // Gives us the URL in $1...
|
||||||
|
$replacement = '[url=$1]'; // Turns that URL into a hyperlink
|
||||||
|
$text = preg_replace($pattern, $replacement, $text);
|
||||||
|
$pattern = "@<a href='([^>]+)'>@si"; // Gives us the URL in $1...
|
||||||
|
$replacement = '[url=$1]'; // Turns that URL into a hyperlink
|
||||||
|
$text = preg_replace($pattern, $replacement, $text);
|
||||||
|
|
||||||
|
$pattern = "@</a>@si";
|
||||||
|
$replacement = '[/url]';
|
||||||
|
$text = preg_replace($pattern, $replacement, $text);
|
||||||
|
return $text;
|
||||||
|
}
|
||||||
|
|
||||||
|
function formatting_as_bb($text){
|
||||||
|
/* This function depends on sanitized HTML */
|
||||||
|
$in[]="<b>";$out[]="[b]";
|
||||||
|
$in[]="</b>";$out[]="[/b]";
|
||||||
|
|
||||||
|
$in[]="<i>";$out[]="[i]";
|
||||||
|
$in[]="</i>";$out[]="[/i]";
|
||||||
|
|
||||||
|
$in[]="<u>";$out[]="[u]";
|
||||||
|
$in[]="</u>";$out[]="[/u]";
|
||||||
|
|
||||||
|
$in[]="<b>";$out[]="[b]";
|
||||||
|
$in[]="</b>";$out[]="[/b]";
|
||||||
|
|
||||||
|
$in[]="<ul>";$out[]="[list]";
|
||||||
|
$in[]="</ul>";$out[]="[/list]";
|
||||||
|
|
||||||
|
$in[]="<ol>";$out[]="[list=1]";
|
||||||
|
$in[]="</ol>";$out[]="[/list]";
|
||||||
|
|
||||||
|
$in[]="<pre>";$out[]="[pre]";
|
||||||
|
$in[]="</pre>";$out[]="[/pre]";
|
||||||
|
|
||||||
|
$in[]="</br>";$out[]="\n";
|
||||||
|
$in[]="<br/>";$out[]="\n";
|
||||||
|
$in[]="<br>";$out[]="\n";
|
||||||
|
$in[]=">";$out[]=">";
|
||||||
|
$in[]="<";$out[]="<";
|
||||||
|
$in[]="&";$out[]="&";
|
||||||
|
|
||||||
|
return str_replace($in, $out, $text);
|
||||||
|
}
|
||||||
|
|
||||||
|
function fix_text($text) {
|
||||||
|
$text = sanitize_html($text);
|
||||||
|
$text = image_as_bb($text);
|
||||||
|
$text = link_as_bb($text);
|
||||||
|
$text = formatting_as_bb($text);
|
||||||
|
return $text;
|
||||||
|
}
|
||||||
|
|
||||||
|
function fix_forum_preferences($forum_preferences) {
|
||||||
|
$text = fix_text($forum_preferences->signature);
|
||||||
|
if ($text != $forum_preferences->signature) {
|
||||||
|
$query = "update forum_preferences set signature = '".mysql_escape_string($text)."' where userid=".$forum_preferences->userid;
|
||||||
|
//echo "$forum_preferences->signature\n\n";
|
||||||
|
//echo "$forum_preferences->thread $query\n\n";
|
||||||
|
$retval = mysql_query($query);
|
||||||
|
if (!$retval) {
|
||||||
|
echo mysql_error();
|
||||||
|
exit();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
function fix_forum_preferencess() {
|
||||||
|
$start_id = 0; //Set this to something else if you like
|
||||||
|
$forum_preferencess = mysql_query("select * from forum_preferences where userid>$start_id order by userid");
|
||||||
|
echo mysql_error();
|
||||||
|
$i=0;
|
||||||
|
while ($forum_preferences = mysql_fetch_object($forum_preferencess)){
|
||||||
|
$i++;
|
||||||
|
if ($i%100 == 0) { //For every 100 forum_preferencess
|
||||||
|
echo $forum_preferences->userid.". "; flush(); // print out where we are
|
||||||
|
//usleep(200000);
|
||||||
|
}
|
||||||
|
|
||||||
|
if ($forum_preferences->userid > $start_id){
|
||||||
|
fix_forum_preferences($forum_preferences);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
// use this to patch problem cases; hand-edit
|
||||||
|
function fix_fix() {
|
||||||
|
$forum_preferencess = mysql_query("select * from forum_preferences where id=99");
|
||||||
|
$forum_preferences = mysql_fetch_object($forum_preferencess);
|
||||||
|
fix_forum_preferences($forum_preferences);
|
||||||
|
}
|
||||||
|
|
||||||
|
fix_forum_preferencess();
|
||||||
|
//fix_fix();
|
||||||
|
|
||||||
|
?>
|
Loading…
Reference in New Issue