[dw-free] draft saving does not include subject or metadata
[commit: http://hg.dwscoalition.org/dw-free/rev/6acc1456cefe]
http://bugs.dwscoalition.org/show_bug.cgi?id=2169
Fix some issues with draft metadata and not escaping things.
Patch by
afuna.
Files modified:
http://bugs.dwscoalition.org/show_bug.cgi?id=2169
Fix some issues with draft metadata and not escaping things.
Patch by
Files modified:
- htdocs/tools/endpoints/draft.bml
- htdocs/update.bml
--------------------------------------------------------------------------------
diff -r 4656f7e79ae4 -r 6acc1456cefe htdocs/tools/endpoints/draft.bml
--- a/htdocs/tools/endpoints/draft.bml Fri Mar 26 01:13:03 2010 +0000
+++ b/htdocs/tools/endpoints/draft.bml Fri Mar 26 14:38:49 2010 +0000
@@ -39,7 +39,8 @@ _c?>
# This property thaws the contents of the userprop 'draft_properties' and
# sends them back as a JS object.
if ( defined $GET{getProperties} ) {
- my $rv = Storable::thaw( $u->prop( 'draft_properties' ) || '' );
+ my $rv = $u->prop( 'draft_properties' ) ? Storable::thaw( $u->prop(
+'draft_properties' ) ) : {};
BML::set_content_type('text/javascript; charset=utf-8');
BML::finish();
diff -r 4656f7e79ae4 -r 6acc1456cefe htdocs/update.bml
--- a/htdocs/update.bml Fri Mar 26 01:13:03 2010 +0000
+++ b/htdocs/update.bml Fri Mar 26 14:38:49 2010 +0000
@@ -576,11 +576,13 @@ head<=
$draft = LJ::ejs_string($remote->prop('entry_draft'));
%draft_properties = $remote->prop( 'draft_properties' ) ?
%{Storable::thaw( $remote->prop( 'draft_properties' ) )} : ' ';
+ %draft_properties = map { $_ => LJ::ejs_string( $draft_properties{$_} ) }
+ qw( subject userpic taglist moodid mood location1 music adultreason commentset commentscr adultcnt );
}
my $eMLautosave = LJ::ejs(BML::ml('.draft.autosave', { 'time' => '[[time]]' }));
my $eMLconfirm = LJ::ejs( BML::ml( '.draft.confirm2',
- { 'subjectline' => LJ::ejs_string( $draft_properties{subject} ) } ) );
+ { 'subjectline' => $draft_properties{subject}} ) );
my $eMLrestored = LJ::ejs($ML{'.draft.restored'});
# Setup draft saving and try to restore from a draft
@@ -610,17 +612,17 @@ head<=
// These JS variables contain the contents of the various draft fields.
var restoredDraft = $draft;
- var restoredSubject = '$draft_properties{subject}';
- var restoredUserpic = '$draft_properties{userpic}';
- var restoredTaglist = '$draft_properties{taglist}';
- var restoredMoodID = '$draft_properties{moodid}';
- var restoredMood = '$draft_properties{mood}';
- var restoredLocation = '$draft_properties{location1}';
- var restoredMusic = '$draft_properties{music}';
- var restoredAdultReason = '$draft_properties{adultreason}';
- var restoredCommentSet = '$draft_properties{commentset}';
- var restoredCommentScr = '$draft_properties{commentscr}';
- var restoredAdultCnt = '$draft_properties{adultcnt}';
+ var restoredSubject = $draft_properties{subject};
+ var restoredUserpic = $draft_properties{userpic};
+ var restoredTaglist = $draft_properties{taglist};
+ var restoredMoodID = $draft_properties{moodid};
+ var restoredMood = $draft_properties{mood};
+ var restoredLocation = $draft_properties{location1};
+ var restoredMusic = $draft_properties{music};
+ var restoredAdultReason = $draft_properties{adultreason};
+ var restoredCommentSet = $draft_properties{commentset};
+ var restoredCommentScr = $draft_properties{commentscr};
+ var restoredAdultCnt = $draft_properties{adultcnt};
function init_update_bml() {
$initDraft
--------------------------------------------------------------------------------
