Languages/Technologies/Plugins Used: PHP, MYSQL, jQuery, AJAX, Medoo, HTMLKelly Color Picker, jQuery Custom Context Menu (https://swisnl.github.io/jQuery-contextMenu/)
- Make sure PHP is installed on your device. (manually or automatically via XAMPP)
- If sqlite extension is not yet activated on "php.ini" file, uncomment sqlite extension to activate the extension.
To run the server, open up terminal or command prompt, type the command php -S localhost:8000
To create new site, use this URL: localhost:8000/create.php?sid=<SITE ID>&template=<TEMPLATE NAME>
- Replace
<SITE ID>
with your desired site ID - Replace
<TEMPLATE NAME>
with your desired template
- blank
To open sites, use this URL: localhost:8000/?sid=<SITE ID>
- Replace
<SITE ID>
with your desired site ID
- Revise how CSS is injected to the element. Avoid Inline CSS and make all the CSS append to some file that links to the web page (ex. DUDA's Dev Mode)
- Fix bug when the selected text becomes 'undefined' after using Add Link Dialog
- Add Row and Column Properties Window
- Convert all hard-coded input html and let the predefined html (widget-properties/inputs/) generate the html
- Add More Buttons in WYSIWYG Text Editor
- Bind Link and New Tab option when opening Add Link Dialog
- Save Changes upon value change in Widget Properties Window (no Apply Changes button anymore)
- [Realtime Saving] Save to webpage file upon value change in Widget Properties Window
- [Realtime Saving] Save to webpage file upon dropping new widget to column
- [Realtime Saving] Save to webpage file upon deleting widget
- Clean [document.getElementById] functions and use jQuery selectors instead for selector consistency
- Clean AJAX requests functions and use jQuery ajax instead for cleaner code and consistency
- Move content editing outside properties window and allow editing content of widget directly when clicked
- Color Pallete
- Widget/Row/Column Background Image property
- Inner Rows
- Site Map
- Adding Pages
- Sorting Pages
- Deleting Pages
- Uploading Images
- Publishing
- Capability of moving the widgets to either top or bottom of selected element, not always inserting at top
- Revise attribute [widget-name], remove "widget/" directory to display only the widget actual name in labels
- Revise request-current-eid.php, dont rely on one DB to get ID. Give sites their own meta data db to read to support multiple request across sites.
- Revise meta value column to hold string data
- Add site creator that duplicates selected template and adding engine files
- Add Row Move Feature
- Copy/Paste Feature for Rows, Columns, and Widgets
- Event Inject Only Once
- Fix Bug swapping columns (column resizers are also swapping)
- Allow dragging to resize columns
- Fix bug when breaking lines in text widget, this bug occurs because <p> tag cannot contain <div> tags
- Make all context menu options functional (Adding/Deleting Rows, Adding/Deleting Columns, Shift Widgets/Rows, etc.)
- Add Access to Columns
- Fix selected-element and auto generated context menu at the end of the html file being saved which causes duplicated content
- Add Context Menu
- Revise/Simplify Primary Properties input requests using predefined html with automatic assigning of its id
- Add selected widget/row labels
- Make buttons in WYSIWYG Text Editor check first if the selected range is inside its parent editor to continue the operation to prevent editing any element outside its parent editor
- Adding WYSIWYG Text Editors
- Deleting Widgets
- Saving website progress (Hard Save first, not Realtime yet) when clicking either publish or preview
- Previewing Site
- Site ID GET parameter
- Binding of CSS in widget property fields
- Load current widget property values on input fields before opening widget properties window
- Revise code for applying css and html changes
- Applying Widget Property changes
- Widget Background Color
- Create Modules for Widget Properties Window