XtGem Forum catalog
Wapsite đang trong quá trình nâng cấp các bạn hãy chờ đợi nhé. Cảm ơn !
16/10/2015 - 23:27


Module Đóng Dấu Bản Quyền ảnh Và Lưu ảnh Về Host Cho JohnCMS



Hôm này mình xin reshare lại Modules Đóng dấu ảnh và Import ảnh đã đóng dấu về Host Cho JohnCMS. Mod này khá hay, chỉ có điều sẽ làm cho Host của bạn tốn tìa nguyên(tốn Disk)
Nói sơ qua về chức năng của nó: khi các bạn dùng BBCode [img]...[/img] thì ảnh đó sẽ được đóng dấu bản quyền, sau khi đóng dấu xong thì nó sẽ lưu lại bức ảnh đã đóng dấu vào một thư mục trực tiếp trên Host.
Bắt đầu nhé:
Đầu tiên kiếm một cái logo để đóng dấu rồi cho nó vào thư mục forum với tên logo.png
Tiếp theo vào thư mục forum/includes tạo một file tên watermark.php và lưu với nội dung sau:
PHP Code:
<?php
//Module đóng dấu ảnh và lưu vào Host
//Module start
$contents=$msg;
$title=$th;
$url='/forum/';
$dir='picture';// Thư mục chứa ảnh
$w=200;
$h=200;
functionwatermark($input,$source,$link,$w,$h,$rs){
preg_match('#\.jpg$#i',$input) ?$im_input=imagecreatefromjpeg($input):'';
preg_match('#\.png$#i',$input) ?$im_input=imagecreatefrompng($input):'';
preg_match('#\.gif$#i',$input) ?$im_input=imagecreatefromgif($input):'';
$im_source=imagecreatefrompng($source);
imagecopy($im_input,$im_source,imagesx($im_input)-imagesx($im_source)-4,imagesy($im_input)-imagesy($im_source)-4,0,0,imagesx($im_source),imagesy($im_source));
if ($rs=='yes') {
$thumb=imagecreatetruecolor($w,$h);
imagecopyresized($thumb,$im_input,0,0,0,0,$w,$h,imagesx($im_input),imagesy($im_input));
preg_match('#\.jpg$#i',$input) ?imagejpeg($thumb,$link):'';
preg_match('#\.png$#i',$input) ?imagepng($thumb,$link):'';
preg_match('#\.gif$#i',$input) ?imagegif($thumb,$link):'';
} else {
preg_match('#\.jpg$#i',$input) ?imagejpeg($im_input,$link):'';
preg_match('#\.png$#i',$input) ?imagepng($im_input,$link):'';
preg_match('#\.gif$#i',$input) ?imagegif($im_input,$link):'';
}
}
functionget_link($input) {
preg_match_all('#\[img\](.+?)\[/img\]#i',$input,$regex);
return$regex[1];
}
functionget_img($link,$name) {
copy($link,$name);
return$name;
}
functionreplace_link($a_r,$b_r,$str) {
returnstr_replace($a_r,$b_r,$str);
}
$list=get_link($contents);// lay danh sách link anh
$new= array ();
$d=date('d',time());
$m=date('m',time());
$y=date('y',time());
@mkdir("$dir/$d/$m/$y",0755,true);
foreach ($listas$key=>$link) {
$end=preg_match('#(\.jpg)$#i',$link) ?'.jpg': (preg_match('#(\.gif)$#i',$link) ?'.gif':'.png');
$new[] =get_img($link,"$dir/$d/$m/$y/".functions::rewrite($title) ."-$key-".$end);
watermark($new[$key],'logo.png',$new[$key],$w,$h,$rs);
}
foreach ($newas$key=>$val) {
$new[$key] =$url.$val;
}
$contents=preg_replace('#\[img\](.+?)\[/img\]#is','<div align="center">Link ảnh không tồn tại..!</div>',replace_link($list,$new,$contents));
$msg=$contents;
//Module End
?>

Copy Text
Sao chép/Sửa:

Lưu ý: thay functions::rewrite thành function rewrite url mà code bạn đang dùng nhé
Tiếp theo mở forum/includes/nt.php ra, tìm
PHP Code:

if (!$error) {
unset($_SESSION['token']);

chèn code sau vào dưới nó:
PHP Code:
include('watermark.php');


Facebook Google Plus Twitter
Chuyển Qua GD Mobile
C-STAT