DO NOT DOWNLOAD. DOWNLOAD LATEST STABLE FROM RELEASE TAB

Removed dependency on Scriptaculous + Prototype JS libraries (moved to Legacy, replaced with jQuery).
Moved ClientDependency config to seperate file.
Removed old DLL files and references.

[TFS Changeset #59142]
This commit is contained in:
Shandem
2009-09-14 14:08:58 +00:00
parent e44e564c54
commit 1a2e2cc468
25 changed files with 69 additions and 357 deletions
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
-1
View File
@@ -5,7 +5,6 @@ Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Solution Items", "Solution
foreign dlls\AjaxControlToolkit.dll = foreign dlls\AjaxControlToolkit.dll
build.xml = build.xml
foreign dlls\CookComputing.XmlRpcV2.dll = foreign dlls\CookComputing.XmlRpcV2.dll
foreign dlls\DotNetOpenMail.dll = foreign dlls\DotNetOpenMail.dll
foreign dlls\ICSharpCode.SharpZipLib.dll = foreign dlls\ICSharpCode.SharpZipLib.dll
foreign dlls\IronMath.dll = foreign dlls\IronMath.dll
IronPython License.Rtf = IronPython License.Rtf
@@ -0,0 +1,13 @@
<clientDependency isDebugMode="true">
<fileRegistration defaultProvider="PageHeaderProvider" fileDependencyExtensions="js,css" enableCompositeFiles="true">
<providers>
<add name="PageHeaderProvider" type="ClientDependency.Core.FileRegistration.Providers.PageHeaderProvider, ClientDependency.Core" />
<add name="LazyLoadProvider" type="ClientDependency.Core.FileRegistration.Providers.LazyLoadProvider, ClientDependency.Core" />
</providers>
</fileRegistration>
<compositeFiles defaultProvider="CompositeFileProcessor" compositeFilePath="~/App_Data/ClientDependency" compositeFileHandlerPath="DependencyHandler.axd">
<providers>
<add name="CompositeFileProcessor" type="ClientDependency.Core.CompositeFiles.Providers.CompositeFileProcessingProvider, ClientDependency.Core" />
</providers>
</compositeFiles>
</clientDependency>
@@ -97,6 +97,14 @@
<SpecificVersion>False</SpecificVersion>
<HintPath>..\..\foreign dlls\ICSharpCode.SharpZipLib.dll</HintPath>
</Reference>
<Reference Include="IronMath, Version=1.0.60816.1877, Culture=neutral, PublicKeyToken=31bf3856ad364e35, processorArchitecture=MSIL">
<SpecificVersion>False</SpecificVersion>
<HintPath>..\..\foreign dlls\IronMath.dll</HintPath>
</Reference>
<Reference Include="IronPython, Version=1.0.60816.1877, Culture=neutral, PublicKeyToken=31bf3856ad364e35, processorArchitecture=MSIL">
<SpecificVersion>False</SpecificVersion>
<HintPath>..\..\foreign dlls\IronPython.dll</HintPath>
</Reference>
<Reference Include="System">
<Name>System</Name>
</Reference>
@@ -1877,6 +1885,7 @@
<Content Include="umbraco\plugins\tinymce3\insertLink.aspx" />
<Content Include="umbraco\plugins\tinymce3\insertMacro.aspx" />
<Content Include="umbraco\plugins\tinymce3\tinymce3tinymceCompress.aspx" />
<Content Include="config\ClientDependency.config" />
<None Include="Properties\Settings.settings">
<Generator>SettingsSingleFileGenerator</Generator>
<LastGenOutput>Settings.Designer.cs</LastGenOutput>
@@ -1901,15 +1910,6 @@
<Content Include="umbraco\images\umbraco\package.png" />
<Content Include="umbraco\images\umbraco\settingsScript.gif" />
<Content Include="umbraco\images\uploadTranslation.png" />
<Content Include="umbraco\js\prototype.js" />
<Content Include="umbraco\js\scriptaculous\builder.js" />
<Content Include="umbraco\js\scriptaculous\controls.js" />
<Content Include="umbraco\js\scriptaculous\dragdrop.js" />
<Content Include="umbraco\js\scriptaculous\effects.js" />
<Content Include="umbraco\js\scriptaculous\scriptaculous.js" />
<Content Include="umbraco\js\scriptaculous\slider.js" />
<Content Include="umbraco\js\scriptaculous\sound.js" />
<Content Include="umbraco\js\scriptaculous\unittest.js" />
<Content Include="umbraco\js\submodal\common.js" />
<Content Include="umbraco\js\submodal\maskBG.png" />
<Content Include="umbraco\js\submodal\subModal.css" />
@@ -2752,7 +2752,6 @@
<Content Include="umbraco_client\tinymce3\utils\form_utils.js" />
<Content Include="umbraco_client\tinymce3\utils\mctabs.js" />
<Content Include="umbraco_client\tinymce3\utils\validate.js" />
<Content Include="umbraco_client\Application\JQuery\jquery.accordian.js" />
<Content Include="umbraco_client\ui\default.css" />
<Content Include="umbraco_client\ui\default.js" />
<Content Include="umbraco_client\ui\jquery.js" />
@@ -3,6 +3,7 @@
<%@ Control Language="c#" AutoEventWireup="True" Codebehind="ContentTypeControlNew.ascx.cs"
Inherits="umbraco.controls.ContentTypeControlNew" TargetSchema="http://schemas.microsoft.com/intellisense/ie5" %>
<cc1:TabView ID="TabView1" Height="392px" Width="552px" runat="server"></cc1:TabView>
<asp:Panel ID="pnlGeneral" runat="server"></asp:Panel>
@@ -11,14 +11,9 @@ using ClientDependency.Core;
namespace umbraco.controls
{
/// <summary>
/// TODO: REmove the dependencies on prototype and scriptaculous!!
/// doesn't work when combining scripts which is why DoNotOptimize is flagged.
/// </summary>
//[ClientDependency(501, ClientDependencyType.Javascript, "js/scriptaculous/scriptaculous.js?load=effects,dragdrop", "UmbracoRoot", InvokeJavascriptMethodOnLoad = "Position.includeScrollOffsets = true;", DoNotOptimize = true)]
[ClientDependency(500, ClientDependencyType.Javascript, "js/prototype.js", "UmbracoRoot", DoNotOptimize = true)]
[ClientDependency(501, ClientDependencyType.Javascript, "js/scriptaculous/scriptaculous.js?load=effects,dragdrop", "UmbracoRoot", DoNotOptimize = true)]
[ClientDependency(ClientDependencyType.Css, "Tree/treeIcons.css", "UmbracoClient")]
[ClientDependency(ClientDependencyType.Javascript, "ui/jqueryui.js", "UmbracoClient")]
[ClientDependency(ClientDependencyType.Css, "Tree/treeIcons.css", "UmbracoClient")]
[ClientDependency(ClientDependencyType.Css, "Tree/Themes/umbraco/styles.css", "UmbracoClient")]
public partial class ContentTypeControlNew : System.Web.UI.UserControl
{
@@ -318,7 +313,20 @@ namespace umbraco.controls
PropertyTypes.Controls.Add(new LiteralControl("</ul></div>"));
PropertyTypes.Controls.Add(new LiteralControl("<script type='text/javascript'>\n Sortable.create(\"" + t.GetRawCaption().Replace(" ", "").Replace("#", "_") + "Contents\",{onUpdate:function(element) {document.getElementById('" + propSort.ClientID + "').value = Sortable.serialize('" + t.GetRawCaption().Replace(" ", "").Replace("#", "_") + "Contents');},scroll: '" + scrollLayerId + "', dropOnEmpty:false,containment:[\"" + t.GetRawCaption().Replace(" ", "").Replace("#", "_") + "Contents\"],constraint:'vertical'});\n</script>"));
var jsSortable = @"
(function($) {
var propSortId = ""#" + propSort.ClientID + @""";
$(document).ready(function() {
$(propSortId).next("".genericPropertyList"").sortable({containment: 'parent', tolerance: 'pointer',
update: function(event, ui) {
$(propSortId).val($(this).sortable('serialize'));
}});
});
})(jQuery);";
Page.ClientScript.RegisterStartupScript(this.GetType(), propSort.ClientID, jsSortable, true);
}
else
{
@@ -371,7 +379,21 @@ namespace umbraco.controls
propertiesPH.Controls.Add(new LiteralControl("</ul>"));
propertiesPH.Controls.Add(new LiteralControl("<script>\n Sortable.create(\"generalPropertiesContents\",{scroll: '" + scrollLayerId + "',dropOnEmpty:false,containment:[\"generalPropertiesContents\"],constraint:'vertical',onUpdate:function(element) {document.getElementById('" + propSort_gp.ClientID + "').value = Sortable.serialize('generalPropertiesContents');}});\n</script>"));
//propertiesPH.Controls.Add(new LiteralControl("<script>\n Sortable.create(\"generalPropertiesContents\",{scroll: '" + scrollLayerId + "',dropOnEmpty:false,containment:[\"generalPropertiesContents\"],constraint:'vertical',onUpdate:function(element) {document.getElementById('" + propSort_gp.ClientID + "').value = Sortable.serialize('generalPropertiesContents');}});\n</script>"));
var jsSortable_gp = @"
(function($) {
var propSortId = ""#" + propSort_gp.ClientID + @""";
$(document).ready(function() {
$(propSortId).next("".genericPropertyList"").sortable({containment: 'parent', tolerance: 'pointer',
update: function(event, ui) {
$(propSortId).val($(this).sortable('serialize'));
}});
});
})(jQuery);";
Page.ClientScript.RegisterStartupScript(this.GetType(), "propSort_gp", jsSortable_gp, true);
if (!propertyTabHasProperties)
{
@@ -1,7 +1,7 @@
//------------------------------------------------------------------------------
// <auto-generated>
// This code was generated by a tool.
// Runtime Version:2.0.50727.3053
// Runtime Version:2.0.50727.3074
//
// Changes to this file may cause incorrect behavior and will be lost if
// the code is regenerated.
@@ -5,7 +5,7 @@
<asp:Content ContentPlaceHolderID="head" runat="server">
<umb:JsInclude ID="JsInclude1" runat="server" FilePath="JQuery/jquery.accordian.js" PathNameAlias="UmbracoClient" />
<umb:JsInclude ID="JsInclude1" runat="server" FilePath="ui/jqueryui.js" PathNameAlias="UmbracoClient" />
<script type="text/javascript">
function showProgress(button, elementId) {
@@ -1,7 +1,7 @@
//------------------------------------------------------------------------------
// <auto-generated>
// This code was generated by a tool.
// Runtime Version:2.0.50727.3082
// Runtime Version:2.0.50727.3074
//
// Changes to this file may cause incorrect behavior and will be lost if
// the code is regenerated.
@@ -1,314 +0,0 @@
//
// jQuery UI Accordion 1.6
//
// Copyright (c) 2007 Jörn Zaefferer
//
// http://docs.jquery.com/UI/Accordion
//
// Dual licensed under the MIT and GPL licenses:
// http://www.opensource.org/licenses/mit-license.php
// http://www.gnu.org/licenses/gpl.html
//
// Revision: $Id: jquery.accordion.js 4876 2008-03-08 11:49:04Z joern.zaefferer $
//
//
(function($) {
// If the UI scope is not available, add it
$.ui = $.ui || {};
$.fn.extend({
accordion: function(options, data) {
var args = Array.prototype.slice.call(arguments, 1);
return this.each(function() {
if (typeof options == "string") {
var accordion = $.data(this, "ui-accordion");
accordion[options].apply(accordion, args);
// INIT with optional options
} else if (!$(this).is(".ui-accordion"))
$.data(this, "ui-accordion", new $.ui.accordion(this, options));
});
},
// deprecated, use accordion("activate", index) instead
activate: function(index) {
return this.accordion("activate", index);
}
});
$.ui.accordion = function(container, options) {
// setup configuration
this.options = options = $.extend({}, $.ui.accordion.defaults, options);
this.element = container;
$(container).addClass("ui-accordion");
if (options.navigation) {
var current = $(container).find("a").filter(options.navigationFilter);
if (current.length) {
if (current.filter(options.header).length) {
options.active = current;
} else {
options.active = current.parent().parent().prev();
current.addClass("current");
}
}
}
// calculate active if not specified, using the first header
options.headers = $(container).find(options.header);
options.active = findActive(options.headers, options.active);
if (options.fillSpace) {
var maxHeight = $(container).parent().height();
options.headers.each(function() {
maxHeight -= $(this).outerHeight();
});
var maxPadding = 0;
options.headers.next().each(function() {
maxPadding = Math.max(maxPadding, $(this).innerHeight() - $(this).height());
}).height(maxHeight - maxPadding);
} else if (options.autoheight) {
var maxHeight = 0;
options.headers.next().each(function() {
maxHeight = Math.max(maxHeight, $(this).outerHeight());
}).height(maxHeight);
}
options.headers
.not(options.active || "")
.next()
.hide();
options.active.parent().andSelf().addClass(options.selectedClass);
if (options.event)
$(container).bind((options.event) + ".ui-accordion", clickHandler);
};
$.ui.accordion.prototype = {
activate: function(index) {
// call clickHandler with custom event
clickHandler.call(this.element, {
target: findActive(this.options.headers, index)[0]
});
},
enable: function() {
this.options.disabled = false;
},
disable: function() {
this.options.disabled = true;
},
destroy: function() {
this.options.headers.next().css("display", "");
if (this.options.fillSpace || this.options.autoheight) {
this.options.headers.next().css("height", "");
}
$.removeData(this.element, "ui-accordion");
$(this.element).removeClass("ui-accordion").unbind(".ui-accordion");
}
}
function scopeCallback(callback, scope) {
return function() {
return callback.apply(scope, arguments);
};
}
function completed(cancel) {
// if removed while animated data can be empty
if (!$.data(this, "ui-accordion"))
return;
var instance = $.data(this, "ui-accordion");
var options = instance.options;
options.running = cancel ? 0 : --options.running;
if (options.running)
return;
if (options.clearStyle) {
options.toShow.add(options.toHide).css({
height: "",
overflow: ""
});
}
$(this).triggerHandler("change.ui-accordion", [options.data], options.change);
}
function toggle(toShow, toHide, data, clickedActive, down) {
var options = $.data(this, "ui-accordion").options;
options.toShow = toShow;
options.toHide = toHide;
options.data = data;
var complete = scopeCallback(completed, this);
// count elements to animate
options.running = toHide.size() == 0 ? toShow.size() : toHide.size();
if (options.animated) {
if (!options.alwaysOpen && clickedActive) {
$.ui.accordion.animations[options.animated]({
toShow: jQuery([]),
toHide: toHide,
complete: complete,
down: down,
autoheight: options.autoheight
});
} else {
$.ui.accordion.animations[options.animated]({
toShow: toShow,
toHide: toHide,
complete: complete,
down: down,
autoheight: options.autoheight
});
}
} else {
if (!options.alwaysOpen && clickedActive) {
toShow.toggle();
} else {
toHide.hide();
toShow.show();
}
complete(true);
}
}
function clickHandler(event) {
var options = $.data(this, "ui-accordion").options;
if (options.disabled)
return false;
// called only when using activate(false) to close all parts programmatically
if (!event.target && !options.alwaysOpen) {
options.active.parent().andSelf().toggleClass(options.selectedClass);
var toHide = options.active.next(),
data = {
instance: this,
options: options,
newHeader: jQuery([]),
oldHeader: options.active,
newContent: jQuery([]),
oldContent: toHide
},
toShow = options.active = $([]);
toggle.call(this, toShow, toHide, data);
return false;
}
// get the click target
var clicked = $(event.target);
// due to the event delegation model, we have to check if one
// of the parent elements is our actual header, and find that
if (clicked.parents(options.header).length)
while (!clicked.is(options.header))
clicked = clicked.parent();
var clickedActive = clicked[0] == options.active[0];
// if animations are still active, or the active header is the target, ignore click
if (options.running || (options.alwaysOpen && clickedActive))
return false;
if (!clicked.is(options.header))
return;
// switch classes
options.active.parent().andSelf().toggleClass(options.selectedClass);
if (!clickedActive) {
clicked.parent().andSelf().addClass(options.selectedClass);
}
// find elements to show and hide
var toShow = clicked.next(),
toHide = options.active.next(),
//data = [clicked, options.active, toShow, toHide],
data = {
instance: this,
options: options,
newHeader: clicked,
oldHeader: options.active,
newContent: toShow,
oldContent: toHide
},
down = options.headers.index(options.active[0]) > options.headers.index(clicked[0]);
options.active = clickedActive ? $([]) : clicked;
toggle.call(this, toShow, toHide, data, clickedActive, down);
return false;
};
function findActive(headers, selector) {
return selector != undefined
? typeof selector == "number"
? headers.filter(":eq(" + selector + ")")
: headers.not(headers.not(selector))
: selector === false
? $([])
: headers.filter(":eq(0)");
}
$.extend($.ui.accordion, {
defaults: {
selectedClass: "selected",
alwaysOpen: true,
animated: 'slide',
event: "click",
header: "a",
autoheight: true,
running: 0,
navigationFilter: function() {
return this.href.toLowerCase() == location.href.toLowerCase();
}
},
animations: {
slide: function(options, additions) {
options = $.extend({
easing: "swing",
duration: 300
}, options, additions);
if (!options.toHide.size()) {
options.toShow.animate({ height: "show" }, options);
return;
}
var hideHeight = options.toHide.height(),
showHeight = options.toShow.height(),
difference = showHeight / hideHeight;
options.toShow.css({ height: 0, overflow: 'hidden' }).show();
options.toHide.filter(":hidden").each(options.complete).end().filter(":visible").animate({ height: "hide" }, {
step: function(now) {
var current = (hideHeight - now) // difference;
if ($.browser.msie || $.browser.opera) {
current = Math.ceil(current);
}
options.toShow.height(current);
},
duration: options.duration,
easing: options.easing,
complete: function() {
if (!options.autoheight) {
options.toShow.css("height", "auto");
}
options.toShow.css("overflow", "auto");
options.complete();
}
});
},
bounceslide: function(options) {
this.slide(options, {
easing: options.down ? "bounceout" : "swing",
duration: options.down ? 1000 : 200
});
},
easeslide: function(options) {
this.slide(options, {
easing: "easeinout",
duration: 700
})
}
}
});
})(jQuery);
+1 -15
View File
@@ -20,6 +20,7 @@
<section name="clientDependency" type="ClientDependency.Core.Config.ClientDependencySection, ClientDependency.Core"/>
</configSections>
<urlrewritingnet configSource="config\UrlRewriting.config" />
<clientDependency configSource="config\ClientDependency.config" />
<appSettings>
<add key="umbracoDbDSN" value="" />
<add key="umbracoConfigurationStatus" value="4.1.0.alpha" />
@@ -41,21 +42,6 @@
<add key="umbracoUseSSL" value="false" />
<add key="umbracoUseMediumTrust" value="false" />
</appSettings>
<clientDependency isDebugMode="false">
<fileRegistration defaultProvider="PageHeaderProvider" fileDependencyExtensions="js,css" enableCompositeFiles="true">
<providers>
<add name="PageHeaderProvider" type="ClientDependency.Core.FileRegistration.Providers.PageHeaderProvider, ClientDependency.Core" />
<add name="LazyLoadProvider" type="ClientDependency.Core.FileRegistration.Providers.LazyLoadProvider, ClientDependency.Core" />
</providers>
</fileRegistration>
<compositeFiles defaultProvider="CompositeFileProcessor" compositeFilePath="~/App_Data/ClientDependency" compositeFileHandlerPath="DependencyHandler.axd">
<providers>
<add name="CompositeFileProcessor" type="ClientDependency.Core.CompositeFiles.Providers.CompositeFileProcessingProvider, ClientDependency.Core" />
</providers>
</compositeFiles>
</clientDependency>
<system.net>
<mailSettings>
<smtp>
+10 -4
View File
@@ -2,7 +2,7 @@
<PropertyGroup>
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
<Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
<ProductVersion>9.0.30729</ProductVersion>
<ProductVersion>9.0.21022</ProductVersion>
<SchemaVersion>2.0</SchemaVersion>
<ProjectGuid>{27A2590E-1313-4A33-89FD-92811540B69C}</ProjectGuid>
<ProjectTypeGuids>{349c5851-65df-11da-9384-00065b846f21};{fae04ec0-301f-11d3-bf4b-00c04f79efbc}</ProjectTypeGuids>
@@ -209,7 +209,16 @@
<Content Include="umbraco\js\contextmenu.aspx" />
<Content Include="umbraco\js\contextmenu.js" />
<Content Include="umbraco\js\editorBarFunctions.js" />
<Content Include="umbraco\js\prototype.js" />
<Content Include="umbraco\js\richtextFunctions.js" />
<Content Include="umbraco\js\scriptaculous\builder.js" />
<Content Include="umbraco\js\scriptaculous\controls.js" />
<Content Include="umbraco\js\scriptaculous\dragdrop.js" />
<Content Include="umbraco\js\scriptaculous\effects.js" />
<Content Include="umbraco\js\scriptaculous\scriptaculous.js" />
<Content Include="umbraco\js\scriptaculous\slider.js" />
<Content Include="umbraco\js\scriptaculous\sound.js" />
<Content Include="umbraco\js\scriptaculous\unittest.js" />
<Content Include="umbraco\js\treeGui.js" />
<Content Include="umbraco\js\umbContext.js" />
<Content Include="umbraco\js\umbracoDefault.js" />
@@ -896,9 +905,6 @@
<IISUrl>
</IISUrl>
<NTLMAuthentication>False</NTLMAuthentication>
<UseCustomServer>False</UseCustomServer>
<CustomServerUrl>
</CustomServerUrl>
<SaveServerSettingsInUserFile>False</SaveServerSettingsInUserFile>
</WebProjectProperties>
</FlavorProperties>