Esempio n. 1
0
        private async Task ActivateCampaign(Uri uri)
        {
            CampaignManager campaigns = await Services.GetServiceAsync <CampaignManager> ();

            string          campaignId = uri.Segments[1];
            CampaignElement campaign   = campaigns.Elements.FirstOrDefault(c => c.Id == campaignId);

            if (campaign == null)
            {
                return;
            }

            campaigns.SelectedElement = campaign;
        }
Esempio n. 2
0
        private async void OnCreate()
        {
            CampaignElement c;

            IsBusy = true;
            try {
                var manager = await this.serviceProvider.GetServiceAsync <CampaignManager> ();

                if (IsOnline)
                {
                    var serviceClient = await this.serviceProvider.GetServiceAsync <ILiveCampaignClient> ();

                    RemoteCampaign rcampaign;
                    try {
                        rcampaign = await serviceClient.CreateCampaignAsync(Input.Trim(), default);
                    } catch (Exception ex) {
                        Error = ex.Message;
                        return;
                    }

                    c = await manager.CreateCampaignAsync(rcampaign);
                }
                else
                {
                    var sync = await this.serviceProvider.GetServiceAsync <ISyncService> ();

                    var campaign = new CampaignElement {
                        Name     = Input.Trim(),
                        IsRemote = false,
                    };
                    c = await sync.SaveElementAsync(campaign);
                }

                manager.SelectedElement = c;
            } finally {
                IsBusy = false;
            }
        }