Exemplo n.º 1
0
    protected void AdvertsGridView_RowCommand(object sender, GridViewCommandEventArgs e)
    {
        if (e.CommandName == "remove")
        {
            ErrorMessagePanel2.Visible = false;

            var index = e.GetSelectedRowIndex() % AdvertsGridView.PageSize;
            var row   = AdvertsGridView.Rows[index];
            var AdId  = (row.Cells[0].Text.Trim());
            var Ad    = new PaidToPromoteAdvert(Convert.ToInt32(AdId))
            {
                Status = AdvertStatus.Deleted
            };
            Ad.Save();

            AdvertsGridView.DataBind();
        }
    }
Exemplo n.º 2
0
    protected void CreateAdButton_Click(object sender, EventArgs e)
    {
        ErrorMessagePanel.Visible = false;
        SuccMessagePanel.Visible  = false;

        if (Page.IsValid)
        {
            try
            {
                AppSettings.DemoCheck();

                if (URL.Enabled)
                {
                    throw new MsgException(U4200.CHECKURL);
                }

                var user         = Member.CurrentInCache;
                var selectedPack = new PaidToPromotePack(Convert.ToInt32(ddlOptions.SelectedValue));
                var advert       = new PaidToPromoteAdvert();
                var adCost       = selectedPack.Price;

                advert.CreatorId = user.Id;
                advert.PackId    = selectedPack.Id;
                //TODO ??
                //advert.Status = AdvertStatusExtensions.GetStartingStatus();
                advert.TargetUrl = URL.Text;

                if (chbGeolocation.Checked)
                {
                    adCost += AppSettings.PaidToPromote.GeolocationPrice;

                    var CTable   = GeoCountries.Items;
                    var geoUList = GeolocationUtils.GeoCountData.Keys;
                    var sb       = new StringBuilder();

                    foreach (ListItem item in CTable)
                    {
                        if (geoUList.Contains(item.Value))
                        {
                            var countryCode = CountryManager.GetCountryCode(item.Value);
                            if (!string.IsNullOrWhiteSpace(countryCode))
                            {
                                sb.Append(CountryManager.GetCountryCode(item.Value));
                                sb.Append(",");
                            }
                        }
                    }

                    advert.GeolocatedCC = sb.ToString().Trim(',');
                }
                else
                {
                    advert.GeolocatedCC = string.Empty;
                }

                if (!PaidToPromoteManager.IsEmptySlotInRotation)
                {
                    throw new MsgException(U6009.NOEMPTYSLOTINROTATION);
                }

                PurchaseOption.ChargeBalance(user, adCost, TargetBalanceRadioButtonList.Feature, TargetBalanceRadioButtonList.TargetBalance, "Paid To Promote Ad Purchase");

                advert.Save();

                History.AddPurchase(user.Name, adCost, "Paid To Promote Campaign");
                //MatrixBase matrix = MatrixFactory.GetMatrix();
                //if (matrix != null)
                //{
                //    matrix.TryAddMember(User, AdvertType.PTC);
                //    matrix.Credit(User, AdCost);
                //}

                URL.Text = "";
                chbGeolocation.Checked = false;

                SuccMessagePanel.Visible = true;
                SuccMessage.Text         = U3501.ADCREATED;
            }
            catch (MsgException ex)
            {
                ErrorMessagePanel.Visible = true;
                ErrorMessage.Text         = ex.Message;
            }
            catch (Exception ex)
            {
                ErrorLogger.Log(ex);
            }
        }
    }
Exemplo n.º 3
0
    protected void AdvertsGridView_RowDataBound(object sender, GridViewRowEventArgs e)
    {
        if (e.Row.RowType == DataControlRowType.DataRow)
        {
            //[0] Id - hidden
            var ptpAd = new PaidToPromoteAdvert(Convert.ToInt32(e.Row.Cells[0].Text));

            //[1] PackId - hidden
            var ptpPack = new PaidToPromotePack(Convert.ToInt32(e.Row.Cells[1].Text));

            //[2] TargetUrl
            var link = e.Row.Cells[2].Text;
            e.Row.Cells[2].Text = string.Format("<a href='{0}' target='_blank'>{0}</a>", link);

            //[3] CreationDate
            //OK

            //[4] FinishDate - can be null
            //OK

            //[5] Creation Date - change it to progress
            e.Row.Cells[5].Text = HtmlCreator.GenerateProgressHTML(0m, ptpAd.EndValue, (decimal)ptpPack.Ends.Value);

            //[6] EndValue - change to End Mode
            var Mode = ptpPack.Ends.EndMode;
            e.Row.Cells[6].Text = Mode.ToString();

            //[7] EndValue(title: Click/Days) - Depend on Pack change it to click/days
            if (Mode == End.Mode.Clicks)
            {
                e.Row.Cells[7].Text += string.Format(" {0}", L1.CLICKS);
            }
            else
            {
                e.Row.Cells[7].Text += string.Format(" {0}", CultureInfo.CurrentCulture.TextInfo.ToTitleCase(L1.DAYS.ToLower()));
            }

            //[8] GeolocatedCC - check all geo and add checkBox
            if (ptpAd.IsGeo())
            {
                e.Row.Cells[8].Text = HtmlCreator.GetCheckboxCheckedImage();
            }
            else
            {
                e.Row.Cells[8].Text = HtmlCreator.GetCheckboxUncheckedImage();
            }

            //[9] Status
            var status = (AdvertStatus)Convert.ToInt32(e.Row.Cells[9].Text);
            e.Row.Cells[9].Text = HtmlCreator.GetColoredStatus(status);

            //[10] Remove button
            //OK
        }
        else if (e.Row.RowType == DataControlRowType.Header)
        {
            AdvertsGridView.Columns[2].HeaderText = U6008.TARGETURL;
            AdvertsGridView.Columns[3].HeaderText = L1.CREATED;
            AdvertsGridView.Columns[4].HeaderText = L1.FINISHED;
            AdvertsGridView.Columns[5].HeaderText = L1.PROGRESS;
            AdvertsGridView.Columns[7].HeaderText = string.Format("{0}/{1}", L1.CLICKS, CultureInfo.CurrentCulture.TextInfo.ToTitleCase(L1.DAYS.ToLower()));
            AdvertsGridView.Columns[9].HeaderText = L1.STATUS;
        }
    }