Пример #1
0
 public bool LoadRulesFromDB()
 {
     if (RulesTableMgr.LoadRulesFromDB(RulesetId, DeviceName, Rules))
     {
         UpdateListRulesAudioClip();
         UpdateWhichRuleAudioClip();
         return(true);
     }
     return(false);
 }
Пример #2
0
        private void RenumberRules()
        {
            int ruleNumber = 1;

            foreach (var rule in Rules)
            {
                rule.RuleNumber = ruleNumber++;
            }
            RulesTableMgr.UpdateRules(RulesetId, Rules);
        }
Пример #3
0
        public bool DeleteRule(int ruleNumber)
        {
            var ruleToDelete = Rules.Where((x) => x.RuleNumber == ruleNumber).FirstOrDefault();

            if (ruleToDelete != null)
            {
                Rules.Remove(ruleToDelete);
                RenumberRules();
                UpdateListRulesAudioClip();
                UpdateWhichRuleAudioClip();
                return(RulesTableMgr.DeleteRule(RulesetId, ruleNumber));
            }
            return(false);
        }
Пример #4
0
        public bool ChangeRule(int ruleNumber, DeviceRule newRule)
        {
            var ruleToChange = Rules.Where((x) => x.RuleNumber == ruleNumber).FirstOrDefault();

            if (newRule != null && ruleToChange != null)
            {
                newRule.RuleNumber = ruleNumber;
                int indx = Rules.IndexOf(ruleToChange);
                Rules[indx] = newRule;
                UpdateListRulesAudioClip();
                UpdateWhichRuleAudioClip();
                return(RulesTableMgr.UpdateRules(RulesetId, Rules));
            }
            return(false);
        }
Пример #5
0
        private static void CreateDatabaseTables()
        {
            string filename = DBAdmin.CreateDBFile();

            if (EventLogTableMgr.CreateEventLogDBTable())
            {
                Logger.AddLogEntry(LogCategory.INFO, "Created Database file \'" + filename + "\'.");
            }
            SettingsTableMgr.CreateSettingsDBTable();
            AudioClipsTableMgr.CreateAudioClipsDBTable();
            TimeTriggerClipsTableMgr.CreateTimeTriggerClipsDBTable();
            RulesetsTableMgr.CreateRulesetsDBTable();
            RulesTableMgr.CreateRulesetRulesDBTable();
            SessionsTableMgr.CreateSessionsDBTable();
            SessionClipsTableMgr.CreateSessionsDBTable();
            OnlineVoicesTableMgr.CreateOnlineVoicesDBTable();
        }
Пример #6
0
 public bool AddRule(DeviceRule rule)
 {
     if (rule.TriggerClip != null && rule.ActionClip != null)
     {
         var existingRule = Rules.Where((x) =>
                                        x.TriggerClip.StateText.Equals(rule.TriggerClip.StateText) &&
                                        x.ActionClip.StateText.Equals(rule.ActionClip.StateText)
                                        ).FirstOrDefault();
         if (rule != null && existingRule == null)
         {
             Rules.Add(rule);
             rule.RuleNumber = Rules.Count;
             UpdateListRulesAudioClip();
             UpdateWhichRuleAudioClip();
             return(RulesTableMgr.AddRule(RulesetId, rule));
         }
     }
     return(false);
 }