0 ) foreach ($matches as $val) { $code = '[download id="'.$val[1].'" format="'.$val[2].'"]'; $data = str_replace( $val[0] , $code , $data ); } // End foreach // Handle Non-formatted downloads preg_match_all("/\[download#([0-9]+)/", $data, $matches, PREG_SET_ORDER); $patts = array(); $subs = array(); if ( sizeof( $matches ) > 0 ) foreach ($matches as $val) { $patts[] = "[download#" . $val[1] . "]"; $subs[] = '[download id="'.$val[1].'"]'; // No hit counter $format = '{title}'; $patts[] = "[download#" . $val[1] . "#nohits]"; $subs[] = '[download id="'.$val[1].'" format="'.htmlspecialchars($format).'"]'; // URL only $format = '{url}'; $patts[] = "[download#" . $val[1] . "#url]"; $subs[] = '[download id="'.$val[1].'" format="'.htmlspecialchars($format).'"]'; // Description only $format = '{description}'; $patts[] = "[download#" . $val[1] . "#description]"; $subs[] = '[download id="'.$val[1].'" format="'.htmlspecialchars($format).'"]'; // Description (autop) only $format = '{description-autop}'; $patts[] = "[download#" . $val[1] . "#description_autop]"; $subs[] = '[download id="'.$val[1].'" format="'.htmlspecialchars($format).'"]'; // Hits only $format = '{hits}';; $patts[] = "[download#" . $val[1] . "#hits]"; $subs[] = '[download id="'.$val[1].'" format="'.htmlspecialchars($format).'"]'; // Image link $format = ''.__('; $patts[] = "[download#" . $val[1] . "#image]"; $subs[] = '[download id="'.$val[1].'" format="'.htmlspecialchars($format).'"]'; // Regular download link WITH filesize $format = '{title} ({hits}) - {size}'; $patts[] = "[download#" . $val[1] . "#size]"; $subs[] = '[download id="'.$val[1].'" format="'.htmlspecialchars($format).'"]'; // No hit counter + filesize $format = '{title} ({size})'; $patts[] = "[download#" . $val[1] . "#size#nohits]"; $subs[] = '[download id="'.$val[1].'" format="'.htmlspecialchars($format).'"]'; } // End foreach $data = str_replace($patts, $subs, $data); } // End if [download# found global $wpdb, $wp_dlm_db, $wp_dlm_db_meta, $wp_dlm_db_taxonomies, $downloadurl, $downloadtype; // Handle CATEGORIES if (substr_count($data,"[download_cat#")) { $patts = array(); $subs = array(); preg_match_all("/\[download_cat#([0-9]+)#format=([0-9]+)\]/", $data, $result, PREG_SET_ORDER); if ($result) foreach ($result as $val) { $format = wp_dlm_get_custom_format($val[2]); if ($format) { $format = str_replace('\\"',"'",$format); $args = array( 'orderby' => 'title', 'category' => $val[1], 'digforcats' => 'true' ); $downloads = get_downloads($args); // GENERATE LIST $links = ''; $patts[] = "[download_cat#" . $val[1] . "#format=" . $val[2] . "]"; $subs[] = $links; } // End if format } // End foreach $data = str_replace($patts, $subs, $data); $patts = array(); $subs = array(); preg_match_all("|\[download_cat#([0-9]+)\]|U",$data,$result,PREG_SET_ORDER); if ($result) foreach ($result as $val) { $args = array( 'orderby' => 'title', 'category' => $val[1], 'digforcats' => 'true', ); $downloads = get_downloads($args); // GENERATE LIST $links = ''; $patts[] = "[download_cat#" . $val[1] . "]"; $subs[] = $links; } // endforeach $data = str_replace($patts, $subs, $data); } // End if [download_cat# found return do_shortcode($data); } ################################################################################ // LEGACY TEMPLATE TAGS ################################################################################ function wp_dlm_show_downloads($mode = 1,$no = 5) { switch ($mode) { case 1 : $dl = get_downloads('limit='.$no.'&orderby=hits&order=desc'); break; case 2 : $dl = get_downloads('limit='.$no.'&orderby=date&order=desc'); break; case 3 : $dl = get_downloads('limit='.$no.'&orderby=random&order=desc'); break; } if (!empty($dl)) { echo ''; } } function wp_dlm_all() { global $wpdb,$wp_dlm_root,$allowed_extentions,$max_upload_size,$wp_dlm_db; $dl = get_downloads('limit=&orderby=title&order=asc'); if (!empty($dl)) { $retval = ''; } return $retval; } function wp_dlm_advanced() { global $wpdb,$wp_dlm_root,$wp_dlm_db,$wp_dlm_db_taxonomies,$downloadurl,$dlm_url,$downloadtype, $download_taxonomies; // Get post data if (isset($_POST['show_downloads'])) $showing = (int) $_POST['show_downloads']; else $showing = 0; if ($showing==0 || $showing=="") { $dl = get_downloads('limit=10&orderby=hits&order=desc'); } else { $dl = get_downloads('limit=&orderby=title&order=asc&category='.$showing.''); } // Output selector box $retval = '
'; if (!empty($dl)) { $retval .= ''; } else $retval .='

'.__('No Downloads Found',"wp-download_monitor").'

'; $retval .= "
"; return $retval; } function wp_dlm_parse_downloads_all($data) { if (substr_count($data,"[#show_downloads]")) { $data = str_replace("[#show_downloads]",wp_dlm_all(), $data); } if (substr_count($data,"[#advanced_downloads]")) { $data = str_replace("[#advanced_downloads]",wp_dlm_advanced(), $data); } return $data; } ?>