/** * @usage Special Sort-code: Share in Linkedin to Download * @param $params * @return mixed|string */ function wpdm_lishare_2download($params) { $package = wpdm_get_package($params['download']); if (isset($params['title'])) { $package['linkedin_heading'] = $params['title']; } if (isset($params['msg'])) { $package['linkedin_intro'] = $params['msg']; } $scolor = isset($params['scolor']) ? $params['scolor'] : 'default'; $html = \WPDM\PackageLocks::LinkedInShare($package); $class = isset($params['style']) ? $params['style'] : ""; //wpdm-email2dl drop-shadow lifted $html = str_replace("panel-default", $class . " panel-" . $scolor, $html); //$html = "<div class='wpdm-email2dl drop-shadow lifted'><div class='wcon'><strong>$params[title]</strong><br/>{$params[msg]}<br clear='all' /><center>$html</center></div></div>"; return $html; }
/** * @usage Generate download link of a package * @param $package * @param int $embed * @param array $extras * @return string */ public static function downloadLink($ID, $embed = 0, $extras = array()) { global $wpdb, $current_user, $wpdm_download_icon, $wpdm_download_lock_icon, $btnclass; if (is_array($extras)) { extract($extras); } $data = ''; $package = self::Get($ID); $package['link_url'] = home_url('/?download=1&'); $package['link_label'] = !isset($package['link_label']) || $package['link_label'] == '' ? __("Download", "wpdmpro") : $package['link_label']; //Change link label using a button image $package['link_label'] = apply_filters('wpdm_button_image', $package['link_label'], $package); $package['download_url'] = wpdm_download_url($package); if (\WPDM\Package::userDownloadLimitExceeded($package['ID'])) { $package['download_url'] = '#'; $package['link_label'] = __('Download Limit Exceeded', 'wpdmpro'); } if (isset($package['expire_date']) && $package['expire_date'] != "" && strtotime($package['expire_date']) < time()) { $package['download_url'] = '#'; $package['link_label'] = __('Download was expired on', 'wpdmpro') . " " . date_i18n(get_option('date_format') . " h:i A", strtotime($package['expire_date'])); $package['download_link'] = "<a href='#'>{$package['link_label']}</a>"; $package = apply_filters('wpdm_after_prepare_package_data', $package); return "<div class='alert alert-warning'><b>" . __('Download:', 'wpdmpro') . "</b><br/>{$package['link_label']}</div>"; } if (isset($package['publish_date']) && $package['publish_date'] != '' && strtotime($package['publish_date']) > time()) { $package['download_url'] = '#'; $package['link_label'] = __('Download will be available from ', 'wpdmpro') . " " . date_i18n(get_option('date_format') . " h:i A", strtotime($package['publish_date'])); $package['download_link'] = "<a href='#'>{$package['link_label']}</a>"; $package = apply_filters('wpdm_after_prepare_package_data', $package); return "<div class='alert alert-warning'><b>" . __('Download:', 'wpdmpro') . "</b><br/>{$package['link_label']}</div>"; } $link_label = isset($package['link_label']) ? $package['link_label'] : __('Download', 'wpdmpro'); $package['access'] = wpdm_allowed_roles($package['ID']); if ($package['download_url'] != '#') { $package['download_link'] = "<a class='wpdm-download-link wpdm-download-locked {$btnclass}' rel='nofollow' href='#' onclick=\"location.href='{$package['download_url']}';return false;\"><i class='{$wpdm_download_icon}'></i>{$link_label}</a>"; } else { $package['download_link'] = "<div class='alert alert-warning'><b>" . __('Download:', 'wpdmpro') . "</b><br/>{$link_label}</div>"; } $caps = array_keys($current_user->caps); $role = array_shift($caps); $matched = is_array(@maybe_unserialize($package['access'])) && is_user_logged_in() ? array_intersect($current_user->roles, @maybe_unserialize($package['access'])) : array(); $skiplink = 0; if (is_user_logged_in() && count($matched) <= 0 && !@in_array('guest', @maybe_unserialize($package['access']))) { $package['download_url'] = "#"; $package['download_link'] = $package['download_link_extended'] = stripslashes(get_option('wpdm_permission_msg')); $package = apply_filters('wpdm_after_prepare_package_data', $package); if (get_option('_wpdm_hide_all', 0) == 1) { $package['download_link'] = $package['download_link_extended'] = 'blocked'; } return $package['download_link']; } if (!@in_array('guest', @maybe_unserialize($package['access'])) && !is_user_logged_in()) { $loginform = wpdm_login_form(array('redirect' => get_permalink($package['ID']))); if (get_option('_wpdm_hide_all', 0) == 1) { return 'loginform'; } $package['download_url'] = home_url('/wp-login.php?redirect_to=' . urlencode($_SERVER['REQUEST_URI'])); $package['download_link'] = stripcslashes(str_replace(array("[loginform]", "[this_url]"), array($loginform, get_permalink($package['ID'])), get_option('wpdm_login_msg'))); return get_option('__wpdm_login_form', 0) == 1 ? $loginform : $package['download_link']; } $package = apply_filters('wpdm_before_apply_locks', $package); $package = apply_filters('wpdm_after_prepare_package_data', $package); $unqid = uniqid(); if (!isset($package['quota']) || isset($package['quota']) && $package['quota'] > 0 && $package['quota'] > $package['download_count'] || $package['quota'] == 0) { $lock = 0; if ($package['password'] != '') { $lock = 'locked'; $data = \WPDM\PackageLocks::AskPassword($package); } $sociallock = ""; $extralocks = ''; $extralocks = apply_filters("wpdm_download_lock", $extralocks, $package); if (is_array($extralocks) && $extralocks['lock'] === 'locked') { if (isset($extralocks['type']) && $extralocks['type'] == 'social') { $sociallock .= $extralocks['html']; } else { $data .= $extralocks['html']; } $lock = 'locked'; } if ($sociallock != "") { $data .= "<div class='panel panel-default'><div class='panel-heading'>" . __("Like or Share to Download", "wpdmpro") . "</div><div class='panel-body wpdm-social-locks text-center'>{$sociallock}</div></div>"; } if ($lock === 'locked') { $popstyle = isset($popstyle) && in_array($popstyle, array('popup', 'pop-over')) ? $popstyle : 'pop-over'; if ($embed == 1) { $adata = "</strong><table class='table all-locks-table' style='border:0px'><tr><td style='padding:5px 0px;border:0px;'>" . $data . "</td></tr></table>"; } else { $dataattrs = $popstyle == 'pop-over' ? 'data-title="<button type=button id=\'close\' class=\'btn btn-link btn-xs pull-right po-close\' style=\'margin-top:-4px;margin-right:-10px\'><i class=\'fa fa-times text-danger\'></i></button> ' . __('Download', 'wpdmpro') . ' ' . $package['title'] . '"' : 'data-toggle="modal" data-target="#pkg_' . $package['ID'] . "_" . $unqid . '"'; $adata = '<a href="#pkg_' . $package['ID'] . "_" . $unqid . '" ' . $dataattrs . ' class="wpdm-download-link wpdm-download-locked ' . $popstyle . ' ' . $btnclass . '"><i class=\'' . $wpdm_download_lock_icon . '\'></i>' . $package['link_label'] . '</a>'; if ($popstyle == 'pop-over') { $adata .= '<div class="modal fade"><div class="row all-locks" id="pkg_' . $package['ID'] . "_" . $unqid . '">' . $data . '</div></div>'; } else { $adata .= '<div class="modal fade" role="modal" id="pkg_' . $package['ID'] . "_" . $unqid . '"><div class="modal-dialog"><div class="modal-content"><div class="modal-header"><strong style="margin:0px;font-size:12pt">' . __('Download') . '</strong></div><div class="modal-body">' . $data . '</div><div class="modal-footer text-right"><button type="button" class="btn btn-default btn-sm" data-dismiss="modal">Close</button></div></div></div></div>'; } } $data = $adata; } if ($lock !== 'locked') { $data = $package['download_link']; } } else { $data = __("Download limit exceeded!", 'wpdmpro'); } return $data; }
private static function activeLocks($package, $params = array('embed' => 0, 'popstyle' => 'pop-over')) { $embed = isset($params['embed']) ? $params['embed'] : 0; $popstyle = isset($params['popstyle']) ? $params['popstyle'] : 'pop-over'; $package = apply_filters('wpdm_before_apply_locks', $package); $lock = $data = ""; $unqid = uniqid(); if (isset($package['password_lock']) && (int) $package['password_lock'] == 1 && $package['password'] != '') { $lock = 'locked'; $data = \WPDM\PackageLocks::AskPassword($package); } $sociallock = ""; if (isset($package['email_lock']) && (int) $package['email_lock'] == 1) { $data .= \WPDM\PackageLocks::AskEmail($package); $lock = 'locked'; } if (isset($package['linkedin_lock']) && (int) $package['linkedin_lock'] == 1) { $lock = 'locked'; $sociallock .= \WPDM\PackageLocks::LinkedInShare($package); } if (isset($package['twitterfollow_lock']) && (int) $package['twitterfollow_lock'] == 1) { $lock = 'locked'; $sociallock .= \WPDM\PackageLocks::TwitterFollow($package); } if (isset($package['gplusone_lock']) && (int) $package['gplusone_lock'] == 1) { $lock = 'locked'; $sociallock .= '<div id="wpdmslb-googleplus-' . $package['ID'] . '" class="wpdm-social-lock-box wpdmslb-googleplus">' . \WPDM\PackageLocks::GooglePlusOne($package, true) . '</div>'; } if (isset($package['tweet_lock']) && (int) $package['tweet_lock'] == 1) { $lock = 'locked'; $sociallock .= '<div id="wpdmslb-tweet-' . $package['ID'] . '" class="wpdm-social-lock-box wpdmslb-tweet">' . \WPDM\PackageLocks::Tweet($package, true) . '</div>'; } if (isset($package['facebooklike_lock']) && (int) $package['facebooklike_lock'] == 1) { $lock = 'locked'; $sociallock .= \WPDM\PackageLocks::FacebookLike($package, true); } $extralocks = ''; $extralocks = apply_filters("wpdm_download_lock", $extralocks, $package); if (is_array($extralocks) && $extralocks['lock'] === 'locked') { if (isset($extralocks['type']) && $extralocks['type'] == 'social') { $sociallock .= $extralocks['html']; } else { $data .= $extralocks['html']; } $lock = 'locked'; } if ($sociallock != "") { $data .= "<div class='panel panel-default'><div class='panel-heading'>" . __("Download", "wpdmpro") . "</div><div class='panel-body wpdm-social-locks text-center'>{$sociallock}</div></div>"; } if (isset($package['captcha_lock']) && (int) $package['captcha_lock'] == 1) { $lock = 'locked'; $captcha = \WPDM\PackageLocks::reCaptchaLock($package, true); $data .= "<div class='panel panel-default'><div class='panel-heading'>" . __("Verify CAPTCHA to Download", "wpdmpro") . "</div><div class='panel-body wpdm-social-locks text-center'>{$captcha}</div></div>"; } if ($lock === 'locked') { $popstyle = isset($popstyle) && in_array($popstyle, array('popup', 'pop-over')) ? $popstyle : 'pop-over'; if ($embed == 1) { $adata = "</strong><table class='table all-locks-table' style='border:0px'><tr><td style='padding:5px 0px;border:0px;'>" . $data . "</td></tr></table>"; } else { $dataattrs = $popstyle == 'pop-over' ? 'data-title="' . __('Download', 'wpdmpro') . ' ' . $package['title'] . '"' : 'data-toggle="modal" data-target="#pkg_' . $package['ID'] . "_" . $unqid . '"'; $adata = '<a href="#pkg_' . $package['ID'] . "_" . $unqid . '" ' . $dataattrs . ' data-trigger="manual" class="wpdm-download-link wpdm-download-locked ' . $popstyle . ' ' . $package['btnclass'] . '">' . $package['link_label'] . '</a>'; if ($popstyle == 'pop-over') { if (!get_option('__wpdm_ajax_popup', false)) { $adata .= '<div class="modal fade"><div class="row all-locks" id="pkg_' . $package['ID'] . "_" . $unqid . '">' . $data . '</div></div>'; } } else { $adata .= '<div class="modal fade" role="modal" id="pkg_' . $package['ID'] . "_" . $unqid . '"><div class="modal-dialog"><div class="modal-content"><div class="modal-header"><strong style="margin:0px;font-size:12pt">' . __('Download') . '</strong></div><div class="modal-body">' . $data . '</div><div class="modal-footer text-right"><button type="button" class="btn btn-default btn-sm" data-dismiss="modal">Close</button></div></div></div></div>'; } } $data = $adata; } return $data; }