Changeset 414095
- Timestamp:
- 07/23/2011 09:58:56 AM (15 years ago)
- Location:
- myeasywebally/trunk
- Files:
-
- 6 added
- 5 edited
-
class.myeasywebally.php (modified) (12 diffs)
-
img/icon.png (added)
-
inc/mc/inc/jquery-1.4.2.min.js (added)
-
inc/mc/inc/mailing-list.dev.js (added)
-
inc/mc/inc/mailing-list.js (added)
-
inc/mc/inc/myeasywp.dev.js (added)
-
inc/mc/inc/myeasywp.js (added)
-
inc/myEASYcom.php (modified) (10 diffs)
-
myEASYwebally-notifier.php (modified) (1 diff)
-
myeasywebally.php (modified) (2 diffs)
-
readme.txt (modified) (3 diffs)
Legend:
- Unmodified
- Added
- Removed
-
myeasywebally/trunk/class.myeasywebally.php
r311320 r414095 6 6 * main class for the myEASYwebally plugin 7 7 */ 8 var $version = '1.0. 3';8 var $version = '1.0.4.1'; 9 9 var $plugin_name ='myEASYwebally'; 10 10 var $plugin_slug = 'myeasy-webally'; … … 24 24 * initializations 25 25 */ 26 wp_register_style('myeasywp_common', 'http://myeasywp.com/service/css/myeasywp.css'); // common myeasy style26 wp_register_style('myeasywp_common', MYEASY_CDN_CSS.'myeasywp.css'); // common myeasy style 27 27 28 28 register_deactivation_hook($this->main_plugin, array($this, 'plugin_deactivate')); … … 64 64 //echo '(<b>plugin_setup</b>:'. $this->plugin_name.')'; 65 65 66 wp_enqueue_style( 'myeasywp_common', 'http://myeasywp.com/service/css/myeasywp.css', '', '20100516', 'screen' );66 wp_enqueue_style( 'myeasywp_common', MYEASY_CDN_CSS.'myeasywp.css', '', '20111206', 'screen' ); 67 67 68 68 if(strlen($this->css)>0) { … … 137 137 wp_add_dashboard_widget($this->plugin_slug, $this->dash_title, array($this, 'dashboard_widget_function')); 138 138 139 } 139 global $myeasywp_news; 140 //echo '{'.$myeasywp_news->ref_code.'}';//debug 141 if($myeasywp_news->ref_code=='') { 142 143 $myeasywp_news = new myeasywp_news(); 144 $myeasywp_news->ref_code = 'mew'; 145 $myeasywp_news->ref_family = ''; 146 // $myeasywp_news->ref_family = false;//debug 147 $myeasywp_news->plugin_init(); 148 $myeasywp_news->register_widget(); 149 } 150 151 } 152 140 153 function dashboard_widget_function() { 141 154 … … 167 180 $_POST['myewally_userKey'] = trim($_POST['myewally_userKey']); 168 181 $_POST['myewally_userEmail'] = trim($_POST['myewally_userEmail']); 182 183 184 // services: 67.215.65.132 185 //echo '['.gethostbyname('services.myeasywp.com').']'; 186 169 187 170 188 switch($_POST['btn']) … … 179 197 * get the authorized ip from the main server 180 198 */ 181 $authorized_ip = file_get_contents('http://myeasywp.com/service/auth-ip.php'); 199 // $authorized_ip = file_get_contents('http://myeasywp.com/service/auth-ip.php'); // 1.0.4 200 $authorized_ip = gethostbyname('services.myeasywp.com'); // 1.0.4 201 182 202 update_option( 'myewally_authorized_ip', $authorized_ip ); 183 203 … … 186 206 update_option( 'myewally_userKey', $_POST['myewally_userKey'] ); 187 207 } 208 209 /** 210 * @since 1.0.4 : re-create the report file 211 */ 212 //echo '{{{'.MYEWALLY_REPORT_FILE.'}}}'; 213 //echo '{{{'.MYEWALLY_AUTHORIZED_IP.'}}}'; 214 define('MYEWALLY_AUTHORIZED_IP', $authorized_ip); 215 if(file_exists(MYEWALLY_REPORT_FILE)) { 216 217 @unlink(MYEWALLY_REPORT_FILE); 218 } 219 $MYEWALLY_frontend = new myEASYwebally_FRONTEND(); 220 $MYEWALLY_frontend->locale = MYEWALLY_LOCALE; 188 221 189 222 break; … … 250 283 * get the authorized ip from the main server 251 284 */ 252 $authorized_ip = file_get_contents('http://myeasywp.com/service/auth-ip.php'); 285 // $authorized_ip = file_get_contents('http://myeasywp.com/service/auth-ip.php'); // 1.0.4 286 $authorized_ip = gethostbyname('services.myeasywp.com'); // 1.0.4 253 287 254 288 update_option( 'myewally_authorized_ip', $authorized_ip ); 289 290 /** 291 * @since 1.0.4 : re-create the report file 292 */ 293 //echo '{{{'.MYEWALLY_REPORT_FILE.'}}}'; 294 //echo '{{{'.MYEWALLY_AUTHORIZED_IP.'}}}'; 295 define('MYEWALLY_AUTHORIZED_IP', $authorized_ip); 296 if(file_exists(MYEWALLY_REPORT_FILE)) { 297 298 @unlink(MYEWALLY_REPORT_FILE); 299 } 300 $MYEWALLY_frontend = new myEASYwebally_FRONTEND(); 301 $MYEWALLY_frontend->locale = MYEWALLY_LOCALE; 302 255 303 break; 256 304 # … … 423 471 echo '<p><i>' 424 472 . __('Using the same API key on different blogs/sites will group the reports so that you will get a single email for all your WordPress installations.', $this->locale ) 473 .'<br />'.MYEWALLY_AUTHORIZED_IP 425 474 . '</i></p>' 426 475 ; … … 565 614 </form><?php 566 615 } 616 echo '</div>'; 617 567 618 //include_once(MEH_PATH . '/inc/myEASYcom.php'); 568 619 measycom_camaleo_links(); 569 570 620 } 571 621 } … … 666 716 $all_plugins = get_plugins(); 667 717 668 $special_ini_inp = array('"','=','&','%','!',' £','$','^');718 $special_ini_inp = array('"','=','&','%','!','�','$','^'); 669 719 $special_ini_out = array('MYEALLYDBLQUOTE','MYEALLYEQ','MYEALLYAND','MYEALLYPERCENT','MYEALLYEXCLAMATION', 'MYEALLYPOUND', 'MYEALLYDOLLAR', 'MYEALLYCARET'); 670 720 … … 754 804 * on demand, show the credits on the footer 755 805 */ 756 if(get_option('myeasy_showcredits')== true&& !function_exists('myeasy_credits') && !defined('MYEASY_SHOWCREDITS')) { /* 1.0.1 changed all references from 'myewally_showcredits' */806 if(get_option('myeasy_showcredits')==1 && !function_exists('myeasy_credits') && !defined('MYEASY_SHOWCREDITS')) { /* 1.0.1 changed all references from 'myewally_showcredits' */ 757 807 758 808 define('MEBAK_FOOTER_CREDITS', '<div style="font-size:9px;text-align:center;">' -
myeasywebally/trunk/inc/myEASYcom.php
r310221 r414095 3 3 * myEASYcom.php: common functions for the myEASYwp plugins serie 4 4 * 5 * Version: 1.3 - 23 July 2011 5 6 * Author: Ugo Grandolini aka "Camaleo" 6 7 * Support site: http://myeasywp.com … … 8 9 * Copyright (C) 2010 Ugo Grandolini (email : [email protected]) 9 10 */ 10 $version='1.1.3'; 11 12 //define('MYEASYWP_DOMAIN', 'localhost'); # debug 13 //define('MYEASYWP_PATH', '/myEASYwp'); # debug 14 11 12 # TODO ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 13 14 # DEBUG 15 #define('MYEASYWP_DOMAIN', 'myeasywp.lan'); 16 17 # PRODUCTION 15 18 define('MYEASYWP_DOMAIN', 'myeasywp.com'); 19 16 20 define('MYEASYWP_PATH', ''); 17 18 //echo 'zend_loader_enabled['.zend_loader_enabled().']'; 21 # TODO ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 19 22 20 23 … … 69 72 <img style="margin-right:8px;" src="http://myeasywp.com/common/img/camaleo.gif" align="absmiddle" /> 70 73 <a href="http://myeasywp.com" target="_blank">myeasywp.com: <?php _e('myEASY Series official site'); ?></a> | <?php 74 71 75 _e('Be the first to know what\'s going on! Join Our Mailing List:'); 72 76 73 77 ?><input type="text" name="email" id="email" value="<?php echo $admin_email; ?>" /> 74 78 <div style="margin:-10px 0 10px 0;"> 75 <div style="float:right;margin: 0 0 020px;">79 <div style="float:right;margin:12px 0 4px 20px;"> 76 80 <input class="button-primary" name="commit" value="Join" type="submit" /> 77 81 </div> 78 <a href="http://services.myeasywp.com/?page=privacy" target="_blank"><?php 79 _e('Your privacy is critically important to us!'); ?> 80 </a> 82 <div style="float:right;margin:10px 0 0 0;"> 83 <a href="http://services.myeasywp.com/?page=privacy" target="_blank"><?php 84 _e('Your privacy is critically important to us!'); ?> 85 </a> 86 </div> 81 87 </div> 82 88 </form> 83 89 <script type="text/javascript">var myeasyplugin = '<?php echo myEASYcomCaller; ?>';</script> 84 <script type="text/javascript" src=" http://<?php echo MYEASYWP_DOMAIN.MYEASYWP_PATH; ?>/service/mc/jquery-1.4.2.min.js"></script>85 <script type="text/javascript" src=" http://<?php echo MYEASYWP_DOMAIN.MYEASYWP_PATH; ?>/service/mc/mailing-list.js"></script><?php90 <script type="text/javascript" src="<?php echo plugins_url() . '/myeasybackup/inc/mc/inc/'; ?>jquery-1.4.2.min.js"></script> 91 <script type="text/javascript" src="<?php echo plugins_url() . '/myeasybackup/inc/mc/inc/'; ?>mailing-list.js"></script><?php 86 92 } 87 93 } … … 124 130 * display the advertisment stuff 125 131 */ 126 $src = 'http://'.MYEASYWP_DOMAIN.'/'.MYEASYWP_PATH.'/service/myads.php?p='.$ref_code; 127 128 $h = measycom_getIframe_height('/service/myads.php?h'); 129 if($h==0) { 130 131 $h = (281-8); 132 } 133 134 ?><div style="width:auto;height:<?php echo $h; ?>px;background:transparent;padding:0;margin:8px 0 0 0;"> 135 <iframe id="myFrame" width="100%" height="<?php echo $h; ?>px" scrolling="no" frameborder="0" border="0" 136 style="background-color:#F7F6F1;padding:0;margin:0;border:0px solid #ffffff;height:<?php echo $h; ?>px" src="<?php echo $src; ?>"></iframe> 137 </div><?php 132 $html = measycom_get_adcontents('/service/myads-1.1.php?p='.$ref_code.'&u='.$_SERVER['SERVER_NAME']); 133 134 echo '<div style="width:auto;height:auto;background:transparent;padding:0;margin:8px 0 0 0;">' 135 .$html 136 .'</div>' 137 ; 138 } 139 } 140 141 if(!function_exists('measycom_pro_stats')) { 142 143 /** 144 * @since 1.2.1 145 */ 146 function measycom_pro_stats($ref_code) { 147 148 /** 149 * log usage statistic 150 */ 151 measycom_get_adcontents('/service/myads-1.1.php?p='.$ref_code.'&u='.$_SERVER['SERVER_NAME'], true); 152 //echo measycom_get_adcontents('/service/myads-1.1.php?p='.$ref_code.'&u='.$_SERVER['SERVER_NAME']); 138 153 } 139 154 } … … 146 161 * display the donation stuff 147 162 */ 148 $src = 'http://'.MYEASYWP_DOMAIN.'/'.MYEASYWP_PATH.'/service/donate.php?p='.$ref_code; 149 150 $h = measycom_getIframe_height('/service/donate.php?h'); 151 if($h==0) { 152 153 $h = (281-8); 154 } 155 156 ?><div style="width:auto;height:<?php echo $h; ?>px;background:transparent;padding:0;margin:20px 0 0 0;"> 157 <iframe id="myFrame" width="100%" height="<?php echo $h; ?>px" scrolling="no" frameborder="0" border="0" 158 style="background-color:#F7F6F1;padding:0;margin:0;border:0px solid #ffffff;height:<?php echo $h; ?>px" src="<?php echo $src; ?>"></iframe> 159 </div><?php 163 $html = measycom_get_adcontents('/service/myads-1.1.php?p=donate&d='.$ref_code.'&u='.$_SERVER['SERVER_NAME']); 164 165 echo '<div style="width:auto;height:auto;background:transparent;padding:0;margin:8px 0 0 0;">' 166 .$html 167 .'</div>' 168 ; 160 169 } 161 170 } 162 171 163 if(!function_exists('measycom_get Iframe_height')) {164 165 function measycom_get Iframe_height($domain_path) {172 if(!function_exists('measycom_get_adcontents')) { 173 174 function measycom_get_adcontents($domain_path, $isSTAT='') { 166 175 167 176 /** 168 * $domain_path = '/service/ donate.php?h'177 * $domain_path = '/service/myads-1.1.php?p={code | donate}&d={code}' 169 178 */ 170 179 $domain = MYEASYWP_DOMAIN; 171 180 $domain_path = MYEASYWP_PATH.$domain_path; 172 181 173 $h = 0; 174 175 $fp = fsockopen($domain, 80, $errno, $errstr, 10); 182 $html = ''; 183 184 $fp = @fsockopen($domain, 80, $errno, $errstr, 3); 185 176 186 if(!$fp) { 177 187 … … 179 189 * HTTP ERROR 180 190 */ 181 $h = 0;191 $html = 'Connection error measycom_get_adcontents(' . $domain_path . ')'; 182 192 } 183 193 else { … … 186 196 * get the info 187 197 */ 188 $header = "GET $domain_path HTTP/1. 1\r\n"198 $header = "GET $domain_path HTTP/1.0\r\n" // 1.0 !! 189 199 ."Host: $domain\r\n" 190 200 ."Connection: Close\r\n\r\n" … … 193 203 fwrite($fp, $header); 194 204 205 if($isSTAT==true) { 206 /** 207 * for stat there is no need to go further 208 * @since 1.2.1 209 */ 210 fclose($fp); 211 return; 212 } 213 195 214 $result = ''; 196 215 while (!feof($fp)) { … … 199 218 } 200 219 201 $needle = '[ hi]';220 $needle = '[start]'; 202 221 $p = strpos($result, $needle, 0); 203 222 if($p!==false) { 204 223 205 224 $beg = $p + strlen($needle); 206 $end = strpos($result, '[ he]', $p);207 $h = substr($result, $beg, ($end-$beg));225 $end = strpos($result, '[end]', $p); 226 $html = substr($result, $beg, ($end-$beg)); 208 227 } 209 228 210 229 fclose($fp); 211 230 } 212 return $h; 231 return $html; 232 } 233 } 234 235 if(!function_exists('measycom_get_response')) { 236 237 function measycom_get_response($domain, $domain_path, $port=80, $timeout=3) { 238 239 /** 240 * @since 1.0.5.6 241 */ 242 if(!$domain || !$domain_path) { 243 244 return false; 245 } 246 247 $html = ''; 248 249 //echo '$port['.$port.']<br>'; 250 251 $ssl = ''; 252 if((int)$port==443) { 253 254 if(!function_exists('openssl_ open')) { 255 256 $port = 80; 257 } 258 else { 259 260 $ssl = 'ssl://'; 261 } 262 } 263 264 //echo '$port['.$port.']<br>'; 265 266 $fp = @fsockopen($ssl . $domain, $port, $errno, $errstr, $timeout); 267 268 if(!$fp) { 269 270 /** 271 * HTTP ERROR 272 */ 273 $html = 'Connection error measycom_get_response(' . $domain . ') '. $errno . ' ' . $errstr; 274 } 275 else { 276 277 /** 278 * get the info 279 */ 280 $header = "GET $domain_path HTTP/1.0\r\n" // 1.0 !! 281 ."Host: $domain\r\n" 282 ."Connection: Close\r\n\r\n" 283 //."Connection: keep-alive\r\n\r\n" 284 ; 285 fwrite($fp, $header); 286 287 $result = ''; 288 while (!feof($fp)) { 289 290 $result .= fgets($fp, 1024); 291 } 292 293 /** 294 * remove headers 295 */ 296 $headerend = strpos($result, "\r\n\r\n"); 297 if($headerend !== false) { 298 299 $html = substr($result, $headerend+4); 300 } 301 else { 302 303 $html = $result; 304 } 305 fclose($fp); 306 } 307 return $html; 213 308 } 214 309 } … … 577 672 } 578 673 674 if(!function_exists('sortTreeAry')) { 675 676 /** 677 * @since 1.2.2 678 */ 679 function sortTreeAry($ary) { 680 681 //var_dump($ary); 682 $tree = array(); 683 foreach($ary as $deep => $dir) { 684 685 //echo $dir . '<br>'; 686 if(is_array($dir)) { 687 688 foreach($dir as $key => $data) { 689 690 //echo $deep.') '.str_replace(MEBAK_WP_PARENT_PATH, '', $data) . '<br>'; 691 $tree[] = str_replace(MEBAK_WP_PARENT_PATH, '', $data); 692 } 693 } 694 else { 695 696 $tree[] = str_replace(MEBAK_WP_PARENT_PATH, '', $data); 697 } 698 } 699 700 sort($tree); 701 702 //var_dump($tree); 703 // foreach($tree as $k => $dir) { 704 // 705 // echo $dir . '<br>'; 706 // } 707 708 return $tree; 709 } 710 } 711 712 if(!function_exists('getFolderTree')) { 713 714 /** 715 * @since 1.2.2 716 */ 717 function getFolderTree($folder, $maxDeep=4, $read=0, $deep=0, $treeAry='') { 718 719 $files = @scandir($folder); 720 721 $t = 0; 722 $d = 0; 723 724 if((int)$read>0) { $t = $read; } 725 if((int)$deep>0) { $d = $deep; } 726 727 $d++; 728 729 if(is_array($files)) { 730 731 foreach($files as $fname) { 732 //echo '[*]' . $fname . '<br />'; 733 734 if($fname!='.' && $fname!='..' && is_dir($folder . '/' . $fname)) { 735 736 //echo '[D:'.$d.']' . $fname . '<br />'; 737 738 if(!isset($treeAry[$d])) { 739 740 $treeAry[$d] = array(); 741 } 742 743 $treeAry[$d][] = $folder . '/' . $fname; 744 $t++; 745 746 if($d < $maxDeep) { 747 748 $treeAry = getFolderTree($folder . '/' . $fname, $maxDeep, $t, $d, $treeAry); 749 } 750 } 751 } 752 } 753 return $treeAry; 754 } 755 } 756 757 if(!class_exists('myeasywp_news')) { 758 759 class myeasywp_news { 760 761 var $version = '1.0'; 762 763 var $ref_code; // caller plugin 764 var $ref_family; // caller family 765 var $html; 766 var $cache; 767 768 function plugin_init() { 769 770 /** 771 * initializations 772 */ 773 $this->cache = ABSPATH.'wp-content/uploads/myeasywp_dashnews-'.$this->ref_code.'.txt'; 774 775 $this->html = $this->fill_html(); 776 //echo '>>>'.$this->html.'<br>['.$this->ref_family.']<br>'; 777 778 if(is_dir(ABSPATH.'wp-content/uploads') && is_writable(ABSPATH.'wp-content/uploads')) { 779 780 if(file_exists($this->cache)) { 781 782 if(filemtime($this->cache)<(time()-86400)) { 783 784 //echo 'update<br>'; 785 file_put_contents($this->cache, $this->html); 786 } 787 else { 788 789 //echo 'use<br>'; 790 } 791 } 792 else { 793 794 //echo 'create<br>'; 795 file_put_contents($this->cache, $this->html); 796 } 797 } 798 799 add_action('wp_dashboard_setup', array($this, 'register_widget')); 800 } 801 802 function register_widget() { 803 804 wp_add_dashboard_widget('myeasywp-news', 'myEASYwp.com news', array($this, 'myeasywp_dashnews')); 805 } 806 807 function fill_html() { 808 809 /** 810 * get the html contents 811 */ 812 if($this->ref_family==false) { 813 814 return $this->get_data('/service/myads-1.1.php?p='.$this->ref_code.'&u='.$_SERVER['SERVER_NAME']); 815 } 816 else { 817 818 return $this->get_data('/service/myads-1.1.php?p='.$this->ref_code.'&u='.$_SERVER['SERVER_NAME'], true); 819 } 820 } 821 822 function print_html() { 823 824 /** 825 * print the html contents 826 */ 827 if(file_exists($this->cache)) { 828 829 echo file_get_contents($this->cache); 830 } 831 else { 832 833 echo $this->fill_html(); 834 } 835 } 836 837 function get_data($domain_path, $isSTAT='') { 838 839 /** 840 * $domain_path = '/service/myads-1.1.php?p={code | donate}&d={code}' 841 */ 842 $domain = MYEASYWP_DOMAIN; 843 $domain_path = MYEASYWP_PATH.$domain_path; 844 $html = ''; 845 846 $fp = @fsockopen($domain, 80, $errno, $errstr, 3); 847 848 if(!$fp) { 849 850 /** 851 * HTTP ERROR 852 */ 853 $html = 'Connection error measycom_get_adcontents(' . $domain_path . ')'; 854 } 855 else { 856 857 /** 858 * get the info 859 */ 860 $header = "GET $domain_path HTTP/1.0\r\n" // 1.0 !! 861 ."Host: $domain\r\n" 862 ."Connection: Close\r\n\r\n" 863 //."Connection: keep-alive\r\n\r\n" 864 ; 865 fwrite($fp, $header); 866 867 if($isSTAT==true) { 868 /** 869 * for stat there is no need to go further 870 * @since 1.2.1 871 */ 872 fclose($fp); 873 return; 874 } 875 876 $result = ''; 877 while (!feof($fp)) { 878 879 $result .= fgets($fp, 1024); 880 } 881 882 $needle = '[start]'; 883 $p = strpos($result, $needle, 0); 884 if($p!==false) { 885 886 $beg = $p + strlen($needle); 887 $end = strpos($result, '[end]', $p); 888 $html = substr($result, $beg, ($end-$beg)); 889 } 890 891 fclose($fp); 892 } 893 return $html; 894 } 895 896 function myeasywp_dashnews() { 897 898 if(file_exists($this->cache)) { 899 900 $this->html = file_get_contents($this->cache); 901 } 902 else { 903 904 // $html = measycom_get_adcontents('/service/myads-1.1.php?p='.$this->ref_code.'&u='.$_SERVER['SERVER_NAME']); 905 $this->html = $this->fill_html(); 906 } 907 908 echo '<div style="width:auto;height:auto;background:transparent;padding:0;margin:8px 0 0 0;">' 909 .$this->html 910 .'</div>'; 911 } 912 } 913 } 914 915 if(!class_exists('wp_plugin_donation_to_camaleo')) { 916 917 class wp_plugin_donation_to_camaleo { 918 919 var $text_domain; 920 921 function __construct() { 922 923 // If we are not in admin panel. We bail out. 924 if(!is_admin()) { return false; } 925 926 // Load Text Domain 927 $this->load_textdomain(); 928 929 // Register the setting if a user donated 930 add_action('admin_menu', array($this, 'add_settings_field')); 931 932 // Check if the user has already donated 933 if(get_option('donated_to_camaleo')) { return false; } 934 935 // Add some Js for the donation buttons to the admin header 936 add_action('admin_head', array($this, 'print_donation_js')); 937 938 // Add the donation form (hidden) 939 add_action('admin_notices', array($this, 'print_donation_form'), 1); 940 941 // Register the Dashboard Widget 942 add_action('wp_dashboard_setup', array($this, 'register_widget')); 943 944 // Register donation message 945 add_action('donation_message', array($this, 'print_message')); 946 } 947 948 function load_textdomain() {//TODO +++ 949 950 $this->text_domain = get_class($this); 951 $lang_file = dirname(__FILE__) . '/donate_' . get_locale() . '.mo'; 952 953 if(is_file($lang_file)) { load_textdomain($this->text_domain, $lang_file); } 954 } 955 956 function t($text, $context = '') { 957 958 // Translates the string $text with context $context 959 if($context == '') { 960 961 return __($text, $this->text_domain); 962 } 963 else { 964 965 return _x($text, $context, $this->text_domain); 966 } 967 } 968 969 function register_widget() { 970 971 // Setup the Dashboard Widget 972 wp_add_dashboard_widget('donation-to-camaleo-' . time(), 973 $this->t('myEASYwp Series – Please think about a donation!'), 974 array($this, 'print_message') 975 ); 976 } 977 978 function print_donation_js() { 979 980 ?><script type="text/javascript">/* <![CDATA[ */ 981 jQuery(function($) { 982 // Start of the DOM ready sequence 983 // Hide all fields we do not want show to the cool js users. 984 jQuery('.hide_if_js').hide(); 985 986 // Show the cool js gui. But only for cool js users. 987 jQuery('.show_if_js').show(); 988 989 // Catch the currency click 990 jQuery('.camaleo_donation_show_ui').click(function() { 991 jQuery('.camaleo_donation_ui').slideUp(); 992 jQuery(this).parent().find('.camaleo_donation_ui').slideDown(); 993 return false; 994 }); 995 996 // Catch the donation button click 997 jQuery('input.camaleo_donation_button').click(function() { 998 // Find the form 999 var $form = jQuery('form#camaleo_paypal_donation_form'); 1000 1001 // Find the button 1002 var $this = jQuery(this).parent(); 1003 1004 // Read currency and amount 1005 var currency = $this.find('.camaleo_donation_currency').val(); 1006 var amount = $this.find('.camaleo_donation_amount').val(); 1007 1008 // Put the values in the form 1009 $form 1010 .find('input[name=currency_code]').val(currency).end() 1011 .find('input[name=amount]').val(amount).end() 1012 .submit(); 1013 }); 1014 // End of the catch routine of the donation button 1015 1016 // Catch the donation select amount change 1017 jQuery('.camaleo_donation_currency, .camaleo_donation_amount').change(function() { 1018 jQuery(this).parent().find('input.camaleo_donation_button').removeAttr('disabled'); 1019 }); 1020 // End of the catch of the select amount change 1021 1022 // End of the DOM Ready sequence 1023 }); 1024 /* ]]> */</script><?php 1025 } 1026 1027 function print_donation_form() { 1028 1029 // PayPal Donation Form for Camaleo 1030 1031 ?><div style="display:none"> 1032 <form action="https://www.paypal.com/cgi-bin/webscr" id="camaleo_paypal_donation_form" method="post" target="_blank"> 1033 <input type="hidden" name="cmd" value="_xclick"/> 1034 <input type="hidden" name="business" value="[email protected]"/> 1035 <input type="hidden" name="no_shipping" value="1"/> 1036 <input type="hidden" name="tax" value="0"/> 1037 <input type="hidden" name="no_note" value="0"/> 1038 <input type="hidden" name="item_name" value="<?php echo $this->t('Donation to the Open Source Community') ?>"/> 1039 <input type="hidden" name="on0" value="<?php echo $this->t('Reference') ?>"/> 1040 <input type="hidden" name="os0" value="<?php echo $this->t('WordPress') ?>"/><?php 1041 1042 foreach($this->get_current_extensions() AS $index => $extension) { 1043 1044 ?><input type="hidden" name="on<?php echo ($index + 1) ?>" value="<?php echo $this->t('Plugin') ?>"/> 1045 <input type="hidden" name="os<?php echo ($index + 1) ?>" value="<?php echo htmlspecialchars(strip_tags($extension)) ?>"/><?php 1046 } 1047 1048 ?><input type="hidden" name="currency_code" value=""/> 1049 <input type="hidden" name="amount" value=""/> 1050 </form> 1051 </div><?php 1052 } 1053 1054 function get_current_extensions() { 1055 1056 // array which contains all my extensions 1057 static $arr_extension; 1058 1059 if(isset($arr_extension)) { 1060 1061 return $arr_extension; 1062 } 1063 else { 1064 1065 $arr_extension = array(); 1066 } 1067 1068 // Read the active plugins 1069 foreach((array) get_option('active_plugins') AS $plugin) { 1070 1071 $plugin_data = get_plugin_data(WP_PLUGIN_DIR . '/' . $plugin); 1072 if(strpos(strtolower($plugin_data['Author']), 'camaleo') !== false) { 1073 1074 $arr_extension[] = $plugin_data['Title']; 1075 } 1076 } 1077 1078 // Read the current theme 1079 $current_theme_info = current_theme_info(); 1080 if($current_theme_info && strpos(strtolower($current_theme_info->author), 'camaleo') !== false) { 1081 1082 $arr_extension[] = $this->t('the theme') . ' ' . $current_theme_info->title; 1083 } 1084 1085 return $arr_extension; 1086 } 1087 1088 function print_message() { 1089 1090 // Read current user 1091 global $current_user; 1092 get_currentuserinfo(); 1093 1094 // Get current plugins 1095 $arr_extension = $this->get_current_extensions(); 1096 1097 // Write the Dashboard message 1098 1099 ?><div class="light" style="float:left;width:auto;background:#f9f9f9;padding:4px;margin:0 10px 3px 0;"> 1100 <img src="http://www.gravatar.com/avatar/86fd9bbedc81e50140384d957f1ff82f?d=wavatar&s=100" class="alignleft" alt="Camaleo" height="100px" width="100px" /> 1101 </div> 1102 <div style="text-align:left"> 1103 <h4 style="margin-top:0;"><?php printf($this->t('Hello %1$s!'), $current_user->display_name) ?></h4> 1104 <p><?php 1105 1106 echo $this->t('My name is Ugo Grandolini, also known as "Camaleo". I am a simple man who cares to put Love in everything he does, actually living in Como, Italy.'); 1107 1108 ?></p> 1109 <p><?php 1110 1111 printf($this->t('Beside other software I developed in more than 20 years, I am behind the myEASY Series of WordPress plugins including %1$s.'), $this->Extended_Implode($arr_extension, ', ', ' ' . $this->t('and') . ' ')); 1112 echo ' ' . $this->t('Each plugin is developed, maintained, supported and documented with a lot of Love & several hours of work and effort to make your life easier!'); 1113 1114 ?></p> 1115 <p><?php 1116 1117 echo $this->t('I love the spirit of the open source movement, to write and share code and knowledge, however I think the system can work only if everyone contributes as she/he can.'); 1118 1119 ?></p> 1120 <p><?php 1121 1122 printf($this->t('Because you are using %1$s of my WordPress extensions I guess you appreciate my job.'), $this->Number_to_Word(count($arr_extension))); 1123 1124 ?></p> 1125 <p><?php 1126 1127 echo $this->t('So please think about a donation. You would also help to keep alive and growing the open source community.'); 1128 1129 ?></p> 1130 </div> 1131 <div> 1132 <div class="light" style="float:right;width:30%;background:#f9f9f9;margin-top:0;padding:1%;"> 1133 <ul> 1134 <li><b><?php echo $this->t('Or make me an amazing gift!') ?></b><ul> 1135 <li>» <a href="https://www.amazon.com/wishlist/39FU2MJ17RU3B" title="<?php echo $this->t('My Amazon Wish List') ?>" target="_blank"><?php echo $this->t('My Amazon Wish List') ?></a></li> 1136 </ul> 1137 </li> 1138 </ul> 1139 </div> 1140 <div class="light" style="float:left;width:63%;background:#f9f9f9;margin-top:0;padding:1%;"> 1141 <ul> 1142 <li class="hide_if_js"><?php echo $this->t('Make a donation via PayPal') ?>:<ul> 1143 <li>» <a href="https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick&hosted_button_id=1220480" target="_blank">United States Dollar ($)</a></li> 1144 <li>» <a href="https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick&hosted_button_id=U49F54BMWKNHU" target="_blank">Pound Sterling (£)</a></li> 1145 <li>» <a href="https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick&hosted_button_id=HECSPGLPTQL24" target="_blank">Euro (€)</a></li> 1146 </ul> 1147 </li> 1148 <li class="show_if_js" style="display:none"><b><?php echo $this->t('Make a donation via PayPal') ?></b>:<ul> 1149 <li>» <a href="#" title="<?php echo $this->t('Make a donation in US Dollars') ?>" class="camaleo_donation_show_ui">United States Dollar ($)</a> 1150 <div class="camaleo_donation_ui"> 1151 <?php echo $this->t('Amount') ?>: 1152 <input type="hidden" class="camaleo_donation_currency" value="USD"/> 1153 <select class="camaleo_donation_amount"> 1154 <option value="" disabled="disabled" selected="selected"><?php echo $this->t('Amount in USD') ?></option> 1155 <option value="82.95">$82.95</option> 1156 <option value="68.95">$68.95</option> 1157 <option value="54.95">$54.95</option> 1158 <option value="41.95">$41.95</option> 1159 <option value="34.95">$34.95</option> 1160 <option value="27.95">$27.95</option> 1161 <option value="20.95">$20.95</option> 1162 <option value="13.95">$13.95</option> 1163 <option value="6.95">$6.95</option> 1164 <option value="">» <?php echo $this->t('other amount') ?></option> 1165 </select> 1166 <input type="button" class="camaleo_donation_button button-primary" 1167 value="<?php echo $this->t('Proceed to PayPal') ?> →" 1168 title="<?php echo $this->t('Proceed to PayPal') ?>" disabled="disabled"/> 1169 </div> 1170 </li> 1171 <li>» <a href="#" title="<?php echo $this->t('Make a donation in Pound Sterling') ?>" class="camaleo_donation_show_ui">Pound Sterling (£)</a> 1172 <div class="camaleo_donation_ui hide_if_js"> 1173 <?php echo $this->t('Amount') ?>: 1174 <input type="hidden" class="camaleo_donation_currency" value="GBP"/> 1175 <select class="camaleo_donation_amount"> 1176 <option value="" disabled="disabled" selected="selected"><?php echo $this->t('Amount in GBP') ?></option> 1177 <option value="62.64">£62.64</option> 1178 <option value="52.24">£52.24</option> 1179 <option value="41.83">£41.83</option> 1180 <option value="31.43">£31.43</option> 1181 <option value="21.02">£21.02</option> 1182 <option value="15.82">£15.82</option> 1183 <option value="10.61">£10.61</option> 1184 <option value="5.41">£5.41</option> 1185 <option value="">» <?php echo $this->t('other amount') ?></option> 1186 </select> 1187 <input type="button" class="camaleo_donation_button button-primary" value="<?php echo $this->t('Proceed to PayPal') ?> →" title="<?php echo $this->t('Proceed to PayPal') ?>" disabled="disabled"/> 1188 </div> 1189 </li> 1190 <li>» <a href="#" title="<?php echo $this->t('Make a donation in Euro') ?>" class="camaleo_donation_show_ui">Euro (€)</a> 1191 <div class="camaleo_donation_ui hide_if_js"> 1192 <?php echo $this->t('Amount') ?>: 1193 <input type="hidden" class="camaleo_donation_currency" value="EUR"/> 1194 <select class="camaleo_donation_amount"> 1195 <option value="" disabled="disabled" selected="selected"><?php echo $this->t('Amount in EUR') ?></option> 1196 <option value="61.52">61,52 €</option> 1197 <option value="51.33">51,33 €</option> 1198 <option value="41.13">41,13 €</option> 1199 <option value="30.94">30,94 €</option> 1200 <option value="20.74">20,74 €</option> 1201 <option value="15.65">15,65 €</option> 1202 <option value="10.55">10,55 €</option> 1203 <option value="5.45">5,45 €</option> 1204 <option value="">» <?php echo $this->t('other amount') ?></option> 1205 </select> 1206 <input type="button" class="camaleo_donation_button button-primary" value="<?php echo $this->t('Proceed to PayPal') ?> →" title="<?php echo $this->t('Proceed to PayPal') ?>" disabled="disabled"/> 1207 </div> 1208 </li> 1209 <li>» <a href="#" title="<?php echo $this->t('Make a donation in another currency') ?>" class="camaleo_donation_show_ui"><?php echo $this->t('Other currency') ?></a> 1210 <div class="camaleo_donation_ui hide_if_js"> 1211 <input type="hidden" class="camaleo_donation_amount" value=""/> 1212 <select class="camaleo_donation_currency"> 1213 <option value="" disabled="disabled" selected="selected"><?php echo $this->t('International currency') ?></option> 1214 <option value="CAD">Dollar canadien (C$)</option> 1215 <option value="JPY">Yen (¥)</option> 1216 <option value="AUD">Australian dollar (A$)</option> 1217 <option value="CHF">Franken (SFr)</option> 1218 <option value="NOK">Norsk krone (kr)</option> 1219 <option value="SEK">Svensk krona (kr)</option> 1220 <option value="DKK">Dansk krone (kr)</option> 1221 <option value="PLN">Polski zloty</option> 1222 <option value="HUF">Magyar forint (Ft)</option> 1223 <option value="CZK">koruna česká (Kč)</option> 1224 <option value="SGD">Ringgit Singapura (S$)</option> 1225 <option value="HKD">Hong Kong dollar (HK$)</option> 1226 <option value="ILS">שקל חדש (₪)</option> 1227 <option value="MXN">Peso mexicano (Mex$)</option> 1228 <option value="NZD">Tāra o Aotearoa (NZ$)</option> 1229 <option value="PHP">Piso ng Pilipinas (piso)</option> 1230 <option value="TWD">New Taiwan dollar (NT$)</option> 1231 </select> 1232 <input type="button" class="camaleo_donation_button button-primary" value="<?php echo $this->t('Proceed to PayPal') ?> →" title="<?php echo $this->t('Proceed to PayPal') ?>" disabled="disabled"/> 1233 </div> 1234 </li> 1235 </ul> 1236 </li> 1237 </ul> 1238 </div> 1239 <div style="clear:both"></div> 1240 </div> 1241 <p><?php echo $this->t('After donation I will let you know how you can hide this notice easily ;-)') ?></p> 1242 <div class="clear"></div><?php 1243 1244 } 1245 1246 function add_settings_field() { 1247 1248 // Register the option field 1249 register_setting('general', 'donated_to_camaleo'); 1250 1251 // Add Settings Field 1252 add_settings_field( 1253 get_class($this), 1254 $this->t('Donation to Camaleo'), 1255 array($this, 'print_settings_field'), 1256 'general' 1257 ); 1258 } 1259 1260 function print_settings_field() { 1261 1262 ?><div class="light" style="max-width:600px;padding:8px;"><?php do_action('donation_message') ?></div> 1263 <input type="checkbox" name="donated_to_camaleo" id="donated_to_camaleo" value="yes" <?php checked(get_option('donated_to_camaleo'), 'yes') ?>/> <label for="donated_to_camaleo"><?php 1264 1265 echo $this->t('I give the affidavit that I have sent a donation to Camaleo or paid him a fee for his job.'); 1266 1267 ?></label><?php 1268 } 1269 1270 function Extended_Implode($array, $separator = ', ', $last_separator = ' and ') { 1271 1272 $array = (array) $array; 1273 if(Count($array) == 0) { return ''; } 1274 if(Count($array) == 1) { return $array[0]; } 1275 $last_item = array_pop($array); 1276 $result = Implode($array, $separator) . $last_separator . $last_item; 1277 1278 return $result; 1279 } 1280 1281 function Number_to_Word($number) { 1282 1283 $arr_word = array( 1284 0 => $this->t('none'), 1285 1 => $this->t('one'), 1286 2 => $this->t('two'), 1287 3 => $this->t('three'), 1288 4 => $this->t('four'), 1289 5 => $this->t('five'), 1290 6 => $this->t('six'), 1291 7 => $this->t('seven'), 1292 8 => $this->t('eight'), 1293 9 => $this->t('nine'), 1294 1295 10 => $this->t('ten'), 1296 11 => $this->t('eleven'), 1297 12 => $this->t('twelve'), 1298 13 => $this->t('thirteen'), 1299 14 => $this->t('fourteen'), 1300 15 => $this->t('fifteen'), 1301 16 => $this->t('sixteen'), 1302 17 => $this->t('seventeen'), 1303 18 => $this->t('eighteen'), 1304 19 => $this->t('nineteen'), 1305 1306 20 => $this->t('twenty'), 1307 21 => $this->t('twenty-one'), 1308 22 => $this->t('twenty-two'), 1309 23 => $this->t('twenty-three'), 1310 24 => $this->t('twenty-four'), 1311 25 => $this->t('twenty-five'), 1312 26 => $this->t('twenty-six'), 1313 27 => $this->t('twenty-seven'), 1314 28 => $this->t('twenty-eight'), 1315 29 => $this->t('twenty-nine'), 1316 1317 30 => $this->t('thirty'), 1318 31 => $this->t('thirty-one'), 1319 32 => $this->t('thirty-two'), 1320 33 => $this->t('thirty-three'), 1321 34 => $this->t('thirty-four'), 1322 35 => $this->t('thirty-five'), 1323 36 => $this->t('thirty-six'), 1324 37 => $this->t('thirty-seven'), 1325 38 => $this->t('thirty-eight'), 1326 39 => $this->t('thirty-nine'), 1327 1328 40 => $this->t('fourty'), 1329 41 => $this->t('fourty-one'), 1330 42 => $this->t('fourty-two'), 1331 43 => $this->t('fourty-three'), 1332 44 => $this->t('fourty-four'), 1333 45 => $this->t('fourty-five'), 1334 46 => $this->t('fourty-six'), 1335 47 => $this->t('fourty-seven'), 1336 48 => $this->t('fourty-eight'), 1337 49 => $this->t('fourty-nine'), 1338 1339 50 => $this->t('fifty'), 1340 51 => $this->t('fifty-one'), 1341 52 => $this->t('fifty-two'), 1342 53 => $this->t('fifty-three'), 1343 54 => $this->t('fifty-four'), 1344 55 => $this->t('fifty-five'), 1345 56 => $this->t('fifty-six'), 1346 57 => $this->t('fifty-seven'), 1347 58 => $this->t('fifty-eight'), 1348 59 => $this->t('fifty-nine'), 1349 1350 60 => $this->t('sixty'), 1351 70 => $this->t('seventy'), 1352 80 => $this->t('eighty'), 1353 90 => $this->t('ninty'), 1354 100 => $this->t('hundred') 1355 ); 1356 1357 if(isset($arr_word[$number])) { 1358 1359 return $arr_word[$number]; 1360 } 1361 else { 1362 1363 return $number; 1364 } 1365 } 1366 } 1367 ## new wp_plugin_donation_to_camaleo(); 1368 } 579 1369 ?> -
myeasywebally/trunk/myEASYwebally-notifier.php
r279562 r414095 4 4 Send the required information to the services server 5 5 6 Version: 1.0. 06 Version: 1.0.4 7 7 Author: Ugo Grandolini aka "camaleo" 8 8 Author URI: http://myeasywp.com 9 9 */ 10 10 11 @include('wp-content/uploads/myEASYwebally-report.php'); 11 if(file_exists('wp-content/uploads/myEASYwebally-report.php')) { 12 13 @include('wp-content/uploads/myEASYwebally-report.php'); 14 } 15 else { 16 17 echo -1; 18 } 12 19 13 20 ?> -
myeasywebally/trunk/myeasywebally.php
r311093 r414095 3 3 Plugin Name: myEASYwebally 4 4 Plugin URI: http://myeasywp.com/plugins/myeasywebally/ 5 Description: More than a simple plugin, myEASYwebally lets you save quite a good amount of time when doing your WordPress blog maintenance! You need a free <a href="https://services.myeasywp.com/?page=account-add">API key</a> to use it.6 Version: 1.0. 35 Description: More than a simple plugin, myEASYwebally will save you a lot of time when doing your WordPress blog maintenance! You need a free <a href="https://services.myeasywp.com/?page=account-add">API key</a> to use it. 6 Version: 1.0.8 7 7 Author: Ugo Grandolini aka "camaleo" 8 8 Author URI: http://grandolini.com … … 39 39 define('EDIT_PIK_BTN', __('Change your API key', MYEWALLY_LOCALE )); 40 40 define('EDIT_MAIN_PREFS_BTN', __('Edit your general preferences', MYEWALLY_LOCALE )); 41 42 /* 1.0.8: BEG */ 43 //define('MYEASY_CDN', 'http://srht.me/f9'); # 0.1.4 44 45 define('MYEASY_CDN', plugins_url() . '/myeasybackup/'); 46 define('MYEASY_CDN_IMG', MYEASY_CDN . 'img/'); 47 define('MYEASY_CDN_CSS', MYEASY_CDN . 'css/'); 48 define('MYEASY_CDN_JS', MYEASY_CDN . 'js/'); 49 50 /* 1.0.8: END */ 41 51 42 52 -
myeasywebally/trunk/readme.txt
r311320 r414095 4 4 Tags: myeasy, update, admin, administration, ajax, comments, google, facebook, image, images, links, jquery, plugin, plugins, post, posts, rss, seo, sidebar, social, twitter, video, widget, wordpress, youtube 5 5 Requires at least: 2.8 6 Tested up to: 3. 0.17 Stable tag: 1.0.36 Tested up to: 3.2.1 7 Stable tag: trunk 8 8 9 More than a simple plugins, myEASYwebally lets you save quite a good amount of time when doing your WordPress blog maintenance!9 More than a simple plugins, myEASYwebally will save you a lot of time when doing your WordPress blog maintenance! 10 10 11 11 == Description == … … 70 70 71 71 == Changelog == 72 = 1.0.8 (23 July 2011) = 73 All the images and javascript code is now loaded from the same server where the plugin is installed. 74 Last year I tought it might be useful to have the myeasy common images and code loaded from a CDN to avoid having to update all the plugins in the series each time an image changes and to load pages faster; so I moved all the common items to a CDN. 75 Today I received a kind email from wordpress.org letting me know that "there a potential malicious intent issue here as you {me} could change the files to embed malicious code and nobody would be the wiser" and asking me to change the code. 76 I promptly reacted to show everyone that I am 101% in bona fide and here is a new version. 77 78 = 1.0.4 (27 November 2010) = 79 Fixed: 80 81 * The authorized ip of the main server is now automatically calculated - please allow 24 hours for this change to be taken into effect after you install this update. 82 * Once the plugin is activated it will be immediately recognized by the services site. Before this fix you needed to reload the blog home page to be able to add the blog on the services site. 72 83 73 84 = 1.0.3 (13 November 2010) = … … 91 102 == Upgrade Notice == 92 103 104 = 1.0.4.1 = 105 Fully deactivate and then reactivate after installing this version. 106 93 107 = 1.0.0 = 94 108 This is the first release.
Note: See TracChangeset
for help on using the changeset viewer.