Ejemplo n.º 1
0
        public WCObject(RestAPI api)
        {
            if (api.Version != APIVersion.Version3)
            {
                throw new Exception("Please use WooCommerce Restful API Version 3 url for this WCObject. e.g.: http://www.yourstore.co.nz/wp-json/wc/v3/");
            }

            API = api;

            Coupon           = new WCItem <T1>(api);
            Customer         = new WCItem <T2>(api);
            Product          = new WCProductItem(api);
            Order            = new WCOrderItem(api);
            Attribute        = new WCAttributeItem(api);
            Category         = new WCItem <T11>(api);
            ShippingClass    = new WCItem <T12>(api);
            Tag              = new WCItem <T13>(api);
            Report           = new WCItem <Report>(api);
            TaxRate          = new WCItem <T14>(api);
            TaxClass         = new WCItem <T15>(api);
            Webhook          = new WCItem <Webhook>(api);
            PaymentGateway   = new WCItem <PaymentGateway>(api);
            ShippingZone     = new WCShippingZoneItem(api);
            ShippingMethod   = new WCItem <ShippingMethod>(api);
            SystemStatus     = new WCItem <SystemStatus>(api);
            SystemStatusTool = new WCItem <SystemStatusTool>(api);
            Setting          = new WCItem <Setting>(api);
            Data             = new WCItem <Data>(api);
            Plugin           = new WCItem <Plugins>(api);
        }
Ejemplo n.º 2
0
        public WCObject(RestAPI api)
        {
            if (api.Version != APIVersion.Version2)
            {
                throw new Exception("Please use WooCommerce Restful API Version 2 url for this WCObject. e.g.: http://www.yourstore.co.nz/wp-json/wc/v2/");
            }

            API = api;

            Coupon           = new WCItem <v2.Coupon>(api);
            Customer         = new WCItem <v2.Customer>(api);
            Product          = new WCProductItem(api);
            Order            = new WCOrderItem(api);
            Attribute        = new WCAttributeItem(api);
            Category         = new WCItem <v2.ProductCategory>(api);
            ShippingClass    = new WCItem <v2.ShippingClass>(api);
            Tag              = new WCItem <v2.ProductTag>(api);
            Report           = new WCItem <v2.Report>(api);
            TaxRate          = new WCItem <v2.TaxRate>(api);
            TaxClass         = new WCItem <v2.TaxClass>(api);
            Webhook          = new WCItem <v2.Webhook>(api);
            PaymentGateway   = new WCItem <v2.PaymentGateway>(api);
            ShippingZone     = new WCShippingZoneItem(api);
            ShippingMethod   = new WCItem <v2.ShippingMethod>(api);
            SystemStatus     = new WCItem <v2.SystemStatus>(api);
            SystemStatusTool = new WCItem <v2.SystemStatusTool>(api);
            Setting          = new WCItem <v2.Setting>(api);
        }
Ejemplo n.º 3
0
        public WPObject(RestAPI api)
        {
            API = api;

            Post         = new WPPostItem(api);
            Categories   = new WCItem <T3>(api);
            Tags         = new WCItem <T4>(api);
            Pages        = new WCItem <T5>(api);
            Comments     = new WCItem <T6>(api);
            Taxonomies   = new WCItem <T7>(api);
            Media        = new WPMediaItem(api);
            Users        = new WCItem <T9>(api);
            PostTypes    = new WCItem <T10>(api);
            PostStatuses = new WCItem <T11>(api);
            Settings     = new WPSettingItem(api);
        }
Ejemplo n.º 4
0
        public static async Task <TaxClass> DeleteTaxClass(this WCItem <TaxClass> item, string slug, bool force = false, Dictionary <string, string> parms = null)
        {
            if (force)
            {
                if (parms == null)
                {
                    parms = new Dictionary <string, string>();
                }

                if (!parms.ContainsKey("force"))
                {
                    parms.Add("force", "true");
                }
            }

            return(item.API.DeserializeJSon <TaxClass>(await item.API.DeleteRestful(item.APIEndpoint + "/" + slug, parms).ConfigureAwait(false)));
        }
Ejemplo n.º 5
0
 public static async Task <List <WISDM_csp_data> > WISDM_GetByCustomerProduct(this WCItem <Plugins> item, int userID, int productID)
 {
     return(item.API.DeserializeJSon <List <WISDM_csp_data> >(await item.API.GetRestful($"csp-mappings/user/{userID}/product/{productID}")));
 }
Ejemplo n.º 6
0
 public static async Task <string> WISDM_GetByCustomer(this WCItem <Plugins> item, int userID)
 {
     return(await item.API.GetRestful($"csp-mappings/user/{userID}"));
 }
Ejemplo n.º 7
0
 public static async Task <Currency> GetCurrency(this WCItem <Data> item, string currency = "current")
 {
     return(item.API.DeserializeJSon <Currency>(await item.API.GetRestful(item.APIEndpoint + "/currencies/" + currency, null).ConfigureAwait(false)));
 }
Ejemplo n.º 8
0
 public static async Task <List <Currency> > GetCurrencies(this WCItem <Data> item)
 {
     return(item.API.DeserializeJSon <List <Currency> >(await item.API.GetRestful(item.APIEndpoint + "/currencies", null).ConfigureAwait(false)));
 }
Ejemplo n.º 9
0
 public static async Task <List <SettingOption> > UpdateSettingOptions(this WCItem <Setting> item, string settingId, SettingOptionBatch batch, Dictionary <string, string> parms = null)
 {
     return(item.API.DeserializeJSon <List <SettingOption> >(await item.API.PostRestful(item.APIEndpoint + "/" + settingId + "/batch", parms).ConfigureAwait(false)));
 }
Ejemplo n.º 10
0
 public static async Task <SettingOption> GetSettingOption(this WCItem <Setting> item, string settingId, string optionId, Dictionary <string, string> parms = null)
 {
     return(item.API.DeserializeJSon <SettingOption>(await item.API.GetRestful(item.APIEndpoint + "/" + settingId + "/" + optionId, parms).ConfigureAwait(false)));
 }
Ejemplo n.º 11
0
 public static async Task <List <SettingOption> > GetSettingOptions(this WCItem <Setting> item, string settingId, Dictionary <string, string> parms = null)
 {
     return(item.API.DeserializeJSon <List <SettingOption> >(await item.API.GetRestful(item.APIEndpoint + "/" + settingId, parms)));
 }
Ejemplo n.º 12
0
 public static async Task <SystemStatusTool> Run(this WCItem <SystemStatusTool> item, string id, Dictionary <string, string> parms = null)
 {
     return(item.API.DeserializeJSon <SystemStatusTool>(await item.API.PutRestful(item.APIEndpoint + "/" + id, parms).ConfigureAwait(false)));
 }
Ejemplo n.º 13
0
 public static async Task <SystemStatus> Get(this WCItem <SystemStatus> item)
 {
     return(item.API.DeserializeJSon <SystemStatus>(await item.API.GetRestful(item.APIEndpoint, null).ConfigureAwait(false)));
 }
Ejemplo n.º 14
0
 public static async Task <List <CustomerDownloads> > GetCustomerDownloads(this WCItem <Customer> item, int id, Dictionary <string, string> parms = null)
 {
     return(item.API.DeserializeJSon <List <CustomerDownloads> >(await item.API.GetRestful(item.APIEndpoint + "/" + id.ToString() + "/downloads", parms).ConfigureAwait(false)));
 }
Ejemplo n.º 15
0
 public static async Task <SettingOption> UpdateSettingOption(this WCItem <Setting> item, string settingId, string optionId, Dictionary <string, string> parms = null)
 {
     return(item.API.DeserializeJSon <SettingOption>(await item.API.PostRestful(item.APIEndpoint + "/" + settingId + "/" + optionId, parms)));
 }
Ejemplo n.º 16
0
        public static async Task <Dictionary <string, List <string> > > WISDM_Delete(this WCItem <Plugins> item, List <WISDM_csp_data> data)
        {
            data.ForEach(x => x.GetHash());

            return(item.API.DeserializeJSon <Dictionary <string, List <string> > >(await item.API.DeleteRestful($"csp-mappings", "{ \"csp_data\": " + item.API.SerializeJSon(data) + " }")));
        }
Ejemplo n.º 17
0
 public static async Task <List <TopSellersReport> > GetTopSellerReport(this WCItem <Report> item, Dictionary <string, string> parms = null)
 {
     return(item.API.DeserializeJSon <List <TopSellersReport> >(await item.API.GetRestful(item.APIEndpoint + "/top_sellers", parms).ConfigureAwait(false)));
 }
Ejemplo n.º 18
0
 public static async Task <List <SalesReport> > GetSalesReport(this WCItem <Report> item, Dictionary <string, string> parms = null)
 {
     return(item.API.DeserializeJSon <List <SalesReport> >(await item.API.GetRestful(item.APIEndpoint + "/sales", parms)));
 }