WordPress.org

Plugin Directory

Changeset 602157


Ignore:
Timestamp:
09/21/12 23:17:55 (5 years ago)
Author:
cybersprocket
Message:

v3.3

Location:
store-locator-le
Files:
8 added
31 edited
38 copied

Legend:

Unmodified
Added
Removed
  • store-locator-le/tags/3.3/core/csl-ajax-search.php

    r587040 r602157  
    9393            'description' => html_entity_decode($row['sl_description']), 
    9494            'url' => esc_attr($row['sl_url']), 
    95             'sl_pages_url' => ($row['sl_pages_on'] != 1 ? esc_attr($row['sl_pages_url']) : ''), 
     95            'sl_pages_url' => (($row['sl_pages_on'] == 1) ? esc_attr($row['sl_pages_url']) : ''), 
    9696            'email' => esc_attr($row['sl_email']), 
    9797            'hours' => esc_attr($row['sl_hours']), 
     
    100100            'image' => esc_attr($row['sl_image']), 
    101101            'distance' => $row['sl_distance'], 
    102             'tags' => ($slplus_show_tags) ? esc_attr($row['sl_tags']) : '' 
     102            'tags' => ($slplus_show_tags) ? esc_attr($row['sl_tags']) : '', 
     103            'data_from' => 'load', 
     104            'id' => $row['sl_id'], 
    103105        ); 
    104106        $response[] = $marker; 
     
    187189        ); 
    188190         
    189         $result = mysql_query($query); 
     191        $result = mysql_query(apply_filters('slp_mysql_search_query',$query)); 
    190192        if (!$result) { 
    191193            die(json_encode( array('success' => false, 'query' => $query, 'response' => 'Invalid query: ' . mysql_error()))); 
     
    232234                'description' => html_entity_decode($row['sl_description']), 
    233235                'url' => esc_attr($row['sl_url']), 
    234                 'sl_pages_url' => ($row['sl_pages_on'] != 1 ? esc_attr($row['sl_pages_url']) : ''), 
     236                'sl_pages_url' => (($row['sl_pages_on'] == 1) ? esc_attr($row['sl_pages_url']) : ''), 
    235237                'email' => esc_attr($row['sl_email']), 
    236238                'hours' => esc_attr($row['sl_hours']), 
     
    239241                'image' => esc_attr($row['sl_image']), 
    240242                'distance' => $row['sl_distance'], 
    241                 'tags' => ($slplus_show_tags) ? esc_attr($row['sl_tags']) : '' 
     243                'tags' => ($slplus_show_tags) ? esc_attr($row['sl_tags']) : '', 
     244                'data_from' => 'search', 
     245                'id' => $row['sl_id'], 
    242246            ); 
    243247            $response[] = $marker; 
  • store-locator-le/tags/3.3/core/csl_helpers.php

    r598470 r602157  
    5454 **/ 
    5555function slp_createhelpdiv($divname,$msg) { 
    56     return "<a onclick=\"swapVisibility('".SLPLUS_PREFIX."-help$divname');\" href=\"javascript:;\">". 
    57         "<img class='helpicon' border='0' title='More info' alt='More info' src='".SLPLUS_COREURL."images/help-icon-18x20.png'>". 
     56    return "<a class='moreinfo_clicker' onclick=\"swapVisibility('".SLPLUS_PREFIX."-help$divname');\" href=\"javascript:;\">". 
     57        '<div class="'.SLPLUS_PREFIX.'-moreicon" title="click for more info"><br/></div>'. 
    5858        "</a>". 
    5959        "<div id='".SLPLUS_PREFIX."-help$divname' class='input_note' style='display: none;'>". 
  • store-locator-le/tags/3.3/core/functions.sl.php

    r598470 r602157  
    4747 
    4848function initialize_variables() { 
    49     global $sl_height, $sl_width, $sl_width_units, $sl_height_units, $sl_radii; 
     49    global $sl_height, $sl_width, $sl_width_units, $sl_height_units; 
    5050    global $cl_icon, $cl_icon2, $sl_google_map_domain, $sl_google_map_country, $sl_theme, $sl_base, $sl_upload_base, $sl_location_table_view; 
    5151    global $sl_search_label, $sl_zoom_level, $sl_zoom_tweak, $sl_use_city_search, $sl_use_name_search, $sl_default_map; 
     
    201201        $sl_width_units=get_option('sl_map_width_units'); 
    202202        }    
    203      
    204     $sl_radii=get_option('sl_map_radii'); 
    205     if (empty($sl_radii)) { 
    206         add_option('sl_map_radii', "10,25,50,100,(200),500"); 
    207         $sl_radii=get_option('sl_map_radii'); 
    208         } 
    209203} 
    210204 
     
    256250             $raw_json = file_get_contents($request_url); 
    257251        } 
    258         $json = json_decode($raw_json); 
    259         $status = $json->{'status'}; 
     252 
     253        // If raw_json exists, parse it 
     254        // 
     255        if (isset($raw_json)) { 
     256            $json = json_decode($raw_json); 
     257            $status = $json->{'status'}; 
     258             
     259        // no raw json 
     260        // 
     261        } else { 
     262            $json = ''; 
     263            $status = ''; 
     264        } 
    260265         
    261266        // Geocode completed successfully 
     
    570575    $sl_width_units    = get_option('sl_map_width_units','%'); 
    571576    $slplus_name_label = get_option('sl_name_label'); 
    572      
    573     $sl_radii          = get_option('sl_map_radii','1,5,10,(25),50,100,200,500'); 
    574     $r_array        = explode(",", $sl_radii); 
     577    $r_array        = explode(",",get_option('sl_map_radii','1,5,10,(25),50,100,200,500')); 
    575578     
    576579    $sl_instruction_message = get_option('sl_instruction_message',__('Enter Your Address or Zip Code Above.',SLPLUS_PREFIX)); 
     
    656659    $columns += (get_option('slplus_show_state_pd')!=1) ? 1 : 0;         
    657660    $sl_radius_label=get_option('sl_radius_label'); 
    658     $file = SLPLUS_COREDIR . 'templates/search_form.php'; 
    659661 
    660662    // Prep fnvars for passing to our template 
     
    682684    } 
    683685 
    684     return get_string_from_phpexec($file);  
     686    // Search / Map Actions 
     687    // 
     688    add_action('slp_render_search_form',array('SLPlus_UI','slp_render_search_form')); 
     689 
     690    return get_string_from_phpexec(SLPLUS_COREDIR . 'templates/search_and_map.php'); 
    685691} 
    686692 
  • store-locator-le/tags/3.3/core/js/csl.js

    r598470 r602157  
    667667         */ 
    668668        this.putMarkers = function(markerList, animation) { 
     669 
    669670            this.markers = []; 
    670671            if (this.loadedOnce) { 
     
    736737                var sidebar = document.getElementById('map_sidebar'); 
    737738                sidebar.innerHTML = '<div class="no_results_found"><h2>No results found.</h2></div>'; 
    738             } 
     739                jQuery('#map_sidebar').trigger('contentchanged'); 
     740            } else { 
     741                jQuery('#map_sidebar').trigger('contentchanged'); 
     742            } 
    739743             
    740744            if (bounds != null) { 
    741745                this.debugSearch('rebounded'); 
    742746                this.bounds = bounds; 
    743                 //if (this.homePoint) {  
    744                 //  this.gmap.panTo(this.homePoint); } 
    745747                this.gmap.fitBounds(this.bounds); 
    746                 //this.gmap.panTo(this.bounds.getCenter()); 
    747748            } 
    748749        } 
     
    830831            var url = ''; 
    831832            //add an http to the url 
    832             if (aMarker.sl_pages_url != '') { 
     833            if ((slplus.use_pages_links) && (aMarker.sl_pages_url != '')) { 
    833834                url = aMarker.sl_pages_url; 
    834835            } 
     
    11381139 
    11391140            var address = this.__createAddress(aMarker); 
    1140              
    1141             var html =  '<center><table width="96%" cellpadding="4px" cellspacing="0" class="searchResultsTable">' + 
    1142                     '<tr class="slp_results_row">' + 
    1143                     '<td class="results_row_left_column">' + 
    1144                         '<span class="location_name">' + aMarker.name + '</span><br>' +  
    1145                         parseFloat(aMarker.distance).toFixed(1) + ' ' + slplus.distance_unit + '</td>' + 
    1146                     '<td class="results_row_center_column">' +  
    1147                         street +   
    1148                         street2 +  
    1149                         city_state_zip + 
    1150                         thePhone + 
    1151                         theFax + 
    1152                     '</td>' + 
    1153                     '<td class="results_row_right_column">' +  
    1154                         link +  
    1155                         elink + 
    1156                         '<a href="http://' + slplus.map_domain +  
    1157                         '/maps?saddr=' + encodeURIComponent(this.address) +  
    1158                         '&daddr=' + encodeURIComponent(address) +  
    1159                         '" target="_blank" class="storelocatorlink">Directions</a>'+ 
    1160                         tagInfo + 
    1161                         '</td>' + 
    1162                         '</tr></table></center>'; 
    1163             div.innerHTML = html; 
     1141 
     1142 
     1143            // JavaScript version of sprintf 
     1144            // 
     1145            String.prototype.format = function() { 
     1146             var args = arguments; 
     1147             return this.replace(/{(\d+)}/g, function(match, number) {  
     1148               return typeof args[number] != 'undefined' 
     1149                 ? args[number] 
     1150                 : match 
     1151               ; 
     1152             }); 
     1153           }; 
     1154 
     1155         // Create the results table 
     1156         // 
     1157         div.innerHTML = slplus.results_string.format( 
     1158                        aMarker.name, 
     1159                        parseFloat(aMarker.distance).toFixed(1), 
     1160                        slplus.distance_unit, 
     1161                        street, 
     1162                        street2, 
     1163                        city_state_zip, 
     1164                        thePhone, 
     1165                        theFax, 
     1166                        link, 
     1167                        elink, 
     1168                        slplus.map_domain, 
     1169                        encodeURIComponent(this.address), 
     1170                        encodeURIComponent(address), 
     1171                        tagInfo 
     1172                      ) 
     1173                      ; 
    11641174            div.className = 'results_entry'; 
     1175            div.id = 'slp_results_entry_'+aMarker.id; 
    11651176 
    11661177            return div; 
  • store-locator-le/tags/3.3/core/map-designer.php

    r598470 r602157  
    1010//=========================================================================== 
    1111 
     12global $slplus_plugin; 
     13 
    1214/************************************** 
    1315 ** function: choose_units 
     
    2729} 
    2830 
     31/** 
     32 * function: SavePostToOptionsTable 
     33 */ 
     34function SavePostToOptionsTable($optionname,$default=null) { 
     35    if ($default != null) { 
     36        if (!isset($_POST[$optionname])) { 
     37            $_POST[$optionname] = $default; 
     38        } 
     39    } 
     40    if (isset($_POST[$optionname])) { 
     41        update_option($optionname,$_POST[$optionname]); 
     42    } 
     43} 
     44 
    2945/************************************** 
    3046 ** function: SaveCheckboxToDB 
     
    3652 **  $prefix (string, optional) - defaults to SLPLUS_PREFIX, can be ''  
    3753 **/ 
    38 function SaveCheckboxToDB($boxname,$prefix = SLPLUS_PREFIX) { 
    39     $whichbox = $prefix.$boxname;  
     54function SaveCheckboxToDB($boxname,$prefix = SLPLUS_PREFIX, $separator='-') { 
     55    $whichbox = $prefix.$separator.$boxname; 
    4056    $_POST[$whichbox] = isset($_POST[$whichbox])?1:0;   
    41     update_option($whichbox,$_POST[$whichbox]);  
     57    SavePostToOptionsTable($whichbox,0); 
    4258} 
    4359 
     
    5773    return  
    5874        "<div class='form_entry'>". 
     75            "<div class='".SLPLUS_PREFIX."-input'>" . 
    5976            "<label  for='$whichbox'>$label:</label>". 
    6077            "<input name='$whichbox' value='1' type='checkbox' ".((get_option($whichbox) ==1)?' checked':'').">". 
    61             slp_createhelpdiv($boxname,$msg). 
     78            "</div>". 
     79            slp_createhelpdiv($boxname,$msg) . 
    6280        "</div>" 
    6381        ; 
    6482} 
    6583 
     84 
     85/** 
     86 * function: CreateInputDiv 
     87 */ 
     88function CreateInputDiv($boxname,$label='',$msg='',$prefix=SLPLUS_PREFIX, $default='') { 
     89    $whichbox = $prefix.$boxname; 
     90    return 
     91        "<div class='form_entry'>" . 
     92            "<div class='".SLPLUS_PREFIX."-input'>" . 
     93                "<label for='$whichbox'>$label:</label>". 
     94                "<input  name='$whichbox' value='".get_option($whichbox,$default)."'>". 
     95            "</div>". 
     96            slp_createhelpdiv($boxname,$msg). 
     97         "</div>" 
     98        ; 
     99 
     100} 
     101 
     102/** 
     103 * function: CreatePulldownDiv 
     104 */ 
     105function CreatePulldownDiv($boxname,$values,$label='',$msg='',$prefix=SLPLUS_PREFIX, $default='') { 
     106    $whichbox = $prefix.$boxname; 
     107    $selected = get_option($whichbox,$default); 
     108 
     109    $content = 
     110            "<div class='form_entry'>". 
     111                "<div class='".SLPLUS_PREFIX."-input'>" . 
     112                    "<label for='$whichbox'>$label:</label>" . 
     113                    "<select name='$whichbox'>" 
     114            ; 
     115 
     116    foreach ($values as $value){ 
     117        $content.="<option value='$value' ".(($value == $selected)?'selected':'').">". 
     118                  $value. 
     119                "</option>"; 
     120    } 
     121 
     122    $content.=      "</select>". 
     123                "</div>". 
     124                slp_createhelpdiv($boxname,$msg). 
     125            "</div>" 
     126            ; 
     127 
     128    return $content; 
     129} 
    66130 
    67131 
     
    69133// Main Processing 
    70134//=========================================================================== 
    71 $update_msg =''; 
    72  
    73135if (!$_POST) { 
    74136    move_upload_directories(); 
     137    $update_msg =''; 
    75138     
    76139} else { 
    77     if (isset($_POST['sl_language'])) {  
    78             update_option('sl_language', $_POST['sl_language']); 
    79     } 
    80140    $sl_google_map_arr=explode(":", $_POST['google_map_domain']); 
    81141    update_option('sl_google_map_country', $sl_google_map_arr[0]); 
    82142    update_option('sl_google_map_domain', $sl_google_map_arr[1]); 
    83     update_option('sl_map_character_encoding', $_POST['sl_map_character_encoding']); 
    84143     
    85144    $_POST['height']=ereg_replace("[^0-9]", "", $_POST['height']); 
     
    100159    update_option('sl_map_width', $_POST['width']); 
    101160     
    102     update_option('sl_map_radii', $_POST['radii']); 
    103161    update_option('sl_map_home_icon', $_POST['icon']); 
    104162    update_option('sl_map_end_icon', $_POST['icon2']); 
    105     update_option('sl_search_label', $_POST['search_label']); 
    106     update_option('sl_radius_label', $_POST['sl_radius_label']); 
    107     update_option('sl_website_label', $_POST['sl_website_label']); 
    108     update_option('sl_instruction_message', $_POST['sl_instruction_message']); 
    109     update_option('sl_zoom_level', $_POST['zoom_level']); 
    110     update_option('sl_zoom_tweak', $_POST['zoom_tweak']); 
    111     update_option('sl_map_type', $_POST['sl_map_type']); 
    112     update_option('sl_num_initial_displayed', $_POST['sl_num_initial_displayed']);     
    113     update_option('sl_distance_unit', $_POST['sl_distance_unit']); 
    114     update_option('sl_name_label', $_POST['sl_name_label']); 
    115  
    116     if (function_exists('execute_and_output_plustemplate')) { 
    117         update_option('sl_starting_image', $_POST['sl_starting_image']); 
    118         update_option(SLPLUS_PREFIX.'_search_tag_label',        $_POST[SLPLUS_PREFIX.'_search_tag_label']); 
    119         update_option(SLPLUS_PREFIX.'_tag_search_selections',   $_POST[SLPLUS_PREFIX.'_tag_search_selections']); 
    120         update_option(SLPLUS_PREFIX.'_state_pd_label',          $_POST[SLPLUS_PREFIX.'_state_pd_label']); 
    121         if (isset($_POST[SLPLUS_PREFIX.'_map_center']   )) { update_option(SLPLUS_PREFIX.'_map_center',              $_POST[SLPLUS_PREFIX.'_map_center']);  } 
    122         if (isset( $_POST[SLPLUS_PREFIX.'_maxreturned'] )) { update_option(SLPLUS_PREFIX.'_maxreturned',             $_POST[SLPLUS_PREFIX.'_maxreturned']); } 
    123     }     
    124      
    125     # Checkbox settings - can set to issset and save that because the 
    126     # post variable is only set if it is checked, if not checked it is 
    127     # false (0). 
    128     # 
    129     $_POST['sl_use_city_search']=isset($_POST['sl_use_city_search'])?1:0; 
    130     update_option('sl_use_city_search',$_POST['sl_use_city_search']); 
    131              
    132     $_POST['slplus_show_state_pd']=isset($_POST['slplus_show_state_pd'])?1:0; 
    133     update_option('slplus_show_state_pd',$_POST['slplus_show_state_pd']); 
    134      
    135     $_POST['sl_use_country_search']=isset($_POST['sl_use_country_search'])?1:0; 
    136     update_option('sl_use_country_search',$_POST['sl_use_country_search']); 
     163 
     164 
     165    // Text boxes 
     166    // 
     167    $BoxesToHit = array( 
     168        'sl_language'                           , 
     169        'sl_map_character_encoding'             , 
     170        'sl_map_radii'                          , 
     171        'sl_instruction_message'                , 
     172        'sl_zoom_level'                         , 
     173        'sl_zoom_tweak'                         , 
     174        'sl_map_type'                           , 
     175        'sl_num_initial_displayed'              , 
     176        'sl_distance_unit'                      , 
     177        'sl_name_label'                         , 
     178        'sl_radius_label'                       , 
     179        'sl_search_label'                       , 
     180        'sl_website_label'                      , 
     181         
     182        'sl_starting_image'                     , 
     183        SLPLUS_PREFIX.'_tag_search_selections'  , 
     184        SLPLUS_PREFIX.'_map_center'             , 
     185        SLPLUS_PREFIX.'_maxreturned'            , 
     186         
     187        SLPLUS_PREFIX.'_search_tag_label'       , 
     188        SLPLUS_PREFIX.'_state_pd_label'         , 
     189 
     190        ); 
     191    foreach ($BoxesToHit as $JustAnotherBox) { 
     192        SavePostToOptionsTable($JustAnotherBox); 
     193    } 
     194 
     195 
     196    // Checkboxes with custom names 
     197    // 
     198    $BoxesToHit = array( 
     199        'sl_use_city_search', 
     200        'sl_use_country_search', 
     201        'sl_load_locations_default', 
     202        'sl_map_overview_control', 
     203        'sl_remove_credits', 
     204        'slplus_show_state_pd', 
     205        ); 
     206    foreach ($BoxesToHit as $JustAnotherBox) { 
     207        SaveCheckBoxToDB($JustAnotherBox, '',''); 
     208    } 
    137209        
    138     $_POST['sl_remove_credits']=isset($_POST['sl_remove_credits'])?1:0;  
    139     update_option('sl_remove_credits',$_POST['sl_remove_credits']); 
    140      
    141     $_POST['sl_load_locations_default']=isset($_POST['sl_load_locations_default'])?1:0; 
    142     update_option('sl_load_locations_default',$_POST['sl_load_locations_default']); 
    143  
    144     $_POST['sl_map_overview_control'] = isset($_POST['sl_map_overview_control'])?1:0;   
    145     update_option('sl_map_overview_control',$_POST['sl_map_overview_control']); 
    146      
     210    // Checkboxes with normal names 
     211    // 
    147212    $BoxesToHit = array( 
    148         '_show_tag_search', 
    149         '_show_tag_any', 
    150         '_email_form', 
    151         '_show_tags', 
    152         '_disable_scrollwheel', 
    153         '_disable_initialdirectory', 
    154         '_disable_largemapcontrol3d', 
    155         '_disable_scalecontrol', 
    156         '_disable_maptypecontrol', 
    157         '_hide_radius_selections', 
    158         '_hide_address_entry', 
    159         '_disable_search', 
    160         '_show_search_by_name', 
    161         '_use_location_sensor' 
     213        'show_tag_search', 
     214        'show_tag_any', 
     215        'email_form', 
     216        'show_tags', 
     217        'disable_scrollwheel', 
     218        'disable_initialdirectory', 
     219        'disable_largemapcontrol3d', 
     220        'disable_scalecontrol', 
     221        'disable_maptypecontrol', 
     222        'hide_radius_selections', 
     223        'hide_address_entry', 
     224        'disable_search', 
     225        'show_search_by_name', 
     226        'use_location_sensor' 
    162227        ); 
    163228    foreach ($BoxesToHit as $JustAnotherBox) {         
    164         SaveCheckBoxToDB($JustAnotherBox); 
    165     } 
    166         
     229        SaveCheckBoxToDB($JustAnotherBox, SLPLUS_PREFIX, '_'); 
     230    } 
     231 
     232    do_action('slp_save_map_settings');        
    167233    $update_msg = "<div class='highlight'>".__("Successful Update", SLPLUS_PREFIX).'</div>'; 
    168234} 
     
    233299// 
    234300$checked2           = (isset($checked2)  ?$checked2  :''); 
    235 $sl_city_checked        = (get_option('sl_use_city_search')            ==1)?' checked ':''; 
    236 $checked3           = (get_option('sl_remove_credits')              ==1)?' checked ':''; 
     301$sl_city_checked    = (get_option('sl_use_city_search',0) ==1)?' checked ':''; 
     302$checked3           = (get_option('sl_remove_credits',0)  ==1)?' checked ':''; 
    237303 
    238304$sl_map_type_options=(isset($sl_map_type_options)?$sl_map_type_options:''); 
     
    241307$map_type["".__("Hybrid", SLPLUS_PREFIX).""]="hybrid"; 
    242308$map_type["".__("Physical", SLPLUS_PREFIX).""]="terrain"; 
    243  
    244  
    245 $zl[]=0;$zl[]=1;$zl[]=2;$zl[]=3;$zl[]=4;$zl[]=5;$zl[]=6;$zl[]=7;$zl[]=8; 
    246 $zl[]=9;$zl[]=10;$zl[]=11;$zl[]=12;$zl[]=13;$zl[]=14;$zl[]=15;$zl[]=16; 
    247 $zl[]=17;$zl[]=18;$zl[]=19; 
    248  
    249  
    250 // Zoom Level 
    251 // 
    252 $slp_current_setting = get_option('sl_zoom_level'); 
    253 if ($slp_current_setting == '') { $slp_current_setting = 4; } 
    254 $sl_zoom="<select name='zoom_level'>"; 
    255 foreach ($zl as $sl_value) { 
    256     $sl_zoom.="<option value='$sl_value' "; 
    257     if ($slp_current_setting==$sl_value){ $sl_zoom.=" selected ";} 
    258     $sl_zoom.=">$sl_value</option>"; 
    259 } 
    260 $sl_zoom.="</select>"; 
    261  
    262 // Zoom Adjustment 
    263 // 
    264 $slp_current_setting = get_option('sl_zoom_tweak'); 
    265 if ($slp_current_setting == '') { $slp_current_setting = 4; } 
    266 $sl_zoom_adj="<select name='zoom_tweak'>"; 
    267 foreach ($zl as $sl_value) { 
    268     $sl_zoom_adj.="<option value='$sl_value' "; 
    269     if ($slp_current_setting==$sl_value){ $sl_zoom_adj.=" selected ";} 
    270     $sl_zoom_adj.=">$sl_value</option>"; 
    271 } 
    272 $sl_zoom_adj.="</select>"; 
    273309 
    274310// Map Type 
     
    371407); 
    372408 
    373  
    374409//------------------------------------ 
    375410// Create The Search Form Settings Panel 
    376 //   
    377 $slpDescription = get_string_from_phpexec(SLPLUS_COREDIR.'/templates/settings_searchform.php'); 
    378 $slpMapSettings->add_section( 
    379     array( 
    380             'name'          => __('Search Form',SLPLUS_PREFIX), 
    381             'description'   => $slpDescription, 
    382             'auto'          => true 
    383         ) 
    384  ); 
    385     
    386 //------------------------------------ 
    387 // Create The Map Settings Panel 
    388 //   
    389 $slpDescription = get_string_from_phpexec(SLPLUS_COREDIR.'/templates/settings_mapform.php'); 
    390 $slpMapSettings->add_section( 
    391     array( 
    392             'name'          => __('Map',SLPLUS_PREFIX), 
    393             'description'   => $slpDescription, 
    394             'auto'          => true 
    395         ) 
    396  ); 
    397      
    398  
    399 //------------------------------------ 
    400 // Info Panel 
    401 // 
    402 $slpDescription =  
    403     "Product Information: <a href='$slplus_plugin->url' target='cybersprocket'>$slplus_plugin->url</a><br/>"; 
    404 if ($slplus_plugin->debugging) { 
    405 $slpDescription .=  
    406         "Basename:  ".SLPLUS_BASENAME    ."<br/>" . 
    407         "Core Directory:   ".SLPLUS_COREDIR     ."<br/>" . 
    408         "Plugin Directory: ".SLPLUS_PLUGINDIR   ."<br/>" . 
    409         "Core URL: ".SLPLUS_COREURL   ."<br/>" . 
    410         "Plugin URL: ".SLPLUS_PLUGINURL   ."<br/>" . 
    411         "Admin Page: ".SLPLUS_ADMINPAGE   ."<br/>" . 
    412         "" 
    413         ;     
    414 }         
    415 $slpMapSettings->add_section( 
    416     array( 
    417             'name'          => __('Plugin Info',SLPLUS_PREFIX), 
    418             'description'   => $slpDescription, 
    419             'auto'          => true 
    420         ) 
    421  ); 
     411// 
     412add_action('slp_build_map_settings_panels',array('SLPlus_AdminUI','slp_add_search_form_settings_panel'),1); 
     413add_action('slp_build_map_settings_panels',array('SLPlus_AdminUI','slp_add_map_settings_panel'),2); 
     414 
    422415     
    423416//------------------------------------ 
     
    425418// 
    426419print $update_msg; 
     420do_action('slp_build_map_settings_panels'); 
    427421$slpMapSettings->render_settings_page();     
  • store-locator-le/tags/3.3/core/templates/search_form.php

    r598470 r602157  
    22  global $sl_search_label, $sl_width, $sl_height, $sl_width_units, $sl_height_units, $sl_hide, 
    33      $sl_radius, $sl_radius_label, $r_options, $button_style, 
    4       $sl_instruction_message, $cs_options, $slplus_state_options, $sl_country_options,  
     4      $sl_instruction_message, $cs_options, $slplus_state_options, $sl_country_options, 
    55      $fnvars, $slplus_plugin, $slplus_name_label; 
    66 
    77      $prefix = $slplus_plugin->prefix; 
     8?> 
    89 
    9       // Script enqueue should never be called as a direct function. 
    10       // 
    11       // WordPress best practices dictacte using this in a supported action hook only. 
    12       // Many themes and plugins will not honor this. 
    13       // 
    14       // SLPlus_Actions::shutdown(); 
    15 ?> 
    16 <div id='sl_div'> 
    17   <form onsubmit='cslmap.searchLocations(); return false;' id='searchForm' action=''> 
    18     <table  id='search_table' border='0' cellpadding='3px' class='sl_header'><tr> 
    19     <td valign='top'> 
    20         <div id='address_search'> 
    21  
    22                
    23             <?php 
    24             //------------------------------------------------ 
    25             // Show City Pulldown Is Enabled 
    26             // 
    27             if ($cs_options != '') {  
    28             ?> 
    29             <div id='addy_in_city'> 
    30                 <select id='addressInput2' onchange='aI=document.getElementById("searchForm").addressInput;if(this.value!=""){oldvalue=aI.value;aI.value=this.value;}else{aI.value=oldvalue;}'> 
    31                     <option value=''>--Search By City--</option> 
    32                     <?php echo $cs_options?> 
    33                 </select> 
    34             </div> 
    35             <?php } ?> 
    36              
    37              
    38             <?php 
    39             //------------------------------------------------ 
    40             // Show State Pulldown Is Enabled 
    41             // 
    42             if ($slplus_state_options != '') {  
    43             ?> 
    44             <div id='addy_in_state'> 
    45                 <label for='addressInputState'><?php  
    46                     print get_option($prefix.'_state_pd_label');                 
    47                     ?></label> 
    48                 <select id='addressInputState' onchange='aI=document.getElementById("searchForm").addressInput;if(this.value!=""){oldvalue=aI.value;aI.value=this.value;}else{aI.value=oldvalue;}'> 
    49                     <option value=''>--Search By State--</option> 
    50                     <?php echo $slplus_state_options?> 
    51                 </select> 
    52             </div> 
    53             <?php } ?>             
    54              
    55             <?php 
    56             //------------------------------------------------ 
    57             // Show Country Pulldown Is Enabled 
    58             // 
    59             if ($sl_country_options != '') {  
    60             ?> 
    61             <div id='addy_in_country'> 
    62                 <select id='addressInput3' onchange='aI=document.getElementById("searchForm").addressInput;if(this.value!=""){oldvalue=aI.value;aI.value=this.value;}else{aI.value=oldvalue;}'> 
    63                 <option value=''>--Search By Country--</option> 
    64                 <?php echo $sl_country_options?> 
    65                 </select> 
    66             </div> 
    67             <?php }  
    68  
    69             //------------------------------------------------ 
    70             // Show Tag Search Is Enabled 
    71             // 
    72             if ($slplus_plugin->license->packages['Pro Pack']->isenabled) { 
    73                 if (get_option(SLPLUS_PREFIX.'_show_tag_search') ==1) { 
    74             ?> 
    75                     <div id='search_by_tag' class='search_item' <?php if (isset($fnvars['only_with_tag'])) { print "style='display:none;'"; }?>>    
    76                         <label for='tag_to_search_for'><?php  
    77                             print get_option($prefix.'_search_tag_label');                 
    78                             ?></label> 
    79                         <?php        
    80                             // Tag selections 
    81                             // 
    82                             if (isset($fnvars['tags_for_pulldown'])) { 
    83                                 $tag_selections = $fnvars['tags_for_pulldown']; 
    84                             } 
    85                             else { 
    86                                 $tag_selections = get_option($prefix.'_tag_search_selections'); 
    87                             } 
    88                      
    89                             // Tag selections 
    90                             // 
    91                             if (isset($fnvars['only_with_tag'])) { 
    92                                 $tag_selections = ''; 
    93                             } 
    94                      
    95                             // No pre-selected tags, use input box 
    96                             // 
    97                             if ($tag_selections == '') { 
    98                                 print "<input type='". (isset($fnvars['only_with_tag']) ? 'hidden' : 'text') . "' ".  
    99                                         "id='tag_to_search_for' size='50' " . 
    100                                         "value='" . (isset($fnvars['only_with_tag']) ? $fnvars['only_with_tag'] : '') . "' ".                                 
    101                                         "/>"; 
    102                          
    103                             // Pulldown for pre-selected list 
    104                             // 
    105                             }  
    106                             else { 
    107                                 print "<select id='tag_to_search_for' >"; 
    108                          
    109                                 // Show Any Option (blank value) 
    110                                 // 
    111                                 if (get_option($prefix.'_show_tag_any')==1) { 
    112                                     print "<option value=''>". 
    113                                         __('Any',SLPLUS_PREFIX). 
    114                                         '</option>'; 
    115                                 } 
    116                          
    117                                 $tag_selections = explode(",", $tag_selections); 
    118                                 foreach ($tag_selections as $selection) { 
    119                                     $clean_selection = preg_replace('/\((.*)\)/','$1',$selection); 
    120                                     print "<option value='$clean_selection' "; 
    121                                     print (ereg("\(.*\)", $selection))? " selected='selected' " : ''; 
    122                                     print ">$clean_selection</option>";                             
    123                                 } 
    124                                 print "</select>"; 
    125                             } 
    126                         ?> 
    127                         </div> 
    128                 <?php 
    129                 } 
    130              
    131                 // ---------------------------------------------- 
    132                 // We are showing the name search 
    133                 // 
    134                 if (get_option(SLPLUS_PREFIX.'_show_search_by_name') == 1) { 
    135                     ?> 
    136                     <div id='name_search_div' class='search_item'> 
    137                         <label for='nameSearch'><?php echo $slplus_name_label?></label> 
    138                         <input type='text' id='nameSearch' size='50' /> 
    139                     </div> 
    140                     <?php 
    141                 } 
    142             } 
    143             ?> 
    144              
    145             <?php 
    146             //------------------------------------------------ 
    147             // We are not hiding the address input 
    148             // 
    149             if (get_option(SLPLUS_PREFIX.'_hide_address_entry') == 0) {                 
    150             ?>          
    151             <div id='addy_in_address' class='search_item'> 
    152                 <label for="addressInput"><?php echo $sl_search_label?></label> 
    153                 <input type='text' id='addressInput' size='50' /> 
    154            </div> 
    155            <?php 
    156             } else { 
    157                 ?> 
    158             <div id='addy_in_address' class='search_item'> 
    159             <input type='hidden' id='addressInput' value='' /> 
    160            </div> 
    161            <?php 
    162             } 
    163             ?> 
    164  
    165             <?php 
    166             //------------------------------------------------ 
    167             // We are not hiding the radius selection 
    168             // 
    169             if (get_option(SLPLUS_PREFIX.'_hide_radius_selections') == 0) {                 
    170             ?>            
    171                 <div id='addy_in_radius'> 
    172                     <label for='radiusSelect'><?php _e($sl_radius_label, SLPLUS_PREFIX);?></label> 
    173                     <select id='radiusSelect'><?php echo $r_options;?></select> 
    174                 </div> 
    175                  
    176             <?php 
    177             } else { 
    178                 echo $r_options; 
    179             } 
    180              
    181             //------------------------------------------------ 
    182             // We are not hiding the submit button 
    183             // 
    184             if (get_option(SLPLUS_PREFIX.'_disable_search') == 0) {                 
    185             ?>                
    186             <div id='radius_in_submit'> 
    187                 <input <?php echo $button_style?> value='Search Locations' id='addressSubmit'/> 
    188             </div> 
    189             <?php 
    190             } 
    191             ?> 
    192              
    193              
    194         </div> 
    195       </td> 
    196     </tr></table> 
    197     <table id='map_table' width='100%' cellspacing='0px' cellpadding='0px'>  
    198      <tr> 
    199         <td width='100%' valign='top'> 
    200 <?php 
    201 $sl_starting_image=get_option('sl_starting_image'); 
    202 if ($sl_starting_image != '') {     
    203 ?> 
    204             <div id='map_box_image' style='width:<?php echo $sl_width?><?php echo $sl_width_units?>; height:<?php echo $sl_height?><?php echo $sl_height_units?>'>       
    205                 <img src='<?php  
    206                         if (preg_match('/^http/',$sl_starting_image) <= 0) { 
    207                             echo SLPLUS_PLUGINURL; 
    208                         } 
    209                         echo $sl_starting_image;                         
    210                     ?>'> 
    211             </div> 
    212             <div id='map_box_map'> 
    213 <?php 
    214 } 
    215 ?> 
    216                 <div id='map' style='width:<?php echo $sl_width?><?php echo $sl_width_units?>; height:<?php echo $sl_height?><?php echo $sl_height_units?>'></div> 
    217                 <table cellpadding='0px' class='sl_footer' width='<?php echo $sl_width?><?php echo $sl_width_units?>;' <?php echo $sl_hide?>> 
    218                 <tr class="slp_map_tagline"> 
    219                     <td class='sl_footer_right_column'> 
    220                         <?php echo __('search provided by', SLPLUS_PREFIX); ?> <a href='<?php echo $slplus_plugin->url; ?>' target='_blank'><?php echo $slplus_plugin->name; ?></a> 
    221                     </td> 
    222                 </tr>                 
    223                 </table> 
    224 <?php 
    225 if ($sl_starting_image != '') {     
    226 ?> 
    227             </div> 
    228 <?php 
    229 } 
    230 ?> 
    231         </td> 
    232       </tr> 
    233       <tr id='cm_mapTR'class='slp_map_search_results'> 
    234         <td width='' valign='top' id='map_sidebar_td'> 
    235             <div id='map_sidebar' style='width:<?php echo $sl_width?><?php echo $sl_width_units?>;'> 
    236                 <div class='text_below_map'><?php echo $sl_instruction_message?></div> 
    237             </div> 
    238         </td> 
    239     </tr> 
    240   </table></form> 
    241 </div> 
     10<form onsubmit='cslmap.searchLocations(); return false;' id='searchForm' action=''> 
     11  <table  id='search_table' border='0' cellpadding='3px' class='sl_header'><tr> 
     12  <td valign='top'> 
     13      <div id='address_search'> 
    24214 
    24315 
     16          <?php 
     17          //------------------------------------------------ 
     18          // Show City Pulldown Is Enabled 
     19          // 
     20          if ($cs_options != '') {  
     21          ?> 
     22          <div id='addy_in_city'> 
     23              <select id='addressInput2' onchange='aI=document.getElementById("searchForm").addressInput;if(this.value!=""){oldvalue=aI.value;aI.value=this.value;}else{aI.value=oldvalue;}'> 
     24                  <option value=''>--Search By City--</option> 
     25                  <?php echo $cs_options?> 
     26              </select> 
     27          </div> 
     28          <?php } ?> 
     29 
     30 
     31          <?php 
     32          //------------------------------------------------ 
     33          // Show State Pulldown Is Enabled 
     34          // 
     35          if ($slplus_state_options != '') {  
     36          ?> 
     37          <div id='addy_in_state'> 
     38              <label for='addressInputState'><?php  
     39                  print get_option($prefix.'_state_pd_label'); 
     40                  ?></label> 
     41              <select id='addressInputState' onchange='aI=document.getElementById("searchForm").addressInput;if(this.value!=""){oldvalue=aI.value;aI.value=this.value;}else{aI.value=oldvalue;}'> 
     42                  <option value=''>--Search By State--</option> 
     43                  <?php echo $slplus_state_options?> 
     44              </select> 
     45          </div> 
     46          <?php } ?>             
     47 
     48          <?php 
     49          //------------------------------------------------ 
     50          // Show Country Pulldown Is Enabled 
     51          // 
     52          if ($sl_country_options != '') {  
     53          ?> 
     54          <div id='addy_in_country'> 
     55              <select id='addressInput3' onchange='aI=document.getElementById("searchForm").addressInput;if(this.value!=""){oldvalue=aI.value;aI.value=this.value;}else{aI.value=oldvalue;}'> 
     56              <option value=''>--Search By Country--</option> 
     57              <?php echo $sl_country_options?> 
     58              </select> 
     59          </div> 
     60          <?php }  
     61 
     62          //------------------------------------------------ 
     63          // Show Tag Search Is Enabled 
     64          // 
     65          if ($slplus_plugin->license->packages['Pro Pack']->isenabled) { 
     66              if (get_option(SLPLUS_PREFIX.'_show_tag_search',0) ==1) { 
     67          ?> 
     68                  <div id='search_by_tag' class='search_item' <?php if (isset($fnvars['only_with_tag'])) { print "style='display:none;'"; }?>> 
     69                      <label for='tag_to_search_for'><?php 
     70                          print get_option($prefix.'_search_tag_label'); 
     71                          ?></label> 
     72                      <?php 
     73                          // Tag selections 
     74                          // 
     75                          if (isset($fnvars['tags_for_pulldown'])) { 
     76                              $tag_selections = $fnvars['tags_for_pulldown']; 
     77                          } 
     78                          else { 
     79                              $tag_selections = get_option($prefix.'_tag_search_selections'); 
     80                          } 
     81 
     82                          // Tag selections 
     83                          // 
     84                          if (isset($fnvars['only_with_tag'])) { 
     85                              $tag_selections = ''; 
     86                          } 
     87 
     88                          // No pre-selected tags, use input box 
     89                          // 
     90                          if ($tag_selections == '') { 
     91                              print "<input type='". (isset($fnvars['only_with_tag']) ? 'hidden' : 'text') . "' ". 
     92                                      "id='tag_to_search_for' size='50' " . 
     93                                      "value='" . (isset($fnvars['only_with_tag']) ? $fnvars['only_with_tag'] : '') . "' ". 
     94                                      "/>"; 
     95 
     96                          // Pulldown for pre-selected list 
     97                          // 
     98                          } else { 
     99                              $tag_selections = explode(",", $tag_selections); 
     100                              add_action('slp_render_search_form_tag_list',array('SLPlus_UI','slp_render_search_form_tag_list'),10,2); 
     101                              do_action('slp_render_search_form_tag_list',$tag_selections,(get_option(SLPLUS_PREFIX.'_show_tag_any')==1)); 
     102                          } 
     103                      ?> 
     104                      </div> 
     105              <?php 
     106              } 
     107 
     108              // ---------------------------------------------- 
     109              // We are showing the name search 
     110              // 
     111              if (get_option(SLPLUS_PREFIX.'_show_search_by_name') == 1) { 
     112                  ?> 
     113                  <div id='name_search_div' class='search_item'> 
     114                      <label for='nameSearch'><?php echo $slplus_name_label?></label> 
     115                      <input type='text' id='nameSearch' size='50' /> 
     116                  </div> 
     117                  <?php 
     118              } 
     119          } 
     120          ?> 
     121 
     122          <?php 
     123          //------------------------------------------------ 
     124          // We are not hiding the address input 
     125          // 
     126          if (get_option(SLPLUS_PREFIX.'_hide_address_entry') == 0) {                 
     127          ?>            
     128          <div id='addy_in_address' class='search_item'> 
     129              <label for="addressInput"><?php echo $sl_search_label?></label> 
     130              <input type='text' id='addressInput' size='50' /> 
     131         </div> 
     132         <?php 
     133          } else { 
     134              ?> 
     135          <div id='addy_in_address' class='search_item'> 
     136          <input type='hidden' id='addressInput' value='' /> 
     137         </div> 
     138         <?php 
     139          } 
     140          ?> 
     141 
     142          <?php 
     143          //------------------------------------------------ 
     144          // We are not hiding the radius selection 
     145          // 
     146          if (get_option(SLPLUS_PREFIX.'_hide_radius_selections') == 0) {                 
     147          ?>            
     148              <div id='addy_in_radius'> 
     149                  <label for='radiusSelect'><?php _e($sl_radius_label, SLPLUS_PREFIX);?></label> 
     150                  <select id='radiusSelect'><?php echo $r_options;?></select> 
     151              </div> 
     152 
     153          <?php 
     154          } else { 
     155              echo $r_options; 
     156          } 
     157 
     158          //------------------------------------------------ 
     159          // We are not hiding the submit button 
     160          // 
     161          if (get_option(SLPLUS_PREFIX.'_disable_search') == 0) {                 
     162          ?>                
     163          <div id='radius_in_submit'> 
     164              <input <?php echo $button_style?> value='Search Locations' id='addressSubmit'/> 
     165          </div> 
     166          <?php 
     167          } 
     168          ?> 
     169 
     170 
     171      </div> 
     172    </td> 
     173  </tr> 
     174  </table> 
     175  </form> 
  • store-locator-le/tags/3.3/core/templates/settings_mapform.php

    r575152 r602157  
    3838             //             
    3939            if (function_exists('execute_and_output_plustemplate')) { 
    40                  
    41                      //-------------------------------- 
    42                      // Pro Pack v2.4+ Only 
    43                      // 
    44                      global $slplus_plugin; 
    45                      if ($slplus_plugin->license->packages['Pro Pack']->active_version >= 2004000) {                     
    4640            ?>                 
    4741                        <div class='form_entry'> 
     
    6256                        </div> 
    6357            <?php 
    64                 } 
    65                  
    66                 //-------------------------------- 
    67                 // Pro Pack Any Version 
    68                 // 
    6958                execute_and_output_plustemplate('mapsettings_mapfeatures.php'); 
    7059            }     
     
    7766        <div class='map_designer_settings'> 
    7867            <h2><?php _e('Dimensions', SLPLUS_PREFIX);?></h2> 
    79              
    80             <div class='form_entry'> 
    81                 <label for='zoom_level'><?php _e("Zoom Level", SLPLUS_PREFIX);?>:</label> 
    82                 <?php echo $sl_zoom; ?> 
    83                 <?php 
    84                 echo slp_createhelpdiv('zoom_level', 
    85                     __('19=street level, 0=world view. This is the initial zoom level of the map '. 
    86                        ' if you do not check off "Immediately show locations.".  It is also the ' . 
    87                        ' zoom level that will be used if a single location is returned by the search.' .  
    88                        ' All searches will automatically zoom in to a level that shows all of the matches on the map.',  
    89                        SLPLUS_PREFIX) 
    90                     ); 
    91                 ?>                  
    92                  
    93             </div> 
    9468 
    95             <div class='form_entry'> 
    96                 <label for='zoom_tweak'><?php _e("Zoom  Adjustment", SLPLUS_PREFIX);?>:</label> 
    97                 <?php echo $sl_zoom_adj; ?> 
    98                 <?php 
    99                 echo slp_createhelpdiv('zoom_tweak', 
    100                     __('For the "auto-zoom" when results are shown the map will zoom to show all the returned locations, '. 
    101                         'this setting allows you to determine how tight to zoom in. The higher the number the further out the zoom gets.',  
    102                        SLPLUS_PREFIX) 
    103                     ); 
    104                 ?>                  
    105                  
    106             </div> 
     69            <?php 
     70                echo CreatePulldownDiv( 
     71                        'sl_zoom_level', 
     72                        array(0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19), 
     73                        $label=__('Zoom Level', SLPLUS_PREFIX), 
     74                        $msg=__('Initial zoom level of the map if "immediately show locations" is NOT selected or if only a single location is found.  0 = world view, 19 = house view.', SLPLUS_PREFIX), 
     75                        $prefix='', 
     76                        $default=4 
     77                        ); 
    10778 
     79                echo CreatePulldownDiv( 
     80                        'sl_zoom_tweak', 
     81                        array(0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19), 
     82                        $label=__('Zoom Adjustment', SLPLUS_PREFIX), 
     83                        $msg=__('Changes how tight auto-zoom bounds the locations shown.  Lower numbers are closer to the lcoations.', SLPLUS_PREFIX), 
     84                        $prefix='', 
     85                        $default=4 
     86                        ); 
     87            ?> 
    10888             
    10989            <div class='form_entry'> 
  • store-locator-le/tags/3.3/core/templates/settings_searchform.php

    r575152 r602157  
    11<?php  
    2     global  $sl_city_checked, $sl_country_checked, $sl_show_tag_checked, $sl_show_any_checked, 
    3         $sl_radius_label, $sl_website_label,$sl_instruction_message,$slpMapSettings, 
    4         $sl_radii, $sl_the_distance_unit; 
    5 ?>        
    6 <div id='search_settings'> 
    7     <div class='section_column'>               
    8             <h2><?php _e('Features', SLPLUS_PREFIX);?></h2> 
    9              
    10             <div class='form_entry'> 
    11                 <label for='sl_use_city_search'> 
    12                     <?php _e('Show City Pulldown', SLPLUS_PREFIX); ?>: 
    13                 </label> 
    14                 <input name='sl_use_city_search'  
    15                     value='1'  
    16                     type='checkbox'  
    17                     <?php echo $sl_city_checked?>  
    18                     > 
    19             </div> 
    20          
    21         <div class='form_entry'> 
    22             <label for='radii'><?php _e('Radii Options', SLPLUS_PREFIX);?>:</label> 
    23             <input  name='radii' value='<?php echo $sl_radii;?>' size='25'> 
    24             <?php 
    25             echo slp_createhelpdiv('radii', 
    26                 __("Separate each number with a comma ','. Put parenthesis '( )' around the default.</span>", SLPLUS_PREFIX) 
    27                 ); 
    28             ?>               
    29         </div>   
     2global  $sl_city_checked, $sl_country_checked, $sl_show_tag_checked, $sl_show_any_checked, 
     3    $sl_radius_label, $sl_website_label,$sl_instruction_message,$slpMapSettings,$sl_the_distance_unit; 
     4 
     5echo "<div id='search_settings'>"; 
     6echo "<div class='section_column'>"; 
     7echo "<h2>".__('Features', SLPLUS_PREFIX)."</h2>"; 
     8echo CreateInputDiv( 
     9        'sl_map_radii', 
     10        __('Radii Options', SLPLUS_PREFIX), 
     11        __('Separate each number with a comma ",". Put parenthesis "( )" around the default.',SLPLUS_PREFIX), 
     12        '', 
     13        '10,25,50,100,(200),500' 
     14        ); 
     15?> 
    3016             
    3117        <div class='form_entry'> 
     
    4329            </select> 
    4430        </div>     
    45          
    46             
     31                    
    4732        <?php 
    48         if (function_exists('execute_and_output_plustemplate')) { 
    49             execute_and_output_plustemplate('mapsettings_searchfeatures.php'); 
     33 
     34        //---------------------------------------------------------------------- 
     35        // Pro Pack Enabled 
     36        // 
     37        global $slplus_plugin; 
     38        if ($slplus_plugin->license->packages['Pro Pack']->isenabled) { 
     39            echo CreateCheckboxDiv( 
     40                '_hide_radius_selections', 
     41                __('Hide radius selection',SLPLUS_PREFIX), 
     42                __('Hides the radius selection from the user, the default radius will be used.', SLPLUS_PREFIX) 
     43                ); 
     44 
     45            echo CreateCheckboxDiv( 
     46                '_show_search_by_name', 
     47                __('Show search by name box', SLPLUS_PREFIX), 
     48                __('Shows the name search entry box to the user.', SLPLUS_PREFIX) 
     49                ); 
     50 
     51            echo CreateCheckboxDiv( 
     52                '_hide_address_entry', 
     53                __('Hide address entry box',SLPLUS_PREFIX), 
     54                __('Hides the address entry box from the user.', SLPLUS_PREFIX) 
     55                ); 
     56 
     57            echo CreateCheckboxDiv( 
     58                '_use_location_sensor', 
     59                __('Use location sensor', SLPLUS_PREFIX), 
     60                __('This turns on the location sensor for your customers so they can easily get accurate results') 
     61            ); 
     62 
     63            echo CreateCheckboxDiv( 
     64                    'sl_use_city_search', 
     65                    __('Show City Pulldown',SLPLUS_PREFIX), 
     66                    __('Displays the city pulldown on the search form. It is built from the unique city names in your location list.',SLPLUS_PREFIX), 
     67                    '' 
     68                    ); 
     69 
     70            echo CreateCheckboxDiv( 
     71                'sl_use_country_search', 
     72                __('Show Country Pulldown',SLPLUS_PREFIX), 
     73                __('Displays the country pulldown on the search form. It is built from the unique country names in your location list.',SLPLUS_PREFIX), 
     74                '' 
     75                ); 
     76 
     77            echo CreateCheckboxDiv( 
     78                'slplus_show_state_pd', 
     79                __('Show State Pulldown',SLPLUS_PREFIX), 
     80                __('Displays the state pulldown on the search form. It is built from the unique state names in your location list.',SLPLUS_PREFIX), 
     81                '' 
     82                ); 
     83 
     84 
     85            echo CreateCheckboxDiv( 
     86                '_disable_search', 
     87                __('Hide Find Locations button',SLPLUS_PREFIX), 
     88                __('Remove the "Find Locations" button from the search form.', SLPLUS_PREFIX) 
     89                ); 
     90 
     91        //----- 
     92        // No Pro Pack 
     93        // 
    5094        } else { 
    51             print "<div class='form_entry' style='text-align:right;padding-top:136px;'>Want more?<br/> <a href='http://www.cybersprocket.com/'>Check out our other WordPress offerings.</a></div>"; 
    52         }                     
     95            print "<div class='form_entry' style='text-align:right;padding-top:136px;'>Want more?<br/> <a href='http://www.charlestonsw.com/'>Check out our other WordPress offerings.</a></div>"; 
     96        } 
     97 
     98 
     99        do_action('slp_add_search_form_features_setting'); 
     100 
    53101        ?>         
    54102    </div> 
    55      
    56      
     103 
     104    <!-- Tags Section --> 
     105<?php 
     106    global $slplus_plugin; 
     107    $slplus_message = ($slplus_plugin->license->packages['Pro Pack']->isenabled) ? 
     108        __('Thank you for purchasing the <a href="%s">%s</a> premium add-on.',SLPLUS_PREFIX) : 
     109        __('Tag features are available in the <a href="%s">%s</a> premium add-on.',SLPLUS_PREFIX) 
     110?> 
     111    <div class='section_column'> 
     112        <h2><?php _e("Tags", SLPLUS_PREFIX); ?></h2> 
     113        <div class="section_column_content"> 
     114            <p><?php printf($slplus_message,$slplus_plugin->purchase_url,'Pro Pack'); ?></p> 
     115 
     116<?php 
     117        //---------------------------------------------------------------------- 
     118        // Pro Pack Enabled 
     119        // 
     120        if ($slplus_plugin->license->packages['Pro Pack']->isenabled) { 
     121            echo CreateCheckboxDiv( 
     122                '_show_tag_search', 
     123                __('Tag Input',SLPLUS_PREFIX), 
     124                __('Show the tag entry box on the search form.', SLPLUS_PREFIX) 
     125                ); 
     126 
     127 
     128            echo CreateInputDiv( 
     129                    '_tag_search_selections', 
     130                    __('Preselected Tag Searches', SLPLUS_PREFIX), 
     131                    __("Enter a comma (,) separated list of tags to show in the search pulldown, mark the default selection with parenthesis '( )'. This is a default setting that can be overriden on each page within the shortcode.",SLPLUS_PREFIX) 
     132                    ); 
     133             
     134            echo CreateCheckboxDiv( 
     135                '_show_tag_any', 
     136                __('Add "any" to tags pulldown',SLPLUS_PREFIX), 
     137                __('Add an "any" selection on the tag pulldown list thus allowing the user to show all locations in the area, not just those matching a selected tag.', SLPLUS_PREFIX) 
     138                ); 
     139        } 
     140 
     141        do_action('slp_add_search_form_tag_setting'); 
     142?> 
     143        </div> 
     144    </div> 
     145 
     146    <!-- Labels Section --> 
    57147    <div class='section_column'>                      
    58148        <h2><?php _e("Labels", SLPLUS_PREFIX); ?></h2> 
    59          
    60         <div class='form_entry'> 
    61             <label for='search_label'><?php _e("Address Input", SLPLUS_PREFIX); ?>:</label> 
    62             <input name='search_label' value='<?php echo get_option('sl_search_label'); ?>'> 
    63             <?php 
    64             echo slp_createhelpdiv('search_label', 
    65                 __("Label for search form address entry.", SLPLUS_PREFIX) 
    66                 ); 
    67             ?>              
    68         </div> 
    69          
    70         <div class='form_entry'> 
    71             <label for='sl_name_label'><?php _e("Name Input", SLPLUS_PREFIX); ?>:</label> 
    72             <input name='sl_name_label' value='<?php echo get_option('sl_name_label'); ?>'> 
    73             <?php 
    74                 echo slp_createhelpdiv('sl_name_label', 
    75                 __("Label for name search form address entry.", SLPLUS_PREFIX) 
    76                 ); 
    77             ?> 
    78         </div> 
    79          
    80         <?php 
    81         if (function_exists('execute_and_output_plustemplate')) { 
    82             execute_and_output_plustemplate('mapsettings_labels.php'); 
    83         }                 
    84         ?>                      
    85  
    86         <div class='form_entry'> 
    87             <label for='sl_radius_label'><?php _e("Radius Dropdown", SLPLUS_PREFIX); ?>:</label> 
    88             <input name='sl_radius_label' value='<?php echo $sl_radius_label; ?>'> 
    89             <?php 
    90             echo slp_createhelpdiv('sl_radius_label', 
    91                 __("Label for search form radius pulldown.", SLPLUS_PREFIX) 
    92                 ); 
    93             ?>               
    94         </div>                 
    95  
    96         <div class='form_entry'> 
    97             <label for='sl_website_label'><?php _e("Website URL", SLPLUS_PREFIX);?>:</label> 
    98             <input name='sl_website_label' value='<?php echo $sl_website_label; ?>'> 
    99             <?php 
    100             echo slp_createhelpdiv('sl_website_label', 
    101                 __("Label for website URL in search results.", SLPLUS_PREFIX) 
    102                 ); 
    103             ?>               
    104         </div>             
    105  
    106         <div class='form_entry'> 
    107             <label for='sl_instruction_message'><?php _e("Instruction Message", SLPLUS_PREFIX); ?>:</label> 
    108             <input name='sl_instruction_message' value='<?php echo $sl_instruction_message; ?>' size='50'> 
    109             <?php 
    110             echo slp_createhelpdiv('sl_instruction_message', 
    111                 __("Instruction text when map is first displayed.", SLPLUS_PREFIX) 
    112                 ); 
    113             ?>             
    114         </div>                           
    115     </div> 
    116 </div> 
     149 
     150<?php 
     151 
     152// Search Form Labels 
     153// 
     154echo '<p class="slp_admin_info"><strong>'.__('Search Form Labels',SLPLUS_PREFIX).'</strong></p>'; 
     155echo CreateInputDiv( 
     156        'sl_search_label', 
     157        __('Address', SLPLUS_PREFIX), 
     158        __('Search form address label.',SLPLUS_PREFIX), 
     159        '', 
     160        'Address / Zip' 
     161        ); 
     162echo CreateInputDiv( 
     163        'sl_name_label', 
     164        __('Name', SLPLUS_PREFIX), 
     165        __('Search form name label.',SLPLUS_PREFIX), 
     166        '', 
     167        'Name' 
     168        ); 
     169echo CreateInputDiv( 
     170        'sl_radius_label', 
     171        __('Radius', SLPLUS_PREFIX), 
     172        __('Search form radius label.',SLPLUS_PREFIX), 
     173        '', 
     174        'Within' 
     175        ); 
     176 
     177//---------------------------------------------------------------------- 
     178// Pro Pack Enabled 
     179// 
     180if ($slplus_plugin->license->packages['Pro Pack']->isenabled) { 
     181    echo CreateInputDiv( 
     182            '_search_tag_label', 
     183            __('Tags', SLPLUS_PREFIX), 
     184            __('Search form label to prefix the tag selector.',SLPLUS_PREFIX) 
     185            ); 
     186    echo CreateInputDiv( 
     187            '_state_pd_label', 
     188            __('State', SLPLUS_PREFIX), 
     189            __('Search form label to prefix the state selector.',SLPLUS_PREFIX) 
     190            ); 
     191}     
     192 
     193 
     194// Result Labels 
     195// 
     196echo '<p class="slp_admin_info"><strong>'.__('Search Results Labels',SLPLUS_PREFIX).'</strong></p>'; 
     197echo CreateInputDiv( 
     198        'sl_website_label', 
     199        __('Radius', SLPLUS_PREFIX), 
     200        __('Search results text for the website link.',SLPLUS_PREFIX), 
     201        '', 
     202        'website' 
     203        ); 
     204echo CreateInputDiv( 
     205        'sl_instruction_message', 
     206        __('Instructions', SLPLUS_PREFIX), 
     207        __('Search results instructions shown if immediately show locations is not selected.',SLPLUS_PREFIX), 
     208        '', 
     209        __('Enter an address or zip code and click the find locations button.',SLPLUS_PREFIX) 
     210        ); 
     211echo "</div></div>"; 
  • store-locator-le/tags/3.3/css/admin.css

    r598470 r602157  
    7474    background: url("../core/images/General_icons16.png")  
    7575        no-repeat scroll  
    76         -17px 0px  
     76        -15px 0px 
    7777        transparent;  
    7878    height:20px; 
     
    8686    display: none; 
    8787    clear: both;     
     88} 
     89a.moreinfo_clicker { 
     90    text-decoration: none; 
    8891} 
    8992 
     
    338341    clear:both; 
    339342} 
     343div.section_column .form_entry { 
     344    min-width: 464px; 
     345} 
    340346 
    341347.section_description H3 { 
     
    563569 
    564570 
     571div.section_column_content { 
     572    padding: 0px 6px; 
     573} 
     574 
     575p.slp_admin_info { 
     576    clear: both; 
     577} 
     578 
    565579#poststuff #rb_details h2, #poststuff .section_column h2 { 
    566580    margin-bottom: 3px;   
  • store-locator-le/tags/3.3/css/csl-slplus-boxed-fastfood.css

    r531848 r602157  
    346346/* Results Scrollbar */ 
    347347 
     348span.slp_checkbox_entry { 
     349    padding-right: 12px; 
     350} 
     351 
     352span.slp_checkbox_entry input[type="checkbox"] { 
     353    vertical-align: text-bottom; 
     354} 
  • store-locator-le/tags/3.3/css/csl-slplus-boxed.css

    r531848 r602157  
    338338/* Results Scrollbar */ 
    339339 
     340span.slp_checkbox_entry { 
     341    padding-right: 12px; 
     342} 
     343 
     344span.slp_checkbox_entry input[type="checkbox"] { 
     345    vertical-align: text-bottom; 
     346} 
  • store-locator-le/tags/3.3/css/csl-slplus-cleansimplewhite.css

    r598470 r602157  
    5656} 
    5757 
     58span.slp_checkbox_entry { 
     59    padding-right: 12px; 
     60} 
     61 
     62span.slp_checkbox_entry input[type="checkbox"] { 
     63    vertical-align: text-bottom; 
     64} 
  • store-locator-le/tags/3.3/css/csl-slplus-dark.css

    r531848 r602157  
    297297/* Results Scrollbar */ 
    298298 
     299span.slp_checkbox_entry { 
     300    padding-right: 12px; 
     301} 
     302 
     303span.slp_checkbox_entry input[type="checkbox"] { 
     304    vertical-align: text-bottom; 
     305} 
  • store-locator-le/tags/3.3/css/csl-slplus-nomap.css

    r531848 r602157  
    280280    text-align:right; 
    281281} 
     282span.slp_checkbox_entry { 
     283    padding-right: 12px; 
     284} 
     285 
     286span.slp_checkbox_entry input[type="checkbox"] { 
     287    vertical-align: text-bottom; 
     288} 
  • store-locator-le/tags/3.3/css/csl-slplus-noresultstable.css

    r531848 r602157  
    270270}  
    271271 
     272span.slp_checkbox_entry { 
     273    padding-right: 12px; 
     274} 
     275 
     276span.slp_checkbox_entry input[type="checkbox"] { 
     277    vertical-align: text-bottom; 
     278} 
  • store-locator-le/tags/3.3/css/csl-slplus.css

    r544991 r602157  
    277277    text-align:right; 
    278278} 
     279span.slp_checkbox_entry { 
     280    padding-right: 12px; 
     281} 
     282 
     283span.slp_checkbox_entry input[type="checkbox"] { 
     284    vertical-align: text-bottom; 
     285} 
  • store-locator-le/tags/3.3/css/default.css

    r544991 r602157  
    277277    text-align:right; 
    278278} 
     279span.slp_checkbox_entry { 
     280    padding-right: 12px; 
     281} 
     282 
     283span.slp_checkbox_entry input[type="checkbox"] { 
     284    vertical-align: text-bottom; 
     285} 
  • store-locator-le/tags/3.3/include/storelocatorplus-actions_class.php

    r598470 r602157  
    275275                getimagesize($slplus_end_icon_file)  : 
    276276                array(0 => 20, 1 => 34); 
     277 
     278            // Results Output String In JavaScript Format 
     279            // 
     280            $results_string = '<center>' . 
     281                    '<table width="96%" cellpadding="4px" cellspacing="0" class="searchResultsTable">'  . 
     282                        '<tr class="slp_results_row">'  . 
     283                            '<td class="results_row_left_column"><span class="location_name">{0}</span><br>{1} {2}</td>'  . 
     284                            '<td class="results_row_center_column">{3}{4}{5}{6}{7}</td>'  . 
     285                            '<td class="results_row_right_column">{8}{9}'  . 
     286                                '<a href="http://{10}' . 
     287                                '/maps?saddr={11}'  . 
     288                                '&daddr={12}'  . 
     289                                '" target="_blank" class="storelocatorlink">Directions</a>{13}</td>'  . 
     290                            '</tr>'  . 
     291                        '</table>'  . 
     292                        '</center>'; 
     293 
    277294            // Lets get some variables into our script 
    278295            // 
     
    292309                'map_end_sizew'     => $slplus_end_size[0], 
    293310                'map_end_sizeh'     => $slplus_end_size[1], 
    294                 'use_sensor'            => (get_option(SLPLUS_PREFIX."_use_location_sensor")==1), 
     311                'use_sensor'        => (get_option(SLPLUS_PREFIX."_use_location_sensor")==1), 
    295312                'map_scalectrl'     => (get_option(SLPLUS_PREFIX.'_disable_scalecontrol')==0), 
    296313                'map_type'          => get_option('sl_map_type','roadmap'), 
    297314                'map_typectrl'      => (get_option(SLPLUS_PREFIX.'_disable_maptypecontrol')==0), 
     315                'results_string'    => apply_filters('slp_javascript_results_string',$results_string), 
    298316                'show_tags'         => (get_option(SLPLUS_PREFIX.'_show_tags')==1), 
    299317                'overview_ctrl'     => get_option('sl_map_overview_control',0), 
  • store-locator-le/tags/3.3/include/storelocatorplus-adminui_class.php

    r587040 r602157  
    134134             return $content;              
    135135         } 
     136 
     137         /** 
     138          * method: slp_add_search_form_settings_panel 
     139          * 
     140          * Add the search form panel to the map settings page on the admin UI. 
     141          */ 
     142         function slp_add_search_form_settings_panel() { 
     143            global $slpMapSettings; 
     144            $slpDescription = get_string_from_phpexec(SLPLUS_COREDIR.'/templates/settings_searchform.php'); 
     145            $slpMapSettings->add_section( 
     146                array( 
     147                        'name'          => __('Search Form',SLPLUS_PREFIX), 
     148                        'description'   => $slpDescription, 
     149                        'auto'          => true 
     150                    ) 
     151             ); 
     152         } 
     153 
     154         /** 
     155          * method: slp_add_map_settings_panel 
     156          * 
     157          * Add the map panel to the map settings page on the admin UI. 
     158          */ 
     159         function slp_add_map_settings_panel() { 
     160            global $slpMapSettings; 
     161            $slpDescription = get_string_from_phpexec(SLPLUS_COREDIR.'/templates/settings_mapform.php'); 
     162            $slpMapSettings->add_section( 
     163                array( 
     164                        'name'          => __('Map',SLPLUS_PREFIX), 
     165                        'description'   => $slpDescription, 
     166                        'auto'          => true 
     167                    ) 
     168             ); 
     169 
     170         } 
     171 
     172 
     173 
     174 
    136175    } 
    137176}         
  • store-locator-le/tags/3.3/plus.php

    r598470 r602157  
    4646 **/ 
    4747function execute_and_output_plustemplate($file) { 
    48     $file = SLPLUS_PLUGINDIR.'/plustemplates/'.$file; 
     48    $file = SLPLUS_COREDIR.'templates/'.$file; 
    4949    print get_string_from_phpexec($file); 
    5050} 
  • store-locator-le/tags/3.3/readme.txt

    r598470 r602157  
    22Plugin Name: Google Maps via Store Locator Plus 
    33Contributors: charlestonsw 
    4 Donate link: http://www.charlestonsw.com/products/store-locator-plus/ 
     4Donate link: http://www.charlestonsw.com/product/store-locator-plus-2/ 
    55Tags: google maps, store finder, store locator, store locater, google, dealer locator, dealer locater, zip code search, shop locator, shop finder, zipcode, location finder, places, stores, maps, mapping, mapper, plugin, posts, post, page, coordinates, latitude, longitude, geo, geocoding, shops, ecommerce, e-commerce, business locations, store locator plus, store locater plus, bing map, bing, yahoo maps, yahoo, mapping, retail 
    66Requires at least: 3.3 
    77Tested up to: 3.4.2 
    8 Stable tag: 3.2 
     8Stable tag: 3.3 
    99 
    1010Store Locator Plus works with Google Maps v3 to put a store location search on your site. 
    11 The most active store locator plugin. 
     11The most active store locator plugin with monthly patches and updates! 
    1212 
    1313== Description == 
     
    2222 
    2323* You can use it for a variety of countries, as supported by Google Maps. 
    24 * The Store Pages add-on allows you to connect each of your locations with a Wordpress page -- so you can add hours, images and more! 
    2524* Supports international languages and character sets. 
    2625* Allows you to use unique map icons or your own custom map icons. 
     
    3130* You can use miles or kilometers 
    3231* Pulldown list of cities and/or countries on search form can be toggled on/off. 
    33 * Bulk upload your locations via the CSV loader. 
    3432* Location search tracking and reporting, find out what your visitors are looking for. 
    3533* Popup email form. 
    36 * Use your own themes and icons to customize how your map looks 
    3734 
    3835= Rate Us = 
     
    4138Give us a chance to <a href="http://www.charlestonsw.com/contact-us/">address your concerns</a> if we didn't earn 5 stars. 
    4239 
     40= Premium Add-Ons = 
     41 
     42We now offer premium add-on packages for our basic Store Locator Plus plugin. 
     43 
     44* [Pro Pack](http://www.charlestonsw.com/product/store-locator-plus) : More control over the map, search form, loading locations. 
     45* [Store Pages](http://www.charlestonsw.com/product/store-locator-plus-store-pages) : Create SEO friendly WordPress pages for your store locations. 
     46* [Enhanced Search](http://www.charlestonsw.com/product/store-locator-plus-enhanced-search) : Get even more control over the basic search form and even more when the Pro Pack is installed. 
     47 
     48If you are a plugin developer you will be interested in our new "Roll Your Own" program where you can create SLP based premium (or free) add-ons of your own.   Create something great and list it on our site! 
     49 
    4350= Special Requests = 
    4451 
    4552We do accept feature requests for all of our plugins, free ones included. The most requested features will make it into the next version. 
    4653 
    47 <strong>If you need a special feature NOW, <a href="http://www.charlestonsw.com/contact-us/">contact us</a>!</strong> We offer expedited feature development. Our custom development rates start at $500/day. 
     54If you need something NOW, or are looking for something beyond a basic "tweak" of the plugin, please check out our 
     55[Customization Service](http://www.charlestonsw.com/product/customization/).  Rates start at $500/day. 
    4856 
    49 = Looking For Customized WordPress Plugins? = 
     57= Upgrades and Patches = 
    5058 
    51 If you are looking for custom WordPress development for your own plugins, give 
    52 us a call.   Not only can we offer competitive rates but we can also leverage 
    53 our existing framework for WordPress applications which reduces development time 
    54 and costs. 
    55  
    56 Learn more at: http://www.charlestonsw.com/ 
    57  
    58 = Premium Add-Ons Available = 
    59  
    60 We current offer a Pro Pack and a Store Pages premium add-on.  More add-ons are one the way. You can learn more about the add-ons at these web pages: 
    61  
    62 * [Pro Pack](http://www.charlestonsw.com/product/store-locator-plus/) 
    63 * [Store Pages](http://www.charlestonsw.com/product/store-locator-plus-store-pages/) 
    64  
    65 Learn More about these features at the [Store Locator Plus website](http://www.charlestonsw.com/product/store-locator-plus/) 
    66  
    67 = Upgrades = 
    68  
    69 We will offer upgrade versions from time-to-time when special new features are added to the product. 
    70 If you do not purchase the upgrade you will still receive bug fixes and minor feature additions, however 
    71 some of the newest features may not be available to you. 
     59We try to release at least one upgrade/patch every month. 
    7260 
    7361The main product will always remain fully functional and free.  If you'd like to have some of the latest 
    74 "bells & whistles" purchasing the upgrades is a great way to help support us and encourage us to add even 
     62"bells & whistles" purchasing one of our premium add-ons is a great way to help support us and encourage us to add even 
    7563more items the next time around. 
    76  
    77 = Related Links = 
    78  
    79 * [Store Locator Plus](http://www.charlestonsw.com/product/store-locator-plus/) 
    80 * [Other CSA Plugins](http://profiles.wordpress.org/charlestonsw/) 
    8164 
    8265= Our Philosophy = 
     
    8972 
    9073While our plugins may not be the prettiest on the block, we do try to make sure that all the hidden stuff you don't see is designed as well as it can be. To sum it all up, we like to write plugins that last. We hope you appreciate our work. 
    91  
    92 = New! Store Pages = 
    93  
    94 You can have a WordPress page for each store location on your map turning your location data into SEO friendly content.  Store Pages are a special page type that is fully integrated with WordPress,  but you manage them through Store Locator Plus.  Store Pages also have their own taxonomy (category system) so you can manage Store Page categories without affecting the rest of your site. 
    95  
    96 [more information](http://www.charlestonsw.com/product/store-locator-plus-store-pages/) 
    9774 
    9875== Installation == 
     
    132109== Frequently Asked Questions == 
    133110 
    134 = What happened to Cyber Sprocket? = 
     111= What is included in the plugin? = 
    135112 
    136 Cyber Sprocket Labs was primarily a software consulting firm that did WordPress plugins as a part-time endeavor.   They have closed the business as of September 2012. 
     113The plugin includes all the functions and features necessary to add multiple locations to a store finder tool on your website. 
     114List 1 location or 1,000, customize the search interface and results form, and more. 
     115All basic functionality needed for a fully functional plugin is included. 
     116Basic upgrades are free and available directly from the WordPress plugin repository. 
     117 
     118= What are the premium add-ons? = 
     119 
     120In response to feature requests from our customers, we had created a series of premium add-on packages for Store Locator Plus. 
     121These features extend the functionality of the plugin beyond the basic service and features and can be purchased ala-carte. 
     122This gives those customers who want more out of the plugin the extra features they desire while keeping the main plugin as 
     123efficient as possible for everyone else.   It also provides a great way to support future development while getting a 
     124"little something extra" when contributing to our efforts. 
     125 
     126Currently we offer the following premium add-on packages: 
     127 
     128* [Pro Pack](http://www.charlestonsw.com/product/store-locator-plus) : More control over the map, search form, loading locations. 
     129* [Store Pages](http://www.charlestonsw.com/product/store-locator-plus-store-pages) : Create SEO friendly WordPress pages for your store locations. 
     130* [Enhanced Search](http://www.charlestonsw.com/product/store-locator-plus-enhanced-search) : Get even more control over the basic search form and even more when the Pro Pack is installed. 
    137131 
    138132= Who is Charleston Software Associates? = 
    139133 
    140 We have taken over the support, maintenance and updates of Cyber Sprocket's WordPress plugins.  We ONLY do mobile apps and WordPress plugins. 
     134Currently it is one guy hacking code in a home office.   I ONLY do mobile apps and WordPress plugins for a living. 
    141135 
    142 = How does this impact my CSL license? = 
    143  
    144 We will continue to honor all the CSL licenses.  However there may be some bumps in the road as we transition away from a licensing-centric to a pure-play add-on system over the coming months.   
     136= Have a license issue? = 
    145137 
    146138If you have any problems with your license or validating a product please contact us via our web form at http://www.charlestonsw.com/ and we will resolve your licensing issues. 
     
    167159All major browsers should work, however CSA only officially supports the current and the most recent prior release of Internet Explorer, Firefox, Chrome, and Safari. 
    168160 
    169 As of June, 2011 this includes: 
     161As of September, 2012 this includes: 
    170162 
    171 * Internet Explorer (IE) 8/9 
    172 * Firefox 4/5 
    173 * Chrome 11/12 
    174 * Safari 4/5 
    175  
    176 = What is the Pro Pack? = 
    177  
    178 The Pro Pack is a paid add-on for the main Store Locator Plus product. 
    179 When you purchase the Pro Pack the system will automatically install a variety of new features in the base product. 
    180 The features that are added by the Pro Pack change on a regular basis. 
    181 Please see the [Store Locator Plus website](http://www.charlestonsw.com/product/store-locator-plus/) for the latest feature list. 
    182  
    183 Some of the features in the Pro Pack include: 
    184  
    185 * Ability to search by location name 
    186 * A searched-locations report. 
    187 * Ability to input addresses in bulk via a CSV upload. 
    188 * Ability to associate tags with locations and filter search results by those tags. 
    189 * Additional search form elements. 
    190 * The CSS Themes system. 
    191  
    192 = What are Store Pages? = 
    193  
    194 Store Pages are a new WordPress page type that are created from the location data you have entered in your Store Locator Plus locations database. 
    195 Store Pages have their own categories and can be managed separately from the main WordPress site pages. 
    196 Store Pages content is fully accessible from your standard WordPress search and menu interface, providing a great way to get SEO value from your location data. 
    197  
    198 Store Pages is a paid add-on for the free Store Locator Plus product. When you purchase the Store Pages add-on new features will be added to the base product. 
    199  
    200 Please see the [Store Locator Plus website](http://www.charlestonsw.com/product/store-locator-plus/) for the latest feature list. 
     163* Internet Explorer (IE) 9 
     164* Firefox 15 
     165* Chrome 21 
     166* Safari 5 
    201167 
    202168== Screenshots == 
     
    220186Visit the [Store Locator Plus Release Notes](http://www.charlestonsw.com/support/documentation/store-locator-plus/release-notes/) at our website. 
    221187 
    222 = Latest Release: 3.2 (September 5th, 2012) = 
     188= Latest Release: 3.3 (September 21st, 2012) = 
    223189 
    224 * Geocoding process updates. 
    225 * Add a force load JavaScript for sites with less friendly themes (not processing shutdown or footer scripts) 
    226 * Revised JavaScript load order is more aggressive. 
    227 * Fix path name to language files, was causing some installs to break on security warning. 
    228 * Theme system tweaking. 
    229 * Transition from Cyber Sprocket to CSA. 
     190* Patch for Store Pages add-on not replacing web links properly 
     191* [Action Hooks for Customized and Third Party add-ons](http://www.charlestonsw.com/support/documentation/technical-documentation/store-locator-plus/add-on-packs-roll-your-own/) 
     192* Move screen shots to assets to lessen size  of zip install 
     193* Remove obsolete JavaScript files 
    230194 
    231195 
    232  
  • store-locator-le/tags/3.3/store-locator-le.php

    r598470 r602157  
    44Plugin URI: http://www.charlestonsw.com/products/store-locator-plus/ 
    55Description: Manage multiple locations with ease. Map stores or other points of interest with ease via Gooogle Maps.  This is a highly customizable, easily expandable, enterprise-class location management system. 
    6 Version: 3.2 
     6Version: 3.3 
    77Author: Charleston Software Associates 
    88Author URI: http://www.charlestonsw.com 
     
    8383require_once(SLPLUS_PLUGINDIR . '/include/storelocatorplus-actions_class.php'); 
    8484require_once(SLPLUS_PLUGINDIR . '/include/storelocatorplus-activation_class.php'); 
     85require_once(SLPLUS_PLUGINDIR . '/include/storelocatorplus-ui_class.php'); 
    8586 
    8687require_once(SLPLUS_PLUGINDIR . '/include/mobile-listener.php'); 
  • store-locator-le/trunk/core/csl-ajax-search.php

    r587040 r602157  
    9393            'description' => html_entity_decode($row['sl_description']), 
    9494            'url' => esc_attr($row['sl_url']), 
    95             'sl_pages_url' => ($row['sl_pages_on'] != 1 ? esc_attr($row['sl_pages_url']) : ''), 
     95            'sl_pages_url' => (($row['sl_pages_on'] == 1) ? esc_attr($row['sl_pages_url']) : ''), 
    9696            'email' => esc_attr($row['sl_email']), 
    9797            'hours' => esc_attr($row['sl_hours']), 
     
    100100            'image' => esc_attr($row['sl_image']), 
    101101            'distance' => $row['sl_distance'], 
    102             'tags' => ($slplus_show_tags) ? esc_attr($row['sl_tags']) : '' 
     102            'tags' => ($slplus_show_tags) ? esc_attr($row['sl_tags']) : '', 
     103            'data_from' => 'load', 
     104            'id' => $row['sl_id'], 
    103105        ); 
    104106        $response[] = $marker; 
     
    187189        ); 
    188190         
    189         $result = mysql_query($query); 
     191        $result = mysql_query(apply_filters('slp_mysql_search_query',$query)); 
    190192        if (!$result) { 
    191193            die(json_encode( array('success' => false, 'query' => $query, 'response' => 'Invalid query: ' . mysql_error()))); 
     
    232234                'description' => html_entity_decode($row['sl_description']), 
    233235                'url' => esc_attr($row['sl_url']), 
    234                 'sl_pages_url' => ($row['sl_pages_on'] != 1 ? esc_attr($row['sl_pages_url']) : ''), 
     236                'sl_pages_url' => (($row['sl_pages_on'] == 1) ? esc_attr($row['sl_pages_url']) : ''), 
    235237                'email' => esc_attr($row['sl_email']), 
    236238                'hours' => esc_attr($row['sl_hours']), 
     
    239241                'image' => esc_attr($row['sl_image']), 
    240242                'distance' => $row['sl_distance'], 
    241                 'tags' => ($slplus_show_tags) ? esc_attr($row['sl_tags']) : '' 
     243                'tags' => ($slplus_show_tags) ? esc_attr($row['sl_tags']) : '', 
     244                'data_from' => 'search', 
     245                'id' => $row['sl_id'], 
    242246            ); 
    243247            $response[] = $marker; 
  • store-locator-le/trunk/core/csl_helpers.php

    r598470 r602157  
    5454 **/ 
    5555function slp_createhelpdiv($divname,$msg) { 
    56     return "<a onclick=\"swapVisibility('".SLPLUS_PREFIX."-help$divname');\" href=\"javascript:;\">". 
    57         "<img class='helpicon' border='0' title='More info' alt='More info' src='".SLPLUS_COREURL."images/help-icon-18x20.png'>". 
     56    return "<a class='moreinfo_clicker' onclick=\"swapVisibility('".SLPLUS_PREFIX."-help$divname');\" href=\"javascript:;\">". 
     57        '<div class="'.SLPLUS_PREFIX.'-moreicon" title="click for more info"><br/></div>'. 
    5858        "</a>". 
    5959        "<div id='".SLPLUS_PREFIX."-help$divname' class='input_note' style='display: none;'>". 
  • store-locator-le/trunk/core/functions.sl.php

    r598470 r602157  
    4747 
    4848function initialize_variables() { 
    49     global $sl_height, $sl_width, $sl_width_units, $sl_height_units, $sl_radii; 
     49    global $sl_height, $sl_width, $sl_width_units, $sl_height_units; 
    5050    global $cl_icon, $cl_icon2, $sl_google_map_domain, $sl_google_map_country, $sl_theme, $sl_base, $sl_upload_base, $sl_location_table_view; 
    5151    global $sl_search_label, $sl_zoom_level, $sl_zoom_tweak, $sl_use_city_search, $sl_use_name_search, $sl_default_map; 
     
    201201        $sl_width_units=get_option('sl_map_width_units'); 
    202202        }    
    203      
    204     $sl_radii=get_option('sl_map_radii'); 
    205     if (empty($sl_radii)) { 
    206         add_option('sl_map_radii', "10,25,50,100,(200),500"); 
    207         $sl_radii=get_option('sl_map_radii'); 
    208         } 
    209203} 
    210204 
     
    256250             $raw_json = file_get_contents($request_url); 
    257251        } 
    258         $json = json_decode($raw_json); 
    259         $status = $json->{'status'}; 
     252 
     253        // If raw_json exists, parse it 
     254        // 
     255        if (isset($raw_json)) { 
     256            $json = json_decode($raw_json); 
     257            $status = $json->{'status'}; 
     258             
     259        // no raw json 
     260        // 
     261        } else { 
     262            $json = ''; 
     263            $status = ''; 
     264        } 
    260265         
    261266        // Geocode completed successfully 
     
    570575    $sl_width_units    = get_option('sl_map_width_units','%'); 
    571576    $slplus_name_label = get_option('sl_name_label'); 
    572      
    573     $sl_radii          = get_option('sl_map_radii','1,5,10,(25),50,100,200,500'); 
    574     $r_array        = explode(",", $sl_radii); 
     577    $r_array        = explode(",",get_option('sl_map_radii','1,5,10,(25),50,100,200,500')); 
    575578     
    576579    $sl_instruction_message = get_option('sl_instruction_message',__('Enter Your Address or Zip Code Above.',SLPLUS_PREFIX)); 
     
    656659    $columns += (get_option('slplus_show_state_pd')!=1) ? 1 : 0;         
    657660    $sl_radius_label=get_option('sl_radius_label'); 
    658     $file = SLPLUS_COREDIR . 'templates/search_form.php'; 
    659661 
    660662    // Prep fnvars for passing to our template 
     
    682684    } 
    683685 
    684     return get_string_from_phpexec($file);  
     686    // Search / Map Actions 
     687    // 
     688    add_action('slp_render_search_form',array('SLPlus_UI','slp_render_search_form')); 
     689 
     690    return get_string_from_phpexec(SLPLUS_COREDIR . 'templates/search_and_map.php'); 
    685691} 
    686692 
  • store-locator-le/trunk/core/js/csl.js

    r598470 r602157  
    667667         */ 
    668668        this.putMarkers = function(markerList, animation) { 
     669 
    669670            this.markers = []; 
    670671            if (this.loadedOnce) { 
     
    736737                var sidebar = document.getElementById('map_sidebar'); 
    737738                sidebar.innerHTML = '<div class="no_results_found"><h2>No results found.</h2></div>'; 
    738             } 
     739                jQuery('#map_sidebar').trigger('contentchanged'); 
     740            } else { 
     741                jQuery('#map_sidebar').trigger('contentchanged'); 
     742            } 
    739743             
    740744            if (bounds != null) { 
    741745                this.debugSearch('rebounded'); 
    742746                this.bounds = bounds; 
    743                 //if (this.homePoint) {  
    744                 //  this.gmap.panTo(this.homePoint); } 
    745747                this.gmap.fitBounds(this.bounds); 
    746                 //this.gmap.panTo(this.bounds.getCenter()); 
    747748            } 
    748749        } 
     
    830831            var url = ''; 
    831832            //add an http to the url 
    832             if (aMarker.sl_pages_url != '') { 
     833            if ((slplus.use_pages_links) && (aMarker.sl_pages_url != '')) { 
    833834                url = aMarker.sl_pages_url; 
    834835            } 
     
    11381139 
    11391140            var address = this.__createAddress(aMarker); 
    1140              
    1141             var html =  '<center><table width="96%" cellpadding="4px" cellspacing="0" class="searchResultsTable">' + 
    1142                     '<tr class="slp_results_row">' + 
    1143                     '<td class="results_row_left_column">' + 
    1144                         '<span class="location_name">' + aMarker.name + '</span><br>' +  
    1145                         parseFloat(aMarker.distance).toFixed(1) + ' ' + slplus.distance_unit + '</td>' + 
    1146                     '<td class="results_row_center_column">' +  
    1147                         street +   
    1148                         street2 +  
    1149                         city_state_zip + 
    1150                         thePhone + 
    1151                         theFax + 
    1152                     '</td>' + 
    1153                     '<td class="results_row_right_column">' +  
    1154                         link +  
    1155                         elink + 
    1156                         '<a href="http://' + slplus.map_domain +  
    1157                         '/maps?saddr=' + encodeURIComponent(this.address) +  
    1158                         '&daddr=' + encodeURIComponent(address) +  
    1159                         '" target="_blank" class="storelocatorlink">Directions</a>'+ 
    1160                         tagInfo + 
    1161                         '</td>' + 
    1162                         '</tr></table></center>'; 
    1163             div.innerHTML = html; 
     1141 
     1142 
     1143            // JavaScript version of sprintf 
     1144            // 
     1145            String.prototype.format = function() { 
     1146             var args = arguments; 
     1147             return this.replace(/{(\d+)}/g, function(match, number) {  
     1148               return typeof args[number] != 'undefined' 
     1149                 ? args[number] 
     1150                 : match 
     1151               ; 
     1152             }); 
     1153           }; 
     1154 
     1155         // Create the results table 
     1156         // 
     1157         div.innerHTML = slplus.results_string.format( 
     1158                        aMarker.name, 
     1159                        parseFloat(aMarker.distance).toFixed(1), 
     1160                        slplus.distance_unit, 
     1161                        street, 
     1162                        street2, 
     1163                        city_state_zip, 
     1164                        thePhone, 
     1165                        theFax, 
     1166                        link, 
     1167                        elink, 
     1168                        slplus.map_domain, 
     1169                        encodeURIComponent(this.address), 
     1170                        encodeURIComponent(address), 
     1171                        tagInfo 
     1172                      ) 
     1173                      ; 
    11641174            div.className = 'results_entry'; 
     1175            div.id = 'slp_results_entry_'+aMarker.id; 
    11651176 
    11661177            return div; 
  • store-locator-le/trunk/core/map-designer.php

    r598470 r602157  
    1010//=========================================================================== 
    1111 
     12global $slplus_plugin; 
     13 
    1214/************************************** 
    1315 ** function: choose_units 
     
    2729} 
    2830 
     31/** 
     32 * function: SavePostToOptionsTable 
     33 */ 
     34function SavePostToOptionsTable($optionname,$default=null) { 
     35    if ($default != null) { 
     36        if (!isset($_POST[$optionname])) { 
     37            $_POST[$optionname] = $default; 
     38        } 
     39    } 
     40    if (isset($_POST[$optionname])) { 
     41        update_option($optionname,$_POST[$optionname]); 
     42    } 
     43} 
     44 
    2945/************************************** 
    3046 ** function: SaveCheckboxToDB 
     
    3652 **  $prefix (string, optional) - defaults to SLPLUS_PREFIX, can be ''  
    3753 **/ 
    38 function SaveCheckboxToDB($boxname,$prefix = SLPLUS_PREFIX) { 
    39     $whichbox = $prefix.$boxname;  
     54function SaveCheckboxToDB($boxname,$prefix = SLPLUS_PREFIX, $separator='-') { 
     55    $whichbox = $prefix.$separator.$boxname; 
    4056    $_POST[$whichbox] = isset($_POST[$whichbox])?1:0;   
    41     update_option($whichbox,$_POST[$whichbox]);  
     57    SavePostToOptionsTable($whichbox,0); 
    4258} 
    4359 
     
    5773    return  
    5874        "<div class='form_entry'>". 
     75            "<div class='".SLPLUS_PREFIX."-input'>" . 
    5976            "<label  for='$whichbox'>$label:</label>". 
    6077            "<input name='$whichbox' value='1' type='checkbox' ".((get_option($whichbox) ==1)?' checked':'').">". 
    61             slp_createhelpdiv($boxname,$msg). 
     78            "</div>". 
     79            slp_createhelpdiv($boxname,$msg) . 
    6280        "</div>" 
    6381        ; 
    6482} 
    6583 
     84 
     85/** 
     86 * function: CreateInputDiv 
     87 */ 
     88function CreateInputDiv($boxname,$label='',$msg='',$prefix=SLPLUS_PREFIX, $default='') { 
     89    $whichbox = $prefix.$boxname; 
     90    return 
     91        "<div class='form_entry'>" . 
     92            "<div class='".SLPLUS_PREFIX."-input'>" . 
     93                "<label for='$whichbox'>$label:</label>". 
     94                "<input  name='$whichbox' value='".get_option($whichbox,$default)."'>". 
     95            "</div>". 
     96            slp_createhelpdiv($boxname,$msg). 
     97         "</div>" 
     98        ; 
     99 
     100} 
     101 
     102/** 
     103 * function: CreatePulldownDiv 
     104 */ 
     105function CreatePulldownDiv($boxname,$values,$label='',$msg='',$prefix=SLPLUS_PREFIX, $default='') { 
     106    $whichbox = $prefix.$boxname; 
     107    $selected = get_option($whichbox,$default); 
     108 
     109    $content = 
     110            "<div class='form_entry'>". 
     111                "<div class='".SLPLUS_PREFIX."-input'>" . 
     112                    "<label for='$whichbox'>$label:</label>" . 
     113                    "<select name='$whichbox'>" 
     114            ; 
     115 
     116    foreach ($values as $value){ 
     117        $content.="<option value='$value' ".(($value == $selected)?'selected':'').">". 
     118                  $value. 
     119                "</option>"; 
     120    } 
     121 
     122    $content.=      "</select>". 
     123                "</div>". 
     124                slp_createhelpdiv($boxname,$msg). 
     125            "</div>" 
     126            ; 
     127 
     128    return $content; 
     129} 
    66130 
    67131 
     
    69133// Main Processing 
    70134//=========================================================================== 
    71 $update_msg =''; 
    72  
    73135if (!$_POST) { 
    74136    move_upload_directories(); 
     137    $update_msg =''; 
    75138     
    76139} else { 
    77     if (isset($_POST['sl_language'])) {  
    78             update_option('sl_language', $_POST['sl_language']); 
    79     } 
    80140    $sl_google_map_arr=explode(":", $_POST['google_map_domain']); 
    81141    update_option('sl_google_map_country', $sl_google_map_arr[0]); 
    82142    update_option('sl_google_map_domain', $sl_google_map_arr[1]); 
    83     update_option('sl_map_character_encoding', $_POST['sl_map_character_encoding']); 
    84143     
    85144    $_POST['height']=ereg_replace("[^0-9]", "", $_POST['height']); 
     
    100159    update_option('sl_map_width', $_POST['width']); 
    101160     
    102     update_option('sl_map_radii', $_POST['radii']); 
    103161    update_option('sl_map_home_icon', $_POST['icon']); 
    104162    update_option('sl_map_end_icon', $_POST['icon2']); 
    105     update_option('sl_search_label', $_POST['search_label']); 
    106     update_option('sl_radius_label', $_POST['sl_radius_label']); 
    107     update_option('sl_website_label', $_POST['sl_website_label']); 
    108     update_option('sl_instruction_message', $_POST['sl_instruction_message']); 
    109     update_option('sl_zoom_level', $_POST['zoom_level']); 
    110     update_option('sl_zoom_tweak', $_POST['zoom_tweak']); 
    111     update_option('sl_map_type', $_POST['sl_map_type']); 
    112     update_option('sl_num_initial_displayed', $_POST['sl_num_initial_displayed']);     
    113     update_option('sl_distance_unit', $_POST['sl_distance_unit']); 
    114     update_option('sl_name_label', $_POST['sl_name_label']); 
    115  
    116     if (function_exists('execute_and_output_plustemplate')) { 
    117         update_option('sl_starting_image', $_POST['sl_starting_image']); 
    118         update_option(SLPLUS_PREFIX.'_search_tag_label',        $_POST[SLPLUS_PREFIX.'_search_tag_label']); 
    119         update_option(SLPLUS_PREFIX.'_tag_search_selections',   $_POST[SLPLUS_PREFIX.'_tag_search_selections']); 
    120         update_option(SLPLUS_PREFIX.'_state_pd_label',          $_POST[SLPLUS_PREFIX.'_state_pd_label']); 
    121         if (isset($_POST[SLPLUS_PREFIX.'_map_center']   )) { update_option(SLPLUS_PREFIX.'_map_center',              $_POST[SLPLUS_PREFIX.'_map_center']);  } 
    122         if (isset( $_POST[SLPLUS_PREFIX.'_maxreturned'] )) { update_option(SLPLUS_PREFIX.'_maxreturned',             $_POST[SLPLUS_PREFIX.'_maxreturned']); } 
    123     }     
    124      
    125     # Checkbox settings - can set to issset and save that because the 
    126     # post variable is only set if it is checked, if not checked it is 
    127     # false (0). 
    128     # 
    129     $_POST['sl_use_city_search']=isset($_POST['sl_use_city_search'])?1:0; 
    130     update_option('sl_use_city_search',$_POST['sl_use_city_search']); 
    131              
    132     $_POST['slplus_show_state_pd']=isset($_POST['slplus_show_state_pd'])?1:0; 
    133     update_option('slplus_show_state_pd',$_POST['slplus_show_state_pd']); 
    134      
    135     $_POST['sl_use_country_search']=isset($_POST['sl_use_country_search'])?1:0; 
    136     update_option('sl_use_country_search',$_POST['sl_use_country_search']); 
     163 
     164 
     165    // Text boxes 
     166    // 
     167    $BoxesToHit = array( 
     168        'sl_language'                           , 
     169        'sl_map_character_encoding'             , 
     170        'sl_map_radii'                          , 
     171        'sl_instruction_message'                , 
     172        'sl_zoom_level'                         , 
     173        'sl_zoom_tweak'                         , 
     174        'sl_map_type'                           , 
     175        'sl_num_initial_displayed'              , 
     176        'sl_distance_unit'                      , 
     177        'sl_name_label'                         , 
     178        'sl_radius_label'                       , 
     179        'sl_search_label'                       , 
     180        'sl_website_label'                      , 
     181         
     182        'sl_starting_image'                     , 
     183        SLPLUS_PREFIX.'_tag_search_selections'  , 
     184        SLPLUS_PREFIX.'_map_center'             , 
     185        SLPLUS_PREFIX.'_maxreturned'            , 
     186         
     187        SLPLUS_PREFIX.'_search_tag_label'       , 
     188        SLPLUS_PREFIX.'_state_pd_label'         , 
     189 
     190        ); 
     191    foreach ($BoxesToHit as $JustAnotherBox) { 
     192        SavePostToOptionsTable($JustAnotherBox); 
     193    } 
     194 
     195 
     196    // Checkboxes with custom names 
     197    // 
     198    $BoxesToHit = array( 
     199        'sl_use_city_search', 
     200        'sl_use_country_search', 
     201        'sl_load_locations_default', 
     202        'sl_map_overview_control', 
     203        'sl_remove_credits', 
     204        'slplus_show_state_pd', 
     205        ); 
     206    foreach ($BoxesToHit as $JustAnotherBox) { 
     207        SaveCheckBoxToDB($JustAnotherBox, '',''); 
     208    } 
    137209        
    138     $_POST['sl_remove_credits']=isset($_POST['sl_remove_credits'])?1:0;  
    139     update_option('sl_remove_credits',$_POST['sl_remove_credits']); 
    140      
    141     $_POST['sl_load_locations_default']=isset($_POST['sl_load_locations_default'])?1:0; 
    142     update_option('sl_load_locations_default',$_POST['sl_load_locations_default']); 
    143  
    144     $_POST['sl_map_overview_control'] = isset($_POST['sl_map_overview_control'])?1:0;   
    145     update_option('sl_map_overview_control',$_POST['sl_map_overview_control']); 
    146      
     210    // Checkboxes with normal names 
     211    // 
    147212    $BoxesToHit = array( 
    148         '_show_tag_search', 
    149         '_show_tag_any', 
    150         '_email_form', 
    151         '_show_tags', 
    152         '_disable_scrollwheel', 
    153         '_disable_initialdirectory', 
    154         '_disable_largemapcontrol3d', 
    155         '_disable_scalecontrol', 
    156         '_disable_maptypecontrol', 
    157         '_hide_radius_selections', 
    158         '_hide_address_entry', 
    159         '_disable_search', 
    160         '_show_search_by_name', 
    161         '_use_location_sensor' 
     213        'show_tag_search', 
     214        'show_tag_any', 
     215        'email_form', 
     216        'show_tags', 
     217        'disable_scrollwheel', 
     218        'disable_initialdirectory', 
     219        'disable_largemapcontrol3d', 
     220        'disable_scalecontrol', 
     221        'disable_maptypecontrol', 
     222        'hide_radius_selections', 
     223        'hide_address_entry', 
     224        'disable_search', 
     225        'show_search_by_name', 
     226        'use_location_sensor' 
    162227        ); 
    163228    foreach ($BoxesToHit as $JustAnotherBox) {         
    164         SaveCheckBoxToDB($JustAnotherBox); 
    165     } 
    166         
     229        SaveCheckBoxToDB($JustAnotherBox, SLPLUS_PREFIX, '_'); 
     230    } 
     231 
     232    do_action('slp_save_map_settings');        
    167233    $update_msg = "<div class='highlight'>".__("Successful Update", SLPLUS_PREFIX).'</div>'; 
    168234} 
     
    233299// 
    234300$checked2           = (isset($checked2)  ?$checked2  :''); 
    235 $sl_city_checked        = (get_option('sl_use_city_search')            ==1)?' checked ':''; 
    236 $checked3           = (get_option('sl_remove_credits')              ==1)?' checked ':''; 
     301$sl_city_checked    = (get_option('sl_use_city_search',0) ==1)?' checked ':''; 
     302$checked3           = (get_option('sl_remove_credits',0)  ==1)?' checked ':''; 
    237303 
    238304$sl_map_type_options=(isset($sl_map_type_options)?$sl_map_type_options:''); 
     
    241307$map_type["".__("Hybrid", SLPLUS_PREFIX).""]="hybrid"; 
    242308$map_type["".__("Physical", SLPLUS_PREFIX).""]="terrain"; 
    243  
    244  
    245 $zl[]=0;$zl[]=1;$zl[]=2;$zl[]=3;$zl[]=4;$zl[]=5;$zl[]=6;$zl[]=7;$zl[]=8; 
    246 $zl[]=9;$zl[]=10;$zl[]=11;$zl[]=12;$zl[]=13;$zl[]=14;$zl[]=15;$zl[]=16; 
    247 $zl[]=17;$zl[]=18;$zl[]=19; 
    248  
    249  
    250 // Zoom Level 
    251 // 
    252 $slp_current_setting = get_option('sl_zoom_level'); 
    253 if ($slp_current_setting == '') { $slp_current_setting = 4; } 
    254 $sl_zoom="<select name='zoom_level'>"; 
    255 foreach ($zl as $sl_value) { 
    256     $sl_zoom.="<option value='$sl_value' "; 
    257     if ($slp_current_setting==$sl_value){ $sl_zoom.=" selected ";} 
    258     $sl_zoom.=">$sl_value</option>"; 
    259 } 
    260 $sl_zoom.="</select>"; 
    261  
    262 // Zoom Adjustment 
    263 // 
    264 $slp_current_setting = get_option('sl_zoom_tweak'); 
    265 if ($slp_current_setting == '') { $slp_current_setting = 4; } 
    266 $sl_zoom_adj="<select name='zoom_tweak'>"; 
    267 foreach ($zl as $sl_value) { 
    268     $sl_zoom_adj.="<option value='$sl_value' "; 
    269     if ($slp_current_setting==$sl_value){ $sl_zoom_adj.=" selected ";} 
    270     $sl_zoom_adj.=">$sl_value</option>"; 
    271 } 
    272 $sl_zoom_adj.="</select>"; 
    273309 
    274310// Map Type 
     
    371407); 
    372408 
    373  
    374409//------------------------------------ 
    375410// Create The Search Form Settings Panel 
    376 //   
    377 $slpDescription = get_string_from_phpexec(SLPLUS_COREDIR.'/templates/settings_searchform.php'); 
    378 $slpMapSettings->add_section( 
    379     array( 
    380             'name'          => __('Search Form',SLPLUS_PREFIX), 
    381             'description'   => $slpDescription, 
    382             'auto'          => true 
    383         ) 
    384  ); 
    385     
    386 //------------------------------------ 
    387 // Create The Map Settings Panel 
    388 //   
    389 $slpDescription = get_string_from_phpexec(SLPLUS_COREDIR.'/templates/settings_mapform.php'); 
    390 $slpMapSettings->add_section( 
    391     array( 
    392             'name'          => __('Map',SLPLUS_PREFIX), 
    393             'description'   => $slpDescription, 
    394             'auto'          => true 
    395         ) 
    396  ); 
    397      
    398  
    399 //------------------------------------ 
    400 // Info Panel 
    401 // 
    402 $slpDescription =  
    403     "Product Information: <a href='$slplus_plugin->url' target='cybersprocket'>$slplus_plugin->url</a><br/>"; 
    404 if ($slplus_plugin->debugging) { 
    405 $slpDescription .=  
    406         "Basename:  ".SLPLUS_BASENAME    ."<br/>" . 
    407         "Core Directory:   ".SLPLUS_COREDIR     ."<br/>" . 
    408         "Plugin Directory: ".SLPLUS_PLUGINDIR   ."<br/>" . 
    409         "Core URL: ".SLPLUS_COREURL   ."<br/>" . 
    410         "Plugin URL: ".SLPLUS_PLUGINURL   ."<br/>" . 
    411         "Admin Page: ".SLPLUS_ADMINPAGE   ."<br/>" . 
    412         "" 
    413         ;     
    414 }         
    415 $slpMapSettings->add_section( 
    416     array( 
    417             'name'          => __('Plugin Info',SLPLUS_PREFIX), 
    418             'description'   => $slpDescription, 
    419             'auto'          => true 
    420         ) 
    421  ); 
     411// 
     412add_action('slp_build_map_settings_panels',array('SLPlus_AdminUI','slp_add_search_form_settings_panel'),1); 
     413add_action('slp_build_map_settings_panels',array('SLPlus_AdminUI','slp_add_map_settings_panel'),2); 
     414 
    422415     
    423416//------------------------------------ 
     
    425418// 
    426419print $update_msg; 
     420do_action('slp_build_map_settings_panels'); 
    427421$slpMapSettings->render_settings_page();     
  • store-locator-le/trunk/core/templates/search_form.php

    r598470 r602157  
    22  global $sl_search_label, $sl_width, $sl_height, $sl_width_units, $sl_height_units, $sl_hide, 
    33      $sl_radius, $sl_radius_label, $r_options, $button_style, 
    4       $sl_instruction_message, $cs_options, $slplus_state_options, $sl_country_options,  
     4      $sl_instruction_message, $cs_options, $slplus_state_options, $sl_country_options, 
    55      $fnvars, $slplus_plugin, $slplus_name_label; 
    66 
    77      $prefix = $slplus_plugin->prefix; 
     8?> 
    89 
    9       // Script enqueue should never be called as a direct function. 
    10       // 
    11       // WordPress best practices dictacte using this in a supported action hook only. 
    12       // Many themes and plugins will not honor this. 
    13       // 
    14       // SLPlus_Actions::shutdown(); 
    15 ?> 
    16 <div id='sl_div'> 
    17   <form onsubmit='cslmap.searchLocations(); return false;' id='searchForm' action=''> 
    18     <table  id='search_table' border='0' cellpadding='3px' class='sl_header'><tr> 
    19     <td valign='top'> 
    20         <div id='address_search'> 
    21  
    22                
    23             <?php 
    24             //------------------------------------------------ 
    25             // Show City Pulldown Is Enabled 
    26             // 
    27             if ($cs_options != '') {  
    28             ?> 
    29             <div id='addy_in_city'> 
    30                 <select id='addressInput2' onchange='aI=document.getElementById("searchForm").addressInput;if(this.value!=""){oldvalue=aI.value;aI.value=this.value;}else{aI.value=oldvalue;}'> 
    31                     <option value=''>--Search By City--</option> 
    32                     <?php echo $cs_options?> 
    33                 </select> 
    34             </div> 
    35             <?php } ?> 
    36              
    37              
    38             <?php 
    39             //------------------------------------------------ 
    40             // Show State Pulldown Is Enabled 
    41             // 
    42             if ($slplus_state_options != '') {  
    43             ?> 
    44             <div id='addy_in_state'> 
    45                 <label for='addressInputState'><?php  
    46                     print get_option($prefix.'_state_pd_label');                 
    47                     ?></label> 
    48                 <select id='addressInputState' onchange='aI=document.getElementById("searchForm").addressInput;if(this.value!=""){oldvalue=aI.value;aI.value=this.value;}else{aI.value=oldvalue;}'> 
    49                     <option value=''>--Search By State--</option> 
    50                     <?php echo $slplus_state_options?> 
    51                 </select> 
    52             </div> 
    53             <?php } ?>             
    54              
    55             <?php 
    56             //------------------------------------------------ 
    57             // Show Country Pulldown Is Enabled 
    58             // 
    59             if ($sl_country_options != '') {  
    60             ?> 
    61             <div id='addy_in_country'> 
    62                 <select id='addressInput3' onchange='aI=document.getElementById("searchForm").addressInput;if(this.value!=""){oldvalue=aI.value;aI.value=this.value;}else{aI.value=oldvalue;}'> 
    63                 <option value=''>--Search By Country--</option> 
    64                 <?php echo $sl_country_options?> 
    65                 </select> 
    66             </div> 
    67             <?php }  
    68  
    69             //------------------------------------------------ 
    70             // Show Tag Search Is Enabled 
    71             // 
    72             if ($slplus_plugin->license->packages['Pro Pack']->isenabled) { 
    73                 if (get_option(SLPLUS_PREFIX.'_show_tag_search') ==1) { 
    74             ?> 
    75                     <div id='search_by_tag' class='search_item' <?php if (isset($fnvars['only_with_tag'])) { print "style='display:none;'"; }?>>    
    76                         <label for='tag_to_search_for'><?php  
    77                             print get_option($prefix.'_search_tag_label');                 
    78                             ?></label> 
    79                         <?php        
    80                             // Tag selections 
    81                             // 
    82                             if (isset($fnvars['tags_for_pulldown'])) { 
    83                                 $tag_selections = $fnvars['tags_for_pulldown']; 
    84                             } 
    85                             else { 
    86                                 $tag_selections = get_option($prefix.'_tag_search_selections'); 
    87                             } 
    88                      
    89                             // Tag selections 
    90                             // 
    91                             if (isset($fnvars['only_with_tag'])) { 
    92                                 $tag_selections = ''; 
    93                             } 
    94                      
    95                             // No pre-selected tags, use input box 
    96                             // 
    97                             if ($tag_selections == '') { 
    98                                 print "<input type='". (isset($fnvars['only_with_tag']) ? 'hidden' : 'text') . "' ".  
    99                                         "id='tag_to_search_for' size='50' " . 
    100                                         "value='" . (isset($fnvars['only_with_tag']) ? $fnvars['only_with_tag'] : '') . "' ".                                 
    101                                         "/>"; 
    102                          
    103                             // Pulldown for pre-selected list 
    104                             // 
    105                             }  
    106                             else { 
    107                                 print "<select id='tag_to_search_for' >"; 
    108                          
    109                                 // Show Any Option (blank value) 
    110                                 // 
    111                                 if (get_option($prefix.'_show_tag_any')==1) { 
    112                                     print "<option value=''>". 
    113                                         __('Any',SLPLUS_PREFIX). 
    114                                         '</option>'; 
    115                                 } 
    116                          
    117                                 $tag_selections = explode(",", $tag_selections); 
    118                                 foreach ($tag_selections as $selection) { 
    119                                     $clean_selection = preg_replace('/\((.*)\)/','$1',$selection); 
    120                                     print "<option value='$clean_selection' "; 
    121                                     print (ereg("\(.*\)", $selection))? " selected='selected' " : ''; 
    122                                     print ">$clean_selection</option>";                             
    123                                 } 
    124                                 print "</select>"; 
    125                             } 
    126                         ?> 
    127                         </div> 
    128                 <?php 
    129                 } 
    130              
    131                 // ---------------------------------------------- 
    132                 // We are showing the name search 
    133                 // 
    134                 if (get_option(SLPLUS_PREFIX.'_show_search_by_name') == 1) { 
    135                     ?> 
    136                     <div id='name_search_div' class='search_item'> 
    137                         <label for='nameSearch'><?php echo $slplus_name_label?></label> 
    138                         <input type='text' id='nameSearch' size='50' /> 
    139                     </div> 
    140                     <?php 
    141                 } 
    142             } 
    143             ?> 
    144              
    145             <?php 
    146             //------------------------------------------------ 
    147             // We are not hiding the address input 
    148             // 
    149             if (get_option(SLPLUS_PREFIX.'_hide_address_entry') == 0) {                 
    150             ?>          
    151             <div id='addy_in_address' class='search_item'> 
    152                 <label for="addressInput"><?php echo $sl_search_label?></label> 
    153                 <input type='text' id='addressInput' size='50' /> 
    154            </div> 
    155            <?php 
    156             } else { 
    157                 ?> 
    158             <div id='addy_in_address' class='search_item'> 
    159             <input type='hidden' id='addressInput' value='' /> 
    160            </div> 
    161            <?php 
    162             } 
    163             ?> 
    164  
    165             <?php 
    166             //------------------------------------------------ 
    167             // We are not hiding the radius selection 
    168             // 
    169             if (get_option(SLPLUS_PREFIX.'_hide_radius_selections') == 0) {                 
    170             ?>            
    171                 <div id='addy_in_radius'> 
    172                     <label for='radiusSelect'><?php _e($sl_radius_label, SLPLUS_PREFIX);?></label> 
    173                     <select id='radiusSelect'><?php echo $r_options;?></select> 
    174                 </div> 
    175                  
    176             <?php 
    177             } else { 
    178                 echo $r_options; 
    179             } 
    180              
    181             //------------------------------------------------ 
    182             // We are not hiding the submit button 
    183             // 
    184             if (get_option(SLPLUS_PREFIX.'_disable_search') == 0) {                 
    185             ?>                
    186             <div id='radius_in_submit'> 
    187                 <input <?php echo $button_style?> value='Search Locations' id='addressSubmit'/> 
    188             </div> 
    189             <?php 
    190             } 
    191             ?> 
    192              
    193              
    194         </div> 
    195       </td> 
    196     </tr></table> 
    197     <table id='map_table' width='100%' cellspacing='0px' cellpadding='0px'>  
    198      <tr> 
    199         <td width='100%' valign='top'> 
    200 <?php 
    201 $sl_starting_image=get_option('sl_starting_image'); 
    202 if ($sl_starting_image != '') {     
    203 ?> 
    204             <div id='map_box_image' style='width:<?php echo $sl_width?><?php echo $sl_width_units?>; height:<?php echo $sl_height?><?php echo $sl_height_units?>'>       
    205                 <img src='<?php  
    206                         if (preg_match('/^http/',$sl_starting_image) <= 0) { 
    207                             echo SLPLUS_PLUGINURL; 
    208                         } 
    209                         echo $sl_starting_image;                         
    210                     ?>'> 
    211             </div> 
    212             <div id='map_box_map'> 
    213 <?php 
    214 } 
    215 ?> 
    216                 <div id='map' style='width:<?php echo $sl_width?><?php echo $sl_width_units?>; height:<?php echo $sl_height?><?php echo $sl_height_units?>'></div> 
    217                 <table cellpadding='0px' class='sl_footer' width='<?php echo $sl_width?><?php echo $sl_width_units?>;' <?php echo $sl_hide?>> 
    218                 <tr class="slp_map_tagline"> 
    219                     <td class='sl_footer_right_column'> 
    220                         <?php echo __('search provided by', SLPLUS_PREFIX); ?> <a href='<?php echo $slplus_plugin->url; ?>' target='_blank'><?php echo $slplus_plugin->name; ?></a> 
    221                     </td> 
    222                 </tr>                 
    223                 </table> 
    224 <?php 
    225 if ($sl_starting_image != '') {     
    226 ?> 
    227             </div> 
    228 <?php 
    229 } 
    230 ?> 
    231         </td> 
    232       </tr> 
    233       <tr id='cm_mapTR'class='slp_map_search_results'> 
    234         <td width='' valign='top' id='map_sidebar_td'> 
    235             <div id='map_sidebar' style='width:<?php echo $sl_width?><?php echo $sl_width_units?>;'> 
    236                 <div class='text_below_map'><?php echo $sl_instruction_message?></div> 
    237             </div> 
    238         </td> 
    239     </tr> 
    240   </table></form> 
    241 </div> 
     10<form onsubmit='cslmap.searchLocations(); return false;' id='searchForm' action=''> 
     11  <table  id='search_table' border='0' cellpadding='3px' class='sl_header'><tr> 
     12  <td valign='top'> 
     13      <div id='address_search'> 
    24214 
    24315 
     16          <?php 
     17          //------------------------------------------------ 
     18          // Show City Pulldown Is Enabled 
     19          // 
     20          if ($cs_options != '') {  
     21          ?> 
     22          <div id='addy_in_city'> 
     23              <select id='addressInput2' onchange='aI=document.getElementById("searchForm").addressInput;if(this.value!=""){oldvalue=aI.value;aI.value=this.value;}else{aI.value=oldvalue;}'> 
     24                  <option value=''>--Search By City--</option> 
     25                  <?php echo $cs_options?> 
     26              </select> 
     27          </div> 
     28          <?php } ?> 
     29 
     30 
     31          <?php 
     32          //------------------------------------------------ 
     33          // Show State Pulldown Is Enabled 
     34          // 
     35          if ($slplus_state_options != '') {  
     36          ?> 
     37          <div id='addy_in_state'> 
     38              <label for='addressInputState'><?php  
     39                  print get_option($prefix.'_state_pd_label'); 
     40                  ?></label> 
     41              <select id='addressInputState' onchange='aI=document.getElementById("searchForm").addressInput;if(this.value!=""){oldvalue=aI.value;aI.value=this.value;}else{aI.value=oldvalue;}'> 
     42                  <option value=''>--Search By State--</option> 
     43                  <?php echo $slplus_state_options?> 
     44              </select> 
     45          </div> 
     46          <?php } ?>             
     47 
     48          <?php 
     49          //------------------------------------------------ 
     50          // Show Country Pulldown Is Enabled 
     51          // 
     52          if ($sl_country_options != '') {  
     53          ?> 
     54          <div id='addy_in_country'> 
     55              <select id='addressInput3' onchange='aI=document.getElementById("searchForm").addressInput;if(this.value!=""){oldvalue=aI.value;aI.value=this.value;}else{aI.value=oldvalue;}'> 
     56              <option value=''>--Search By Country--</option> 
     57              <?php echo $sl_country_options?> 
     58              </select> 
     59          </div> 
     60          <?php }  
     61 
     62          //------------------------------------------------ 
     63          // Show Tag Search Is Enabled 
     64          // 
     65          if ($slplus_plugin->license->packages['Pro Pack']->isenabled) { 
     66              if (get_option(SLPLUS_PREFIX.'_show_tag_search',0) ==1) { 
     67          ?> 
     68                  <div id='search_by_tag' class='search_item' <?php if (isset($fnvars['only_with_tag'])) { print "style='display:none;'"; }?>> 
     69                      <label for='tag_to_search_for'><?php 
     70                          print get_option($prefix.'_search_tag_label'); 
     71                          ?></label> 
     72                      <?php 
     73                          // Tag selections 
     74                          // 
     75                          if (isset($fnvars['tags_for_pulldown'])) { 
     76                              $tag_selections = $fnvars['tags_for_pulldown']; 
     77                          } 
     78                          else { 
     79                              $tag_selections = get_option($prefix.'_tag_search_selections'); 
     80                          } 
     81 
     82                          // Tag selections 
     83                          // 
     84                          if (isset($fnvars['only_with_tag'])) { 
     85                              $tag_selections = ''; 
     86                          } 
     87 
     88                          // No pre-selected tags, use input box 
     89                          // 
     90                          if ($tag_selections == '') { 
     91                              print "<input type='". (isset($fnvars['only_with_tag']) ? 'hidden' : 'text') . "' ". 
     92                                      "id='tag_to_search_for' size='50' " . 
     93                                      "value='" . (isset($fnvars['only_with_tag']) ? $fnvars['only_with_tag'] : '') . "' ". 
     94                                      "/>"; 
     95 
     96                          // Pulldown for pre-selected list 
     97                          // 
     98                          } else { 
     99                              $tag_selections = explode(",", $tag_selections); 
     100                              add_action('slp_render_search_form_tag_list',array('SLPlus_UI','slp_render_search_form_tag_list'),10,2); 
     101                              do_action('slp_render_search_form_tag_list',$tag_selections,(get_option(SLPLUS_PREFIX.'_show_tag_any')==1)); 
     102                          } 
     103                      ?> 
     104                      </div> 
     105              <?php 
     106              } 
     107 
     108              // ---------------------------------------------- 
     109              // We are showing the name search 
     110              // 
     111              if (get_option(SLPLUS_PREFIX.'_show_search_by_name') == 1) { 
     112                  ?> 
     113                  <div id='name_search_div' class='search_item'> 
     114                      <label for='nameSearch'><?php echo $slplus_name_label?></label> 
     115                      <input type='text' id='nameSearch' size='50' /> 
     116                  </div> 
     117                  <?php 
     118              } 
     119          } 
     120          ?> 
     121 
     122          <?php 
     123          //------------------------------------------------ 
     124          // We are not hiding the address input 
     125          // 
     126          if (get_option(SLPLUS_PREFIX.'_hide_address_entry') == 0) {                 
     127          ?>            
     128          <div id='addy_in_address' class='search_item'> 
     129              <label for="addressInput"><?php echo $sl_search_label?></label> 
     130              <input type='text' id='addressInput' size='50' /> 
     131         </div> 
     132         <?php 
     133          } else { 
     134              ?> 
     135          <div id='addy_in_address' class='search_item'> 
     136          <input type='hidden' id='addressInput' value='' /> 
     137         </div> 
     138         <?php 
     139          } 
     140          ?> 
     141 
     142          <?php 
     143          //------------------------------------------------ 
     144          // We are not hiding the radius selection 
     145          // 
     146          if (get_option(SLPLUS_PREFIX.'_hide_radius_selections') == 0) {                 
     147          ?>            
     148              <div id='addy_in_radius'> 
     149                  <label for='radiusSelect'><?php _e($sl_radius_label, SLPLUS_PREFIX);?></label> 
     150                  <select id='radiusSelect'><?php echo $r_options;?></select> 
     151              </div> 
     152 
     153          <?php 
     154          } else { 
     155              echo $r_options; 
     156          } 
     157 
     158          //------------------------------------------------ 
     159          // We are not hiding the submit button 
     160          // 
     161          if (get_option(SLPLUS_PREFIX.'_disable_search') == 0) {                 
     162          ?>                
     163          <div id='radius_in_submit'> 
     164              <input <?php echo $button_style?> value='Search Locations' id='addressSubmit'/> 
     165          </div> 
     166          <?php 
     167          } 
     168          ?> 
     169 
     170 
     171      </div> 
     172    </td> 
     173  </tr> 
     174  </table> 
     175  </form> 
  • store-locator-le/trunk/core/templates/settings_mapform.php

    r575152 r602157  
    3838             //             
    3939            if (function_exists('execute_and_output_plustemplate')) { 
    40                  
    41                      //-------------------------------- 
    42                      // Pro Pack v2.4+ Only 
    43                      // 
    44                      global $slplus_plugin; 
    45                      if ($slplus_plugin->license->packages['Pro Pack']->active_version >= 2004000) {                     
    4640            ?>                 
    4741                        <div class='form_entry'> 
     
    6256                        </div> 
    6357            <?php 
    64                 } 
    65                  
    66                 //-------------------------------- 
    67                 // Pro Pack Any Version 
    68                 // 
    6958                execute_and_output_plustemplate('mapsettings_mapfeatures.php'); 
    7059            }     
     
    7766        <div class='map_designer_settings'> 
    7867            <h2><?php _e('Dimensions', SLPLUS_PREFIX);?></h2> 
    79              
    80             <div class='form_entry'> 
    81                 <label for='zoom_level'><?php _e("Zoom Level", SLPLUS_PREFIX);?>:</label> 
    82                 <?php echo $sl_zoom; ?> 
    83                 <?php 
    84                 echo slp_createhelpdiv('zoom_level', 
    85                     __('19=street level, 0=world view. This is the initial zoom level of the map '. 
    86                        ' if you do not check off "Immediately show locations.".  It is also the ' . 
    87                        ' zoom level that will be used if a single location is returned by the search.' .  
    88                        ' All searches will automatically zoom in to a level that shows all of the matches on the map.',  
    89                        SLPLUS_PREFIX) 
    90                     ); 
    91                 ?>                  
    92                  
    93             </div> 
    9468 
    95             <div class='form_entry'> 
    96                 <label for='zoom_tweak'><?php _e("Zoom  Adjustment", SLPLUS_PREFIX);?>:</label> 
    97                 <?php echo $sl_zoom_adj; ?> 
    98                 <?php 
    99                 echo slp_createhelpdiv('zoom_tweak', 
    100                     __('For the "auto-zoom" when results are shown the map will zoom to show all the returned locations, '. 
    101                         'this setting allows you to determine how tight to zoom in. The higher the number the further out the zoom gets.',  
    102                        SLPLUS_PREFIX) 
    103                     ); 
    104                 ?>                  
    105                  
    106             </div> 
     69            <?php 
     70                echo CreatePulldownDiv( 
     71                        'sl_zoom_level', 
     72                        array(0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19), 
     73                        $label=__('Zoom Level', SLPLUS_PREFIX), 
     74                        $msg=__('Initial zoom level of the map if "immediately show locations" is NOT selected or if only a single location is found.  0 = world view, 19 = house view.', SLPLUS_PREFIX), 
     75                        $prefix='', 
     76                        $default=4 
     77                        ); 
    10778 
     79                echo CreatePulldownDiv( 
     80                        'sl_zoom_tweak', 
     81                        array(0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19), 
     82                        $label=__('Zoom Adjustment', SLPLUS_PREFIX), 
     83                        $msg=__('Changes how tight auto-zoom bounds the locations shown.  Lower numbers are closer to the lcoations.', SLPLUS_PREFIX), 
     84                        $prefix='', 
     85                        $default=4 
     86                        ); 
     87            ?> 
    10888             
    10989            <div class='form_entry'> 
  • store-locator-le/trunk/core/templates/settings_searchform.php

    r575152 r602157  
    11<?php  
    2     global  $sl_city_checked, $sl_country_checked, $sl_show_tag_checked, $sl_show_any_checked, 
    3         $sl_radius_label, $sl_website_label,$sl_instruction_message,$slpMapSettings, 
    4         $sl_radii, $sl_the_distance_unit; 
    5 ?>        
    6 <div id='search_settings'> 
    7     <div class='section_column'>               
    8             <h2><?php _e('Features', SLPLUS_PREFIX);?></h2> 
    9              
    10             <div class='form_entry'> 
    11                 <label for='sl_use_city_search'> 
    12                     <?php _e('Show City Pulldown', SLPLUS_PREFIX); ?>: 
    13                 </label> 
    14                 <input name='sl_use_city_search'  
    15                     value='1'  
    16                     type='checkbox'  
    17                     <?php echo $sl_city_checked?>  
    18                     > 
    19             </div> 
    20          
    21         <div class='form_entry'> 
    22             <label for='radii'><?php _e('Radii Options', SLPLUS_PREFIX);?>:</label> 
    23             <input  name='radii' value='<?php echo $sl_radii;?>' size='25'> 
    24             <?php 
    25             echo slp_createhelpdiv('radii', 
    26                 __("Separate each number with a comma ','. Put parenthesis '( )' around the default.</span>", SLPLUS_PREFIX) 
    27                 ); 
    28             ?>               
    29         </div>   
     2global  $sl_city_checked, $sl_country_checked, $sl_show_tag_checked, $sl_show_any_checked, 
     3    $sl_radius_label, $sl_website_label,$sl_instruction_message,$slpMapSettings,$sl_the_distance_unit; 
     4 
     5echo "<div id='search_settings'>"; 
     6echo "<div class='section_column'>"; 
     7echo "<h2>".__('Features', SLPLUS_PREFIX)."</h2>"; 
     8echo CreateInputDiv( 
     9        'sl_map_radii', 
     10        __('Radii Options', SLPLUS_PREFIX), 
     11        __('Separate each number with a comma ",". Put parenthesis "( )" around the default.',SLPLUS_PREFIX), 
     12        '', 
     13        '10,25,50,100,(200),500' 
     14        ); 
     15?> 
    3016             
    3117        <div class='form_entry'> 
     
    4329            </select> 
    4430        </div>     
    45          
    46             
     31                    
    4732        <?php 
    48         if (function_exists('execute_and_output_plustemplate')) { 
    49             execute_and_output_plustemplate('mapsettings_searchfeatures.php'); 
     33 
     34        //---------------------------------------------------------------------- 
     35        // Pro Pack Enabled 
     36        // 
     37        global $slplus_plugin; 
     38        if ($slplus_plugin->license->packages['Pro Pack']->isenabled) { 
     39            echo CreateCheckboxDiv( 
     40                '_hide_radius_selections', 
     41                __('Hide radius selection',SLPLUS_PREFIX), 
     42                __('Hides the radius selection from the user, the default radius will be used.', SLPLUS_PREFIX) 
     43                ); 
     44 
     45            echo CreateCheckboxDiv( 
     46                '_show_search_by_name', 
     47                __('Show search by name box', SLPLUS_PREFIX), 
     48                __('Shows the name search entry box to the user.', SLPLUS_PREFIX) 
     49                ); 
     50 
     51            echo CreateCheckboxDiv( 
     52                '_hide_address_entry', 
     53                __('Hide address entry box',SLPLUS_PREFIX), 
     54                __('Hides the address entry box from the user.', SLPLUS_PREFIX) 
     55                ); 
     56 
     57            echo CreateCheckboxDiv( 
     58                '_use_location_sensor', 
     59                __('Use location sensor', SLPLUS_PREFIX), 
     60                __('This turns on the location sensor for your customers so they can easily get accurate results') 
     61            ); 
     62 
     63            echo CreateCheckboxDiv( 
     64                    'sl_use_city_search', 
     65                    __('Show City Pulldown',SLPLUS_PREFIX), 
     66                    __('Displays the city pulldown on the search form. It is built from the unique city names in your location list.',SLPLUS_PREFIX), 
     67                    '' 
     68                    ); 
     69 
     70            echo CreateCheckboxDiv( 
     71                'sl_use_country_search', 
     72                __('Show Country Pulldown',SLPLUS_PREFIX), 
     73                __('Displays the country pulldown on the search form. It is built from the unique country names in your location list.',SLPLUS_PREFIX), 
     74                '' 
     75                ); 
     76 
     77            echo CreateCheckboxDiv( 
     78                'slplus_show_state_pd', 
     79                __('Show State Pulldown',SLPLUS_PREFIX), 
     80                __('Displays the state pulldown on the search form. It is built from the unique state names in your location list.',SLPLUS_PREFIX), 
     81                '' 
     82                ); 
     83 
     84 
     85            echo CreateCheckboxDiv( 
     86                '_disable_search', 
     87                __('Hide Find Locations button',SLPLUS_PREFIX), 
     88                __('Remove the "Find Locations" button from the search form.', SLPLUS_PREFIX) 
     89                ); 
     90 
     91        //----- 
     92        // No Pro Pack 
     93        // 
    5094        } else { 
    51             print "<div class='form_entry' style='text-align:right;padding-top:136px;'>Want more?<br/> <a href='http://www.cybersprocket.com/'>Check out our other WordPress offerings.</a></div>"; 
    52         }                     
     95            print "<div class='form_entry' style='text-align:right;padding-top:136px;'>Want more?<br/> <a href='http://www.charlestonsw.com/'>Check out our other WordPress offerings.</a></div>"; 
     96        } 
     97 
     98 
     99        do_action('slp_add_search_form_features_setting'); 
     100 
    53101        ?>         
    54102    </div> 
    55      
    56      
     103 
     104    <!-- Tags Section --> 
     105<?php 
     106    global $slplus_plugin; 
     107    $slplus_message = ($slplus_plugin->license->packages['Pro Pack']->isenabled) ? 
     108        __('Thank you for purchasing the <a href="%s">%s</a> premium add-on.',SLPLUS_PREFIX) : 
     109        __('Tag features are available in the <a href="%s">%s</a> premium add-on.',SLPLUS_PREFIX) 
     110?> 
     111    <div class='section_column'> 
     112        <h2><?php _e("Tags", SLPLUS_PREFIX); ?></h2> 
     113        <div class="section_column_content"> 
     114            <p><?php printf($slplus_message,$slplus_plugin->purchase_url,'Pro Pack'); ?></p> 
     115 
     116<?php 
     117        //---------------------------------------------------------------------- 
     118        // Pro Pack Enabled 
     119        // 
     120        if ($slplus_plugin->license->packages['Pro Pack']->isenabled) { 
     121            echo CreateCheckboxDiv( 
     122                '_show_tag_search', 
     123                __('Tag Input',SLPLUS_PREFIX), 
     124                __('Show the tag entry box on the search form.', SLPLUS_PREFIX) 
     125                ); 
     126 
     127 
     128            echo CreateInputDiv( 
     129                    '_tag_search_selections', 
     130                    __('Preselected Tag Searches', SLPLUS_PREFIX), 
     131                    __("Enter a comma (,) separated list of tags to show in the search pulldown, mark the default selection with parenthesis '( )'. This is a default setting that can be overriden on each page within the shortcode.",SLPLUS_PREFIX) 
     132                    ); 
     133             
     134            echo CreateCheckboxDiv( 
     135                '_show_tag_any', 
     136                __('Add "any" to tags pulldown',SLPLUS_PREFIX), 
     137                __('Add an "any" selection on the tag pulldown list thus allowing the user to show all locations in the area, not just those matching a selected tag.', SLPLUS_PREFIX) 
     138                ); 
     139        } 
     140 
     141        do_action('slp_add_search_form_tag_setting'); 
     142?> 
     143        </div> 
     144    </div> 
     145 
     146    <!-- Labels Section --> 
    57147    <div class='section_column'>                      
    58148        <h2><?php _e("Labels", SLPLUS_PREFIX); ?></h2> 
    59          
    60         <div class='form_entry'> 
    61             <label for='search_label'><?php _e("Address Input", SLPLUS_PREFIX); ?>:</label> 
    62             <input name='search_label' value='<?php echo get_option('sl_search_label'); ?>'> 
    63             <?php 
    64             echo slp_createhelpdiv('search_label', 
    65                 __("Label for search form address entry.", SLPLUS_PREFIX) 
    66                 ); 
    67             ?>              
    68         </div> 
    69          
    70         <div class='form_entry'> 
    71             <label for='sl_name_label'><?php _e("Name Input", SLPLUS_PREFIX); ?>:</label> 
    72             <input name='sl_name_label' value='<?php echo get_option('sl_name_label'); ?>'> 
    73             <?php 
    74                 echo slp_createhelpdiv('sl_name_label', 
    75                 __("Label for name search form address entry.", SLPLUS_PREFIX) 
    76                 ); 
    77             ?> 
    78         </div> 
    79          
    80         <?php 
    81         if (function_exists('execute_and_output_plustemplate')) { 
    82             execute_and_output_plustemplate('mapsettings_labels.php'); 
    83         }                 
    84         ?>                      
    85  
    86         <div class='form_entry'> 
    87             <label for='sl_radius_label'><?php _e("Radius Dropdown", SLPLUS_PREFIX); ?>:</label> 
    88             <input name='sl_radius_label' value='<?php echo $sl_radius_label; ?>'> 
    89             <?php 
    90             echo slp_createhelpdiv('sl_radius_label', 
    91                 __("Label for search form radius pulldown.", SLPLUS_PREFIX) 
    92                 ); 
    93             ?>               
    94         </div>                 
    95  
    96         <div class='form_entry'> 
    97             <label for='sl_website_label'><?php _e("Website URL", SLPLUS_PREFIX);?>:</label> 
    98             <input name='sl_website_label' value='<?php echo $sl_website_label; ?>'> 
    99             <?php 
    100             echo slp_createhelpdiv('sl_website_label', 
    101                 __("Label for website URL in search results.", SLPLUS_PREFIX) 
    102                 ); 
    103             ?>               
    104         </div>             
    105  
    106         <div class='form_entry'> 
    107             <label for='sl_instruction_message'><?php _e("Instruction Message", SLPLUS_PREFIX); ?>:</label> 
    108             <input name='sl_instruction_message' value='<?php echo $sl_instruction_message; ?>' size='50'> 
    109             <?php 
    110             echo slp_createhelpdiv('sl_instruction_message', 
    111                 __("Instruction text when map is first displayed.", SLPLUS_PREFIX) 
    112                 ); 
    113             ?>             
    114         </div>                           
    115     </div> 
    116 </div> 
     149 
     150<?php 
     151 
     152// Search Form Labels 
     153// 
     154echo '<p class="slp_admin_info"><strong>'.__('Search Form Labels',SLPLUS_PREFIX).'</strong></p>'; 
     155echo CreateInputDiv( 
     156        'sl_search_label', 
     157        __('Address', SLPLUS_PREFIX), 
     158        __('Search form address label.',SLPLUS_PREFIX), 
     159        '', 
     160        'Address / Zip' 
     161        ); 
     162echo CreateInputDiv( 
     163        'sl_name_label', 
     164        __('Name', SLPLUS_PREFIX), 
     165        __('Search form name label.',SLPLUS_PREFIX), 
     166        '', 
     167        'Name' 
     168        ); 
     169echo CreateInputDiv( 
     170        'sl_radius_label', 
     171        __('Radius', SLPLUS_PREFIX), 
     172        __('Search form radius label.',SLPLUS_PREFIX), 
     173        '', 
     174        'Within' 
     175        ); 
     176 
     177//---------------------------------------------------------------------- 
     178// Pro Pack Enabled 
     179// 
     180if ($slplus_plugin->license->packages['Pro Pack']->isenabled) { 
     181    echo CreateInputDiv( 
     182            '_search_tag_label', 
     183            __('Tags', SLPLUS_PREFIX), 
     184            __('Search form label to prefix the tag selector.',SLPLUS_PREFIX) 
     185            ); 
     186    echo CreateInputDiv( 
     187            '_state_pd_label', 
     188            __('State', SLPLUS_PREFIX), 
     189            __('Search form label to prefix the state selector.',SLPLUS_PREFIX) 
     190            ); 
     191}     
     192 
     193 
     194// Result Labels 
     195// 
     196echo '<p class="slp_admin_info"><strong>'.__('Search Results Labels',SLPLUS_PREFIX).'</strong></p>'; 
     197echo CreateInputDiv( 
     198        'sl_website_label', 
     199        __('Radius', SLPLUS_PREFIX), 
     200        __('Search results text for the website link.',SLPLUS_PREFIX), 
     201        '', 
     202        'website' 
     203        ); 
     204echo CreateInputDiv( 
     205        'sl_instruction_message', 
     206        __('Instructions', SLPLUS_PREFIX), 
     207        __('Search results instructions shown if immediately show locations is not selected.',SLPLUS_PREFIX), 
     208        '', 
     209        __('Enter an address or zip code and click the find locations button.',SLPLUS_PREFIX) 
     210        ); 
     211echo "</div></div>"; 
  • store-locator-le/trunk/css/admin.css

    r598470 r602157  
    7474    background: url("../core/images/General_icons16.png")  
    7575        no-repeat scroll  
    76         -17px 0px  
     76        -15px 0px 
    7777        transparent;  
    7878    height:20px; 
     
    8686    display: none; 
    8787    clear: both;     
     88} 
     89a.moreinfo_clicker { 
     90    text-decoration: none; 
    8891} 
    8992 
     
    338341    clear:both; 
    339342} 
     343div.section_column .form_entry { 
     344    min-width: 464px; 
     345} 
    340346 
    341347.section_description H3 { 
     
    563569 
    564570 
     571div.section_column_content { 
     572    padding: 0px 6px; 
     573} 
     574 
     575p.slp_admin_info { 
     576    clear: both; 
     577} 
     578 
    565579#poststuff #rb_details h2, #poststuff .section_column h2 { 
    566580    margin-bottom: 3px;   
  • store-locator-le/trunk/css/csl-slplus-boxed-fastfood.css

    r531848 r602157  
    346346/* Results Scrollbar */ 
    347347 
     348span.slp_checkbox_entry { 
     349    padding-right: 12px; 
     350} 
     351 
     352span.slp_checkbox_entry input[type="checkbox"] { 
     353    vertical-align: text-bottom; 
     354} 
  • store-locator-le/trunk/css/csl-slplus-boxed.css

    r531848 r602157  
    338338/* Results Scrollbar */ 
    339339 
     340span.slp_checkbox_entry { 
     341    padding-right: 12px; 
     342} 
     343 
     344span.slp_checkbox_entry input[type="checkbox"] { 
     345    vertical-align: text-bottom; 
     346} 
  • store-locator-le/trunk/css/csl-slplus-cleansimplewhite.css

    r598470 r602157  
    5656} 
    5757 
     58span.slp_checkbox_entry { 
     59    padding-right: 12px; 
     60} 
     61 
     62span.slp_checkbox_entry input[type="checkbox"] { 
     63    vertical-align: text-bottom; 
     64} 
  • store-locator-le/trunk/css/csl-slplus-dark.css

    r531848 r602157  
    297297/* Results Scrollbar */ 
    298298 
     299span.slp_checkbox_entry { 
     300    padding-right: 12px; 
     301} 
     302 
     303span.slp_checkbox_entry input[type="checkbox"] { 
     304    vertical-align: text-bottom; 
     305} 
  • store-locator-le/trunk/css/csl-slplus-nomap.css

    r531848 r602157  
    280280    text-align:right; 
    281281} 
     282span.slp_checkbox_entry { 
     283    padding-right: 12px; 
     284} 
     285 
     286span.slp_checkbox_entry input[type="checkbox"] { 
     287    vertical-align: text-bottom; 
     288} 
  • store-locator-le/trunk/css/csl-slplus-noresultstable.css

    r531848 r602157  
    270270}  
    271271 
     272span.slp_checkbox_entry { 
     273    padding-right: 12px; 
     274} 
     275 
     276span.slp_checkbox_entry input[type="checkbox"] { 
     277    vertical-align: text-bottom; 
     278} 
  • store-locator-le/trunk/css/csl-slplus.css

    r544991 r602157  
    277277    text-align:right; 
    278278} 
     279span.slp_checkbox_entry { 
     280    padding-right: 12px; 
     281} 
     282 
     283span.slp_checkbox_entry input[type="checkbox"] { 
     284    vertical-align: text-bottom; 
     285} 
  • store-locator-le/trunk/css/default.css

    r544991 r602157  
    277277    text-align:right; 
    278278} 
     279span.slp_checkbox_entry { 
     280    padding-right: 12px; 
     281} 
     282 
     283span.slp_checkbox_entry input[type="checkbox"] { 
     284    vertical-align: text-bottom; 
     285} 
  • store-locator-le/trunk/include/storelocatorplus-actions_class.php

    r598470 r602157  
    275275                getimagesize($slplus_end_icon_file)  : 
    276276                array(0 => 20, 1 => 34); 
     277 
     278            // Results Output String In JavaScript Format 
     279            // 
     280            $results_string = '<center>' . 
     281                    '<table width="96%" cellpadding="4px" cellspacing="0" class="searchResultsTable">'  . 
     282                        '<tr class="slp_results_row">'  . 
     283                            '<td class="results_row_left_column"><span class="location_name">{0}</span><br>{1} {2}</td>'  . 
     284                            '<td class="results_row_center_column">{3}{4}{5}{6}{7}</td>'  . 
     285                            '<td class="results_row_right_column">{8}{9}'  . 
     286                                '<a href="http://{10}' . 
     287                                '/maps?saddr={11}'  . 
     288                                '&daddr={12}'  . 
     289                                '" target="_blank" class="storelocatorlink">Directions</a>{13}</td>'  . 
     290                            '</tr>'  . 
     291                        '</table>'  . 
     292                        '</center>'; 
     293 
    277294            // Lets get some variables into our script 
    278295            // 
     
    292309                'map_end_sizew'     => $slplus_end_size[0], 
    293310                'map_end_sizeh'     => $slplus_end_size[1], 
    294                 'use_sensor'            => (get_option(SLPLUS_PREFIX."_use_location_sensor")==1), 
     311                'use_sensor'        => (get_option(SLPLUS_PREFIX."_use_location_sensor")==1), 
    295312                'map_scalectrl'     => (get_option(SLPLUS_PREFIX.'_disable_scalecontrol')==0), 
    296313                'map_type'          => get_option('sl_map_type','roadmap'), 
    297314                'map_typectrl'      => (get_option(SLPLUS_PREFIX.'_disable_maptypecontrol')==0), 
     315                'results_string'    => apply_filters('slp_javascript_results_string',$results_string), 
    298316                'show_tags'         => (get_option(SLPLUS_PREFIX.'_show_tags')==1), 
    299317                'overview_ctrl'     => get_option('sl_map_overview_control',0), 
  • store-locator-le/trunk/include/storelocatorplus-adminui_class.php

    r587040 r602157  
    134134             return $content;              
    135135         } 
     136 
     137         /** 
     138          * method: slp_add_search_form_settings_panel 
     139          * 
     140          * Add the search form panel to the map settings page on the admin UI. 
     141          */ 
     142         function slp_add_search_form_settings_panel() { 
     143            global $slpMapSettings; 
     144            $slpDescription = get_string_from_phpexec(SLPLUS_COREDIR.'/templates/settings_searchform.php'); 
     145            $slpMapSettings->add_section( 
     146                array( 
     147                        'name'          => __('Search Form',SLPLUS_PREFIX), 
     148                        'description'   => $slpDescription, 
     149                        'auto'          => true 
     150                    ) 
     151             ); 
     152         } 
     153 
     154         /** 
     155          * method: slp_add_map_settings_panel 
     156          * 
     157          * Add the map panel to the map settings page on the admin UI. 
     158          */ 
     159         function slp_add_map_settings_panel() { 
     160            global $slpMapSettings; 
     161            $slpDescription = get_string_from_phpexec(SLPLUS_COREDIR.'/templates/settings_mapform.php'); 
     162            $slpMapSettings->add_section( 
     163                array( 
     164                        'name'          => __('Map',SLPLUS_PREFIX), 
     165                        'description'   => $slpDescription, 
     166                        'auto'          => true 
     167                    ) 
     168             ); 
     169 
     170         } 
     171 
     172 
     173 
     174 
    136175    } 
    137176}         
  • store-locator-le/trunk/plus.php

    r598470 r602157  
    4646 **/ 
    4747function execute_and_output_plustemplate($file) { 
    48     $file = SLPLUS_PLUGINDIR.'/plustemplates/'.$file; 
     48    $file = SLPLUS_COREDIR.'templates/'.$file; 
    4949    print get_string_from_phpexec($file); 
    5050} 
  • store-locator-le/trunk/readme.txt

    r598470 r602157  
    22Plugin Name: Google Maps via Store Locator Plus 
    33Contributors: charlestonsw 
    4 Donate link: http://www.charlestonsw.com/products/store-locator-plus/ 
     4Donate link: http://www.charlestonsw.com/product/store-locator-plus-2/ 
    55Tags: google maps, store finder, store locator, store locater, google, dealer locator, dealer locater, zip code search, shop locator, shop finder, zipcode, location finder, places, stores, maps, mapping, mapper, plugin, posts, post, page, coordinates, latitude, longitude, geo, geocoding, shops, ecommerce, e-commerce, business locations, store locator plus, store locater plus, bing map, bing, yahoo maps, yahoo, mapping, retail 
    66Requires at least: 3.3 
    77Tested up to: 3.4.2 
    8 Stable tag: 3.2 
     8Stable tag: 3.3 
    99 
    1010Store Locator Plus works with Google Maps v3 to put a store location search on your site. 
    11 The most active store locator plugin. 
     11The most active store locator plugin with monthly patches and updates! 
    1212 
    1313== Description == 
     
    2222 
    2323* You can use it for a variety of countries, as supported by Google Maps. 
    24 * The Store Pages add-on allows you to connect each of your locations with a Wordpress page -- so you can add hours, images and more! 
    2524* Supports international languages and character sets. 
    2625* Allows you to use unique map icons or your own custom map icons. 
     
    3130* You can use miles or kilometers 
    3231* Pulldown list of cities and/or countries on search form can be toggled on/off. 
    33 * Bulk upload your locations via the CSV loader. 
    3432* Location search tracking and reporting, find out what your visitors are looking for. 
    3533* Popup email form. 
    36 * Use your own themes and icons to customize how your map looks 
    3734 
    3835= Rate Us = 
     
    4138Give us a chance to <a href="http://www.charlestonsw.com/contact-us/">address your concerns</a> if we didn't earn 5 stars. 
    4239 
     40= Premium Add-Ons = 
     41 
     42We now offer premium add-on packages for our basic Store Locator Plus plugin. 
     43 
     44* [Pro Pack](http://www.charlestonsw.com/product/store-locator-plus) : More control over the map, search form, loading locations. 
     45* [Store Pages](http://www.charlestonsw.com/product/store-locator-plus-store-pages) : Create SEO friendly WordPress pages for your store locations. 
     46* [Enhanced Search](http://www.charlestonsw.com/product/store-locator-plus-enhanced-search) : Get even more control over the basic search form and even more when the Pro Pack is installed. 
     47 
     48If you are a plugin developer you will be interested in our new "Roll Your Own" program where you can create SLP based premium (or free) add-ons of your own.   Create something great and list it on our site! 
     49 
    4350= Special Requests = 
    4451 
    4552We do accept feature requests for all of our plugins, free ones included. The most requested features will make it into the next version. 
    4653 
    47 <strong>If you need a special feature NOW, <a href="http://www.charlestonsw.com/contact-us/">contact us</a>!</strong> We offer expedited feature development. Our custom development rates start at $500/day. 
     54If you need something NOW, or are looking for something beyond a basic "tweak" of the plugin, please check out our 
     55[Customization Service](http://www.charlestonsw.com/product/customization/).  Rates start at $500/day. 
    4856 
    49 = Looking For Customized WordPress Plugins? = 
     57= Upgrades and Patches = 
    5058 
    51 If you are looking for custom WordPress development for your own plugins, give 
    52 us a call.   Not only can we offer competitive rates but we can also leverage 
    53 our existing framework for WordPress applications which reduces development time 
    54 and costs. 
    55  
    56 Learn more at: http://www.charlestonsw.com/ 
    57  
    58 = Premium Add-Ons Available = 
    59  
    60 We current offer a Pro Pack and a Store Pages premium add-on.  More add-ons are one the way. You can learn more about the add-ons at these web pages: 
    61  
    62 * [Pro Pack](http://www.charlestonsw.com/product/store-locator-plus/) 
    63 * [Store Pages](http://www.charlestonsw.com/product/store-locator-plus-store-pages/) 
    64  
    65 Learn More about these features at the [Store Locator Plus website](http://www.charlestonsw.com/product/store-locator-plus/) 
    66  
    67 = Upgrades = 
    68  
    69 We will offer upgrade versions from time-to-time when special new features are added to the product. 
    70 If you do not purchase the upgrade you will still receive bug fixes and minor feature additions, however 
    71 some of the newest features may not be available to you. 
     59We try to release at least one upgrade/patch every month. 
    7260 
    7361The main product will always remain fully functional and free.  If you'd like to have some of the latest 
    74 "bells & whistles" purchasing the upgrades is a great way to help support us and encourage us to add even 
     62"bells & whistles" purchasing one of our premium add-ons is a great way to help support us and encourage us to add even 
    7563more items the next time around. 
    76  
    77 = Related Links = 
    78  
    79 * [Store Locator Plus](http://www.charlestonsw.com/product/store-locator-plus/) 
    80 * [Other CSA Plugins](http://profiles.wordpress.org/charlestonsw/) 
    8164 
    8265= Our Philosophy = 
     
    8972 
    9073While our plugins may not be the prettiest on the block, we do try to make sure that all the hidden stuff you don't see is designed as well as it can be. To sum it all up, we like to write plugins that last. We hope you appreciate our work. 
    91  
    92 = New! Store Pages = 
    93  
    94 You can have a WordPress page for each store location on your map turning your location data into SEO friendly content.  Store Pages are a special page type that is fully integrated with WordPress,  but you manage them through Store Locator Plus.  Store Pages also have their own taxonomy (category system) so you can manage Store Page categories without affecting the rest of your site. 
    95  
    96 [more information](http://www.charlestonsw.com/product/store-locator-plus-store-pages/) 
    9774 
    9875== Installation == 
     
    132109== Frequently Asked Questions == 
    133110 
    134 = What happened to Cyber Sprocket? = 
     111= What is included in the plugin? = 
    135112 
    136 Cyber Sprocket Labs was primarily a software consulting firm that did WordPress plugins as a part-time endeavor.   They have closed the business as of September 2012. 
     113The plugin includes all the functions and features necessary to add multiple locations to a store finder tool on your website. 
     114List 1 location or 1,000, customize the search interface and results form, and more. 
     115All basic functionality needed for a fully functional plugin is included. 
     116Basic upgrades are free and available directly from the WordPress plugin repository. 
     117 
     118= What are the premium add-ons? = 
     119 
     120In response to feature requests from our customers, we had created a series of premium add-on packages for Store Locator Plus. 
     121These features extend the functionality of the plugin beyond the basic service and features and can be purchased ala-carte. 
     122This gives those customers who want more out of the plugin the extra features they desire while keeping the main plugin as 
     123efficient as possible for everyone else.   It also provides a great way to support future development while getting a 
     124"little something extra" when contributing to our efforts. 
     125 
     126Currently we offer the following premium add-on packages: 
     127 
     128* [Pro Pack](http://www.charlestonsw.com/product/store-locator-plus) : More control over the map, search form, loading locations. 
     129* [Store Pages](http://www.charlestonsw.com/product/store-locator-plus-store-pages) : Create SEO friendly WordPress pages for your store locations. 
     130* [Enhanced Search](http://www.charlestonsw.com/product/store-locator-plus-enhanced-search) : Get even more control over the basic search form and even more when the Pro Pack is installed. 
    137131 
    138132= Who is Charleston Software Associates? = 
    139133 
    140 We have taken over the support, maintenance and updates of Cyber Sprocket's WordPress plugins.  We ONLY do mobile apps and WordPress plugins. 
     134Currently it is one guy hacking code in a home office.   I ONLY do mobile apps and WordPress plugins for a living. 
    141135 
    142 = How does this impact my CSL license? = 
    143  
    144 We will continue to honor all the CSL licenses.  However there may be some bumps in the road as we transition away from a licensing-centric to a pure-play add-on system over the coming months.   
     136= Have a license issue? = 
    145137 
    146138If you have any problems with your license or validating a product please contact us via our web form at http://www.charlestonsw.com/ and we will resolve your licensing issues. 
     
    167159All major browsers should work, however CSA only officially supports the current and the most recent prior release of Internet Explorer, Firefox, Chrome, and Safari. 
    168160 
    169 As of June, 2011 this includes: 
     161As of September, 2012 this includes: 
    170162 
    171 * Internet Explorer (IE) 8/9 
    172 * Firefox 4/5 
    173 * Chrome 11/12 
    174 * Safari 4/5 
    175  
    176 = What is the Pro Pack? = 
    177  
    178 The Pro Pack is a paid add-on for the main Store Locator Plus product. 
    179 When you purchase the Pro Pack the system will automatically install a variety of new features in the base product. 
    180 The features that are added by the Pro Pack change on a regular basis. 
    181 Please see the [Store Locator Plus website](http://www.charlestonsw.com/product/store-locator-plus/) for the latest feature list. 
    182  
    183 Some of the features in the Pro Pack include: 
    184  
    185 * Ability to search by location name 
    186 * A searched-locations report. 
    187 * Ability to input addresses in bulk via a CSV upload. 
    188 * Ability to associate tags with locations and filter search results by those tags. 
    189 * Additional search form elements. 
    190 * The CSS Themes system. 
    191  
    192 = What are Store Pages? = 
    193  
    194 Store Pages are a new WordPress page type that are created from the location data you have entered in your Store Locator Plus locations database. 
    195 Store Pages have their own categories and can be managed separately from the main WordPress site pages. 
    196 Store Pages content is fully accessible from your standard WordPress search and menu interface, providing a great way to get SEO value from your location data. 
    197  
    198 Store Pages is a paid add-on for the free Store Locator Plus product. When you purchase the Store Pages add-on new features will be added to the base product. 
    199  
    200 Please see the [Store Locator Plus website](http://www.charlestonsw.com/product/store-locator-plus/) for the latest feature list. 
     163* Internet Explorer (IE) 9 
     164* Firefox 15 
     165* Chrome 21 
     166* Safari 5 
    201167 
    202168== Screenshots == 
     
    220186Visit the [Store Locator Plus Release Notes](http://www.charlestonsw.com/support/documentation/store-locator-plus/release-notes/) at our website. 
    221187 
    222 = Latest Release: 3.2 (September 5th, 2012) = 
     188= Latest Release: 3.3 (September 21st, 2012) = 
    223189 
    224 * Geocoding process updates. 
    225 * Add a force load JavaScript for sites with less friendly themes (not processing shutdown or footer scripts) 
    226 * Revised JavaScript load order is more aggressive. 
    227 * Fix path name to language files, was causing some installs to break on security warning. 
    228 * Theme system tweaking. 
    229 * Transition from Cyber Sprocket to CSA. 
     190* Patch for Store Pages add-on not replacing web links properly 
     191* [Action Hooks for Customized and Third Party add-ons](http://www.charlestonsw.com/support/documentation/technical-documentation/store-locator-plus/add-on-packs-roll-your-own/) 
     192* Move screen shots to assets to lessen size  of zip install 
     193* Remove obsolete JavaScript files 
    230194 
    231195 
    232  
  • store-locator-le/trunk/store-locator-le.php

    r598470 r602157  
    44Plugin URI: http://www.charlestonsw.com/products/store-locator-plus/ 
    55Description: Manage multiple locations with ease. Map stores or other points of interest with ease via Gooogle Maps.  This is a highly customizable, easily expandable, enterprise-class location management system. 
    6 Version: 3.2 
     6Version: 3.3 
    77Author: Charleston Software Associates 
    88Author URI: http://www.charlestonsw.com 
     
    8383require_once(SLPLUS_PLUGINDIR . '/include/storelocatorplus-actions_class.php'); 
    8484require_once(SLPLUS_PLUGINDIR . '/include/storelocatorplus-activation_class.php'); 
     85require_once(SLPLUS_PLUGINDIR . '/include/storelocatorplus-ui_class.php'); 
    8586 
    8687require_once(SLPLUS_PLUGINDIR . '/include/mobile-listener.php'); 
Note: See TracChangeset for help on using the changeset viewer.