function wppa_kickoff() { global $wppa; global $wppa_lang; global $wppa_api_version; global $wppa_init_js_data; global $wppa_dynamic_css_data; // init.css failed? if ($wppa_dynamic_css_data) { echo $wppa_dynamic_css_data; } // init.js failed? if ($wppa_init_js_data) { echo $wppa_init_js_data; } // Patch for chrome? if (isset($_SERVER["HTTP_USER_AGENT"]) && isset($_SERVER["HTTP_USER_AGENT"])) { echo ' <!-- WPPA+ Kickoff --> <!-- Browser detected = ' . wppa_decode_uri_component(strip_tags($_SERVER["HTTP_USER_AGENT"])) . ' -->'; if (strstr($_SERVER["HTTP_USER_AGENT"], 'Chrome') && wppa_switch('wppa_ovl_chrome_at_top')) { echo ' <style type="text/css"> #wppa-overlay-ic { padding-top: 5px !important; } #wppa-overlay-qt-txt, #wppa-overlay-qt-img { top: 5px !important; } </style>'; } } // Inline styles? if (wppa_switch('wppa_inline_css')) { echo ' <!-- WPPA+ Custom styles --> <style type="text/css" > ' . wppa_opt('wppa_custom_style') . ' </style>'; } // Pinterest js if ((wppa_switch('wppa_share_on') || wppa_switch('wppa_share_on_widget')) && wppa_switch('wppa_share_pinterest')) { echo ' <!-- Pinterest share --> <script type="text/javascript" src="//assets.pinterest.com/js/pinit.js"></script>'; } if (isset($wppa['debug']) && $wppa['debug']) { error_reporting($wppa['debug']); add_action('wp_footer', 'wppa_phpinfo'); add_action('wp_footer', 'wppa_errorlog'); echo ' <script type="text/javascript" > wppaDebug = true; </script>'; } $wppa['rendering_enabled'] = true; echo ' <!-- Rendering enabled --> <!-- /WPPA Kickoff --> '; }
function wppa_get_album_id_by_name($xname, $report_dups = false) { global $wpdb; global $allalbums; if (wppa_is_int($xname)) { return $xname; // Already numeric } if (wppa_is_enum($xname)) { return $xname; // Is enumeration } $name = wppa_decode_uri_component($xname); $name = str_replace('\'', '%', $name); // A trick for single quotes $name = str_replace('"', '%', $name); // A trick for double quotes $name = stripslashes($name); $albs = $wpdb->get_results("SELECT `id` FROM `" . WPPA_ALBUMS . "` WHERE `name` LIKE '%" . $name . "%'", ARRAY_A); if ($albs) { if (count($albs == 1)) { wppa_dbg_msg('Alb ' . $albs[0]['id'], ' found for ' . $xname); $aid = $albs[0]['id']; } else { wppa_dbg_msg('Dups found for ' . $xname); if ($report_dups) { $aid = false; } else { $aid = $albs[0]['id']; } } } else { $aid = false; } if ($aid) { wppa_dbg_msg('Aid ' . $aid . ' found for ' . $name); } else { wppa_dbg_msg('No aid found for ' . $name); } return $aid; }
function wppa_test_for_search() { global $wppa; if (isset($_REQUEST['wppa-searchstring'])) { // wppa+ search $str = $_REQUEST['wppa-searchstring']; } elseif (isset($_REQUEST['searchstring'])) { // wppa+ search $str = $_REQUEST['searchstring']; } elseif (isset($_REQUEST['s'])) { // wp search $str = $_REQUEST['s']; } else { // Not search $str = ''; } // Sanitize $ignore = array('"', "'", '\\', '>', '<', ':', ';', '!', '?', '=', '_', '[', ']', '(', ')', '{', '}'); $str = wppa_decode_uri_component($str); $str = str_replace($ignore, ' ', $str); $str = strip_tags($str); $str = stripslashes($str); $str = trim($str); $inter = chr(226) . chr(136) . chr(169); $union = chr(226) . chr(136) . chr(170); $str = str_replace($inter, ' ', $str); $str = str_replace($union, ',', $str); while (strpos($str, ' ') !== false) { $str = str_replace(' ', ' ', $str); } // reduce spaces while (strpos($str, ',,') !== false) { $str = str_replace(',,', ',', $str); } // reduce commas while (strpos($str, ', ') !== false) { $str = str_replace(', ', ',', $str); } // trim commas while (strpos($str, ' ,') !== false) { $str = str_replace(' ,', ',', $str); } // trim commas // Did we do wppa_initialize_runtime() ? if (is_array($wppa)) { $wppa['searchstring'] = $str; if ($wppa['searchstring'] && $wppa['occur'] == '1' && !$wppa['in_widget']) { $wppa['src'] = true; } else { $wppa['src'] = false; } $result = $str; } else { $result = $str; } if ($wppa['src']) { switch (wppa_opt('wppa_search_display_type')) { case 'slide': $wppa['is_slide'] = '1'; break; case 'slideonly': $wppa['is_slide'] = '1'; $wppa['is_slideonly'] = '1'; break; default: break; } } return $result; }
function wppa_get_album_id_by_name($xname, $report_dups = false) { global $wpdb; global $allalbums; if (wppa_is_int($xname)) { return $xname; // Already numeric } if (wppa_is_enum($xname)) { return $xname; // Is enumeration } $name = wppa_decode_uri_component($xname); $name = str_replace('\'', '%', $name); // A trick for single quotes $name = str_replace('"', '%', $name); // A trick for double quotes $name = stripslashes($name); $query = "SELECT * FROM `" . WPPA_ALBUMS . "` WHERE `name` LIKE '%" . $name . "%'"; $albs = $wpdb->get_results($query, ARRAY_A); if ($albs) { if (count($albs) == 1) { wppa_dbg_msg('Alb ' . $albs[0]['id'], ' found for ' . $xname); $aid = $albs[0]['id']; } else { wppa_dbg_msg('Dups found for ' . $xname); if ($report_dups == 'report_dups') { $aid = false; } elseif ($report_dups == 'return_dups') { $aid = ''; foreach ($albs as $alb) { $aid .= $alb['id'] . '.'; } $aid = rtrim($aid, '.'); } else { // Find the best match foreach ($albs as $alb) { $aname = __($alb['name']); // Possibly qTranslate translated $aname = str_replace('\'', '%', $aname); // A trick for single quotes $aname = str_replace('"', '%', $aname); // A trick for double quotes $aname = stripslashes($aname); wppa_dbg_msg('Testing ' . $aname . ' for ' . $name . ' (get_album_id_by_name)'); if (strcasecmp($aname, $name) == 0) { $aid = $alb['id']; } } // No perfect match, take the first 'like' option if (!$aid) { $aid = $albs[0]['id']; } } } } else { $aid = false; } if ($aid) { wppa_dbg_msg('Aid ' . $aid . ' found for ' . $name); } else { wppa_dbg_msg('No aid found for ' . $name); } return $aid; }