Fossil SCM

On the /wikiedit screen, do not show the "Apply" button unless the user has first done a preview.

drh 2019-01-02 03:15 trunk
Commit cfe761679c70cbdd30ebd186e34ddeddacc1f975248d427a2bffd71b8734adae
1 file changed +6 -1
+6 -1
--- src/wiki.c
+++ src/wiki.c
@@ -585,10 +585,11 @@
585585
char *zBody = (char*)P("w");
586586
const char *zMimetype = wiki_filter_mimetypes(P("mimetype"));
587587
int isWysiwyg = P("wysiwyg")!=0;
588588
int goodCaptcha = 1;
589589
int eType = WIKITYPE_UNKNOWN;
590
+ int havePreview = 0;
590591
591592
if( P("edit-wysiwyg")!=0 ){ isWysiwyg = 1; zBody = 0; }
592593
if( P("edit-markup")!=0 ){ isWysiwyg = 0; zBody = 0; }
593594
if( zBody ){
594595
if( isWysiwyg ){
@@ -692,10 +693,11 @@
692693
@ <p class="generalError">Error: Incorrect security code.</p>
693694
}
694695
blob_zero(&wiki);
695696
blob_append(&wiki, zBody, -1);
696697
if( P("preview")!=0 && zBody[0] ){
698
+ havePreview = 1;
697699
@ Preview:<hr />
698700
wiki_render_by_mimetype(&wiki, zMimetype);
699701
@ <hr />
700702
blob_reset(&wiki);
701703
}
@@ -739,10 +741,11 @@
739741
}
740742
@ <input type="submit" name="preview" value="Preview Your Changes" />
741743
}else{
742744
/* Wysiwyg editing */
743745
Blob html, temp;
746
+ havePreview = 1;
744747
form_begin("", "%R/wikiedit");
745748
@ <div>
746749
@ <input type="hidden" name="wysiwyg" value="1" />
747750
blob_zero(&temp);
748751
wiki_convert(&wiki, &temp, 0);
@@ -754,11 +757,13 @@
754757
@ <br />
755758
@ <input type="submit" name="edit-markup" value="Markup Editor"
756759
@ onclick='return confirm("Switching to markup-mode\nwill erase your WYSIWYG\nedits. Continue?")' />
757760
}
758761
login_insert_csrf_secret();
759
- @ <input type="submit" name="submit" value="Apply These Changes" />
762
+ if( havePreview ){
763
+ @ <input type="submit" name="submit" value="Apply These Changes" />
764
+ }
760765
@ <input type="hidden" name="name" value="%h(zPageName)" />
761766
@ <input type="submit" name="cancel" value="Cancel"
762767
@ onclick='confirm("Abandon your changes?")' />
763768
@ </div>
764769
captcha_generate(0);
765770
--- src/wiki.c
+++ src/wiki.c
@@ -585,10 +585,11 @@
585 char *zBody = (char*)P("w");
586 const char *zMimetype = wiki_filter_mimetypes(P("mimetype"));
587 int isWysiwyg = P("wysiwyg")!=0;
588 int goodCaptcha = 1;
589 int eType = WIKITYPE_UNKNOWN;
 
590
591 if( P("edit-wysiwyg")!=0 ){ isWysiwyg = 1; zBody = 0; }
592 if( P("edit-markup")!=0 ){ isWysiwyg = 0; zBody = 0; }
593 if( zBody ){
594 if( isWysiwyg ){
@@ -692,10 +693,11 @@
692 @ <p class="generalError">Error: Incorrect security code.</p>
693 }
694 blob_zero(&wiki);
695 blob_append(&wiki, zBody, -1);
696 if( P("preview")!=0 && zBody[0] ){
 
697 @ Preview:<hr />
698 wiki_render_by_mimetype(&wiki, zMimetype);
699 @ <hr />
700 blob_reset(&wiki);
701 }
@@ -739,10 +741,11 @@
739 }
740 @ <input type="submit" name="preview" value="Preview Your Changes" />
741 }else{
742 /* Wysiwyg editing */
743 Blob html, temp;
 
744 form_begin("", "%R/wikiedit");
745 @ <div>
746 @ <input type="hidden" name="wysiwyg" value="1" />
747 blob_zero(&temp);
748 wiki_convert(&wiki, &temp, 0);
@@ -754,11 +757,13 @@
754 @ <br />
755 @ <input type="submit" name="edit-markup" value="Markup Editor"
756 @ onclick='return confirm("Switching to markup-mode\nwill erase your WYSIWYG\nedits. Continue?")' />
757 }
758 login_insert_csrf_secret();
759 @ <input type="submit" name="submit" value="Apply These Changes" />
 
 
760 @ <input type="hidden" name="name" value="%h(zPageName)" />
761 @ <input type="submit" name="cancel" value="Cancel"
762 @ onclick='confirm("Abandon your changes?")' />
763 @ </div>
764 captcha_generate(0);
765
--- src/wiki.c
+++ src/wiki.c
@@ -585,10 +585,11 @@
585 char *zBody = (char*)P("w");
586 const char *zMimetype = wiki_filter_mimetypes(P("mimetype"));
587 int isWysiwyg = P("wysiwyg")!=0;
588 int goodCaptcha = 1;
589 int eType = WIKITYPE_UNKNOWN;
590 int havePreview = 0;
591
592 if( P("edit-wysiwyg")!=0 ){ isWysiwyg = 1; zBody = 0; }
593 if( P("edit-markup")!=0 ){ isWysiwyg = 0; zBody = 0; }
594 if( zBody ){
595 if( isWysiwyg ){
@@ -692,10 +693,11 @@
693 @ <p class="generalError">Error: Incorrect security code.</p>
694 }
695 blob_zero(&wiki);
696 blob_append(&wiki, zBody, -1);
697 if( P("preview")!=0 && zBody[0] ){
698 havePreview = 1;
699 @ Preview:<hr />
700 wiki_render_by_mimetype(&wiki, zMimetype);
701 @ <hr />
702 blob_reset(&wiki);
703 }
@@ -739,10 +741,11 @@
741 }
742 @ <input type="submit" name="preview" value="Preview Your Changes" />
743 }else{
744 /* Wysiwyg editing */
745 Blob html, temp;
746 havePreview = 1;
747 form_begin("", "%R/wikiedit");
748 @ <div>
749 @ <input type="hidden" name="wysiwyg" value="1" />
750 blob_zero(&temp);
751 wiki_convert(&wiki, &temp, 0);
@@ -754,11 +757,13 @@
757 @ <br />
758 @ <input type="submit" name="edit-markup" value="Markup Editor"
759 @ onclick='return confirm("Switching to markup-mode\nwill erase your WYSIWYG\nedits. Continue?")' />
760 }
761 login_insert_csrf_secret();
762 if( havePreview ){
763 @ <input type="submit" name="submit" value="Apply These Changes" />
764 }
765 @ <input type="hidden" name="name" value="%h(zPageName)" />
766 @ <input type="submit" name="cancel" value="Cancel"
767 @ onclick='confirm("Abandon your changes?")' />
768 @ </div>
769 captcha_generate(0);
770

Keyboard Shortcuts

Open search /
Next entry (timeline) j
Previous entry (timeline) k
Open focused entry Enter
Show this help ?
Toggle theme Top nav button