@curl_setopt($ch, CURLOPT_HEADER, true);
+ @curl_setopt($ch, CURLOPT_FOLLOWLOCATION, true);
+ @curl_setopt($ch, CURLOPT_MAXREDIRS, 5);
+
if (!is_null($accept_content)){
curl_setopt($ch,CURLOPT_HTTPHEADER, array (
"Accept: " . $accept_content
function post_url($url,$params, $headers = null, &$redirects = 0, $timeout = 0) {
$a = get_app();
$ch = curl_init($url);
- if(($redirects > 8) || (! $ch))
+ if(($redirects > 8) || (! $ch))
return false;
curl_setopt($ch, CURLOPT_HEADER, true);
if(! function_exists('validate_email')) {
function validate_email($addr) {
+ if(get_config('system','disable_email_validation'))
+ return true;
+
if(! strpos($addr,'@'))
return false;
$h = substr($addr,strpos($addr,'@') + 1);
$a = get_app();
+ // Picture addresses can contain special characters
+ $s = htmlspecialchars_decode($s);
+
$matches = null;
- $c = preg_match_all('/\[img\](.*?)\[\/img\]/ism',$s,$matches,PREG_SET_ORDER);
+ $c = preg_match_all('/\[img.*?\](.*?)\[\/img\]/ism',$s,$matches,PREG_SET_ORDER);
if($c) {
require_once('include/Photo.php');
foreach($matches as $mtch) {
$scaled = $mtch[1];
$i = fetch_url($scaled);
+ $cachefile = get_cachefile(hash("md5", $scaled));
+ if ($cachefile != '')
+ file_put_contents($cachefile, $i);
+
// guess mimetype from headers or filename
$type = guess_image_type($mtch[1],true);
-
+
if($i) {
$ph = new Photo($i, $type);
if($ph->is_valid()) {
}
}
}
+
+ // replace the special char encoding
+ $s = htmlspecialchars($s,ENT_NOQUOTES,'UTF-8');
return $s;
}