[dw-free] Post image link broken on update page
[commit: http://hg.dwscoalition.org/dw-free/rev/212232c35417]
http://bugs.dwscoalition.org/show_bug.cgi?id=1123
Disable Photobucket tab, remove Fotobilder support, remove 'upload from
disk' item to make the 'insert image' dialog actually reflect what a user
can do right now.
Patch by
afuna.
Files modified:
http://bugs.dwscoalition.org/show_bug.cgi?id=1123
Disable Photobucket tab, remove Fotobilder support, remove 'upload from
disk' item to make the 'insert image' dialog actually reflect what a user
can do right now.
Patch by
Files modified:
- cgi-bin/weblib.pl
- htdocs/imgupload.bml
- htdocs/imguploadrte.bml
- htdocs/js/entry.js
- htdocs/stc/fck/editor/dialog/fck_image/fck_image.js
- htdocs/stc/imgupload.css
--------------------------------------------------------------------------------
diff -r 7cf587aedb52 -r 212232c35417 cgi-bin/weblib.pl
--- a/cgi-bin/weblib.pl Sun Jun 14 18:25:13 2009 +0000
+++ b/cgi-bin/weblib.pl Sun Jun 14 18:32:25 2009 +0000
@@ -2946,6 +2946,10 @@ sub rte_js_vars {
foreach my $key (keys %$rte_disabled) {
$ret .= " RTEdisabled['$key'] = true;" if $rte_disabled->{$key};
}
+
+ # detect whether image upload and photobucket are set up
+ my $photobucket_is_setup = $LJ::PHOTOBUCKET_JWIDGET_ID ? "true" : "false";
+
$ret .= qq^
var canmakepoll = $canmakepoll;
@@ -2956,6 +2960,9 @@ sub rte_js_vars {
}
}
}
+
+ var SiteConfig = new Object();
+ SiteConfig.ImagePhotobucket = $photobucket_is_setup;
</script>^;
return $ret;
diff -r 7cf587aedb52 -r 212232c35417 htdocs/imgupload.bml
--- a/htdocs/imgupload.bml Sun Jun 14 18:25:13 2009 +0000
+++ b/htdocs/imgupload.bml Sun Jun 14 18:32:25 2009 +0000
@@ -13,8 +13,9 @@
LJ::need_res('stc/lj_base-app.css',
'stc/imgupload.css',
- 'stc/display_none.css',
- 'js/photobucket_jw.js');
+ 'stc/display_none.css');
+
+ LJ::need_res( 'js/photobucket_jw.js' ) if $LJ::PHOTOBUCKET_JWIDGET_ID;
if ($GET{upload_count} || LJ::did_post()) {
my $js = "";
@@ -53,13 +54,10 @@
}
my $step = 1;
- my $fbenabled = LJ::get_cap($u, 'fb_account') && LJ::get_cap($u, 'fb_can_upload');
my $ret = '';
- $$head .= qq{
+ $$head .= qq~
<script type="text/javascript">
- var fileaction = '$LJ::FB_SITEROOT/interface/webupload';
- var fbroot = '$LJ::SITEROOT/__using/$LJ::FB_DOMAIN';
var urlaction = 'imgupload.bml';
function onCancel () {
@@ -71,18 +69,23 @@
\$(tab).className = 'on';
}
function clearTabs() {
- \$('tabInsert').className = '';
- \$('tabPhotobucket').className = '';
+ \$('tabInsert').className = '';~;
+ $$head .= qq~
+ \$('tabPhotobucket').className = '';~
+ if $LJ::PHOTOBUCKET_JWIDGET_ID;
+ $$head .= qq~
}
</script>
- };
+ ~;
$ret .= "<div class='insob-wrapper'>";
$ret .= "<div class='insobjOuter' id='insobjOuter'>";
$ret .= "<form id='insobjform' enctype='multipart/form-data' action='imgupload.bml' method='post' onsubmit='return window.parent.InOb.onSubmit()' >";
$ret .= "<div class='tabs'><ul><li id='tabInsert' class='on'><a href='javascript: void(0);' onclick='window.parent.InOb.showSelectorPage();setTab(\"tabInsert\");return false;'>Insert Image</a></li>";
- $ret .= "<li id='tabPhotobucket'><a href='javascript: void(0);' onclick='window.parent.InOb.photobucket(seedurl,pb_affsite_id);setTab(\"tabPhotobucket\");return false;'>Photobucket</a></li></ul></div>";
- $ret .= "<div id='close'><a href='#close' onclick='onCancel();return false;'>close</a></div>";
+
+ $ret .= "<li id='tabPhotobucket'><a href='javascript: void(0);' onclick='window.parent.InOb.photobucket(seedurl,pb_affsite_id);setTab(\"tabPhotobucket\");return false;'>Photobucket</a></li>" if $LJ::PHOTOBUCKET_JWIDGET_ID;
+
+ $ret .= "</ul></div><div id='close'><a href='#close' onclick='onCancel();return false;'>close</a></div>";
# content
$ret .= "<div class='insobjContent' id='img_iframe_holder' style='display: none; margin: 0px 0px 0px 0px;'></div><div id='img_fromwhere' class='insobjContent'>";
@@ -113,50 +116,6 @@
$ret .= "</p>";
$ret .= "<p class='ex'><strong>Example:</strong> http://www.example.com/some-picture.jpg</p>";
- # from file
- $ret .= "<p class='inputs pkg'>";
- $ret .= LJ::html_check({
- 'type' => 'radio',
- 'name' => 'method',
- 'id' => 'fromfile',
- 'class' => 'check',
- 'value' => 'file',
- 'disabled' => $fbenabled ? 0 : 1,
- });
- $ret .= " <label for='fromfile' class='left'>Image from file:</label>";
- $ret .= LJ::html_hidden('redir_to_auth_base', '1', 'sec1', '255');
-
- my $disabled = $fbenabled ? '' : "disabled='1'";
-
- $ret .= "<span class='inputcontainer'>";
- $ret .= "<span id='filediv'><input type='file' name='file1' id='fromfileentry' size='50' $disabled /></span>";
- $ret .= "</span>";
- $ret .= "</p>";
- if ($u) {
- my $msg = LJ::run_hook('update_insobj_fb', $fbenabled) || "Upload a file from your computer";
- $ret .= "<p class='ex'>$msg</p>";
- } else {
- $ret .= "<?warningbar $ML{'.login.message2'} warningbar?>";
- }
-
- # from Fotobilder
- if ($fbenabled) {
- $ret .= "<p class='inputs pkg'>";
- $ret .= LJ::html_check({
- 'type' => 'radio',
- 'name' => 'method',
- 'id' => 'fromfb',
- 'class' => 'check',
- 'value' => 'fb',
- });
-
- $ret .= " <label for='fromfb' class='left extended'>$ML{'.gallery.label'}</label>";
- $ret .= "</p>";
- }
-
- if ($u) {
- $ret .= "<p class='ex extended'>$ML{'.size'}</p>\n";
- }
$ret .= "</div><!-- end #formcontent -->";
$ret .= "<div class='insobjNav' id='insobjNav'>";
$ret .= "<input type='button' name='btn:prev' id='btnPrev' style='display:none' value='<-- Back' />";
@@ -167,8 +126,10 @@
$$body = $ret;
- $$head .= "<script type='text/javascript'>var seedurl='$LJ::SITEROOT/photobucket_cb.bml';";
- $$head .= "var pb_affsite_id = $LJ::PHOTOBUCKET_JWIDGET_ID;</script>\n";
+ if ( $LJ::PHOTOBUCKET_JWIDGET_ID ) {
+ $$head .= "<script type='text/javascript'>var seedurl='$LJ::SITEROOT/photobucket_cb.bml';";
+ $$head .= "var pb_affsite_id = $LJ::PHOTOBUCKET_JWIDGET_ID;</script>\n";
+ }
$$head .= LJ::res_includes();
return;
}
diff -r 7cf587aedb52 -r 212232c35417 htdocs/imguploadrte.bml
--- a/htdocs/imguploadrte.bml Sun Jun 14 18:25:13 2009 +0000
+++ b/htdocs/imguploadrte.bml Sun Jun 14 18:32:25 2009 +0000
@@ -11,9 +11,9 @@
my $u = LJ::User->remote;
return "<?needlogin?>" unless $u;
- LJ::need_res("stc/display_none.css",
- "js/photobucket_jw.js",
- "js/browserdetect.js");
+ LJ::need_res( "stc/display_none.css",
+ "js/browserdetect.js" );
+ LJ::need_res( "js/photobucket_jw.js" ) if $LJ::PHOTOBUCKET_JWIDGET_ID;
my $js = "";
if ($GET{upload_count} || LJ::did_post()) {
@@ -32,7 +32,6 @@
}
my $step = 1;
- my $fbenabled = LJ::get_cap($u, 'fb_account') && LJ::get_cap($u, 'fb_can_upload');
my $ret = '';
$$head .= qq{
@@ -46,17 +45,14 @@
.insobjOuter div.ex { font: 8pt sans-serif; color: #888; font-style: italic;}
.img_error { color: red; font-weight: bold; text-align: center; }
</style>
- <script>
- var fileaction = '$LJ::FB_SITEROOT/interface/webupload';
- var fbroot = '$LJ::SITEROOT/__using/$LJ::FB_DOMAIN';
- </script>
- <script src="$LJ::STATPREFIX/fck/editor/dialog/common/fck_dialog_common.js" type="text/javascript"></script>
- <script src="$LJ::STATPREFIX/fck/editor/dialog/fck_image/fck_image.js" type="text/javascript"></script>
- $js
- <link href="$LJ::STATPREFIX/fck/editor/dialog/common/fck_dialog_common.css" rel="stylesheet" type="text/css" />
+ <script src="$LJ::STATPREFIX/fck/editor/dialog/common/fck_dialog_common.js" type="text/javascript"></script>
+ <script src="$LJ::STATPREFIX/fck/editor/dialog/fck_image/fck_image.js" type="text/javascript"></script>
+ $js
+ <link href="$LJ::STATPREFIX/fck/editor/dialog/common/fck_dialog_common.css" rel="stylesheet" type="text/css" />
};
#taken from the original fck_image.html
+ #insert HTML for an image tag, given an image URL and assorted metadata (alt text, dimensions, etc)
$ret .= qq{
<div id="divInfo">
<table cellspacing="1" cellpadding="1" border="0" width="99%" height="99%">
@@ -133,67 +129,12 @@
</table></td></tr>
</table>
</div>
- <div id="divUpload" style="DISPLAY: none">
};
- # taken from imgupload.bml with customization for rte
- $ret .= "<div class='insobjOuter' id='insobjOuter'>";
- $ret .= "<form style='display:inline' id='insobjform' enctype='multipart/form-data' action='imguploadrte.bml' method='post' onsubmit='return InObFCK.onSubmit()' >";
-
- $ret .= "<table width='99%' height='99%' border='0' cellpadding='0' cellspacing='0'><tr height='20' class='insObjTitle' id='insObjTitle'><td align='left' colspan='2'><p class='wintitle' id='wintitle'>Insert Image</p></td></tr>";
-
-# content
- $ret .= "<tr><td colspan='2'><div class='insobjContent' id='img_iframe_holder' style='display: none; margin: 0px 0px 0px 0px;'></div><div id='img_fromwhere' class='insobjContent'>";
-
- $ret .= "<table cellspacing='8' valign='top'>";
-
- $ret .= "<tr><td id='img_error' class='img_error' colspan='2'></td></tr>";
-
- # from file
- $ret .= "<tr valign='top' colspan='2'><td>";
- $ret .= LJ::html_check({
- 'type'=> 'radio',
- 'name'=> 'method',
- 'id'=> 'fromfile',
- 'value' => 'file',
- 'disabled' => $fbenabled ? 0 : 1,
- });
- $ret .= " <label for='fromfile'>Image from file</label>:</td></tr><tr><td colspan='2'>";
- $ret .= LJ::html_hidden('redir_to_auth_base', '2', 'sec1', '255');
-
- my $disabled = $fbenabled ? '' : "disabled='1'";
-
- $ret .= "<div id='filediv'><input type='file' name='file1' id='fromfileentry' size='50' $disabled /></div>";
-
- my $msg = LJ::run_hook('update_insobj_fb', $fbenabled) || "Upload a file from your computer";
- $ret .= "<div class='ex'>$msg</div>";
- $ret .= "</td></tr>";
-
- # from Fotobilder
- if ($fbenabled) {
- $ret .= "<tr><td colspan='2'>";
- $ret .= LJ::html_check({
- 'type' => 'radio',
- 'name' => 'method',
- 'id' => 'fromfb',
- 'value'=> 'fb',
- });
-
- $ret .= " <label for='fromfb'>$ML{'/imgupload.bml.gallery.label'}</label></td></tr>";
-}
- $ret .= "</table>";
-
- $ret .= "<br /><font size='1' color='gray'><i>$ML{'.size'}</i></font></div></td></tr><tr height='20' class='insobjNav' id='insobjNav'><td align='left'><div style='margin-left: 10px'>";
- $ret .= "<input type='button' name='btn:prev' id='btnPrev' style='display:none' value='<-- Back' />";
- $ret .= "</div></td>";
- $ret .= "<td align='right'><div style='margin-right: 10px'>";
- $ret .= LJ::html_submit('btn:next', 'Insert', { 'id' => 'btnNext' });
- $ret .= "</div></td></tr></table>";
- $ret .= "</form></div><script>InObFCK.setupIframeHandlers();</script>";
-
# taken from orig fck_image.html
+ # link tab
$ret .= qq{
- </div>
+ <script>InObFCK.setupIframeHandlers();</script>
<div id="divLink" style="DISPLAY: none">
<table cellspacing="1" cellpadding="1" border="0" width="100%">
<tr>
@@ -255,25 +196,32 @@
<span fckLang="DlgGenStyle">Style</span><br />
<input id="txtAttStyle" style="WIDTH: 100%" type="text">
</div>
- <div id="divPhotobucket" style="DISPLAY: none">
- <script type="text/javascript">
- // Safari can't use the advanced JWidget integration so the callback
- // URL is set to nothing
- var cb_url = "&url=" + escape(seedurl);
- var inRTE = true;
- var browser = new BrowserDetectLite();
- if (browser.isSafari) cb_url = '';
-
- document.write('<iframe name="jwidget" id="jwidget" src="http://photobucket.com/svc/jwidget.php?width=360&height=400&largeThumb=true&pbaffsite='+pb_affsite_id+'&bg=%23F7F7F7&border=false&bordercolor=%23000000'+cb_url+'&linkType=url&textcolor=%23000000&linkcolor=%230000FF&media=image&btntxt=Paste&dimensions=false&promo=false" bgcolor="transparent" width="99%" height="440" frameborder="0" scrolling="no"></iframe>');
- </script>
- </div>
};
-
- $$body = $ret;
- $$head .= "<script type='text/javascript'>var seedurl='$LJ::SITEROOT/photobucket_cb.bml';";
- $$head .= "var pb_affsite_id = $LJ::PHOTOBUCKET_JWIDGET_ID;</script>\n";
- $$head .= LJ::res_includes();
- return;
+
+ # photobucket tab
+ if ( $LJ::PHOTOBUCKET_JWIDGET_ID ) {
+ $ret .= qq{
+ <div id="divPhotobucket" style="DISPLAY: none">
+ <script type="text/javascript">
+ // Safari can't use the advanced JWidget integration so the callback
+ // URL is set to nothing
+ var cb_url = "&url=" + escape(seedurl);
+ var inRTE = true;
+ var browser = new BrowserDetectLite();
+ if (browser.isSafari) cb_url = '';
+
+ document.write('<iframe name="jwidget" id="jwidget" src="http://photobucket.com/svc/jwidget.php?width=360&height=400&largeThumb=true&pbaffsite='+pb_affsite_id+'&bg=%23F7F7F7&border=false&bordercolor=%23000000'+cb_url+'&linkType=url&textcolor=%23000000&linkcolor=%230000FF&media=image&btntxt=Paste&dimensions=false&promo=false" bgcolor="transparent" width="99%" height="440" frameborder="0" scrolling="no"></iframe>');
+ </script>
+ </div>
+ };
+
+ $$head .= "<script type='text/javascript'>var seedurl='$LJ::SITEROOT/photobucket_cb.bml';";
+ $$head .= "var pb_affsite_id = $LJ::PHOTOBUCKET_JWIDGET_ID;</script>\n";
+ }
+
+ $$body = $ret;
+ $$head .= LJ::res_includes();
+ return;
}
_code?>
<html>
diff -r 7cf587aedb52 -r 212232c35417 htdocs/js/entry.js
--- a/htdocs/js/entry.js Sun Jun 14 18:25:13 2009 +0000
+++ b/htdocs/js/entry.js Sun Jun 14 18:32:25 2009 +0000
@@ -613,7 +613,8 @@ InOb.selectRadio = function (which) {
if (which != 'fromfile') {
var filediv = currentPopupWindow.document.getElementById('filediv');
- filediv.innerHTML = filediv.innerHTML;
+ if (filediv)
+ filediv.innerHTML = filediv.innerHTML;
}
// focus and change next button
diff -r 7cf587aedb52 -r 212232c35417 htdocs/stc/fck/editor/dialog/fck_image/fck_image.js
--- a/htdocs/stc/fck/editor/dialog/fck_image/fck_image.js Sun Jun 14 18:25:13 2009 +0000
+++ b/htdocs/stc/fck/editor/dialog/fck_image/fck_image.js Sun Jun 14 18:32:25 2009 +0000
@@ -39,11 +39,11 @@ if ( !bImageButton && !FCKConfig.ImageDl
if ( !bImageButton && !FCKConfig.ImageDlgHideLink )
dialog.AddTab( 'Link', FCKLang.DlgImgLinkTab ) ;
-if ( FCKConfig.ImageUpload )
+if ( FCKConfig.ImageUpload && top.SiteConfig.ImageUpload )
dialog.AddTab( 'Upload', FCKLang.DlgLnkUpload ) ;
// LJ SPECIFIC
-if ( FCKConfig.ImagePhotobucket)
+if ( FCKConfig.ImagePhotobucket && top.SiteConfig.ImagePhotobucket )
dialog.AddTab( 'Photobucket', 'Photobucket' ) ;
if ( !FCKConfig.ImageDlgHideAdvanced )
diff -r 7cf587aedb52 -r 212232c35417 htdocs/stc/imgupload.css
--- a/htdocs/stc/imgupload.css Sun Jun 14 18:25:13 2009 +0000
+++ b/htdocs/stc/imgupload.css Sun Jun 14 18:32:25 2009 +0000
@@ -100,6 +100,7 @@ div.insobjOuter p.wintitle {
#formcontent {
padding: 5px 10px 0px 10px;
margin: 0px;
+ min-height: 160px;
}
* html #formcontent {
padding-top: 0px;
--------------------------------------------------------------------------------
