Example #1
0
function wpdm_save_new_package()
{
    global $current_user;
    /* get_currentuserinfo();
           if(!is_array($_POST['files'])) $_POST['files'] = array();
           $_POST['whatido'] = 'copy';
           if( $_POST['whatido']=='copy' and !empty($_POST['imports']) )
           {
    
    
               foreach($_POST['imports'] as $v)
               {
               copy($v,UPLOAD_DIR.'/'.basename($v));
               array_push($_POST['files'],basename($v));
    
               }
    
    
           } elseif( $_POST['whatido']=='move' and !empty($_POST['imports']) ) {
    
    
           foreach($_POST['imports'] as $v)
               {
               rename(dirname(__FILE__).'/imports/'.$v,UPLOAD_DIR.$v);
               $_POST['files'][] = $v;
    
               }
    
           }
    
    
    
           if( $_POST['del'] ) foreach( $_POST['del'] as $val )  @unlink( UPLOAD_DIR.$val);
    
           $_POST['file']['access'] = serialize($_POST['file']['access']);
           $_POST['file']['category'] = serialize($_POST['file']['category']);
           $_POST['file']['files'] = serialize($_POST['files']);
           $_POST['file']['preview'] = $_POST['file']['preview']?$_POST['file']['preview']:'';
           $_POST['file']['uid'] = $current_user->ID;
           $_POST['file']['create_date'] = $_POST['wpdm_meta']['create_date']?strtotime($_POST['wpdm_meta']['create_date']):time();
           $_POST['file']['update_date'] = $_POST['wpdm_meta']['update_date']?strtotime($_POST['wpdm_meta']['update_date']):time();
           $_POST['file']['url_key'] = $_POST['url_key']?$_POST['url_key']:wpdm_url_key($_POST['file']['title']);
           $flds = $wpdb->get_results("SHOW COLUMNS FROM {$wpdb->prefix}ahm_files");
           array_shift( $flds );
           $fileinf = array();
           foreach($flds as $fld){
           $def = strpos($fld->Type,"nt(")?0:'';
           $fileinf[$fld->Field] = $_POST['file'][$fld->Field]?$_POST['file'][$fld->Field]:$def;
           }
           $wpdb->insert( "{$wpdb->prefix}ahm_files", $fileinf );
           $id = $wpdb->insert_id;
           update_wpdm_meta($id, 'masterkey',uniqid());
           $post_id = wp_insert_post(array(
                 'post_type'       => 'wpdmpro',
                 'post_status'     => 'publish',
                 'post_author'     => $current_user->ID,
                 'ping_status'     => get_option('default_ping_status'),
                 'post_title'      => $fileinf['title'],
                 'post_content'      => $fileinf['description'],
           ));
           update_post_meta($post_id,'wpdmid',$id);
           update_post_meta($post_id,'access',$fileinf['access']);
           foreach($_POST['wpdm_meta'] as $k => $v){
               update_post_meta($post_id,$k,$v);
           }
    
           do_action('after_add_package',$id, $_POST['file']);
           //update_wpdm_meta($id, 'create_date', time());
           //update_wpdm_meta($id, 'update_date', time()); */
    if (isset($_REQUEST['act']) && in_array($_REQUEST['act'], array('_ap_wpdm', '_ep_wpdm'))) {
        $pack = $_POST['pack'];
        $pack['post_type'] = 'wpdmpro';
        if ($_POST['act'] == '_ep_wpdm') {
            $hook = "edit_package_frontend";
            $pack['ID'] = $_POST['id'];
            unset($pack['post_status']);
            unset($pack['post_author']);
            $post = get_post($pack['ID']);
            $ostatus = $post->post_status == 'publish' ? 'publish' : get_option('__wpdm_ips_frontend', 'publish');
            $status = isset($_POST['status']) && $_POST['status'] == 'draft' ? 'draft' : $ostatus;
            $pack['post_status'] = $status;
            $id = wp_update_post($pack);
            $ret = wp_set_post_terms($pack['ID'], $_POST['cats'], 'wpdmcategory');
        }
        if ($_POST['act'] == '_ap_wpdm') {
            $hook = "create_package_frontend";
            $status = isset($_POST['status']) && $_POST['status'] == 'draft' ? 'draft' : get_option('__wpdm_ips_frontend', 'publish');
            $pack['post_status'] = $status;
            $pack['post_author'] = $current_user->ID;
            $id = wp_insert_post($pack);
            wp_set_post_terms($id, $_POST['cats'], 'wpdmcategory');
        }
        wpdm_save_package_data_frontend($id);
        do_action($hook, $id, get_post($id));
        $data = array('result' => $_POST['act'], 'id' => $id);
        header('Content-type: application/json');
        echo json_encode($data);
        die;
    }
}
Example #2
0
function wpdm_save_new_package()
{
    global $current_user;
    /* get_currentuserinfo();
           if(!is_array($_POST['files'])) $_POST['files'] = array();
           $_POST['whatido'] = 'copy';
           if( $_POST['whatido']=='copy' and !empty($_POST['imports']) )
           {
    
    
               foreach($_POST['imports'] as $v)
               {
               copy($v,UPLOAD_DIR.'/'.basename($v));
               array_push($_POST['files'],basename($v));
    
               }
    
    
           } elseif( $_POST['whatido']=='move' and !empty($_POST['imports']) ) {
    
    
           foreach($_POST['imports'] as $v)
               {
               rename(dirname(__FILE__).'/imports/'.$v,UPLOAD_DIR.$v);
               $_POST['files'][] = $v;
    
               }
    
           }
    
    
    
           if( $_POST['del'] ) foreach( $_POST['del'] as $val )  @unlink( UPLOAD_DIR.$val);
    
           $_POST['file']['access'] = serialize($_POST['file']['access']);
           $_POST['file']['category'] = serialize($_POST['file']['category']);
           $_POST['file']['files'] = serialize($_POST['files']);
           $_POST['file']['preview'] = $_POST['file']['preview']?$_POST['file']['preview']:'';
           $_POST['file']['uid'] = $current_user->ID;
           $_POST['file']['create_date'] = $_POST['wpdm_meta']['create_date']?strtotime($_POST['wpdm_meta']['create_date']):time();
           $_POST['file']['update_date'] = $_POST['wpdm_meta']['update_date']?strtotime($_POST['wpdm_meta']['update_date']):time();
           $_POST['file']['url_key'] = $_POST['url_key']?$_POST['url_key']:wpdm_url_key($_POST['file']['title']);
           $flds = $wpdb->get_results("SHOW COLUMNS FROM {$wpdb->prefix}ahm_files");
           array_shift( $flds );
           $fileinf = array();
           foreach($flds as $fld){
           $def = strpos($fld->Type,"nt(")?0:'';
           $fileinf[$fld->Field] = $_POST['file'][$fld->Field]?$_POST['file'][$fld->Field]:$def;
           }
           $wpdb->insert( "{$wpdb->prefix}ahm_files", $fileinf );
           $id = $wpdb->insert_id;
           update_wpdm_meta($id, 'masterkey',uniqid());
           $post_id = wp_insert_post(array(
                 'post_type'       => 'wpdmpro',
                 'post_status'     => 'publish',
                 'post_author'     => $current_user->ID,
                 'ping_status'     => get_option('default_ping_status'),
                 'post_title'      => $fileinf['title'],
                 'post_content'      => $fileinf['description'],
           ));
           update_post_meta($post_id,'wpdmid',$id);
           update_post_meta($post_id,'access',$fileinf['access']);
           foreach($_POST['wpdm_meta'] as $k => $v){
               update_post_meta($post_id,$k,$v);
           }
    
           do_action('after_add_package',$id, $_POST['file']);
           //update_wpdm_meta($id, 'create_date', time());
           //update_wpdm_meta($id, 'update_date', time()); */
    if (isset($_REQUEST['act']) && in_array($_REQUEST['act'], array('_ap_wpdm', '_ep_wpdm'))) {
        $pack = $_POST['pack'];
        $pack['post_type'] = 'wpdmpro';
        if ($_POST['act'] == '_ep_wpdm') {
            $hook = "edit_package_frontend";
            $pack['ID'] = $_POST['id'];
            unset($pack['post_status']);
            unset($pack['post_author']);
            $post = get_post($pack['ID']);
            $ostatus = $post->post_status == 'publish' ? 'publish' : get_option('__wpdm_ips_frontend', 'publish');
            $status = isset($_POST['status']) && $_POST['status'] == 'draft' ? 'draft' : $ostatus;
            $pack['post_status'] = $status;
            $id = wp_update_post($pack);
            $ret = wp_set_post_terms($pack['ID'], $_POST['cats'], 'wpdmcategory');
        }
        if ($_POST['act'] == '_ap_wpdm') {
            $hook = "create_package_frontend";
            $status = isset($_POST['status']) && $_POST['status'] == 'draft' ? 'draft' : get_option('__wpdm_ips_frontend', 'publish');
            $pack['post_status'] = $status;
            $pack['post_author'] = $current_user->ID;
            $id = wp_insert_post($pack);
            if (isset($_POST['cats'])) {
                wp_set_post_terms($id, $_POST['cats'], 'wpdmcategory');
            }
        }
        wpdm_save_package_data_frontend($id);
        //Mail to admin when new package is created
        $message = file_get_contents(WPDM_BASE_DIR . '/email-templates/new-package-frontend.html');
        $data = array('[date]' => date(get_option('date_format')), '[sitename]' => get_bloginfo('name'), '[title]' => $pack['post_title'], '[user]' => "<a href='" . admin_url('user-edit.php?user_id=' . $current_user->ID) . "'>{$current_user->user_nicename}</a>", '[review_url]' => admin_url('post.php?action=edit&post=' . $id));
        $message = str_replace(array_keys($data), array_values($data), $message);
        $headers[] = 'From: ' . get_bloginfo('name') . ' <no-reply@' . str_replace("www.", "", $_SERVER['HTTP_HOST']) . '>';
        $headers[] = 'Content-Type: text/html; charset=UTF-8';
        wp_mail(get_option('__wpdm_new_package_email', get_option('admin_email')), get_option('__wpdm_new_package_email_subject', "A package is waiting for your review!"), $message, $headers);
        do_action($hook, $id, get_post($id));
        $data = array('result' => $_POST['act'], 'id' => $id);
        header('Content-type: application/json');
        echo json_encode($data);
        die;
    }
}