16
16
require_once (dirname (__FILE__ ) . '/cleantalk.class.php ' );
17
17
18
18
// define same CleanTalk options
19
- define ('CT_AGENT_VERSION ' , 'smf-193 ' );
19
+ define ('CT_AGENT_VERSION ' , 'smf-194 ' );
20
20
define ('CT_SERVER_URL ' , 'http://moderate.cleantalk.org ' );
21
21
define ('CT_DEBUG ' , false );
22
22
@@ -348,9 +348,9 @@ function cleantalk_load()
348
348
{
349
349
foreach ($ _POST ['ct_del_user ' ] as $ key =>$ value )
350
350
{
351
- $ result = $ smcFunc ['db_query ' ]('' , 'delete from {db_prefix}members where id_member= ' .intval ($ key ),Array ());
352
- $ result = $ smcFunc ['db_query ' ]('' , 'delete from {db_prefix}topics where id_member_started= ' .intval ($ key ),Array ());
353
- $ result = $ smcFunc ['db_query ' ]('' , 'delete from {db_prefix}messages where id_member= ' .intval ($ key ),Array ());
351
+ $ result = $ smcFunc ['db_query ' ]('' , 'delete from {db_prefix}members where id_member= ' .intval ($ key ),Array (' db_error_skip ' => true ));
352
+ $ result = $ smcFunc ['db_query ' ]('' , 'delete from {db_prefix}topics where id_member_started= ' .intval ($ key ),Array (' db_error_skip ' => true ));
353
+ $ result = $ smcFunc ['db_query ' ]('' , 'delete from {db_prefix}messages where id_member= ' .intval ($ key ),Array (' db_error_skip ' => true ));
354
354
}
355
355
}
356
356
@@ -359,10 +359,10 @@ function cleantalk_load()
359
359
$ result = $ smcFunc ['db_query ' ]('' , 'select * from {db_prefix}members where ct_marked=1 ' ,Array ());
360
360
while ($ row = $ smcFunc ['db_fetch_assoc ' ] ($ result ))
361
361
{
362
- $ tmp = $ smcFunc ['db_query ' ]('' , 'delete from {db_prefix}topics where id_member_started= ' .$ row ['id_member ' ],Array ());
363
- $ tmp = $ smcFunc ['db_query ' ]('' , 'delete from {db_prefix}messages where id_member= ' .$ row ['id_member ' ],Array ());
362
+ $ tmp = $ smcFunc ['db_query ' ]('' , 'delete from {db_prefix}topics where id_member_started= ' .$ row ['id_member ' ],Array (' db_error_skip ' => true ));
363
+ $ tmp = $ smcFunc ['db_query ' ]('' , 'delete from {db_prefix}messages where id_member= ' .$ row ['id_member ' ],Array (' db_error_skip ' => true ));
364
364
}
365
- $ result = $ smcFunc ['db_query ' ]('' , 'delete from {db_prefix}members where ct_marked=1 ' ,Array ());
365
+ $ result = $ smcFunc ['db_query ' ]('' , 'delete from {db_prefix}members where ct_marked=1 ' ,Array (' db_error_skip ' => true ));
366
366
}
367
367
368
368
if (
@@ -409,6 +409,8 @@ function cleantalk_load()
409
409
$ result =json_decode ($ result , true );
410
410
if (isset ($ result ['data ' ]))
411
411
{
412
+ $ query ='DELETE FROM {db_prefix}cleantalk_sfw ' ;
413
+ $ tmp = $ smcFunc ['db_query ' ]('' , $ query , Array ());
412
414
$ result =$ result ['data ' ];
413
415
$ query ='INSERT INTO {db_prefix}cleantalk_sfw VALUES ' ;
414
416
for ($ i =0 ;$ i <sizeof ($ result );$ i ++)
@@ -428,7 +430,6 @@ function cleantalk_load()
428
430
429
431
if (isset ($ modSettings ['cleantalk_sfw ' ]) && $ modSettings ['cleantalk_sfw ' ] == 1 )
430
432
{
431
- //$log_str = 'CT_DEBUG sfw=1';
432
433
include_once ("cleantalk-sfw.class.php " );
433
434
$ sfw = new CleanTalkSFW ();
434
435
$ sfw ->cleantalk_get_real_ip ();
@@ -440,26 +441,20 @@ function cleantalk_load()
440
441
if (isset ($ _COOKIE ['ct_sfw_pass_key ' ]) && isset ($ sfw ->ip_array [$ i ]) && $ _COOKIE ['ct_sfw_pass_key ' ]==md5 ($ sfw ->ip_array [$ i ].$ key ))
441
442
{
442
443
$ is_sfw_check =false ;
443
- //$log_str .= ' _key ' . $sfw->ip_array[$i];
444
444
if (isset ($ _COOKIE ['ct_sfw_passed ' ]))
445
445
{
446
446
@setcookie ('ct_sfw_passed ' , '0 ' , 1 , "/ " );
447
- //$log_str .= ' _passed ' . $sfw->ip_array[$i];
448
447
}
449
448
}
450
449
}
451
450
if ($ is_sfw_check )
452
451
{
453
- //$log_str .= ' check';
454
452
$ sfw ->check_ip ();
455
453
if ($ sfw ->result )
456
454
{
457
- //$log_str .= ' die ' . $sfw->blocked_ip;
458
- //log_error($log_str);
459
455
$ sfw ->sfw_die ();
460
456
}
461
457
}
462
- //log_error($log_str);
463
458
}
464
459
}
465
460
@@ -534,34 +529,23 @@ function cleantalk_buffer($buffer)
534
529
$ result = $ smcFunc ['db_query ' ]('' , 'delete from {db_prefix}members where id_member= ' .intval ($ key ),Array ());
535
530
}
536
531
}
537
- if (isset ($ _GET ['ctcheckspam ' ]))
532
+ db_extend ('packages ' );
533
+ $ cols = $ smcFunc ['db_list_columns ' ] ('{db_prefix}members ' , 0 );
534
+ if (in_array ('ct_marked ' , $ cols ))
538
535
{
539
- $ result = $ smcFunc ['db_query ' ]('' , 'select * from {db_prefix}members limit 1 ' ,Array ());
540
- $ row = $ smcFunc ['db_fetch_assoc ' ] ($ result );
541
- if (!isset ($ row ['ct_marked ' ]))
542
- {
543
- $ sql = 'ALTER TABLE {db_prefix}members ADD `ct_marked` INT DEFAULT 0 ' ;
544
- $ result = $ smcFunc ['db_query ' ]('' , $ sql , Array ());
545
- }
546
- else
547
- {
548
- $ sql = 'ALTER TABLE {db_prefix}members DROP COLUMN `ct_marked` ' ;
549
- $ result = $ smcFunc ['db_query ' ]('' , $ sql , Array ());
550
- $ sql = 'ALTER TABLE {db_prefix}members ADD `ct_marked` INT DEFAULT 0 ' ;
551
- $ result = $ smcFunc ['db_query ' ]('' , $ sql , Array ());
552
- }
553
-
554
- $ sql = 'UPDATE {db_prefix}members set ct_marked=0 ' ;
555
- $ result = $ smcFunc ['db_query ' ]('' , $ sql , Array ());
556
- $ sql = 'SELECT * FROM {db_prefix}members where passwd<>"" ' ;
557
- $ result = $ smcFunc ['db_query ' ]('' , $ sql , Array ());
558
- $ users =Array ();
559
- $ users [0 ]=Array ();
560
- $ data =Array ();
561
- $ data [0 ]=Array ();
562
- $ cnt =0 ;
563
- while ($ row = $ smcFunc ['db_fetch_assoc ' ] ($ result ))
564
- {
536
+ if (isset ($ _GET ['ctcheckspam ' ]))
537
+ {
538
+ $ sql = 'UPDATE {db_prefix}members set ct_marked=0 ' ;
539
+ $ result = $ smcFunc ['db_query ' ]('' , $ sql , Array ());
540
+ $ sql = 'SELECT * FROM {db_prefix}members where passwd<>"" ' ;
541
+ $ result = $ smcFunc ['db_query ' ]('' , $ sql , Array ());
542
+ $ users =Array ();
543
+ $ users [0 ]=Array ();
544
+ $ data =Array ();
545
+ $ data [0 ]=Array ();
546
+ $ cnt =0 ;
547
+ while ($ row = $ smcFunc ['db_fetch_assoc ' ] ($ result ))
548
+ {
565
549
//$html.=serialize($row);
566
550
$ users [$ cnt ][] = Array ('name ' => $ row ['member_name ' ],
567
551
'id ' => $ row ['id_member ' ],
@@ -578,12 +562,12 @@ function cleantalk_buffer($buffer)
578
562
$ users [$ cnt ]=Array ();
579
563
$ data [$ cnt ]=Array ();
580
564
}
581
- }
565
+ }
582
566
583
- $ error ="" ;
567
+ $ error ="" ;
584
568
585
- for ($ i =0 ;$ i <sizeof ($ users );$ i ++)
586
- {
569
+ for ($ i =0 ;$ i <sizeof ($ users );$ i ++)
570
+ {
587
571
$ send =implode (', ' ,$ data [$ i ]);
588
572
$ req ="data= $ send " ;
589
573
$ opts = array (
@@ -610,15 +594,15 @@ function cleantalk_buffer($buffer)
610
594
if ($ value ->appears ==1 )
611
595
{
612
596
$ sql = 'UPDATE {db_prefix}members set ct_marked=1 where member_ip=" ' .$ key .'" ' ;
613
- $ result = $ smcFunc ['db_query ' ]('' , $ sql , Array ());
597
+ $ result = $ smcFunc ['db_query ' ]('' , $ sql , Array (' db_error_skip ' => true ));
614
598
}
615
599
}
616
600
else
617
601
{
618
602
if ($ value ->appears ==1 )
619
603
{
620
604
$ sql = 'UPDATE {db_prefix}members set ct_marked=1 where email_address=" ' .$ key .'" ' ;
621
- $ result = $ smcFunc ['db_query ' ]('' , $ sql , Array ());
605
+ $ result = $ smcFunc ['db_query ' ]('' , $ sql , Array (' db_error_skip ' => true ));
622
606
}
623
607
}
624
608
}
@@ -632,25 +616,17 @@ function cleantalk_buffer($buffer)
632
616
$ html .='<center><div style="border:2px solid red;color:red;font-size:16px;width:300px;padding:5px;"><b> ' .$ error .'</b></div><br></center> ' ;
633
617
}
634
618
635
- }
619
+ }
636
620
637
- $ result = $ smcFunc ['db_query ' ]('' , 'select * from {db_prefix}members limit 1 ' ,Array ());
638
- $ row = $ smcFunc ['db_fetch_assoc ' ] ($ result );
639
- if (!isset ($ row ['ct_marked ' ]))
640
- {
641
- $ sql = 'ALTER TABLE {db_prefix}members ADD `ct_marked` INT DEFAULT 0 ' ;
642
- $ result = $ smcFunc ['db_query ' ]('' , $ sql , Array ());
643
- }
644
-
645
- $ sql = 'SELECT * FROM {db_prefix}members where ct_marked=1 ' ;
646
- $ result = $ smcFunc ['db_query ' ]('' , $ sql , Array ());
621
+ $ sql = 'SELECT * FROM {db_prefix}members where ct_marked=1 ' ;
622
+ $ result = $ smcFunc ['db_query ' ]('' , $ sql , Array ());
647
623
648
- if ($ smcFunc ['db_num_rows ' ] ($ result ) == 0 && isset ($ _GET ['ctcheckspam ' ]))
649
- {
624
+ if ($ smcFunc ['db_num_rows ' ] ($ result ) == 0 && isset ($ _GET ['ctcheckspam ' ]))
625
+ {
650
626
$ html .='<center><div><b> ' .$ txt ['cleantalk_check_users_nofound ' ].'</b></div><br><br></center> ' ;
651
- }
652
- else if ($ smcFunc ['db_num_rows ' ] ($ result ) > 0 )
653
- {
627
+ }
628
+ else if ($ smcFunc ['db_num_rows ' ] ($ result ) > 0 )
629
+ {
654
630
if (isset ($ _GET ['ctcheckspam ' ]))
655
631
{
656
632
$ html .='<center><h3> ' .$ txt ['cleantalk_check_users_done ' ].'</h3><br /><br /></center> ' ;
@@ -682,6 +658,7 @@ function cleantalk_buffer($buffer)
682
658
683
659
}
684
660
$ html .="</tbody></table><br /><input type=submit name='ct_delete_checked' value=' " .$ txt ['cleantalk_check_users_tbl_delselect ' ]."' onclick='return confirm( \"" .$ txt ['cleantalk_check_users_confirm ' ]."\")'> <input type=submit name='ct_delete_all' value=' " .$ txt ['cleantalk_check_users_tbl_delall ' ]."' onclick='return confirm( \"" .$ txt ['cleantalk_check_users_confirm ' ]."\")'><br /> " .$ txt ['cleantalk_check_users_tbl_delnotice ' ]."<br /><br /></center> " ;
661
+ }
685
662
}
686
663
687
664
$ html .="<center><button style= \"width:20%; \" id= \"check_spam \" onclick= \"location.href=location.href.replace('&finishcheck=1','').replace('&ctcheckspam=1','')+'&ctcheckspam=1';return false; \"> " .$ txt ['cleantalk_check_users_button ' ]."</button><br /> " .$ txt ['cleantalk_check_users_button_after ' ]."</center> " ;
0 commit comments