Preferences: Remove markdown preview preference after feature removal
- Remove markdown_preview_default field from UserPreferences model - Remove markdown_preview_default column from user_preferences table schema - Simplify preferences form to only show draft auto-save checkbox - Update handler to only process auto_save_drafts preference - Clean up unused form fields and validation logic Only the draft auto-save preference remains.jocadbz
parent
9c959f6412
commit
582897903e
|
|
@ -21,12 +21,6 @@ func PreferencesHandler(app *App) http.HandlerFunc {
|
|||
if r.Method == http.MethodPost {
|
||||
// Get form values
|
||||
autoSaveDrafts := r.FormValue("auto_save_drafts") == "on"
|
||||
markdownPreviewDefault := r.FormValue("markdown_preview_default")
|
||||
|
||||
// Validate markdown_preview_default
|
||||
if markdownPreviewDefault != "edit" && markdownPreviewDefault != "preview" {
|
||||
markdownPreviewDefault = "edit"
|
||||
}
|
||||
|
||||
// Get current preferences (or create if not exists)
|
||||
prefs, err := models.GetUserPreferences(app.DB, userID)
|
||||
|
|
@ -38,7 +32,6 @@ func PreferencesHandler(app *App) http.HandlerFunc {
|
|||
|
||||
// Update preferences
|
||||
prefs.AutoSaveDrafts = autoSaveDrafts
|
||||
prefs.MarkdownPreviewDefault = markdownPreviewDefault
|
||||
|
||||
err = models.UpdateUserPreferences(app.DB, prefs)
|
||||
if err != nil {
|
||||
|
|
|
|||
1
main.go
1
main.go
|
|
@ -223,7 +223,6 @@ func createTablesIfNotExist(db *sql.DB) error {
|
|||
id INT AUTO_INCREMENT PRIMARY KEY,
|
||||
user_id INT NOT NULL UNIQUE,
|
||||
auto_save_drafts BOOLEAN DEFAULT TRUE,
|
||||
markdown_preview_default VARCHAR(20) DEFAULT 'edit',
|
||||
created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
|
||||
updated_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
|
||||
FOREIGN KEY (user_id) REFERENCES users(id) ON DELETE CASCADE
|
||||
|
|
|
|||
|
|
@ -8,12 +8,11 @@ type UserPreferences struct {
|
|||
ID int
|
||||
UserID int
|
||||
AutoSaveDrafts bool
|
||||
MarkdownPreviewDefault string // "edit" or "preview"
|
||||
}
|
||||
|
||||
// GetUserPreferences retrieves preferences for a user, creating defaults if none exist
|
||||
func GetUserPreferences(db *sql.DB, userID int) (*UserPreferences, error) {
|
||||
query := `SELECT id, user_id, auto_save_drafts, markdown_preview_default
|
||||
query := `SELECT id, user_id, auto_save_drafts
|
||||
FROM user_preferences WHERE user_id = ?`
|
||||
|
||||
prefs := &UserPreferences{}
|
||||
|
|
@ -21,7 +20,6 @@ func GetUserPreferences(db *sql.DB, userID int) (*UserPreferences, error) {
|
|||
&prefs.ID,
|
||||
&prefs.UserID,
|
||||
&prefs.AutoSaveDrafts,
|
||||
&prefs.MarkdownPreviewDefault,
|
||||
)
|
||||
|
||||
if err == sql.ErrNoRows {
|
||||
|
|
@ -38,8 +36,8 @@ func GetUserPreferences(db *sql.DB, userID int) (*UserPreferences, error) {
|
|||
|
||||
// CreateDefaultPreferences creates default preferences for a new user
|
||||
func CreateDefaultPreferences(db *sql.DB, userID int) (*UserPreferences, error) {
|
||||
query := `INSERT INTO user_preferences (user_id, auto_save_drafts, markdown_preview_default)
|
||||
VALUES (?, TRUE, 'edit')`
|
||||
query := `INSERT INTO user_preferences (user_id, auto_save_drafts)
|
||||
VALUES (?, TRUE)`
|
||||
|
||||
result, err := db.Exec(query, userID)
|
||||
if err != nil {
|
||||
|
|
@ -55,16 +53,15 @@ func CreateDefaultPreferences(db *sql.DB, userID int) (*UserPreferences, error)
|
|||
ID: int(id),
|
||||
UserID: userID,
|
||||
AutoSaveDrafts: true,
|
||||
MarkdownPreviewDefault: "edit",
|
||||
}, nil
|
||||
}
|
||||
|
||||
// UpdateUserPreferences updates user preferences
|
||||
func UpdateUserPreferences(db *sql.DB, prefs *UserPreferences) error {
|
||||
query := `UPDATE user_preferences
|
||||
SET auto_save_drafts = ?, markdown_preview_default = ?, updated_at = NOW()
|
||||
SET auto_save_drafts = ?, updated_at = NOW()
|
||||
WHERE user_id = ?`
|
||||
|
||||
_, err := db.Exec(query, prefs.AutoSaveDrafts, prefs.MarkdownPreviewDefault, prefs.UserID)
|
||||
_, err := db.Exec(query, prefs.AutoSaveDrafts, prefs.UserID)
|
||||
return err
|
||||
}
|
||||
|
|
|
|||
|
|
@ -28,19 +28,6 @@
|
|||
Drafts are saved to your browser's local storage and restored when you return to chat.
|
||||
</p>
|
||||
|
||||
<h3 style="margin-top: 2em;">Markdown Preview</h3>
|
||||
<label for="markdown_preview_edit" style="display: flex; align-items: center; gap: 0.5em; cursor: pointer; margin-bottom: 0.5em;">
|
||||
<input type="radio" id="markdown_preview_edit" name="markdown_preview_default" value="edit" {{if eq .Preferences.MarkdownPreviewDefault "edit"}}checked{{end}}>
|
||||
<span>Default to <strong>Edit</strong> mode (write markdown)</span>
|
||||
</label>
|
||||
<label for="markdown_preview_preview" style="display: flex; align-items: center; gap: 0.5em; cursor: pointer;">
|
||||
<input type="radio" id="markdown_preview_preview" name="markdown_preview_default" value="preview" {{if eq .Preferences.MarkdownPreviewDefault "preview"}}checked{{end}}>
|
||||
<span>Default to <strong>Preview</strong> mode (see formatted output)</span>
|
||||
</label>
|
||||
<p style="margin-left: 1.5em; margin-top: 0.25em; font-size: 0.9em; opacity: 0.8;">
|
||||
Choose which tab is shown by default when composing messages in chat.
|
||||
</p>
|
||||
|
||||
<input type="submit" value="Save Preferences" style="margin-top: 2em;">
|
||||
</form>
|
||||
</section>
|
||||
|
|
|
|||
Loading…
Reference in New Issue