예제 #1
0
 public ActionResult AddBasicDetails([Bind(Include = "OrganizationID,OrganizationNameInFull,OrganizationNameAbbreviation,OrganizationEmail,Address,Country,State,AboutOrganization,DateModified,CreatedBy,DateCreated")] OrganizationSettings organizationSettings)
 {
     if (ModelState.IsValid)
     {
         DateTime dt = DateTime.Now;
         organizationSettings.OrganizationID = Guid.NewGuid();
         organizationSettings.DateCreated    = dt;
         organizationSettings.CreatedBy      = "Admin";
         db.OrganizationSettings.Add(organizationSettings);
         db.SaveChanges();
         var BasicDetails = db.OrganizationSettings.Select(x => new
         {
             x.OrganizationID,
             DateCreated = x.DateCreated.Value.ToString(),
             x.CreatedBy
         });
         var AdminDashboard = new
         {
             success = true,
             message = "Organization onboarded successfully!!!",
             data    = new
             {
                 BasicDetails = BasicDetails,
             }
         };
         return(Json(AdminDashboard, JsonRequestBehavior.AllowGet));
     }
     return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
 }
예제 #2
0
        public ActionResult DeleteConfirmed(Guid id)
        {
            OrganizationSettings organizationSettings = db.OrganizationSettings.Find(id);

            db.OrganizationSettings.Remove(organizationSettings);
            db.SaveChanges();
            return(RedirectToAction("Index"));
        }
예제 #3
0
 public ActionResult Edit([Bind(Include = "OrganizationID,OrganizationNameInFull,OrganizationNameAbbreviation,OrganizationEmail,Address,Country,State,AboutOrganization,DateModified,CreatedBy,DateCreated,OrganizationLogoPath")] OrganizationSettings organizationSettings)
 {
     if (ModelState.IsValid)
     {
         db.Entry(organizationSettings).State = EntityState.Modified;
         db.SaveChanges();
         return(RedirectToAction("Index"));
     }
     return(View(organizationSettings));
 }
        public static string GetOrganizationSetting(RestCommand command, int organizationSettingID)
        {
            OrganizationSetting organizationSetting = OrganizationSettings.GetOrganizationSetting(command.LoginUser, organizationSettingID);

            if (organizationSetting.OrganizationID != command.Organization.OrganizationID)
            {
                throw new RestException(HttpStatusCode.Unauthorized);
            }
            return(organizationSetting.GetXml("OrganizationSetting", true));
        }
예제 #5
0
        // GET: OrganizationSettings/Edit/5
        public ActionResult Edit(Guid?id)
        {
            if (id == null)
            {
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
            }
            OrganizationSettings organizationSettings = db.OrganizationSettings.Find(id);

            if (organizationSettings == null)
            {
                return(HttpNotFound());
            }
            return(View(organizationSettings));
        }
        public static string GetOrganizationSettings(RestCommand command)
        {
            OrganizationSettings organizationSettings = new OrganizationSettings(command.LoginUser);

            organizationSettings.LoadByOrganizationID(command.Organization.OrganizationID);

            if (command.Format == RestFormat.XML)
            {
                return(organizationSettings.GetXml("OrganizationSettings", "OrganizationSetting", true, command.Filters));
            }
            else
            {
                throw new RestException(HttpStatusCode.BadRequest, "Invalid data format");
            }
        }
예제 #7
0
        public void AddTelephone(OrganizationSettings organizationSettings, params string[] TelephoneNumbers)
        {
            // TODO: Anita. check if this telephone number has already been added for this organization
            string email    = Request.Headers["Email"];
            var    tenantId = catalog.GetTenantIDFromClientURL(email);
            var    TelephoneNumbersFromDB   = db.TelephoneNumbers.Select(x => x.TelephoneNumber).ToList();
            var    DistinctTelephoneNumbers = TelephoneNumbers.Except(TelephoneNumbersFromDB);

            foreach (var telephone in DistinctTelephoneNumbers)
            {
                DateTime dt = DateTime.Now;
                db.TelephoneNumbers.Add(new TelephoneNumbers
                {
                    TelephoneNumberID = Guid.NewGuid(),
                    TenantID          = tenantId,
                    OrganizationID    = organizationSettings.OrganizationID,
                    TelephoneNumber   = telephone,
                    DateCreated       = dt,
                    DateModified      = dt,
                    CreatedBy         = "Admin"
                });
                db.SaveChanges();
            }
        }
예제 #8
0
        public async Task <string> FetchDeflections(int organization, string phrase, int?customerHubID)
        {
            try
            {
                List <DeflectorReturn> filteredList = new List <DeflectorReturn>();

                if (Convert.ToBoolean(OrganizationSettings.ReadString(LoginUser.Anonymous, organization, "ChatTicketDeflectionEnabled", "False")))
                {
                    //Customer Hub
                    if (customerHubID != null)
                    {
                        filteredList = Deflector.FetchHubDeflections(organization, phrase, (int)customerHubID);
                    }
                    //Portal
                }

                return(JsonConvert.SerializeObject(filteredList));
            }
            catch (Exception ex)
            {
                ExceptionLogs.LogException(LoginUser.Anonymous, ex, "Deflector");
                return("[]");
            }
        }
예제 #9
0
        public async Task <ActionResult> UpdateBasicDetails(OrganizationSettings organizationSettings, HttpPostedFileBase image, params string[] TelephoneNumbers)
        {
            string email    = Request.Headers["Email"];
            var    tenantId = catalog.GetTenantIDFromClientURL(email);
            var    OrganizationSettingsTenantID = db.OrganizationSettings.Where(x => x.OrganizationID == organizationSettings.OrganizationID).Select(x => x.TenantID).FirstOrDefault();

            try
            {
                if (OrganizationSettingsTenantID != tenantId)
                {
                    return(Json(new
                    {
                        success = false,
                        message = "TenantId is null",
                        data = new { }
                    }, JsonRequestBehavior.AllowGet));
                }
                DateTime dt = DateTime.Now;
                var      currentOrganizationDetails = db.OrganizationSettings.FirstOrDefault(o => o.OrganizationID == o.OrganizationID);
                var      Organization = db.OrganizationSettings.Where(x => x.TenantID == tenantId).Select(x => x.OrganizationNameInFull).FirstOrDefault();
                if (currentOrganizationDetails == null && tenantId == null)
                {
                    LogHelper.Log(Log.Event.UPDATE_BASICDETAILS, "OrgasnizationID not found");
                    return(Json(new
                    {
                        success = false,
                        message = "OrgasnizationID not found",
                        data = new { }
                    }, JsonRequestBehavior.AllowGet));
                }
                currentOrganizationDetails.TenantID = tenantId;
                currentOrganizationDetails.OrganizationNameInFull       = organizationSettings.OrganizationNameInFull;
                currentOrganizationDetails.OrganizationNameAbbreviation = organizationSettings.OrganizationNameAbbreviation;
                currentOrganizationDetails.OrganizationEmail            = organizationSettings.OrganizationEmail;
                currentOrganizationDetails.Address           = organizationSettings.Address;
                currentOrganizationDetails.Country           = organizationSettings.Country;
                currentOrganizationDetails.State             = organizationSettings.State;
                currentOrganizationDetails.AboutOrganization = organizationSettings.AboutOrganization;
                currentOrganizationDetails.DateModified      = dt;
                currentOrganizationDetails.CreatedBy         = Organization;
                if (image != null)
                {
                    currentOrganizationDetails.OrganizationLogoPath = await new FileUploadHelper().UploadImageToAzureStorage(image) + "";
                }
                db.SaveChanges();
                if (TelephoneNumbers != null && TelephoneNumbers.Length > 0)
                {
                    AddTelephone(organizationSettings, TelephoneNumbers);
                }
            }
            catch (Exception ex)
            {
                LogHelper.Log(Log.Event.UPDATE_BASICDETAILS, ex.Message);
                ExceptionError(ex.Message, ex.StackTrace);
            }
            return(Json(new
            {
                success = true,
                message = "Basic details added successfully!!!",
                data = db.OrganizationSettings.Where(x => x.OrganizationID == organizationSettings.OrganizationID && x.TenantID == tenantId).Select(x => new
                {
                    x.OrganizationID,
                    x.OrganizationNameInFull,
                    x.OrganizationNameAbbreviation,
                    x.OrganizationEmail,
                    x.State,
                    x.Country,
                    x.AboutOrganization,
                    x.Address,
                    x.OrganizationLogoPath,
                    DateModified = x.DateModified.Value.ToString(),
                    x.CreatedBy,
                    TelephoneNumbers = db.TelephoneNumbers.Where(y => y.OrganizationID == x.OrganizationID).Select(y => y.TelephoneNumber)
                }).FirstOrDefault()
            }, JsonRequestBehavior.AllowGet));
        }
예제 #10
0
    void Awake()
    {
        ModConfig <OrganizationSettings> modConfig = new ModConfig <OrganizationSettings>("OrganizationSettings");

        //Read from the settings file, or create one if one doesn't exist
        Settings = modConfig.Settings;
        //Update the settings file incase there was an error during read
        modConfig.Settings = Settings;
        nextSwitch         = "";
        currentSwitch      = "Up";
        moduleId           = moduleIdCounter++;
        moduleSolved       = false;
        foreach (KMSelectable obj in buttons)
        {
            KMSelectable pressed = obj;
            pressed.OnInteract += delegate() { PressButton(pressed); return(false); };
        }
        if (fullModuleList == null)
        {
            fullModuleList = GetComponent <KMBossModule>().GetIgnoredModules("Organization", new string[] {
                "Forget Me Not",     //Mandatory to prevent unsolvable bombs.
                "Forget Everything", //Cruel FMN.
                "Turn The Key",      //TTK is timer based, and stalls the bomb if only it and FI are left.
                "Souvenir",          //Similar situation to TTK, stalls the bomb.
                "The Time Keeper",   //Again, timilar to TTK.
                "Forget This",
                "Simon's Stages",
                "Timing is Everything",
                "Organization", //Also mandatory to prevent unsolvable bombs.
                "The Swan",
                "Hogwarts",
                "Divided Squares",
                "Cookie Jars",
                "Turn The Keys",
                "Forget Them All",
                "Tallordered Keys",
                "Purgatory",
                "Forget Us Not",
                "Forget Perspective"
            });
        }
        List <IEnumerable <string> > ignoreLists = new List <IEnumerable <string> >();

        ignoredModules = fullModuleList.ToArray();
        //Split the lists at empty values
        while (ignoredModules.Count() > 0)
        {
            ignoreLists.Add(ignoredModules.TakeWhile(x => x != ""));
            ignoredModules = ignoredModules.SkipWhile(x => x != "").Skip(1).ToArray();
        }
        //If we're ignoring solved based modules and the ignored module list is compatble, combine two of the lists
        if (Settings.ignoreSolveBased && ignoreLists.Count > 1)
        {
            ignoredModules = ignoreLists[0].Concat(ignoreLists[1]).ToArray();
        }
        //If the ignore module list is incompatible or solved based modules will not be ignored, either use the whole list or the first split
        else
        {
            ignoredModules = ignoreLists.FirstOrDefault().ToArray();
        }
        //If the JSON is compatible with move to back modules, add them here
        if (ignoreLists.Count > 2)
        {
            backModules = ignoreLists.Last().ToArray();
        }
        GetComponent <KMBombModule>().OnActivate += OnActivate;
    }
예제 #11
0
 public override void WriteString(string key, string value)
 {
     OrganizationSettings.WriteString(LoginUser, key, value);
 }
예제 #12
0
 public override string ReadString(string key, string defaultValue)
 {
     return(OrganizationSettings.ReadString(LoginUser, key, defaultValue));
 }
예제 #13
0
 /// <summary>
 /// Initializes a new instance of the <see cref="Organization" /> class.
 /// </summary>
 /// <param name="id">id.</param>
 /// <param name="emailOverrideFolderPath">emailOverrideFolderPath.</param>
 /// <param name="name">name.</param>
 /// <param name="contactEmail">contactEmail.</param>
 /// <param name="contactPhone">contactPhone.</param>
 /// <param name="nation">nation.</param>
 /// <param name="city">city.</param>
 /// <param name="privateSettings">privateSettings.</param>
 /// <param name="publicSettings">publicSettings.</param>
 /// <param name="settings">settings.</param>
 public Organization(string id = default(string), string emailOverrideFolderPath = default(string), string name = default(string), string contactEmail = default(string), string contactPhone = default(string), string nation = default(string), string city = default(string), OrganizationPrivateSettings privateSettings = default(OrganizationPrivateSettings), OrganizationPublicSettings publicSettings = default(OrganizationPublicSettings), OrganizationSettings settings = default(OrganizationSettings))
 {
     this.Id = id;
     this.EmailOverrideFolderPath = emailOverrideFolderPath;
     this.Name            = name;
     this.ContactEmail    = contactEmail;
     this.ContactPhone    = contactPhone;
     this.Nation          = nation;
     this.City            = city;
     this.PrivateSettings = privateSettings;
     this.PublicSettings  = publicSettings;
     this.Settings        = settings;
 }