Completed
Push — master ( 480ce0...8a2d70 )
by
unknown
15:04
created
includes/modules/wps_download_file/controller/wps_download_file_ctr.php 2 patches
Doc Comments   +4 added lines patch added patch discarded remove patch
@@ -7,6 +7,10 @@
 block discarded – undo
7 7
 	}
8 8
 
9 9
 	// Function to find download link by
10
+
11
+	/**
12
+	 * @param integer $oid
13
+	 */
10 14
 	public static function get_product_download_link( $oid, $item ) {
11 15
 		global $wpdb;
12 16
 
Please login to merge, or discard this patch.
Spacing   +48 added lines, -48 removed lines patch added patch discarded remove patch
@@ -1,21 +1,21 @@  discard block
 block discarded – undo
1
-<?php if ( !defined( 'ABSPATH' ) ) exit;
1
+<?php if (!defined('ABSPATH')) exit;
2 2
 
3 3
 class wps_download_file_ctr {
4 4
 	public function __construct() {
5
-		add_action( 'admin_post_wps_download_file', array( $this, 'wps_download_file' ) );
6
-		add_action( 'admin_post_nopriv_wps_download_file', array( $this, 'wps_download_file' ) );
5
+		add_action('admin_post_wps_download_file', array($this, 'wps_download_file'));
6
+		add_action('admin_post_nopriv_wps_download_file', array($this, 'wps_download_file'));
7 7
 	}
8 8
 
9 9
 	// Function to find download link by
10
-	public static function get_product_download_link( $oid, $item ) {
10
+	public static function get_product_download_link($oid, $item) {
11 11
 		global $wpdb;
12 12
 
13 13
 		$parent_def = array();
14 14
 		$item_id = $item['item_id'];
15
-		$item_post_type = get_post_type( $item['item_id'] );
16
-		if ( WPSHOP_NEWTYPE_IDENTIFIER_PRODUCT_VARIATION === $item_post_type ) {
17
-			$parent_def = wpshop_products::get_parent_variation( $item['item_id'] );
18
-			if ( ! empty( $parent_def ) && ! empty( $parent_def['parent_post'] ) ) {
15
+		$item_post_type = get_post_type($item['item_id']);
16
+		if (WPSHOP_NEWTYPE_IDENTIFIER_PRODUCT_VARIATION === $item_post_type) {
17
+			$parent_def = wpshop_products::get_parent_variation($item['item_id']);
18
+			if (!empty($parent_def) && !empty($parent_def['parent_post'])) {
19 19
 				$parent_post = $parent_def['parent_post'];
20 20
 				$item_id = $parent_post->ID;
21 21
 				$item_title = $parent_post->post_title;
@@ -25,42 +25,42 @@  discard block
 block discarded – undo
25 25
 		$download_link = '';
26 26
 		$item_id_for_download = null;
27 27
 		/** Check if the product or the head product is a download product	*/
28
-		if ( ! empty( $parent_def ) ) {
28
+		if (!empty($parent_def)) {
29 29
 			$parent_meta = $parent_def['parent_post_meta'];
30
-			if ( ! empty( $parent_meta['is_downloadable_'] ) ) {
31
-				$query = $wpdb->prepare( 'SELECT value FROM ' . WPSHOP_DBT_ATTRIBUTE_VALUES_OPTIONS . ' WHERE id = %d', $parent_meta['is_downloadable_'] );
32
-				$downloadable_option_value = $wpdb->get_var( $query );
33
-				if ( ! empty( $downloadable_option_value ) ) {
30
+			if (!empty($parent_meta['is_downloadable_'])) {
31
+				$query = $wpdb->prepare('SELECT value FROM ' . WPSHOP_DBT_ATTRIBUTE_VALUES_OPTIONS . ' WHERE id = %d', $parent_meta['is_downloadable_']);
32
+				$downloadable_option_value = $wpdb->get_var($query);
33
+				if (!empty($downloadable_option_value)) {
34 34
 					$item['item_is_downloadable_'] = $downloadable_option_value;
35 35
 				}
36 36
 			}
37 37
 		}
38
-		if ( ! empty( $item ) && ! empty( $item['item_is_downloadable_'] ) && ( strtolower( __( $item['item_is_downloadable_'], 'wpshop') ) == strtolower( __('Yes', 'wpshop') ) ) ) {
38
+		if (!empty($item) && !empty($item['item_is_downloadable_']) && (strtolower(__($item['item_is_downloadable_'], 'wpshop')) == strtolower(__('Yes', 'wpshop')))) {
39 39
 			$item_id_for_download = $item_id;
40 40
 		}
41
-		if ( isset( $item['item_meta']['variations'] ) ) {
42
-			foreach ( $item['item_meta']['variations'] as $variation_id => $variation ) {
43
-				if ( isset( $variation['item_meta']['is_downloadable_'] ) ) {
41
+		if (isset($item['item_meta']['variations'])) {
42
+			foreach ($item['item_meta']['variations'] as $variation_id => $variation) {
43
+				if (isset($variation['item_meta']['is_downloadable_'])) {
44 44
 					$item_id_for_download = $item_id . '__' . $variation_id;
45 45
 				}
46 46
 			}
47 47
 		}
48 48
 
49 49
 		/** In case there is a item identifier defined for download */
50
-		if ( null !== $item_id_for_download ) {
51
-			$download_codes = get_user_meta( get_current_user_id(), '_order_download_codes_' . $oid, true );
50
+		if (null !== $item_id_for_download) {
51
+			$download_codes = get_user_meta(get_current_user_id(), '_order_download_codes_' . $oid, true);
52 52
 			/**	Check if the current product exist into download code list, if not check if there is a composition between parent product and children product	*/
53
-			if ( empty( $download_codes[ $item_id_for_download ] ) ) {
54
-				$item_id_component = explode( "__", $item_id_for_download );
55
-				if ( ! empty( $item_id_component ) && ( $item_id_component[0] != $item_id_for_download ) ) {
53
+			if (empty($download_codes[$item_id_for_download])) {
54
+				$item_id_component = explode("__", $item_id_for_download);
55
+				if (!empty($item_id_component) && ($item_id_component[0] != $item_id_for_download)) {
56 56
 					$item_id_for_download = $item_id_component[0];
57
-				} elseif ( ! empty( $download_codes[ $item['item_id'] ] ) ) {
57
+				} elseif (!empty($download_codes[$item['item_id']])) {
58 58
 					$item_id_for_download = $item['item_id'];
59 59
 				}
60 60
 			}
61 61
 
62
-			if ( ! empty( $download_codes ) && ! empty( $download_codes[ $item_id_for_download ] ) && ! empty( $download_codes[ $item_id_for_download ]['download_code'] ) ) {
63
-				$download_link = admin_url( 'admin-post.php?action=wps_download_file&amp;oid=' . $oid . '&amp;download=' . $download_codes[ $item_id_for_download ]['download_code'] );
62
+			if (!empty($download_codes) && !empty($download_codes[$item_id_for_download]) && !empty($download_codes[$item_id_for_download]['download_code'])) {
63
+				$download_link = admin_url('admin-post.php?action=wps_download_file&amp;oid=' . $oid . '&amp;download=' . $download_codes[$item_id_for_download]['download_code']);
64 64
 			}
65 65
 		}
66 66
 
@@ -69,31 +69,31 @@  discard block
 block discarded – undo
69 69
 
70 70
 	// Download product downloadable
71 71
 	public function wps_download_file() {
72
-		$download = !empty( $_GET['download'] ) ? sanitize_text_field( $_GET['download'] ) : '';
73
-		$oid = !empty( $_GET['oid'] ) ? (int) $_GET['oid'] : 0;
72
+		$download = !empty($_GET['download']) ? sanitize_text_field($_GET['download']) : '';
73
+		$oid = !empty($_GET['oid']) ? (int)$_GET['oid'] : 0;
74 74
 
75
-		if ( !empty( $download ) && !empty( $oid ) ) {
75
+		if (!empty($download) && !empty($oid)) {
76 76
 			$variation_id = '';
77 77
 			$order = get_post_meta($oid, '_order_postmeta', true);
78
-			if(!empty($order) && !empty( $order['customer_id'] )) {
79
-				$download_codes = get_user_meta( /*wps_customer_ctr::get_author_id_by_customer_id(*/ $order['customer_id'] /*)*/, '_order_download_codes_'.$oid, true);
80
-				if ( !empty($download_codes) && is_array($download_codes) ) {
81
-					foreach ( $download_codes as $downloadable_product_id => $d ) {
78
+			if (!empty($order) && !empty($order['customer_id'])) {
79
+				$download_codes = get_user_meta( /*wps_customer_ctr::get_author_id_by_customer_id(*/ $order['customer_id'] /*)*/, '_order_download_codes_' . $oid, true);
80
+				if (!empty($download_codes) && is_array($download_codes)) {
81
+					foreach ($download_codes as $downloadable_product_id => $d) {
82 82
 						$is_encrypted = false;
83
-						if ( $d['download_code'] == $download ) {
84
-							wpshop_tools::create_custom_hook ('encrypt_actions_for_downloadable_product', array( 'order_id' => $oid, 'download_product_id' => $downloadable_product_id ) );
83
+						if ($d['download_code'] == $download) {
84
+							wpshop_tools::create_custom_hook('encrypt_actions_for_downloadable_product', array('order_id' => $oid, 'download_product_id' => $downloadable_product_id));
85 85
 
86
-							if ( get_post_type( $downloadable_product_id ) == WPSHOP_NEWTYPE_IDENTIFIER_PRODUCT_VARIATION ) {
87
-								$parent_def = wpshop_products::get_parent_variation( $downloadable_product_id );
88
-								if ( !empty($parent_def) && !empty($parent_def['parent_post']) ) {
86
+							if (get_post_type($downloadable_product_id) == WPSHOP_NEWTYPE_IDENTIFIER_PRODUCT_VARIATION) {
87
+								$parent_def = wpshop_products::get_parent_variation($downloadable_product_id);
88
+								if (!empty($parent_def) && !empty($parent_def['parent_post'])) {
89 89
 									$parent_post = $parent_def['parent_post'];
90 90
 									$variation_id = $downloadable_product_id;
91 91
 									$downloadable_product_id = $parent_post->ID;
92 92
 								}
93 93
 
94 94
 							} else {
95
-								$downloadable_product_id = explode( "__", $downloadable_product_id );
96
-								$downloadable_product_id = isset( $downloadable_product_id[1] ) ? $downloadable_product_id[1] : $downloadable_product_id[0];
95
+								$downloadable_product_id = explode("__", $downloadable_product_id);
96
+								$downloadable_product_id = isset($downloadable_product_id[1]) ? $downloadable_product_id[1] : $downloadable_product_id[0];
97 97
 							}
98 98
 
99 99
 							$link = wpshop_attributes::get_attribute_option_output(
@@ -101,24 +101,24 @@  discard block
 block discarded – undo
101 101
 								'is_downloadable_', 'file_url', $order
102 102
 							);
103 103
 
104
-							if ( $link !== false ) {
104
+							if ($link !== false) {
105 105
 								$uploads = wp_upload_dir();
106 106
 								$basedir = $uploads['basedir'];
107 107
 								$pos = strpos($link, 'uploads');
108
-								$link = $basedir.substr($link,$pos+7);
108
+								$link = $basedir . substr($link, $pos + 7);
109 109
 								/** If plugin is encrypted **/
110
-								$encrypted_plugin_path = get_post_meta( $oid, '_download_file_path_'.$oid.'_'.( ( !empty( $variation_id ) && get_post_type( $variation_id ) == WPSHOP_NEWTYPE_IDENTIFIER_PRODUCT_VARIATION ) ? $variation_id : $downloadable_product_id ), true);
111
-								if ( !empty($encrypted_plugin_path) ) {
112
-									$link = WPSHOP_UPLOAD_DIR.$encrypted_plugin_path;
110
+								$encrypted_plugin_path = get_post_meta($oid, '_download_file_path_' . $oid . '_' . ((!empty($variation_id) && get_post_type($variation_id) == WPSHOP_NEWTYPE_IDENTIFIER_PRODUCT_VARIATION) ? $variation_id : $downloadable_product_id), true);
111
+								if (!empty($encrypted_plugin_path)) {
112
+									$link = WPSHOP_UPLOAD_DIR . $encrypted_plugin_path;
113 113
 									$is_encrypted = true;
114 114
 								}
115 115
 
116
-								$overload_force_download = apply_filters( 'wps_download_file_overload_force_download', false );
117
-								if ( !$overload_force_download ) {
116
+								$overload_force_download = apply_filters('wps_download_file_overload_force_download', false);
117
+								if (!$overload_force_download) {
118 118
 									wpshop_tools::forceDownload($link, $is_encrypted);
119 119
 								}
120 120
 								else {
121
-									wpshop_tools::wpshop_safe_redirect( str_replace( WP_CONTENT_DIR, WP_CONTENT_URL, $link ) );
121
+									wpshop_tools::wpshop_safe_redirect(str_replace(WP_CONTENT_DIR, WP_CONTENT_URL, $link));
122 122
 								}
123 123
 							}
124 124
 						}
@@ -126,7 +126,7 @@  discard block
 block discarded – undo
126 126
 				}
127 127
 			}
128 128
 			else {
129
-				wp_redirect( get_permalink( wpshop_tools::get_page_id( get_option('wpshop_myaccount_page_id') ) ) );
129
+				wp_redirect(get_permalink(wpshop_tools::get_page_id(get_option('wpshop_myaccount_page_id'))));
130 130
 			}
131 131
 		}
132 132
 		echo __('Impossible to download the file you requested', 'wpshop');
Please login to merge, or discard this patch.