using System; using CIG; using CIG.Translation; using UnityEngine; using UnityEngine.UI; public class GiftsPopupView : PopupBaseView { public void OnRedeemClicked() { ((GiftsPopupState)this.State).RedeemCode(this._codeField.text); } public void OnInstagramClicked() { ((GiftsPopupState)this.State).OpenInstagram(); } public void OnFacebookClicked() { ((GiftsPopupState)this.State).OpenFacebook(); } public void OnTwitterClicked() { ((GiftsPopupState)this.State).OpenTwitter(); } public void Initialize(string friendCode) { ILocalizedString localizedString = (!string.IsNullOrEmpty(friendCode)) ? Localization.Literal(friendCode) : Localization.Key("social_loading"); this._friendCodeLabel.LocalizedString = Localization.Concat(new ILocalizedString[] { Localization.Key("social_your_friendcode"), Localization.LiteralNewLineString, localizedString }); this._currencyAnimationSource.Init(this.State); } public void Deinitialize() { this._currencyAnimationSource.Deinit(); } public void UpdateInput(bool isActive) { this._codeField.enabled = isActive; this._redeemButton.enabled = isActive; this._overlayImage.raycastTarget = isActive; this._closeButton.enabled = isActive; } [SerializeField] private LocalizedText _friendCodeLabel; [SerializeField] private InputField _codeField; [SerializeField] private Button _redeemButton; [SerializeField] private Image _overlayImage; [SerializeField] private Button _closeButton; [SerializeField] private CurrencyAnimationSource _currencyAnimationSource; }