WordPress.org

Plugin Directory

Changeset 57080 for sermon-browser/trunk


Ignore:
Timestamp:
07/31/08 03:39:20 (6 years ago)
Author:
mark8barnes
Message:
 
Location:
sermon-browser/trunk
Files:
36 added
19 deleted
1 edited

Legend:

Unmodified
Added
Removed
  • sermon-browser/trunk/sermon.php

    r57003 r57080  
    55Description: Add sermons to your Wordpress blog. Main coding by <a href="http://codeandmore.com/">Tien Do Xuan</a>. Design and additional coding 
    66Author: Mark Barnes 
    7 Version: 0.33 
     7Version: 0.34 
    88Author URI: http://www.4-14.org.uk/ 
    99 
     
    2828 ** Set up                            ** 
    2929 **************************************/ 
    30 define('SB_CURRENT_VERSION', '0.33'); 
     30define('SB_CURRENT_VERSION', '0.34'); 
     31$directories = explode(DIRECTORY_SEPARATOR,dirname(__FILE__)); 
     32if ($directories[count($directories)-1] == 'mu-plugins') { 
     33    define('IS_MU', TRUE); 
     34} else { 
     35    define('IS_MU', FALSE); 
     36} 
    3137$sermon_domain = 'sermon-browser'; 
    32 load_plugin_textdomain($sermon_domain, 'wp-content/plugins/sermon-browser'); 
    33 require_once('dictionary.php'); // Template functions 
    34 include_once('filetypes.php'); // User-defined icons 
    35 include('frontend.php'); // Everything related to displaying sermons 
     38if (IS_MU) { 
     39    load_plugin_textdomain($sermon_domain, '', 'sb-includes'); 
     40} else { 
     41    load_plugin_textdomain($sermon_domain, '', 'sermon-browser/sb-includes'); 
     42} 
     43require_once('sb-includes/dictionary.php'); // Template functions 
     44include_once('sb-includes/filetypes.php'); // User-defined icons 
     45include('sb-includes/frontend.php'); // Everything related to displaying sermons 
    3646 
    3747if ($_POST['sermon'] == 1) sb_return_ajax_data(); // Return AJAX data if that is all that is required 
     
    7686    global $wpdb; 
    7787    global $defaultMultiForm, $defaultSingleForm, $defaultStyle; 
     88    require_once(ABSPATH . 'wp-includes/pluggable.php'); 
    7889    require_once(ABSPATH . 'wp-admin/includes/upgrade.php'); 
    7990    $sermonUploadDir = sb_get_default('sermon_path'); 
    8091    if (!is_dir(sb_get_value('wordpress_path').$sermonUploadDir)) { 
    81         if (@mkdir(sb_get_value('wordpress_path').$sermonUploadDir)) { 
     92        if (sb_mkdir(sb_get_value('wordpress_path').$sermonUploadDir)) { 
    8293            @chmod(sb_get_value('wordpress_path').$sermonUploadDir, 0777);           
    8394        } 
    8495    } 
    85     if(!is_dir(sb_get_value('wordpress_path').$sermonUploadDir.'images') && @mkdir(sb_get_value('wordpress_path').$sermonUploadDir.'images')){ 
     96    if(!is_dir(sb_get_value('wordpress_path').$sermonUploadDir.'images') && sb_mkdir(sb_get_value('wordpress_path').$sermonUploadDir.'images')){ 
    8697        @chmod(sb_get_value('wordpress_path').$sermonUploadDir.'images', 0777); 
    8798    } 
     
    103114        case '1.1': 
    104115            add_option('sb_sermon_style', base64_encode($defaultStyle)); 
    105             if(!is_dir(sb_get_value('wordpress_path').$sermonUploadDir.'images') && @mkdir(sb_get_value('wordpress_path').$sermonUploadDir.'images')){ 
     116            if(!is_dir(sb_get_value('wordpress_path').$sermonUploadDir.'images') && sb_mkdir(sb_get_value('wordpress_path').$sermonUploadDir.'images')){ 
    106117                @chmod(sb_get_value('wordpress_path').$sermonUploadDir.'images', 0777); 
    107118            } 
     
    126137        default: 
    127138            update_option('sb_sermon_db_version', '1.0'); 
    128             return; 
    129139    }        
    130140 
     
    264274    add_option('sb_sermon_upload_dir', $sermonUploadDir); 
    265275    add_option('sb_sermon_upload_url', sb_get_default('attachment_url')); 
    266     add_option('sb_podcast', sb_display_url().'?podcast'); 
     276    add_option('sb_podcast', sb_get_value('wordpress_url').'?podcast'); 
    267277    add_option('sb_display_method', 'dynamic'); 
    268278    add_option('sb_sermons_per_page', '15'); 
     
    291301    if ($_POST['resetdefault']) { 
    292302        $dir = sb_get_default('sermon_path'); 
    293         update_option('sb_podcast', sb_display_url().'?podcast'); 
     303        if (sb_display_url()=="") { 
     304            update_option('sb_podcast', sb_get_value('wordpress_url').'?podcast'); 
     305        } else { 
     306            update_option('sb_podcast', sb_display_url().'?podcast'); 
     307        } 
    294308        update_option('sb_sermon_upload_dir', $dir); 
    295309        update_option('sb_sermon_upload_url', sb_get_default('attachment_url')); 
     
    298312        if (!is_dir(sb_get_value('wordpress_path').$dir)) { 
    299313          //Create that folder 
    300           if (@mkdir(sb_get_value('wordpress_path').$dir)) { 
     314          if (sb_mkdir(sb_get_value('wordpress_path').$dir)) { 
    301315             //try CHMOD it to 777 
    302316             @chmod(sb_get_value('wordpress_path').$dir, 0777);  
    303317          } 
    304318        } 
    305         if(!is_dir(sb_get_value('wordpress_path').$dir.'images') && @mkdir(sb_get_value('wordpress_path').$dir.'images')){ 
     319        if(!is_dir(sb_get_value('wordpress_path').$dir.'images') && sb_mkdir(sb_get_value('wordpress_path').$dir.'images')){ 
    306320         @chmod(sb_get_value('wordpress_path').$dir.'images', 0777); 
    307321        } 
     
    315329            case "unwriteable": 
    316330                echo '<div id="message" class="updated fade"><p><b>'; 
    317                 _e('Error: The upload folder is not writeable. You need to CHMOD the folder to 666 or 777.', $sermon_domain); 
     331                if (IS_MU AND !is_site_admin()) { 
     332                    _e('Upload is disabled. Please contact your administrator.', $sermon_domain); 
     333                } else { 
     334                    _e('Error: The upload folder is not writeable. You need to CHMOD the folder to 666 or 777.', $sermon_domain); 
     335                } 
    318336                echo '</b></div>'; 
    319337                break; 
    320338            case "notexist": 
    321339                echo '<div id="message" class="updated fade"><p><b>'; 
    322                 _e('Error: The upload folder you have specified does not exist.', $sermon_domain); 
     340                if (IS_MU AND !is_site_admin()) { 
     341                    _e('Upload is disabled. Please contact your administrator.', $sermon_domain); 
     342                } else { 
     343                    _e('Error: The upload folder you have specified does not exist.', $sermon_domain); 
     344                } 
    323345                echo '</b></div>'; 
    324346                break; 
     
    338360        update_option('sb_sermon_upload_url', get_bloginfo('wpurl').$dir);       
    339361        if (!is_dir(sb_get_value('wordpress_path').$dir)) { 
    340           if (@mkdir(sb_get_value('wordpress_path').$dir)) { 
     362          if (sb_mkdir(sb_get_value('wordpress_path').$dir)) { 
    341363             @chmod(sb_get_value('wordpress_path').$dir, 0777); 
    342364            } 
    343365        } 
    344         if(!is_dir(sb_get_value('wordpress_path').$dir.'images') && @mkdir(sb_get_value('wordpress_path').$sermonUploadDir.'images')){ 
     366        if(!is_dir(sb_get_value('wordpress_path').$dir.'images') && sb_mkdir(sb_get_value('wordpress_path').$sermonUploadDir.'images')){ 
    345367            @chmod(sb_get_value('wordpress_path').$dir.'images', 0777); 
    346368        }            
     
    407429        delete_option('sb_sermon_style_output'); 
    408430        delete_option('sb_sermon_style_date_modified'); 
    409         echo '<div id="message" class="updated fade"><p><b>'.__('Uninstall completed. Please deactivate the plugin.', $sermon_domain).'</b></div>'; 
     431        if (IS_MU) { 
     432            echo '<div id="message" class="updated fade"><p><b>'.__('All sermon data has been removed.', $sermon_domain).'</b></div>'; 
     433        } else { 
     434            echo '<div id="message" class="updated fade"><p><b>'.__('Uninstall completed. Please deactivate the plugin.', $sermon_domain).'</b></div>'; 
     435        } 
    410436    } 
    411437    //Display error messsages when problems in php.ini 
     
    429455        <br style="clear:both"/> 
    430456        <table border="0" class="widefat"> 
     457            <?php 
     458                if (!IS_MU OR is_site_admin()) { 
     459            ?> 
    431460            <tr> 
    432                 <td align="right" style="vertical-align:middle"><?php _e('Upload directory', $sermon_domain) ?>: </td> 
     461                <td align="right" style="vertical-align:middle"><?php _e('Upload folder', $sermon_domain) ?>: </td> 
    433462                <td><input type="text" name="dir" value="<?php echo get_option('sb_sermon_upload_dir') ?>" style="width:100%" /></td> 
    434463            </tr> 
     464            <?php 
     465                } else { 
     466            ?> 
     467                <input type="hidden" name="dir" value="<?php echo get_option('sb_sermon_upload_dir') ?>"> 
     468            <?php 
     469                } 
     470            ?> 
    435471            <tr> 
    436472                <td align="right" style="vertical-align:middle"><?php _e('Public podcast feed', $sermon_domain) ?>: </td> 
     
    439475            <tr> 
    440476                <td align="right"><?php _e('Private podcast feed', $sermon_domain) ?>: </td> 
    441                 <td><?php echo sb_display_url().'?podcast' ?></td> 
     477                <td><?php if (sb_display_url()=="") { echo sb_get_value('wordpress_url'); } else { echo sb_display_url(); } ?>?podcast</td> 
    442478            </tr> 
    443479            <tr> 
     
    446482            </tr> 
    447483            <?php 
    448                 $checkSermonUpload = sb_checkSermonUploadable(); 
    449                 if ($checkSermonUpload=="unwriteable")  
    450                     echo sb_display_error (__('The upload folder is not writeable. You need to CHMOD the folder to 666 or 777.', $sermon_domain)); 
    451                 elseif ($checkSermonUpload=="notexist")  
    452                     sb_display_error (__('The upload folder you have specified does not exist.', $sermon_domain)); 
    453                 $allow_uploads = ini_get('file_uploads'); 
    454                 $max_filesize = sb_return_kbytes(ini_get('upload_max_filesize')); 
    455                 $max_post = sb_return_kbytes(ini_get('post_max_size')); 
    456                 $max_execution = ini_get('max_execution_time'); 
    457                 $max_input = ini_get('max_input_time'); 
    458                 $max_memory = sb_return_kbytes(ini_get('memory_limit')); 
    459                 if ($allow_uploads == '0') echo sb_display_error(__('Your php.ini file does not allow uploads. Please change file_uploads in php.ini.', $sermon_domain)); 
    460                 if ($max_filesize < 15360) echo sb_display_warning(__('The maximum file size you can upload is only ', $sermon_domain).$max_filesize.__('k. Please change upload_max_filesize to at least 15M in php.ini.', $sermon_domain)); 
    461                 if ($max_post < 15360) echo sb_display_warning(__('The maximum file size you send through the browser is only ', $sermon_domain).$max_post.__('k. Please change post_max_size to at least 15M in php.ini.', $sermon_domain)); 
    462                 if ($max_execution < 600) echo sb_display_warning(__('The maximum time allowed for any script to run is only ', $sermon_domain).$max_execution.__(' seconds. Please change max_execution_time to at least 600 in php.ini.', $sermon_domain)); 
    463                 if ($max_input < 600 && $max_input != -1) echo sb_display_warning(__('The maximum time allowed for an upload script to run is only ', $sermon_domain).$max_input.__(' seconds. Please change max_input_time to at least 600 in php.ini.', $sermon_domain)); 
    464                 if ($max_memory < 16384) echo sb_display_warning(__('The maximum amount of memory allowed is only ', $sermon_domain).$max_memory.__('k. Please change memory_limit to at least 16M in php.ini.', $sermon_domain)); 
     484                if (!IS_MU OR is_site_admin()) { 
     485                    $checkSermonUpload = sb_checkSermonUploadable(); 
     486                    if ($checkSermonUpload=="unwriteable")  
     487                        echo sb_display_error (__('The upload folder is not writeable. You need to CHMOD the folder to 666 or 777.', $sermon_domain)); 
     488                    elseif ($checkSermonUpload=="notexist")  
     489                        sb_display_error (__('The upload folder you have specified does not exist.', $sermon_domain)); 
     490                    $allow_uploads = ini_get('file_uploads'); 
     491                    $max_filesize = sb_return_kbytes(ini_get('upload_max_filesize')); 
     492                    $max_post = sb_return_kbytes(ini_get('post_max_size')); 
     493                    $max_execution = ini_get('max_execution_time'); 
     494                    $max_input = ini_get('max_input_time'); 
     495                    $max_memory = sb_return_kbytes(ini_get('memory_limit')); 
     496                    if ($allow_uploads == '0') echo sb_display_error(__('Your php.ini file does not allow uploads. Please change file_uploads in php.ini.', $sermon_domain)); 
     497                    if ($max_filesize < 15360) echo sb_display_warning(__('The maximum file size you can upload is only ', $sermon_domain).$max_filesize.__('k. Please change upload_max_filesize to at least 15M in php.ini.', $sermon_domain)); 
     498                    if ($max_post < 15360) echo sb_display_warning(__('The maximum file size you send through the browser is only ', $sermon_domain).$max_post.__('k. Please change post_max_size to at least 15M in php.ini.', $sermon_domain)); 
     499                    if ($max_execution < 600) echo sb_display_warning(__('The maximum time allowed for any script to run is only ', $sermon_domain).$max_execution.__(' seconds. Please change max_execution_time to at least 600 in php.ini.', $sermon_domain)); 
     500                    if ($max_input < 600 && $max_input != -1) echo sb_display_warning(__('The maximum time allowed for an upload script to run is only ', $sermon_domain).$max_input.__(' seconds. Please change max_input_time to at least 600 in php.ini.', $sermon_domain)); 
     501                    if ($max_memory < 16384) echo sb_display_warning(__('The maximum amount of memory allowed is only ', $sermon_domain).$max_memory.__('k. Please change memory_limit to at least 16M in php.ini.', $sermon_domain)); 
     502                } 
    465503            ?> 
    466504        </table>         
     
    468506    </div>   
    469507    <div class="wrap"> 
    470         <h2><?php _e('Uninstall', $sermon_domain) ?></h2> 
     508        <h2><?php if (IS_MU) { _e('Delete all data', $sermon_domain); } else { _e('Uninstall', $sermon_domain); } ?></h2> 
    471509        <br style="clear:both"/> 
    472510        <table border="0" class="widefat">           
     
    475513            </tr> 
    476514        </table> 
    477         <p class="submit"><input type="submit" name="uninstall" value="<?php _e('Uninstall', $sermon_domain) ?>" onclick="return confirm('Are you sure?')" /></p>  
     515        <p class="submit"><input type="submit" name="uninstall" value="<?php if (IS_MU) { _e('Delete all', $sermon_domain); } else { _e('Uninstall', $sermon_domain); } ?>" onclick="return confirm('<?php _e('Do you REALLY want to delete all data?', $sermon_domain)?>')" /></p>  
    478516    </div> 
    479517    </form> 
    480518    <script> 
    481519        jQuery("form").submit(function() { 
    482             var yes = confirm("Are you sure ?"); 
     520            var yes = confirm("<?php _e('Are you sure?', $sermon_domain)?>"); 
    483521            if(!yes) return false; 
    484522        }); 
     
    562600        echo '<div id="message" class="updated fade"><p><b>'.__('Preacher saved to database.', $sermon_domain).'</b></div>'; 
    563601    } 
     602    $sermonUploadDir = get_option('sb_sermon_upload_dir'); 
    564603    //Save changes 
    565604    if ($_POST['save']) { 
     
    575614            $filename = basename($_FILES['upload']['name']); 
    576615            $prefix = ''; 
    577             $sermonUploadDir = get_option('sb_sermon_upload_dir'); 
    578             if(!is_dir(sb_get_value('wordpress_path').$sermonUploadDir.'images') && @mkdir(sb_get_value('wordpress_path').$sermonUploadDir.'images')){ 
     616            if(!is_dir(sb_get_value('wordpress_path').$sermonUploadDir.'images') && sb_mkdir(sb_get_value('wordpress_path').$sermonUploadDir.'images')){ 
    579617                @chmod(sb_get_value('wordpress_path').$sermonUploadDir.'images', 0777); 
    580618            } 
     
    604642            @unlink(sb_get_value('wordpress_path').get_option('sb_sermon_upload_dir').'images/'.mysql_real_escape_string($_POST['old'])); 
    605643        } 
    606         if(!$error) echo "<script>document.location = '".sb_get_value('wordpress_url')."/wp-admin/admin.php?page=sermon-browser/preachers.php&saved=true';</script>"; 
     644        if(!$error) { 
     645            echo "<script>document.location = '".sb_get_value('wordpress_url')."/wp-admin/admin.php?page=sermon-browser/preachers.php&saved=true';</script>"; 
     646        } 
    607647    } 
    608648     
     
    629669            $checkSermonUpload = sb_checkSermonUploadable('images/'); 
    630670            if ($checkSermonUpload == 'notexist') { 
    631                 if(!is_dir(sb_get_value('wordpress_path').$sermonUploadDir.'images') && @mkdir(sb_get_value('wordpress_path').$sermonUploadDir.'images')){ 
    632                     @chmod(sb_get_value('wordpress_path').$sermonUploadDir.'images', 0777); 
     671                echo sb_get_value('wordpress_path').$sermonUploadDir.'images'; 
     672                if(!is_dir(sb_get_value('wordpress_path').$sermonUploadDir.'images') && mkdir(sb_get_value('wordpress_path').$sermonUploadDir.'images')){ 
     673                    chmod(sb_get_value('wordpress_path').$sermonUploadDir.'images', 0777); 
    633674                } 
    634675                $checkSermonUpload = sb_checkSermonUploadable('images/'); 
     
    744785            } 
    745786            if (s != null) { 
    746                 jQuery.post('<?php echo sb_get_value('wordpress_url') ?>/wp-admin/admin.php?page=sermon-browser/sermon.php', {sname: s, sermon: 1}, function(r) {                
     787                jQuery.post('<?php echo sb_get_value('admin_url') ?>sermon.php', {sname: s, sermon: 1}, function(r) {                
    747788                    if (r) { 
    748789                        sz = s.match(/(.*?)@(.*)/)[1]; 
     
    768809            var ss = prompt("New series' name?", "Series' name"); 
    769810            if (ss != null) { 
    770                 jQuery.post('<?php echo sb_get_value('wordpress_url') ?>/wp-admin/admin.php?page=sermon-browser/sermon.php', {ssname: ss, sermon: 1}, function(r) { 
     811                jQuery.post('<?php echo sb_get_value('admin_url') ?>sermon.php', {ssname: ss, sermon: 1}, function(r) { 
    771812                    if (r) { 
    772813                        jQuery('#Series-list').append('\ 
     
    787828        } 
    788829        function deleteSeries(id) { 
    789             jQuery.post('<?php echo sb_get_value('wordpress_url') ?>/wp-admin/admin.php?page=sermon-browser/sermon.php', {ssname: 'dummy', ssid: id, del: 1, sermon: 1}, function(r) { 
     830            jQuery.post('<?php echo sb_get_value('admin_url') ?>sermon.php', {ssname: 'dummy', ssid: id, del: 1, sermon: 1}, function(r) { 
    790831                if (r) { 
    791832                    jQuery('#rowSeries' + id).fadeOut(function() { 
     
    796837        } 
    797838        function deleteServices(id) { 
    798             jQuery.post('<?php echo sb_get_value('wordpress_url') ?>/wp-admin/admin.php?page=sermon-browser/sermon.php', {sname: 'dummy', sid: id, del: 1, sermon: 1}, function(r) { 
     839            jQuery.post('<?php echo sb_get_value('admin_url') ?>sermon.php', {sname: 'dummy', sid: id, del: 1, sermon: 1}, function(r) { 
    799840                if (r) { 
    800841                    jQuery('#rowServices' + id).fadeOut(function() { 
     
    807848            var ss = prompt("New series' name?", old); 
    808849            if (ss != null) { 
    809                 jQuery.post('<?php echo sb_get_value('wordpress_url') ?>/wp-admin/admin.php?page=sermon-browser/sermon.php', {ssid: id, ssname: ss, sermon: 1}, function(r) { 
     850                jQuery.post('<?php echo sb_get_value('admin_url') ?>sermon.php', {ssid: id, ssname: ss, sermon: 1}, function(r) { 
    810851                    if (r) { 
    811852                        jQuery('#Series' + id).text(ss); 
     
    823864            } 
    824865            if (s != null) { 
    825                 jQuery.post('<?php echo sb_get_value('wordpress_url') ?>/wp-admin/admin.php?page=sermon-browser/sermon.php', {sid: id, sname: s, sermon: 1}, function(r) { 
     866                jQuery.post('<?php echo sb_get_value('admin_url') ?>sermon.php', {sid: id, sname: s, sermon: 1}, function(r) { 
    826867                    if (r) { 
    827868                        sz = s.match(/(.*?)@(.*)/)[1]; 
     
    904945        if ($_FILES['upload']['error'] == UPLOAD_ERR_OK) { 
    905946            $filename = basename($_FILES['upload']['name']); 
    906             $prefix = ''; 
    907             $dest = sb_get_value('wordpress_path').get_option('sb_sermon_upload_dir').$prefix.$filename; 
    908             if($wpdb->get_var("SELECT COUNT(*) FROM {$wpdb->prefix}sb_stuff WHERE name = '$filename'") == 0) { 
    909                 if (move_uploaded_file($_FILES['upload']['tmp_name'], $dest)) { 
    910                     $filename = $prefix.mysql_real_escape_string($filename); 
    911                     $query = "INSERT INTO {$wpdb->prefix}sb_stuff VALUES (null, 'file', '$filename', 0, 0);"; 
    912                     $wpdb->query($query); 
    913                     echo '<div id="message" class="updated fade"><p><b>'.__('Files saved to database.', $sermon_domain).'</b></div>'; 
    914                 } 
     947            if (IS_MU) { 
     948                $file_allowed = FALSE; 
     949                require_once(ABSPATH . 'wp-includes/wpmu-functions.php'); 
     950                if (function_exists('get_site_option')) {  
     951                    $allowed_extensions = explode(" ", get_site_option("upload_filetypes")); 
     952                    foreach ($allowed_extensions as $ext) { 
     953                        if (substr(strtolower($filename), -(strlen($ext)+1)) == ".".strtolower($ext)) 
     954                            $file_allowed = TRUE; 
     955                    } 
     956                } 
    915957            } else { 
    916                 echo '<div id="message" class="updated fade"><p><b>'.__($filename. ' already exists.', $sermon_domain).'</b></div>'; 
     958                $file_allowed = TRUE; 
     959            } 
     960            if ($file_allowed) { 
     961                $prefix = ''; 
     962                $dest = sb_get_value('wordpress_path').get_option('sb_sermon_upload_dir').$prefix.$filename; 
     963                if($wpdb->get_var("SELECT COUNT(*) FROM {$wpdb->prefix}sb_stuff WHERE name = '$filename'") == 0) { 
     964                    if (move_uploaded_file($_FILES['upload']['tmp_name'], $dest)) { 
     965                        $filename = $prefix.mysql_real_escape_string($filename); 
     966                        $query = "INSERT INTO {$wpdb->prefix}sb_stuff VALUES (null, 'file', '$filename', 0, 0);"; 
     967                        $wpdb->query($query); 
     968                        echo '<div id="message" class="updated fade"><p><b>'.__('Files saved to database.', $sermon_domain).'</b></div>'; 
     969                    } 
     970                } else { 
     971                    echo '<div id="message" class="updated fade"><p><b>'.__($filename. ' already exists.', $sermon_domain).'</b></div>'; 
     972                } 
     973            } else { 
     974                @unlink($_FILES['upload']['tmp_name']); 
     975                echo '<div id="message" class="updated fade"><p><b>'.__('You are not permitted to upload files of that type.', $sermon_domain).'</b></div>'; 
    917976            } 
    918977        } 
     
    9541013            var f = prompt("<?php _e('New file name?', $sermon_domain) ?>", old); 
    9551014            if (f != null) { 
    956                 jQuery.post('<?php echo sb_get_value('wordpress_url') ?>/wp-admin/admin.php?page=sermon-browser/uploads.php', {fid: id, oname: old, fname: f, sermon: 1}, function(r) { 
     1015                jQuery.post('<?php echo sb_get_value('admin_url') ?>'sermon-browser/uploads.php', {fid: id, oname: old, fname: f, sermon: 1}, function(r) { 
    9571016                    if (r) { 
    9581017                        if (r == 'renamed') { 
     
    9641023                            Fat.fade_element('s' + id); 
    9651024                        } else { 
    966                             alert('<?php _e('The script is unable to rename your file.', $sermon_domain) ?>'); 
     1025                            if (r == 'forbidden') { 
     1026                                alert('<?php _e('You are not permitted files with that extension.', $sermon_domain) ?>'); 
     1027                            } else { 
     1028                                alert('<?php _e('The script is unable to rename your file.', $sermon_domain) ?>'); 
     1029                            } 
    9671030                        } 
    9681031                    }; 
     
    9711034        } 
    9721035        function kill(id, f) { 
    973             jQuery.post('<?php echo sb_get_value('wordpress_url') ?>/wp-admin/admin.php?page=sermon-browser/uploads.php', {fname: f, fid: id, del: 1, sermon: 1}, function(r) { 
     1036            jQuery.post('<?php echo sb_get_value('admin_url') ?>'sermon-browser/uploads.php', {fname: f, fid: id, del: 1, sermon: 1}, function(r) { 
    9741037                if (r) { 
    9751038                    if (r == 'deleted') { 
     
    9971060        } 
    9981061        function fetchU(st) { 
    999             jQuery.post('<?php echo sb_get_value('wordpress_url') ?>/wp-admin/admin.php?page=sermon-browser/uploads.php', {fetchU: st + 1, sermon: 1}, function(r) { 
     1062            jQuery.post('<?php echo sb_get_value('admin_url') ?>'sermon-browser/uploads.php', {fetchU: st + 1, sermon: 1}, function(r) { 
    10001063                if (r) { 
    10011064                    jQuery('#the-list-u').html(r);                   
     
    10161079        } 
    10171080        function fetchL(st) { 
    1018             jQuery.post('<?php echo sb_get_value('wordpress_url') ?>/wp-admin/admin.php?page=sermon-browser/uploads.php', {fetchL: st + 1, sermon: 1}, function(r) { 
     1081            jQuery.post('<?php echo sb_get_value('admin_url') ?>'sermon-browser/uploads.php', {fetchL: st + 1, sermon: 1}, function(r) { 
    10191082                if (r) { 
    10201083                    jQuery('#the-list-l').html(r);                   
     
    10351098        } 
    10361099        function findNow() { 
    1037             jQuery.post('<?php echo sb_get_value('wordpress_url') ?>/wp-admin/admin.php?page=sermon-browser/uploads.php', {search: jQuery('#search').val(), sermon: 1}, function(r) { 
     1100            jQuery.post('<?php echo sb_get_value('admin_url') ?>'sermon-browser/uploads.php', {search: jQuery('#search').val(), sermon: 1}, function(r) { 
    10381101                if (r) { 
    10391102                    jQuery('#the-list-s').html(r);                                       
     
    10651128        </form> 
    10661129        <?php 
    1067         } else { 
     1130        } else 
     1131            if (IS_MU) { 
     1132        ?> 
     1133        <p style="color:#FF0000"><?php _e('Upload is disabled. Please contact your systems administrator.', $sermon_domain);?></p> 
     1134        <?php 
     1135            } else { 
    10681136        ?> 
    10691137        <p style="color:#FF0000"><?php _e('Upload is disabled. Please check your folder setting in Options.', $sermon_domain);?></p> 
     
    12321300    <script> 
    12331301        function fetch(st) { 
    1234             jQuery.post('<?php echo sb_get_value('wordpress_url') ?>/wp-admin/admin.php?page=sermon-browser/sermon.php', {fetch: st + 1, sermon: 1, title: jQuery('#search').val(), preacher: jQuery('#preacher option[@selected]').val(), series: jQuery('#series option[@selected]').val() }, function(r) { 
     1302            jQuery.post('<?php echo sb_get_value('admin_url') ?>sermon.php', {fetch: st + 1, sermon: 1, title: jQuery('#search').val(), preacher: jQuery('#preacher option[@selected]').val(), series: jQuery('#series option[@selected]').val() }, function(r) { 
    12351303                if (r) { 
    12361304                    jQuery('#the-list').html(r);                     
     
    13081376                            <?php //Security check 
    13091377                                    if (function_exists('current_user_can')&&current_user_can('edit_posts')) { ?> 
    1310                                     <a href="<?php echo sb_get_value('wordpress_url') ?>/wp-admin/admin.php?page=sermon-browser/new_sermon.php&mid=<?php echo $sermon->id ?>"><?php _e('Edit', $sermon_domain) ?></a> | <a onclick="return confirm('Are you sure?')" href="<?php echo sb_get_value('wordpress_url') ?>/wp-admin/admin.php?page=sermon-browser/sermon.php&mid=<?php echo $sermon->id ?>"><?php _e('Delete', $sermon_domain); ?></a> 
     1378                                    <a href="<?php echo sb_get_value('admin_url') ?>sermon-browser/new_sermon.php&mid=<?php echo $sermon->id ?>"><?php _e('Edit', $sermon_domain) ?></a> | <a onclick="return confirm('Are you sure?')" href="<?php echo sb_get_value('admin_url') ?>sermon.php&mid=<?php echo $sermon->id ?>"><?php _e('Delete', $sermon_domain); ?></a> 
    13111379                            <?php } else { ?>&nbsp;<?php } ?> 
    13121380                        </td> 
     
    13991467            if ($_FILES['upload']['error'][$uid] == UPLOAD_ERR_OK) { 
    14001468                $filename = basename($_FILES['upload']['name'][$uid]); 
    1401                 $prefix = ''; 
    1402                 $dest = sb_get_value('wordpress_path').get_option('sb_sermon_upload_dir').$prefix.$filename; 
    1403                 if ($wpdb->get_var("SELECT COUNT(*) FROM {$wpdb->prefix}sb_stuff WHERE name = '$filename'") == 0 && move_uploaded_file($_FILES['upload']['tmp_name'][$uid], $dest)) { 
    1404                     $filename = $prefix.mysql_real_escape_string($filename); 
    1405                     $queryz = "INSERT INTO {$wpdb->prefix}sb_stuff VALUES (null, 'file', '$filename', $id, 0);"; 
    1406                     $wpdb->query($queryz);                   
     1469                if (IS_MU) { 
     1470                    $file_allowed = FALSE; 
     1471                    require_once(ABSPATH . 'wp-includes/wpmu-functions.php'); 
     1472                    if (function_exists('get_site_option')) {  
     1473                        $allowed_extensions = explode(' ', get_site_option('upload_filetypes')); 
     1474                        foreach ($allowed_extensions as $ext) { 
     1475                            if (substr(strtolower($filename), -(strlen($ext)+1)) == '.'.strtolower($ext)) 
     1476                                $file_allowed = TRUE; 
     1477                        } 
     1478                    } 
    14071479                } else { 
    1408                     echo '<div id="message" class="updated fade"><p><b>'.__($filename. ' already exists.', $sermon_domain).'</b></div>'; 
    1409                     $error = true; 
     1480                    $file_allowed = TRUE; 
    14101481                } 
    1411             } elseif ($file != 0) { 
     1482                if ($file_allowed) { 
     1483                    $prefix = ''; 
     1484                    $dest = sb_get_value('wordpress_path').get_option('sb_sermon_upload_dir').$prefix.$filename; 
     1485                    if ($wpdb->get_var("SELECT COUNT(*) FROM {$wpdb->prefix}sb_stuff WHERE name = '$filename'") == 0 && move_uploaded_file($_FILES['upload']['tmp_name'][$uid], $dest)) { 
     1486                        $filename = $prefix.mysql_real_escape_string($filename); 
     1487                        $queryz = "INSERT INTO {$wpdb->prefix}sb_stuff VALUES (null, 'file', '$filename', $id, 0);"; 
     1488                        $wpdb->query($queryz);                   
     1489                    } else { 
     1490                        echo '<div id="message" class="updated fade"><p><b>'.__($filename. ' already exists.', $sermon_domain).'</b></div>'; 
     1491                        $error = true; 
     1492                    } 
     1493                } else { 
     1494                    @unlink($_FILES['upload']['tmp_name']); 
     1495                    echo '<div id="message" class="updated fade"><p><b>'.__('You are not permitted to upload files of that type.', $sermon_domain).'</b></div>'; 
     1496                    $error = true; 
     1497                } 
     1498            } elseif ($file != 0)  
    14121499                $wpdb->query("UPDATE {$wpdb->prefix}sb_stuff SET sermon_id = $id WHERE id = $file;"); 
    1413             }                
    14141500        } 
    14151501        // then URLs 
     
    14371523        } 
    14381524        // everything is fine, get out of here! 
    1439         if(!$error) echo "<script>document.location = '".sb_get_value('wordpress_url')."/wp-admin/admin.php?page=sermon-browser/sermon.php&saved=true';</script>"; 
     1525        if(!$error) { 
     1526            echo "<script>document.location = '".sb_get_value('admin_url')."sermon.php&saved=true';</script>"; 
     1527            die(); 
     1528        } 
    14401529    }        
    14411530     
     
    14801569    $books = sb_get_value('bible_books'); 
    14811570?> 
    1482     <link rel="stylesheet" href="<?php echo sb_get_value('plugin_url') ?>/style.php" type="text/css"> 
    1483     <link rel="stylesheet" href="<?php echo sb_get_value('plugin_url') ?>/datepicker.css" type="text/css"> 
     1571    <link rel="stylesheet" href="<?php echo sb_get_value('plugin_url') ?>/sb-includes/style.php" type="text/css"> 
     1572    <link rel="stylesheet" href="<?php echo sb_get_value('plugin_url') ?>/sb-includes/datepicker.css" type="text/css"> 
    14841573    <script type="text/javascript" src="<?php echo sb_get_value('wordpress_url') ?>/wp-includes/js/jquery/jquery.js"></script> 
    1485     <script type="text/javascript" src="<?php echo sb_get_value('plugin_url') ?>/datePicker.js"></script> 
    1486     <script type="text/javascript" src="<?php echo sb_get_value('plugin_url') ?>/64.js"></script> 
     1574    <script type="text/javascript" src="<?php echo sb_get_value('plugin_url') ?>/sb-includes/datePicker.js"></script> 
     1575    <script type="text/javascript" src="<?php echo sb_get_value('plugin_url') ?>/sb-includes/64.js"></script> 
    14871576    <script type="text/javascript">      
    14881577        var timeArr = new Array(); 
     
    14921581            var p = prompt("New preacher's name?", "Preacher's name"); 
    14931582            if (p != null) { 
    1494                 jQuery.post('<?php echo sb_get_value('wordpress_url') ?>/wp-admin/admin.php?page=sermon-browser/sermon.php', {pname: p, sermon: 1}, function(r) { 
     1583                jQuery.post('<?php echo sb_get_value('admin_url') ?>sermon.php', {pname: p, sermon: 1}, function(r) { 
    14951584                    if (r) { 
    14961585                        jQuery('#preacher option:first').before('<option value="' + r + '">' + p + '</option>'); 
     
    15131602            } 
    15141603            if (s != null) { 
    1515                 jQuery.post('<?php echo sb_get_value('wordpress_url') ?>/wp-admin/admin.php?page=sermon-browser/sermon.php', {sname: s, sermon: 1}, function(r) { 
     1604                jQuery.post('<?php echo sb_get_value('admin_url') ?>sermon.php', {sname: s, sermon: 1}, function(r) { 
    15161605                    if (r) { 
    15171606                        jQuery('#service option:first').before('<option value="' + r + '">' + s.match(/(.*?)@/)[1] + '</option>');   
     
    15261615            var ss = prompt("New series' name?", "Series' name"); 
    15271616            if (ss != null) { 
    1528                 jQuery.post('<?php echo sb_get_value('wordpress_url') ?>/wp-admin/admin.php?page=sermon-browser/sermon.php', {ssname: ss, sermon: 1}, function(r) { 
     1617                jQuery.post('<?php echo sb_get_value('admin_url') ?>sermon.php', {ssname: ss, sermon: 1}, function(r) { 
    15291618                    if (r) { 
    15301619                        jQuery('#series option:first').before('<option value="' + r + '">' + ss + '</option>');          
     
    20352124            } 
    20362125            echo 'done'; 
     2126            die(); 
    20372127        } else { 
    20382128            $wpdb->query("INSERT INTO {$wpdb->prefix}sb_preachers VALUES (null, '$pname', '', '');"); 
    20392129            echo $wpdb->insert_id; 
     2130            die(); 
    20402131        }        
    20412132    } elseif ($_POST['sname']) { // service 
     
    20532144            }            
    20542145            echo 'done'; 
     2146            die(); 
    20552147        } else { 
    20562148            $wpdb->query("INSERT INTO {$wpdb->prefix}sb_services VALUES (null, '$sname', '$stime');"); 
    20572149            echo $wpdb->insert_id; 
     2150            die(); 
    20582151        }        
    20592152    } elseif ($_POST['ssname']) { // series 
     
    20672160            }                
    20682161            echo 'done'; 
     2162            die(); 
    20692163        } else { 
    20702164            $wpdb->query("INSERT INTO {$wpdb->prefix}sb_series VALUES (null, '$ssname', 0);"); 
    20712165            echo $wpdb->insert_id; 
    2072         } 
    2073     } elseif ($_POST['fname']) { // file         
     2166            die(); 
     2167        } 
     2168    } elseif ($_POST['fname']) { // Files 
    20742169        $fname = mysql_real_escape_string($_POST['fname']); 
    20752170        if ($_POST['fid']) { 
     
    20802175                    $wpdb->query("DELETE FROM {$wpdb->prefix}sb_stuff WHERE id = $fid;"); 
    20812176                    echo 'deleted'; 
     2177                    die(); 
    20822178                } else { 
    20832179                    echo 'failed'; 
     2180                    die(); 
    20842181                }                
    20852182            } else {                 
    20862183                $oname = mysql_real_escape_string($_POST['oname']);  
    2087                 if (!is_writable(sb_get_value('wordpress_path').get_option('sb_sermon_upload_dir').$fname) && rename(sb_get_value('wordpress_path').get_option('sb_sermon_upload_dir').$oname, sb_get_value('wordpress_path').get_option('sb_sermon_upload_dir').$fname)) { 
    2088                     $wpdb->query("UPDATE {$wpdb->prefix}sb_stuff SET name = '$fname' WHERE id = $fid;"); 
    2089                     echo 'renamed'; 
    2090                 } else {         
    2091                     echo 'failed';               
     2184                if (IS_MU) { 
     2185                    $file_allowed = FALSE; 
     2186                    require_once(ABSPATH . 'wp-includes/wpmu-functions.php'); 
     2187                    if (function_exists('get_site_option')) {  
     2188                        $allowed_extensions = explode(" ", get_site_option("upload_filetypes")); 
     2189                        foreach ($allowed_extensions as $ext) { 
     2190                            if (substr(strtolower($filename), -(strlen($ext)+1)) == ".".strtolower($ext)) 
     2191                                $file_allowed = TRUE; 
     2192                        } 
     2193                    } 
     2194                } else { 
     2195                    $file_allowed = TRUE; 
     2196                } 
     2197                if ($file_allowed) { 
     2198                    if (!is_writable(sb_get_value('wordpress_path').get_option('sb_sermon_upload_dir').$fname) && rename(sb_get_value('wordpress_path').get_option('sb_sermon_upload_dir').$oname, sb_get_value('wordpress_path').get_option('sb_sermon_upload_dir').$fname)) { 
     2199                        $wpdb->query("UPDATE {$wpdb->prefix}sb_stuff SET name = '$fname' WHERE id = $fid;"); 
     2200                        echo 'renamed'; 
     2201                        die(); 
     2202                    } else {         
     2203                        echo 'failed';               
     2204                        die(); 
     2205                    } 
     2206                } else { 
     2207                    echo 'forbidden'; 
     2208                    die(); 
    20922209                } 
    20932210            }                
     
    21172234                <td><?php echo sb_sermon_stats($sermon->id) ?></td> 
    21182235                <td style="text-align:center"> 
    2119                     <a href="<?php echo sb_get_value('wordpress_url') ?>/wp-admin/admin.php?page=sermon-browser/new_sermon.php&mid=<?php echo $sermon->id ?>"><?php _e('Edit', $sermon_domain) ?></a> | <a onclick="return confirm('Are you sure?')" href="<?php echo sb_get_value('wordpress_url') ?>/wp-admin/admin.php?page=sermon-browser/sermon.php&mid=<?php echo $sermon->id ?>"><?php _e('Delete', $sermon_domain) ?></a> 
     2236                    <a href="<?php echo sb_get_value('admin_url') ?>sermon-browser/new_sermon.php&mid=<?php echo $sermon->id ?>"><?php _e('Edit', $sermon_domain) ?></a> | <a onclick="return confirm('Are you sure?')" href="<?php echo sb_get_value('admin_url') ?>sermon.php&mid=<?php echo $sermon->id ?>"><?php _e('Delete', $sermon_domain) ?></a> 
    21202237                </td> 
    21212238            </tr> 
     
    22322349} 
    22332350 
     2351// Recursive mkdir function for PHP < 5.0.0 
     2352function sb_mkdir($pathname, $mode=0777) 
     2353{ 
     2354    is_dir(dirname($pathname)) || sb_mkdir(dirname($pathname), $mode); 
     2355    @mkdir($pathname, $mode); 
     2356    return @chmod($pathname, $mode); 
     2357} 
     2358 
    22342359// Processing for php.ini values 
    22352360function sb_return_kbytes($val) { 
     
    22692394        case 'wordpress_path' : 
    22702395            global $wordpressRealPath; 
    2271             if (!$wordpressRealPath | $clear) $wordpressRealPath = str_replace("\\", "/", dirname(dirname(dirname(dirname(__FILE__))))); 
     2396            if (!$wordpressRealPath | $clear) { 
     2397                if(IS_MU) { 
     2398                    $wordpressRealPath = str_replace("\\", "/", dirname(dirname(dirname(__FILE__)))); 
     2399                } else { 
     2400                    $wordpressRealPath = str_replace("\\", "/", dirname(dirname(dirname(dirname(__FILE__))))); 
     2401                } 
     2402            } 
    22722403            return $wordpressRealPath; 
    22732404        case 'display_method' : 
     
    22772408        case 'bible_books' : 
    22782409            global $bible_books, $wpdb; 
    2279             if (!$bible_books | $clear) $bible_books = $wpdb->get_col("SELECT name FROM wp_sb_books order by id"); 
     2410            if (!$bible_books | $clear) $bible_books = $wpdb->get_col("SELECT name FROM {$wpdb->prefix}sb_books order by id"); 
    22802411            return $bible_books; 
    22812412        case 'sermons_per_page' : 
     
    22882419                if ( !defined('WP_CONTENT_DIR') ) 
    22892420                    define( 'WP_CONTENT_DIR', ABSPATH . 'wp-content' ); 
    2290                 $sb_plugin_path = WP_CONTENT_DIR.'/plugins/'.plugin_basename(dirname(__FILE__)); 
     2421                $directories = explode(DIRECTORY_SEPARATOR,dirname(__FILE__)); 
     2422                $plugin_dir = $directories[count($directories)-1]; 
     2423                $sb_plugin_path = WP_CONTENT_DIR.'/'.$plugin_dir.'/'.plugin_basename(dirname(__FILE__)); 
    22912424            } 
    22922425            return $plugin_path; 
    22932426        case 'plugin_url' : 
    22942427            global $sb_plugin_url; 
    2295             if (!$plugin_path | $clear) { 
     2428            if (!$sb_plugin_url | $clear) { 
    22962429                if ( !defined('WP_CONTENT_URL') ) 
    22972430                    define( 'WP_CONTENT_URL', get_option('siteurl') . '/wp-content'); 
    2298                 $sb_plugin_url = WP_CONTENT_URL.'/plugins/'.plugin_basename(dirname(__FILE__)); 
     2431                $directories = explode(DIRECTORY_SEPARATOR,dirname(__FILE__)); 
     2432                $plugin_dir = $directories[count($directories)-1]; 
     2433                if (IS_MU) { 
     2434                    $sb_plugin_url = WP_CONTENT_URL.'/'.$plugin_dir; 
     2435                } else { 
     2436                    $sb_plugin_url = WP_CONTENT_URL.'/plugins/'.plugin_basename(dirname(__FILE__)); 
     2437                    if (substr($sb_plugin_url,-1) == "/") $sb_plugin_url = substr($sb_plugin_url, 0, -1); 
     2438                } 
    22992439            } 
    23002440            return $sb_plugin_url; 
     2441        case 'admin_url' : 
     2442            global $sb_admin_url; 
     2443            if (IS_MU) { 
     2444                $sb_admin_url =  sb_get_value('wordpress_url').'/wp-admin/admin.php?page='; 
     2445            } else { 
     2446                $sb_admin_url =  sb_get_value('wordpress_url').'/wp-admin/admin.php?page=sermon-browser/'; 
     2447            } 
     2448            return $sb_admin_url; 
    23012449    } 
    23022450} 
Note: See TracChangeset for help on using the changeset viewer.