Beispiel #1
0
        public void CreateCalendarTable(string tableName)
        {
            calendarObject cObj = new calendarObject();

            StringBuilder sbElements = new StringBuilder();
            {
                bool justCreated = true;

                foreach (sqliteBase sElement in cObj.values)
                {
                    if (justCreated)
                    {
                        justCreated = false;
                    }
                    else
                    {
                        sbElements.Append(", ");
                    }
                    sbElements.Append(sElement.valueName + " " + sElement.dataType);
                }
            }

            string sql_command = "CREATE TABLE " + tableName + " ( " + sbElements.ToString() + ")";

            SQLiteCommandsExecuter.executeNonQuery(sql_command, Core.AppCore.dCore.M_dbConnection);
        }
        public static void AddNewElement(string tableSource)
        {
            Add_Project inputDialog = new Add_Project()
            {
                Style  = (Style)App.Current.Resources["BlankWindow"],
                Height = 500,
                Width  = 600
            };

            if (tableSource != "")
            {
                inputDialog.parentTable = tableSource;
            }

            if (inputDialog.ShowDialog().Value)
            {
                try
                {
                    calendarObject obj = inputDialog.CalendarObject;
                    Core.AppCore.dCore.CalendarObjectManager.AddCalendarObject(obj);
                }
                catch (Exception ex)
                {
                    ex.Source = "SQL_lite_database_search_wpf.UI.UIObjectManager.addNewElement(string)";
                    Usefull_Tools.ErrorHandeler.printOut(ex);
                }
                calendarContentChanged?.Invoke();
            }
        }
        public CalendarObjectView(calendarObject cObj)
        {
            InitializeComponent();


            CalendarObject = cObj;
            LoadCommponements();
        }
Beispiel #4
0
        public calendarObject GetCalendarObject(int objectID, string tableName)
        {
            string           sql      = "select * from " + tableName + " where (" + elementID + "=" + objectID + ")  order by _rowid_ ASC LIMIT 1";
            SQLiteDataReader reader   = SQLiteCommandsExecuter.executeDataReader(sql, Core.AppCore.dCore.M_dbConnection);
            calendarObject   cObjects = ReaderToCobj(reader, tableName);

            return(cObjects);
        }
Beispiel #5
0
        public ElementColorPicker(calendarObject cObj)
        {
            CalendarObject = cObj;

            currentColors.Add(cObj.color.value);

            InitializeComponent();
            loadColors();
        }
        public void addProject(Project prj)
        {
            AppCore.projects.Add(prj);

            calendarObject c = prj;

            AppCore.dCore.calendarObjectManager.addCalendarObject(c);
            AppCore.dCore.calendarObjectManager.createCalendarTable(prj.projectTableName);
        }
Beispiel #7
0
        // update or save, the same thing
        public void UpdateCalendarObject(calendarObject cObj)
        {
            calendarObject old = GetCalendarObject(cObj.elementID.value, cObj.tableName);

            for (int i = 0; i < cObj.values.Length; i++)
            {
                if (cObj.values[i].Equals(old.values[i]) == false)
                {
                    UpdateCalendarObject(cObj.values[i], cObj.elementID.value, cObj.tableName);
                }
            }
        }
Beispiel #8
0
        public void DeleteCalendarObject(calendarObject cObj, bool deleteAssociatedTable = true)
        {
            if (deleteAssociatedTable)
            {
                if (cObj.isRepository.value)
                {
                    DeleteCalendarTable(cObj.projectTableName.value);
                }
            }

            DeleteCalendarObject(cObj.elementID.value, cObj.tableName);
        }
Beispiel #9
0
        public static bool isDateBetween(calendarObject element, DateTime startDate, DateTime endDate)
        {
            if (element.isDateUsed.value == true)
            {
                bool superior = isOneOfSlectedDateBetween(element.startTime.value, startDate, endDate);
                bool inferior = isOneOfSlectedDateBetween(element.endTime.value, startDate, endDate);

                if (superior || inferior)
                {
                    return(true);
                }
            }
            return(false);
        }
Beispiel #10
0
        public SmallCalendarView(calendarObject cObj)
        {
            InitializeComponent();
            CalendarObject = cObj;


            this.Background    = new SolidColorBrush(cObj.color.value);
            this.UITbName.Text = cObj.name.value;

            if (cObj.description.value != "" && cObj.description.value != null)
            {
                this.ToolTip = cObj.description.value;
            }
        }
        public static calendarObject ChangeCalendarObjectColor(calendarObject cObj)
        {
            ElementColorPicker inputDialog = new ElementColorPicker(cObj)
            {
                Style = (Style)App.Current.Resources["BlankWindow"]
            };

            if (inputDialog.ShowDialog().Value)
            {
                cObj = inputDialog.CalendarObject;
                Core.AppCore.dCore.CalendarObjectManager.UpdateCalendarObject(cObj.color, cObj.elementID.value, cObj.tableName);
                calendarContentChanged?.Invoke();
            }

            return(cObj);
        }
        public static calendarObject ChangeCalendarObject(calendarObject cObj)
        {
            Add_Project inputDialog = new Add_Project(cObj)
            {
                Style = (Style)App.Current.Resources["BlankWindow"]
            };

            if (inputDialog.ShowDialog().Value)
            {
                cObj = inputDialog.UICalendarInformation.CalendarObject;

                // update
                Core.AppCore.dCore.CalendarObjectManager.UpdateCalendarObject(cObj);

                calendarContentChanged?.Invoke();
            }

            return(cObj);
        }
Beispiel #13
0
        public static bool isDateBetween(calendarObject element, DateTime day)
        {
            if (element.isDateUsed.value == true)
            {
                double startDate = element.startTime.value.Date.ToOADate();
                double endDate   = element.endTime.value.Date.ToOADate();

                double testDate = day.Date.Date.ToOADate();

                bool superior = (startDate <= testDate);
                bool inferior = (testDate <= endDate);

                if (superior && inferior)
                {
                    return(true);
                }
            }
            return(false);
        }
Beispiel #14
0
        /// <summary>
        /// Add the calendar object to the table and create it associated projecttablename if needed
        /// </summary>
        /// <param name="cObj"></param>
        public void AddCalendarObject(calendarObject cObj, bool createAssociatedTable = false)
        {
            try
            {
                if (cObj.tableName == null)
                {
                    throw new ArgumentNullException();
                }

                // associate project table name :
                // ============

                if (cObj.isRepository.value)
                {
                    if ((cObj.isRepository.value && createAssociatedTable) || (cObj.projectTableName.value == null || cObj.projectTableName.value == ""))
                    {
                        cObj.projectTableName.value = "Element_" + Guid.NewGuid().ToString("n") + "_Tasks";
                    }
                    // else just use the current table name
                    CreateCalendarTable(cObj.projectTableName.value);
                }

                Request.RequestBuilder rb = new Request.RequestBuilder(cObj.tableName);
                foreach (sqliteBase sb in cObj.values)
                {
                    rb.addElement(sb.valueName, sb.baseValue);
                }

                SQLiteCommand cmd = Request.CommandBuilder.getCommand(rb, Core.AppCore.dCore.M_dbConnection);
                cmd.ExecuteNonQuery();
            }
            catch (Exception ex)
            {
                ex.Source = "SQL_lite_database_search_wpf.Core.DatabaseManager.ObjectsManager.CalendarObjectManager.addCalendarObject";
                Usefull_Tools.ErrorHandeler.printOut(ex);
            }
        }
Beispiel #15
0
        public calendarObject ReaderToCobj(SQLiteDataReader reader, string tableName, bool useReaderRead = true)
        {
            if (useReaderRead)
            {
                reader.Read();
            }

            if (reader != null)
            {
                bool hasRows = reader.HasRows;

                calendarObject obj = new calendarObject();

                for (int i = 0; i < obj.values.Length; i++)
                {
                    obj.values[i].baseValue = reader[obj.values[i].valueName];
                }

                obj.tableName = tableName;

                return(obj);
            }
            return(null);
        }
 public Add_Project(calendarObject cObj)
 {
     InitializeComponent();
     UICalendarInformation.CalendarObject = cObj;
 }
 private void UIMenuChangeItem_Click(object sender, RoutedEventArgs e)
 {
     CalendarObject = UI.UIObjectManager.ChangeCalendarObject(CalendarObject);
     LoadCommponements();
 }