Changeset 1961287
- Timestamp:
- 10/23/2018 11:47:00 AM (7 years ago)
- Location:
- appeto-woocommerce
- Files:
-
- 121 added
- 5 edited
-
tags/3.0.0 (added)
-
tags/3.0.0/api (added)
-
tags/3.0.0/api/JSON.php (added)
-
tags/3.0.0/api/api.php (added)
-
tags/3.0.0/api/lib (added)
-
tags/3.0.0/api/lib/woocommerce-api (added)
-
tags/3.0.0/api/lib/woocommerce-api.php (added)
-
tags/3.0.0/api/lib/woocommerce-api/class-wc-api-client-authentication.php (added)
-
tags/3.0.0/api/lib/woocommerce-api/class-wc-api-client-http-request.php (added)
-
tags/3.0.0/api/lib/woocommerce-api/class-wc-api-client.php (added)
-
tags/3.0.0/api/lib/woocommerce-api/exceptions (added)
-
tags/3.0.0/api/lib/woocommerce-api/exceptions/class-wc-api-client-exception.php (added)
-
tags/3.0.0/api/lib/woocommerce-api/exceptions/class-wc-api-client-http-exception.php (added)
-
tags/3.0.0/api/lib/woocommerce-api/resources (added)
-
tags/3.0.0/api/lib/woocommerce-api/resources/abstract-wc-api-client-resource.php (added)
-
tags/3.0.0/api/lib/woocommerce-api/resources/class-wc-api-client-resource-coupons.php (added)
-
tags/3.0.0/api/lib/woocommerce-api/resources/class-wc-api-client-resource-custom.php (added)
-
tags/3.0.0/api/lib/woocommerce-api/resources/class-wc-api-client-resource-customers.php (added)
-
tags/3.0.0/api/lib/woocommerce-api/resources/class-wc-api-client-resource-index.php (added)
-
tags/3.0.0/api/lib/woocommerce-api/resources/class-wc-api-client-resource-order-notes.php (added)
-
tags/3.0.0/api/lib/woocommerce-api/resources/class-wc-api-client-resource-order-refunds.php (added)
-
tags/3.0.0/api/lib/woocommerce-api/resources/class-wc-api-client-resource-orders.php (added)
-
tags/3.0.0/api/lib/woocommerce-api/resources/class-wc-api-client-resource-products.php (added)
-
tags/3.0.0/api/lib/woocommerce-api/resources/class-wc-api-client-resource-reports.php (added)
-
tags/3.0.0/api/lib/woocommerce-api/resources/class-wc-api-client-resource-webhooks.php (added)
-
tags/3.0.0/api/lib/woocommerce-settings-tab-appeto.php (added)
-
tags/3.0.0/api/views (added)
-
tags/3.0.0/api/views/auth (added)
-
tags/3.0.0/api/views/auth/access.php (added)
-
tags/3.0.0/api/views/auth/profile.php (added)
-
tags/3.0.0/api/views/auth/register.php (added)
-
tags/3.0.0/api/views/cart.php (added)
-
tags/3.0.0/api/views/categories.php (added)
-
tags/3.0.0/api/views/category.php (added)
-
tags/3.0.0/api/views/product.php (added)
-
tags/3.0.0/api/views/search.php (added)
-
tags/3.0.0/api/views/v2 (added)
-
tags/3.0.0/api/views/v2/cart.php (added)
-
tags/3.0.0/api/views/v2/categories.php (added)
-
tags/3.0.0/api/views/v2/category.php (added)
-
tags/3.0.0/api/views/v2/network-search.php (added)
-
tags/3.0.0/api/views/v2/network-theme1.php (added)
-
tags/3.0.0/api/views/v2/network-theme2.php (added)
-
tags/3.0.0/api/views/v2/product.php (added)
-
tags/3.0.0/api/views/v2/search.php (added)
-
tags/3.0.0/assets (added)
-
tags/3.0.0/assets/img (added)
-
tags/3.0.0/assets/img/appeto.png (added)
-
tags/3.0.0/assets/img/swipe-left.gif (added)
-
tags/3.0.0/controllers (added)
-
tags/3.0.0/controllers/custom_post_type_categories.php (added)
-
tags/3.0.0/controllers/menu.php (added)
-
tags/3.0.0/controllers/notifications.php (added)
-
tags/3.0.0/index.php (added)
-
tags/3.0.0/json-api (added)
-
tags/3.0.0/json-api/assets (added)
-
tags/3.0.0/json-api/assets/icon.svg (added)
-
tags/3.0.0/json-api/controllers (added)
-
tags/3.0.0/json-api/controllers/core.php (added)
-
tags/3.0.0/json-api/controllers/posts.php (added)
-
tags/3.0.0/json-api/controllers/respond.php (added)
-
tags/3.0.0/json-api/controllers/widgets.php (added)
-
tags/3.0.0/json-api/json-api.php (added)
-
tags/3.0.0/json-api/library (added)
-
tags/3.0.0/json-api/library/JSON.php (added)
-
tags/3.0.0/json-api/models (added)
-
tags/3.0.0/json-api/models/attachment.php (added)
-
tags/3.0.0/json-api/models/author.php (added)
-
tags/3.0.0/json-api/models/category.php (added)
-
tags/3.0.0/json-api/models/comment.php (added)
-
tags/3.0.0/json-api/models/post.php (added)
-
tags/3.0.0/json-api/models/tag.php (added)
-
tags/3.0.0/json-api/readme.txt (added)
-
tags/3.0.0/json-api/screenshot-1.png (added)
-
tags/3.0.0/json-api/singletons (added)
-
tags/3.0.0/json-api/singletons/api.php (added)
-
tags/3.0.0/json-api/singletons/introspector.php (added)
-
tags/3.0.0/json-api/singletons/query.php (added)
-
tags/3.0.0/json-api/singletons/response.php (added)
-
tags/3.0.0/json-api/tests (added)
-
tags/3.0.0/json-api/tests/core.get_author_index-01.phpt (added)
-
tags/3.0.0/json-api/tests/core.get_author_posts-01.phpt (added)
-
tags/3.0.0/json-api/tests/core.get_author_posts-02.phpt (added)
-
tags/3.0.0/json-api/tests/core.get_author_posts-03.phpt (added)
-
tags/3.0.0/json-api/tests/core.get_category_index-01.phpt (added)
-
tags/3.0.0/json-api/tests/core.get_category_posts-01.phpt (added)
-
tags/3.0.0/json-api/tests/core.get_date_index-01.phpt (added)
-
tags/3.0.0/json-api/tests/core.get_date_posts-01.phpt (added)
-
tags/3.0.0/json-api/tests/core.get_date_posts-02.phpt (added)
-
tags/3.0.0/json-api/tests/core.get_date_posts-03.phpt (added)
-
tags/3.0.0/json-api/tests/core.get_page-01.phpt (added)
-
tags/3.0.0/json-api/tests/core.get_page-02.phpt (added)
-
tags/3.0.0/json-api/tests/core.get_post-01.phpt (added)
-
tags/3.0.0/json-api/tests/core.get_posts-01.phpt (added)
-
tags/3.0.0/json-api/tests/core.get_posts-02.phpt (added)
-
tags/3.0.0/json-api/tests/core.get_posts-03.phpt (added)
-
tags/3.0.0/json-api/tests/core.get_recent_posts-01.phpt (added)
-
tags/3.0.0/json-api/tests/core.get_recent_posts-02.phpt (added)
-
tags/3.0.0/json-api/tests/core.get_recent_posts-03.phpt (added)
-
tags/3.0.0/json-api/tests/core.get_search_posts-01.phpt (added)
-
tags/3.0.0/json-api/tests/core.get_tag_index-01.phpt (added)
-
tags/3.0.0/json-api/tests/core.get_tag_posts-01.phpt (added)
-
tags/3.0.0/json-api/tests/core.info-01.phpt (added)
-
tags/3.0.0/json-api/tests/core.info-02.phpt (added)
-
tags/3.0.0/json-api/tests/query-01.phpt (added)
-
tags/3.0.0/readme.txt (added)
-
tags/3.0.0/views (added)
-
tags/3.0.0/views/auth.php (added)
-
tags/3.0.0/views/push.php (added)
-
tags/3.0.0/views/settings.php (added)
-
tags/3.0.0/views/wooNetwork.php (added)
-
tags/3.0.0/wp-cors (added)
-
tags/3.0.0/wp-cors/build.xml (added)
-
tags/3.0.0/wp-cors/includes (added)
-
tags/3.0.0/wp-cors/includes/admin.php (added)
-
tags/3.0.0/wp-cors/readme.txt (added)
-
tags/3.0.0/wp-cors/wp-cors.php (added)
-
trunk/api/api.php (modified) (2 diffs)
-
trunk/api/views/v2/network-search.php (added)
-
trunk/api/views/v2/network-theme1.php (added)
-
trunk/api/views/v2/network-theme2.php (added)
-
trunk/api/views/v2/product.php (modified) (2 diffs)
-
trunk/controllers/menu.php (modified) (3 diffs)
-
trunk/index.php (modified) (1 diff)
-
trunk/readme.txt (modified) (2 diffs)
-
trunk/views/wooNetwork.php (added)
Legend:
- Unmodified
- Added
- Removed
-
appeto-woocommerce/trunk/api/api.php
r1751958 r1961287 30 30 $plugins = get_option('active_plugins'); 31 31 if(in_array("woocommerce/woocommerce.php", $plugins)) { 32 $is_hard = false; 33 if(function_exists("mcrypt_encrypt")) { 34 $is_hard = true; 35 } 32 36 $result = array( 33 37 "status" => "ok", 34 "currency_symbol" => get_woocommerce_currency_symbol() 38 "currency_symbol" => get_woocommerce_currency_symbol(), 39 "is_hard" => $is_hard 35 40 ); 36 41 } 42 if(function_exists("is_plugin_active_for_network")) { 43 if ( is_plugin_active_for_network( 'woocommerce/woocommerce.php' ) ) { 44 $is_hard = false; 45 if(function_exists("mcrypt_encrypt")) { 46 $is_hard = true; 47 } 48 $result = array( 49 "status" => "ok", 50 "currency_symbol" => get_woocommerce_currency_symbol(), 51 "is_hard" => $is_hard 52 ); 53 } 54 } 37 55 self::jsonView($result); 56 } 57 58 if(isset($_GET["check_api"]) and $_GET["check_api"] == "network") { 59 $result = appeto_get_network_sites(); 60 self::jsonView($result); 61 } 62 63 if(isset($_GET["check_api"]) and $_GET["check_api"] == "networkSearch" and isset($_GET["s"]) and $_GET["s"] != "") { 64 global $wpdb; 65 $result = array(); 66 if(function_exists('get_sites')) { 67 $sites = get_sites(); 68 } 69 elseif(function_exists('wp_get_sites')) { 70 $sites = wp_get_sites(); 71 } 72 else { 73 $sites = array(); 74 } 75 $q = esc_sql($_GET["s"]); 76 foreach($sites as $site) { 77 if ($site->path == "/") continue; 78 $bimage = get_option("appeto_ntsite_img_".$site->blog_id, ""); 79 switch_to_blog($site->blog_id); 80 $posts = $wpdb->get_blog_prefix($site->blog_id)."posts"; 81 $wp_postmeta = $wpdb->get_blog_prefix($site->blog_id)."postmeta"; 82 $select = "SELECT p.id, p.post_title AS title, m.meta_value AS regular_price, pt.meta_value AS price FROM {$posts} p 83 INNER JOIN {$wp_postmeta} m ON ( 84 p.id = m.post_id 85 ) 86 INNER JOIN {$wp_postmeta} pt ON ( 87 p.id = pt.post_id 88 ) 89 WHERE 90 p.post_type = 'product' 91 AND 92 p.post_title LIKE '%".$q."%' 93 AND 94 p.post_status = 'publish' 95 AND 96 m.meta_key = '_regular_price' 97 AND 98 pt.meta_key = '_price'"; 99 $_r = $wpdb->get_results($select); 100 if(!empty($_r)) { 101 foreach ( $_r as $k => $post ) 102 { 103 $image_url = get_the_post_thumbnail_url( $post->id ); 104 if($image_url == "") { 105 $image_url = wc_placeholder_img_src(); 106 } 107 $_r[$k]->img = $image_url; 108 $_r[$k]->site = $site->blog_id; 109 } 110 $result[$site->blog_id]["result"] = $_r; 111 $blog_details = get_blog_details( array( 'blog_id' => $site->blog_id ) ); 112 $r["id"] = $site->blog_id; 113 $r["applink"] = base64_encode(json_encode(array("id" => $site->blog_id, "path" => $blog_details->path, "siteurl" => $blog_details->siteurl))); 114 $r["name"] = $blog_details->blogname; 115 $r["path"] = $blog_details->path; 116 $r["siteurl"] = $blog_details->siteurl; 117 $r["image"] = $bimage; 118 $result[$site->blog_id]["info"] = $r; 119 } 120 restore_current_blog(); 121 } 122 self::jsonView($result); 123 exit; 38 124 } 39 125 … … 416 502 private static function decode_this_key( $txt, $hashKey ) 417 503 { 418 return rtrim(mcrypt_decrypt(MCRYPT_RIJNDAEL_256, md5($hashKey), base64_decode( $txt ), MCRYPT_MODE_CBC, md5(md5($hashKey))), "\0"); 419 } 504 if(function_exists("mcrypt_encrypt")) { 505 return rtrim(mcrypt_decrypt(MCRYPT_RIJNDAEL_256, md5($hashKey), base64_decode( $txt ), MCRYPT_MODE_CBC, md5(md5($hashKey))), "\0"); 506 } 507 return base64_decode( $txt ); 508 } 509 420 510 } 421 511 -
appeto-woocommerce/trunk/api/views/v2/product.php
r1709968 r1961287 1 <?php 2 if(isset($extra->network) and $extra->network > 0) { 3 $current_blog_details = get_blog_details( array( 'blog_id' => $extra->network ) ); 4 $blog_id = $extra->network; 5 $ck = get_option("appeto_ck_".$blog_id, ""); 6 $cs = get_option("appeto_cs_".$blog_id, ""); 7 $localCk = get_option("appeto_localCk_".$blog_id, ""); 8 $localCs = get_option("appeto_localCs_".$blog_id, ""); 9 $woocommerce_api = $current_blog_details->siteurl."/"; 10 $currency = get_woocommerce_currency_symbol(); 11 $hashKey = get_option('appeto_secure_key_woo'); 12 $ck = base64_encode(appeto_encode_this_key($ck, $hashKey)); 13 $cs = base64_encode(appeto_encode_this_key($cs, $hashKey)); 14 } 15 ?> 1 16 <ion-view title="<?php echo $extra->name ?>" cache-view="false"> 2 17 <ion-content padding="false" ng-controller="WoocommerceProductCtrl" class="<?php echo $extra->content_classes." ".$extra->layout;?>" … … 5 20 layout='<?php echo $extra->layout?>'; 6 21 currency_symbol='<?php echo get_woocommerce_currency_symbol();?>'; 7 productId='<?php echo $extra->id?>';" 22 <?php 23 if(isset($extra->network) and $extra->network > 0) { 24 echo " fromNetwork=true; localCk='{$localCk}'; localCs='{$localCs}'; ck='{$ck}'; cs='{$cs}'; "; 25 } 26 ?> 27 productId='<?php echo $extra->id?>'; 28 " 8 29 > 9 30 <ion-slide-box ng-if="product.images.length > 0" class="product-thumb-slider" auto-play="true" show-pager="true"> -
appeto-woocommerce/trunk/controllers/menu.php
r1751958 r1961287 14 14 } 15 15 16 static function networkWoo() { 17 $path = plugin_dir_path(dirname(__FILE__)); 18 include($path.'views/wooNetwork.php'); 19 } 20 16 21 static function auth() 17 22 { … … 21 26 22 27 static function appetoWooPage() { 23 wp_redirect("admin.php?page=wc-settings&tab=settings_tab_appeto");28 appeto_change_location("admin.php?page=wc-settings&tab=settings_tab_appeto"); 24 29 } 25 30 static function appetoJsonApi() { 26 wp_redirect("options-general.php?page=json-api");31 appeto_change_location("options-general.php?page=json-api"); 27 32 } 28 33 static function appetoWpCors() { 29 wp_redirect("options-general.php?page=wp-cors");34 appeto_change_location("options-general.php?page=wp-cors"); 30 35 } 31 36 … … 83 88 'appeto_admin_menu::appetoWpCors' // clicking callback function 84 89 ); 90 add_submenu_page( 91 'appeto/controllers/menu.php', // Menu page to attach to #options-general.php 92 'ووکامرس شبکه ای', 93 'ووکامرس شبکه ای', 94 'manage_options', // permissions 95 'appeto-network-woo', // page-name (used in the URL) 96 'appeto_admin_menu::networkWoo' // clicking callback function 97 ); 85 98 } 86 99 } -
appeto-woocommerce/trunk/index.php
r1751958 r1961287 317 317 } 318 318 319 function appeto_change_location($url) { 320 if(!headers_sent()) { 321 header("Location: ".$url); 322 } 323 else { 324 echo '<script>document.location.href = "'.$url.'";</script>'; 325 } 326 exit; 327 } 328 319 329 /* Login/register */ 320 330 new appeto_auth(); 331 /* woocommrece network */ 332 function appeto_get_network_sites() { 333 $result = array(); 334 if(function_exists('get_sites')) { 335 $sites = get_sites(); 336 } 337 elseif(function_exists('wp_get_sites')) { 338 $sites = wp_get_sites(); 339 } 340 else { 341 $sites = array(); 342 } 343 foreach($sites as $site) { 344 if($site->path == "/") continue; 345 $blog_details = get_blog_details( array( 'blog_id' => $site->blog_id ) ); 346 $r["id"] = $site->blog_id; 347 $r["applink"] = base64_encode(json_encode(array("id" => $site->blog_id, "path" => $blog_details->path, "siteurl" => $blog_details->siteurl))); 348 $r["name"] = $blog_details->blogname; 349 $r["path"] = $blog_details->path; 350 $r["siteurl"] = $blog_details->siteurl; 351 $r["image"] = get_option("appeto_ntsite_img_".$site->blog_id, ""); 352 array_push($result, $r); 353 } 354 return $result; 355 } 356 357 function appeto_encode_this_key( $txt, $hashKey ) 358 { 359 if(function_exists("mcrypt_encrypt")) { 360 return base64_encode(mcrypt_encrypt(MCRYPT_RIJNDAEL_256, md5($hashKey), $txt, MCRYPT_MODE_CBC, md5(md5($hashKey)))); 361 } 362 return base64_encode($txt); 363 } -
appeto-woocommerce/trunk/readme.txt
r1751958 r1961287 2 2 Contributors: appeto 3 3 Tags: app, appeto, api, persian app generator, app generator, woocommerce, shop, woocommerce android, woocommerce ios, woocommerce mobile 4 Requires at least: 3.0.14 Requires at least: 4 5 5 Tested up to: 4 6 Stable tag: 4. 8.16 Stable tag: 4.9.8 7 7 License: appeto.ir users 8 8 … … 68 68 = 2.2.0 = 69 69 * Add login and register from application 70 71 = 3.0.0 = 72 * Add multi site (network) for woocommerce
Note: See TracChangeset
for help on using the changeset viewer.