Compare commits

...

949 Commits

Author SHA1 Message Date
Sebastiaan Janssen f1314628d7 One last hack to get the the macroengines to show up after install. 2012-11-23 12:01:43 -01:00
Sebastiaan Janssen e23ed30b0c Took out the temporary tree fixes and put another temp fix in (reverts to the 4.10.x code)
Also removed dependency on ClientDependency.Mvc for now to make upgrades easier (no requirement to do assembly redirects in web.config)
2012-11-23 11:45:51 -01:00
PerPloug 55cb46927e Changes to template and masterpages helper 2012-11-23 09:37:35 -01:00
Sebastiaan Janssen 654c3b7403 Another temporary fix for trees being unavailable after install, the context is null during upgrades in the installer, so would cause a YSOD 2012-11-23 08:02:23 -01:00
Sebastiaan Janssen 4195754b0c Pull in new translations before release 2012-11-23 07:36:58 -01:00
Sebastiaan Janssen 96a6f17bd7 Update for the WebPI build, should now automatically be good
Fixes U4-132
2012-11-22 16:06:06 -01:00
Sebastiaan Janssen 61d99c4061 Of course we also need the assembly redirect for MVC2 -> 3 in the template config to start with (so the build.bat picks it up as well) 2012-11-22 15:45:14 -01:00
Sebastiaan Janssen 0a6e91a2f9 Fixed U4-1235 Changing document type alias YSOD's on SQL CE 2012-11-22 15:04:27 -01:00
jeavonleopold cf9e786e45 U4-1241 Fix - BaseTreePicker GetItemBreadcrumbs causes YSOD for Property Editors that do not store numeric ID's 2012-11-22 15:17:12 +00:00
Sebastiaan Janssen ba1d3fd3e6 Fix Library.Search not giving back an list of DynamicNodes any more, breaking accessibility to custom properties 2012-11-22 13:23:20 -01:00
Sebastiaan Janssen ac01fd48fa Some refactoring of the Umbraco:image implementation after code review 2012-11-22 12:30:58 -01:00
Sebastiaan Janssen f53fb694be Tightened up and renamed the ReadPublished method (relating to pull request for U4-606) 2012-11-22 09:53:11 -01:00
Sebastiaan Janssen 1ecd8fa87d Temporary fix for trees being unavailable after install 2012-11-22 09:34:05 -01:00
Sebastiaan Janssen ce1c9d697b Add assemblyredirect for System.Web.Mvc because ClientDependency.Core.Mvc relies on Mvc v2 while we're using 3. 2012-11-22 09:30:07 -01:00
Sebastiaan Janssen c67a76fb03 json2.js was not included in VS, so not in the build 2012-11-22 08:06:39 -01:00
Shannon Deminick 3d72a4497c Merge 2012-11-22 02:56:53 +05:00
Sebastiaan Janssen 30cc8e0861 Merge 2012-11-21 11:05:38 -01:00
Sebastiaan Janssen 30ca3f6df9 Bump the version to 4.11.0 2012-11-21 11:05:30 -01:00
Stephan cccfed6efe U4-1222 - improve alternate template consistency 2012-11-21 10:12:04 -01:00
Sebastiaan Janssen 82c148e997 Fixed U4-596 with thanks to firepol! 2012-11-21 09:50:47 -01:00
Sebastiaan Janssen c50a3e7a27 I broke the build, oh noes! Sorry. :-) 2012-11-21 09:46:04 -01:00
callicj@M2UA1450WRW.us.maritz.net 811cbe2339 Added new method to the Document Service named readPublished() which returns the published version of the document.
Added new method to the Document class named GetPublishedVersion() which returns the published version of the document.
2012-11-21 08:03:53 -01:00
ksykora@ksykora-Win7 a8bf881ae1 * Fixed an umbraco bug where the macro editor, if it tried to enumerate over a
property whose value was null, would throw a null reference exception instead
 of just ignoring the property.
2012-11-21 07:53:29 -01:00
ksykora@ksykora-Win7 c446be734c Moved ParseMacros from Init into Load in ItemRenderer to fix an issue where the
NodeId property on the Item control was being set after the ItemRenderer had
already loaded it into memory.
2012-11-21 07:54:17 -01:00
Morten Bock f0f7f6af55 Include some missing files 2012-11-21 07:23:15 -01:00
Shannon Deminick 19bd8ae193 Fixes overloads for TypedMedia, TypedContent, Content, Media calls on UmbracoHelper now that
GetPropertyValue returns 'object'
2012-11-21 09:09:37 +05:00
Shannon Deminick 81d8f74e0d Small update to hashcodecombiner and pluginmanager 2012-11-21 08:39:10 +05:00
Shannon Deminick 0011d568c6 Fixes up HashCodeCombiner with correct long field intead of int with correct initialization.
Adds App_Code and global.asax to be monitored for changes to create the hash code.
2012-11-21 08:28:11 +05:00
Shannon Deminick 159718bf4f Updated sln to use Nuget for ClientDependency references, ensures that all config changes
are backward compatible. Have updated the new ClientDependency.config file with the new
features, though these are not required for existing installs but we should advise to merge
the new changes in.
Added ClientDependency.Core.Mvc to the UI project so that it will now ship with this library.
2012-11-21 08:01:23 +05:00
Shannon Deminick b9ff3ca729 updated proj references, was getting warnings in build that they could not be referenced. Might be a VS 2012 thing. 2012-11-20 07:41:12 +05:00
Shannon Deminick 4f3ac36d7f Merge 2012-11-19 19:57:23 +05:00
Shannon Deminick a9257ad366 Fixes #U4-1213, much better support for ignoring routes in route table. Fixes issue with LogHelper. Adds unit tests
for ignoring routes.
2012-11-19 19:56:52 +05:00
Sebastiaan Janssen 2218459877 Correcting the path for the targets file, should work now even if there are spaces in the path 2012-11-19 08:59:23 -01:00
Sebastiaan Janssen 8f5e2946d6 Merge 2012-11-19 08:10:16 -01:00
Sebastiaan Janssen 19c3b251a0 Include the VS targets file so that the build server can find it as well 2012-11-19 08:09:43 -01:00
Shannon Deminick ce4c855f00 Fixes up the resulting casts when invoking extension methods dynamically in our dynamic objects. 2012-11-19 05:47:34 +05:00
Shannon Deminick 48c45447e4 Fixes: #U4-1207, Enhancements to DynamicXml (legacy and new), now implements proper IEnumerable<T> interfaces.
Added DynamicInstanceHelper for any dynamic object that should find matches on methods, properties and
extension methods. Fixed ExtensionMethodFinder to find the Enumerable extensions (was previously set to IEnumerable which would
find nothing).
2012-11-18 10:28:53 +05:00
Shannon Deminick 4683144987 Changed CacheHelper to be public so it can be exposed publicly by the app context. 2012-11-18 03:34:31 +05:00
Shannon Deminick 238a237cb5 Merge 2012-11-18 03:31:15 +05:00
Shannon Deminick cde1ca9f83 updated some logging on content class. 2012-11-18 03:31:02 +05:00
Shannon Deminick 93e2d8d822 added missing file for tests. 2012-11-18 02:49:55 +05:00
Stephan 8609389bdb U4-1198 - publish dialog does not detect that a parent is not published 2012-11-17 14:55:58 -01:00
Stephan 48f985b70a U4-1212 - can publish grand-child of unpublished node
fixed by introducing Document PathPublished property
2012-11-17 14:37:41 -01:00
Stephan b02afb3af8 u4-1186 - Manage hostnames UI bug with validators 2012-11-17 13:45:53 -01:00
Stephan b9d814c3fb (michielvoo pull request) Consitent new lines in templates 2012-11-17 13:28:38 -01:00
Stephan 1b54ce1d48 U4-1210 - ysod on rollback 2012-11-17 12:29:05 -01:00
Stephan e3efc0d19b U4-1194 - Mvc templates do not work when running in a virtual directory 2012-11-16 15:52:14 -01:00
Sebastiaan Janssen 3ba9e09164 Update obsolete messages to point to the correct classes (instead of being misleading) :-) 2012-11-16 14:41:30 -01:00
Shannon Deminick 4cb03ab36c Fixes issue with ChildActions when inherting from UmbracoViewPage<T> and using the @Umbraco helper. 2012-11-16 10:08:12 +05:00
Shannon Deminick 3ebbcc77e9 Merge 2012-11-16 00:45:29 +05:00
Shannon Deminick 8be97295dc Added new method to RenderMvcController for easier return of the current template when hijacking routes.
Added better error checking for media handling in MVC.
2012-11-16 00:38:03 +05:00
Shannon Deminick 3dd411f159 Working on #U4-1174, lots of updates/fixes to media in MVC regarding loading data from the examine cache to return media + lots of unit tests. 2012-11-15 21:46:54 +05:00
Shannon Deminick 8b141dc51a Working on #U4-1174, lots of updates/fixes to media in MVC + unit tests. 2012-11-15 20:11:10 +05:00
Stephan 278aa3f820 U4-1203 - UmbracoHelper.RenderMacro displays trace output at the wrong place 2012-11-15 13:41:44 -01:00
Shannon Deminick a7a38478db Working on #U4-1174 - issue with TypedMedia in MVC, fixes a few things and ensures Children() works
as expected, adds unit tests.
2012-11-15 04:18:23 +05:00
Shannon Deminick b2e004b825 renamed namespace in test proj 2012-11-15 02:04:46 +05:00
Shannon Deminick 10df6e878c updated config 2012-11-14 22:05:58 +05:00
Shannon Deminick eac11c1b80 cleaned up some of the install auth attribute 2012-11-14 21:22:30 +05:00
Shannon Deminick 0ad5da67ea Merge with 4.10.1 2012-11-14 21:18:34 +05:00
Shannon Deminick 3fb9ffca5b Update for installer rest service, updates version 2012-11-14 19:50:39 +05:00
Stephan 8e7fe5ee55 fix f3a3bdaf6329 2012-11-14 06:40:09 -01:00
Shannon Deminick 9554c6a1c6 Fixes #U4-1174 - allows MVC views to render when using RenderTemplate. Added new UmbracoHelper method RenderTemplate. Cleaned up some code and
ensuring that the string writers are disposed. Moved TemplateRenderer to a better namespace.
2012-11-14 10:47:40 +05:00
Shannon Deminick 8597876c92 Fixed up the library calls to RenderTemplate, no longer a ton of duplicated code and removed
the requirement to build up query strings as this is completley not required since we use 'preserveForm'
in the Server.Execute.
2012-11-14 09:31:20 +05:00
Shannon Deminick 3df7d81bde Fixed up the webforms url gen 2012-11-14 09:19:39 +05:00
Shannon Deminick f82ae4fdda Fixes: #U4-1174, this now works for all webforms related templates, however RenderTemplate will currently not work for
MVC templates... this will come soon. If you try to it will just throw a NotImplementedException.
2012-11-14 09:13:53 +05:00
Shannon Deminick 4a981225b3 Merge 2012-11-14 03:52:34 +05:00
Shannon Deminick 0cd115c268 Fixees: #U4-1166, automatically adds parsable routes in the route table to the reserved paths
so you don't have to explicitly add reserved paths to Umbraco config that you are creating routes for.
2012-11-14 03:32:50 +05:00
Sebastiaan Janssen 291b0582e4 Merge 2012-11-12 07:41:40 -01:00
Sebastiaan Janssen f4e48872a2 Imported pull request by Michiel van Oosterhout (consistent line endings)
Removed some commented out code
Pull: http://umbraco.codeplex.com/SourceControl/network/forks/michielvoo/UmbracoU4451/contribution/3482
2012-11-12 07:40:58 -01:00
Shannon Deminick 9e320700e2 Fixes: #U4-1178, adds another strongly typed overload to GetPropertyValue<T> and adds more unit tests. 2012-11-12 10:50:23 +05:00
Shannon Deminick 7f0ff70ca9 Fixes: #U4-1132, this is a bit of a hack fix because the Media should include creatorName/id but it doesn't. 2012-11-12 09:20:54 +05:00
Shannon Deminick 65e3b7f951 Merge 2012-11-12 08:24:36 +05:00
Shannon Deminick 156f145c69 Updated the build manager to find instances based on persisted cache of previous lookups but uses BuildManager to do so, after
some benchmark unit tests against loading a type from an assembly this is about 100% faster. Updated the UmbracoModule to write more diagnostics
for benchmark debugging. Have basically reduced the startup time to approx 50% of what it used to be based on the current
benchmarks run. Previously app startup on my machine was about 5 seconds, now after the first startup it is about 2.5 seconds.
2012-11-12 08:10:12 +05:00
clausjensen a0c941dac2 Fixes U4-1092 - TinyMce breaks script tags by double wrapping in CDATA on save 2012-11-11 09:50:42 -01:00
Bitmapped 33eb9d40f3 Catches exception thrown by native ActiveDirectoryMembershipProvider when there
is no current user.
Fixes U4-709
2012-11-11 09:40:48 -01:00
Sebastiaan Janssen cf8186653c Merge 2012-11-11 09:19:02 -01:00
Sebastiaan Janssen 75403d3b94 Fix by Tom Witherington - U4-1167 tags not saving or deleting in Tags data type
Also cleaned up the usage of obsolete method calls
2012-11-11 09:17:20 -01:00
Shannon Deminick 083bab0528 Added HashCodeCombiner and unit tests to support. Added ability to create a hashed file based on scanned assemblies in the
PluginManager and added a cached plugin xml file to the PluginManager. Now we don't actually scan any assemblies on app startup
during plugin finding if none of the DLLs have changed. Added trace statements to the UmbracoModule for better benchmarking for
how long a full request takes to load from start to finish.
2012-11-11 09:09:06 +05:00
leekelleher ee3e3787a8 PropertyEditorConverters - reusing TryConvertTo<T>, removing duplicate code. 2012-11-10 21:41:40 +00:00
leekelleher a3895ab149 Added unit tests for PropertyEditorValueConverters. 2012-11-10 21:40:37 +00:00
Matt@MBP13-PC c590c6a265 Fixes issue #U4-1169 wherby Umbraco.Field always runs in the context of the current page regardless of whether a custom IPublishedContent is passed in 2012-11-10 16:40:00 +00:00
leekelleher 6c1bf4b85f Added unit test for ObjectExtensions TryConvertTo<DateTime>.
Modified CustomBooleanTypeConverter to accept an empty string as a FALSE.
2012-11-10 14:09:27 +00:00
Sebastiaan Janssen 3632d6b0c6 Opened branch 4.11.0 2012-11-08 15:31:41 -01:00
Sebastiaan Janssen bf95792524 Merge with 4.10.0 2012-11-08 15:00:52 -01:00
Sebastiaan Janssen 885b421201 Closed branch 4.10.0 2012-11-08 14:48:26 -01:00
Sebastiaan Janssen b11143e2c4 Added tag Release-4.10.0 for changeset f6da531fbb4c 2012-11-08 14:46:56 -01:00
Sebastiaan Janssen 00a625fb7f Recursion was wrong on this one.
Fixed #U4-1147
2012-11-08 12:41:18 -01:00
jeavonleopold e9ae11ff2b U4-366 - AllowThousands for Integer property editor 2012-11-08 09:28:41 +00:00
Sebastiaan Janssen bd4e6eaa62 Merge 2012-11-08 11:30:10 -01:00
Sebastiaan Janssen b2e4489e66 Umbraco.Web.UI is now the first project in the solution file, so you won't have
to manually do "Set as startup project"
2012-11-08 11:22:28 -01:00
Sebastiaan Janssen d27e32e918 Medium Trust on by default in debug web.configs
Don't overwrite root web.config on each build if already exists
Should make F5-debug a lot easier
2012-11-08 11:17:21 -01:00
pgregorynz 3a6dae9d0d Merge 2012-11-08 01:06:59 -10:00
sitereactor 9f95c48242 Updating swedish language file. 2012-11-08 08:26:24 -01:00
Sebastiaan Janssen e2934bb036 Merge 2012-11-08 07:06:07 -01:00
Sebastiaan Janssen 664a0ff4ec Add MVC3 dlls to bin folder so that hosts don't have to have MVC installed
Fixed #U4-1137
2012-11-08 07:05:29 -01:00
sitereactor 715f0ddac1 Updating Chinese language files from github. 2012-11-08 06:56:55 -01:00
pgregorynz 4d5f142a30 fix for ItemRenderer.cs to work with Partials 2012-11-07 21:19:35 -10:00
Shannon Deminick f4dc045561 Removed MediaFileSystemExtensions and just added the methods to the MediaFileSystem which are more discoverable.
Added Code Annotations to all file system classes pointing to the new #U4-1156 tracking item to publicize.
2012-11-08 08:27:38 +05:00
Shannon Deminick ca55372f89 Merge 2012-11-08 08:12:33 +05:00
Shannon Deminick 29c96c2c64 Converted QuickSearch over to use correct codebehind 2012-11-08 08:12:24 +05:00
pgregorynz 1a969d76e1 Revert change to Umbraco Helper as caused issues with the itemRender not being
able to process fallback or formating options.
2012-11-07 15:20:19 -10:00
Shannon Deminick fba31a0a6a Added Code annotations for IPublishedContentStore, etc... as experimental features with links to the
tracker.
2012-11-07 10:16:36 +05:00
Shannon Deminick 5132d66924 Created code annotation attributes and descriptions 2012-11-07 09:55:21 +05:00
Shannon Deminick 36f367f9d6 Added a unit test to confirm any ctor of a custom typed file system 2012-11-07 09:40:33 +05:00
Shannon Deminick 67d9e578f5 Fixes: #U4-919, we will just use real classes for extension methods and all custom file systems like the MediaFileSystem must inherit from
FileSystemWrapper
2012-11-07 09:30:40 +05:00
Shannon Deminick 306f0f9679 Merge 2012-11-07 03:50:32 +05:00
Shannon Deminick b9d53ceac8 Fixes more of U4-1140, ensure that only legacy objects are returned from the dynamic stuff in the razor macros. Adds unit test for it. 2012-11-07 03:49:32 +05:00
Søren Reinke@Windows-7 1bceb746fa Switched to non obsolete method call 2012-11-06 20:32:26 -01:00
Søren Reinke@Windows-7 d390a4c0a9 Made speech bubbles for MediaTypes act the same as for DocumentTypes 2012-11-06 20:24:48 -01:00
Søren Reinke@Windows-7 e4f8b5c586 Deleting a Tab now removes it from the list in the browser 2012-11-06 19:21:41 -01:00
Sebastiaan Janssen 869915f991 Updated to the Medium Trust-safe version of SQL CE SP1
(assembly version 4.0.0.0 instead of 4.0.0.1)
2012-11-07 12:12:57 -01:00
Sebastiaan Janssen 0cb4a9ad9c Fixes issue where upload will fail in medium trust due to use of FileInfo
Related to earrlier fixes for U4-919
2012-11-07 09:28:08 -01:00
Sebastiaan Janssen 8c7dbd7207 Merge 2012-11-06 09:50:28 -01:00
Sebastiaan Janssen 0110cf01f2 Removed unused variable that was causing problems, cleaned up the code a tiny bit
Fixed #U4-1119
2012-11-06 09:49:27 -01:00
Stephan fee1a0dd9e fix broken CreateXPathQuery in legacy requestHandler 2012-11-06 07:09:54 -01:00
Shannon Deminick 315e8b27a0 Migrated loadStarterKitDesigns to use the new codebehind structure. 2012-11-06 09:14:39 +06:00
Shannon Deminick fb0c9c3fbb Changed DynamicXml to public (somehow this wasn't checked in before) #U4-U4-1146
Added unit tests for DynamicXml.Find methods which are passing.
2012-11-06 08:32:21 +06:00
Sebastiaan Janssen 0df1ebb83e Merge 4.9.1 into default 2012-11-01 07:12:47 -01:00
Sebastiaan Janssen 204d7a79aa Closed branch 4.9.1 2012-11-01 07:10:42 -01:00
Sebastiaan Janssen e68629b8bc Added tag Release-4.9.1 for changeset 8d7d8609e2e4 2012-11-01 07:10:31 -01:00
Matt Watson f80fa2f373 Datatype Tags, multiple render when multiple instance on same doctype
Fixed #U4-915
2012-10-31 21:51:17 +00:00
Sebastiaan Janssen 55ac779bf2 Changed the Chines language files to have a zh prefix in the key instead of en.
Now the chinese translation files actually work.
Fixed #U4-1126
2012-11-05 10:07:51 -01:00
Sebastiaan Janssen f8732cd70b Removed the ExportCode dialog as it's not needed any more now that L2U is gone. 2012-11-05 09:19:20 -01:00
pgregorynz ff5c5c8a03 Relates to bud U4-1142 Umbraco helper in wrong context with used in a Partial.
Fix to context of Umbraco helper when used in partials.
2012-11-04 21:24:04 -10:00
Shannon Deminick 7df9921441 Fixes: #U4-1142, Changed ctor for RenderModel so people can actually create one to pass in to their views if they want.
Changed the way that UmbracoTemplatePage works in that if you pass in an IPublishedContent model instead of a RenderModel,
it will be generated for you without a YSOD. Changed the UmbracoHelper ctor so that it can be passed a custom IPublishedContent model
so that it's context is of that model and not the one routed to. Added Umbraco.Web.Mvc to the imported namespaces for Views.
2012-11-05 11:27:28 +06:00
Shannon Deminick 329431e6df Fixes: #U4-1141 - IPropertyEditorValueConverter is not a plugin type and is searched for on app startup. 2012-11-05 06:14:44 +06:00
Shannon Deminick 292ded852e Changed IPropertyEditorValueConverter to public #U4-1141
Changed the /umbraco folder in the UI project to be properly cased according to VS (this is initial, we need to
do this for everything but need to write a script, see https://groups.google.com/forum/?pli=1#!topic/umbraco-dev/_KDTHpPPFM8 )
2012-11-05 06:04:40 +06:00
Shannon Deminick a4a9b26d93 Committed first tests of strongly typed querying with strongly typed document types using what would be generated code and extension methods. 2012-11-04 09:24:24 +06:00
Shannon Deminick e4d4aa935a fixed attempt to initialize it's False property, changed IPublishedStore back to internal... was my mistake to make this public just yet. 2012-11-04 08:56:50 +06:00
Shannon Deminick b337f4e5e4 Fixes issue with installing starter kits in the back office after upgrading the installer to install
the starter kits properly. Not sure if this was actually working before 4.10 but in any case does work again
now and installs them the correct way whilst waiting for the app pool to restart (we need to put this in place
for the normal packages too!). Upgraded the StarterKits.aspx to have the correct code behind structure. Fixes issue
with missing or invalid referenced images.
2012-11-03 07:18:12 +06:00
Shannon Deminick 6f5689004d Fixes: #U4-1113 2012-11-03 05:48:23 +06:00
Sebastiaan Janssen ed5a0be20e Merge with updated language files 2012-11-02 09:32:54 -01:00
Sebastiaan Janssen 4e82d282bf Cleaned up and updated the web.Template.config before release
Also reformatted in hopes to keep the formatting consistent between releases from now on
2012-11-02 09:32:20 -01:00
sitereactor fe003edd02 Adding language files from github localization repo. 2012-11-02 09:23:59 -01:00
Sebastiaan Janssen 17f326dc89 Enable relationtypes tree in release version as well 2012-11-02 08:52:12 -01:00
Stephan 2c38f7ce7f fix BaseRest config management - would throw when missing config files 2012-11-01 16:46:04 -01:00
Sebastiaan Janssen 3ba31cc82c Fixed breaking change: method signature of Template.MakeNew changes when you add
optional params, breaking uSiteBuilder.
2012-11-01 12:51:46 -01:00
jeavonleopold e502ce4ff9 U4-1112 - Add Any() property to DynamicXml 2012-10-31 10:47:04 +00:00
Shannon Deminick 8fff66dcb7 Merge 2012-10-31 20:48:50 +06:00
Shannon Deminick bc47e0c4a6 Fixed the get enumerator method in the legacy DynamicXml so that it still returns the legacy class instead of the new one. 2012-10-31 20:42:06 +06:00
Shannon Deminick 85c110bad5 missing changed file 2012-10-31 11:46:02 +06:00
Shannon Deminick 8866607582 changed milliseconds to seconds 2012-10-31 11:43:14 +06:00
Shannon Deminick 0db6c2cc11 Fixed issue that locally declared SurfaceControllers are routed through 'umbraco' area, this should not have been the case.
Created new CacheHelper which replaces the old Cache class and is accessible via the UmbracoContext.
Added new CachedPartial extension method to be able to cache the output of your partials (also by page and by member)
Added mew CacheHelperApplicationEventListener in order to automatically clear the partials cache when content is published, media or members is saved.
2012-10-31 11:36:22 +06:00
Sebastiaan Janssen 84858bea65 Move the Umbraco.Web.UI project up to the first position in the .sln file so
that when you first clone the project and hit F5 it will actually start the
correct project (and not the class library)
2012-10-30 15:27:59 -01:00
Shannon Deminick c3795d7e5a Added some code comments and did a check for redirects (returns null if this is the case) 2012-10-30 06:49:36 +06:00
Shannon Deminick 36eea348ba changes the fix for U4-1097 to use an InvariantEquals instead of a direct equals just in case! 2012-10-30 06:23:29 +06:00
Stephan be3f95610b U4-1081 - treat missing template at 404 2012-10-29 12:35:39 -01:00
Stephan f9aa4b28af U4-889 - cancelling publish via an event caused a JavaScript error 2012-10-29 07:48:45 -01:00
Stephan 232c2292cb U4-1093 - fail to publish a node w/new content type
the way we added the new content type to the schema just could not work
also, stop reloading the whole XML from DB because the schema changes
2012-10-28 19:35:19 -01:00
Stephan 80dca1e3f2 U4-1089 - non-ascii chars in urls cause 404 2012-10-28 11:58:48 -01:00
Stephan 47b6f7f4d5 fix U4-1087 : preview badge does not show 2012-10-28 10:58:56 -01:00
pgregorynz 03af54b1d5 Merge 2012-10-25 14:21:16 -10:00
Casey Neehouse bbd62f20a9 Corrects a couple minor issue with Directory support when mapped to a
Virtual Directory and network shares.
2012-10-26 04:19:14 +04:00
pgregorynz 9738227189 Making the CTOR for UmbracoHelper public so it can be newed up for other uses 2012-10-25 14:18:53 -10:00
Shannon Deminick 6bf3a7a74a Merge 2012-10-26 03:01:21 +05:00
Shannon Deminick 07f8f79620 Fixes: #U4-1077, found an bug with both our code and Microsoft's code in that if you RemapPath with an incorrect URL which contains
2 '?' the internals of ASP.net actually force a secondary internal request which causes BeginRequest to fire but doesn't follow the normal
chain of the module. It was a bug with our code having two query strings, however its pretty strange behavior on their part!
Have removed UmbracoContext.ClientUrl since it is not necessary to have. Have renamed UmbracoContext.UmbracoUrl = CleanedUmbracoUrl and UmbracoContext.RequextUrl = OriginalRequestUrl
Have moved the route processing logic to a static method on PublishedContentRequest which auto assigns the request back to the UmbracoContext, plus this is a cleaner
way to do the processing, including allowing us to unit test this one aspect.
Lastly, we are now rewriting the path back to the original URL in the RenderRouteHandler so that in MVC controllers the HttpContext.Request actually
reflects the URL that the client requested, not the rewritten URL (we do this in webforms too)
2012-10-26 02:55:57 +05:00
Ismail Mayat f0690ec55f U4-1069 localize file umbraco.web.ui\umbraco 2012-10-25 14:47:00 -01:00
Tom Fulton e4bfccf974 U4-1057: Add localization of 'relate copied items' text 2012-10-25 19:42:16 +04:00
Hendy 51d08a353c U4-1084: media file links now updated after save 2012-10-25 14:33:50 -01:00
Hendy 982825dd56 Merge 2012-10-25 14:01:14 -01:00
NielsHartvig@UMBRACORATI.localdomain c8c4e2437b Implements U4-1022: Request: Disable Canvas mode by default 2012-10-25 13:00:31 -02:00
Hendy 1970b20eb9 Merge 2012-10-25 14:00:10 -01:00
Hendy a5499cff26 U4-1080 - updateDate value for media item pulled from it's xml fragment (as only verison in db for media is the created version) 2012-10-25 13:59:48 -01:00
Ismail Mayat d9c37a03b9 U4-989 Editing Macro Scripts should force any attached macros to refresh their cached code 2012-10-25 13:48:44 -01:00
Tim@MiniNinja e17b93bcfe Fixes issue U4-872 2012-10-25 14:04:32 -01:00
Stephan 6ffc231be0 bugfix UriUtility when running in a virtual directory 2012-10-25 12:28:33 -02:00
Tim@MiniNinja 99d8aca0c5 Fixes U4-864 also fixes similar issues for:
Xslt
Javascript
Stylesheets
Scripting Files
Macros
If file exists, will redirect to existing file instead of cretaing new
2012-10-25 13:24:44 -01:00
Sebastiaan Janssen 3c2ac0e90e Include new files for U4-858 Default icons for Media Types 2012-10-31 12:03:52 -01:00
AnthonyCogworks@Anthony-PC 7af10e3b67 Issue : http://issues.umbraco.org/issue/U4-858
Fixed media thumbnails for SQL CE
2012-10-25 14:00:33 -01:00
Stephan 62a48df421 bugfix NiceUrlProvider when running in a virtual directory 2012-10-25 12:14:21 -02:00
Hendy f146b8f6af Merge 2012-10-25 11:30:56 -01:00
NielsHartvig@UMBRACORATI.localdomain 946f905885 Fixes U4-1079, Installer database step gives no error on failure 2012-10-25 10:30:08 -02:00
Hendy 707eca930f U4-430 - saving a media item now updates the udpated date in the xml 2012-10-25 11:27:12 -01:00
Stephan e4a002c976 properly cleanup views/masterpages when changing the type of a template 2012-10-25 09:34:02 -02:00
AnthonyCogworks@Anthony-PC e731afadc9 Issue : http://issues.umbraco.org/issue/U4-858
Fixed media thumbnails for SQL Server, MySQL, & Azure
2012-10-25 10:23:53 -01:00
Tom Fulton a006a480f7 U4-855: Small update to allow Preview to work when pasting custom source, and fix Insert not highlighting right away if ctrl+v 2012-10-25 18:14:11 +04:00
Tom Fulton 674923468d U4-855 Embed Media - allow inserting custom HTML into Source tab 2012-10-25 17:52:50 +04:00
Sebastiaan Janssen afafcfbb7a Merge 2012-10-31 10:32:58 -01:00
Matt@MBP13-PC c489d910b8 Fixes issue #U4-322 "Custom section name is the name of the previous section" by passing through the app alias to shitApp if no key is found in uiKeys 2012-10-31 11:31:08 +00:00
Sebastiaan Janssen 6e226ef995 Update the tinyMCE release config as well for U4-717 and u4-1006 2012-10-31 10:11:02 -01:00
AnthonyCogworks@Anthony-PC 0b1c479428 Case: http://issues.umbraco.org/issue/U4-715
Removed 2nd call to cleanPropertiesOnDeletion(_contenttypeid); in PropertyType.delete()

Replaced multiple calls to db to get all documentTypes.
2012-10-25 13:35:47 -01:00
AnthonyCogworks@Anthony-PC 3f2ca8a823 Case: http://issues.umbraco.org/issue/U4-648
Fixed issue in CMSNode where Parent was being set twice.
The issue was due to logic in Move(CMSNode newParent).
I renamed the parameter to newParent as it is more clear.
Changed the logic to check againse ParentId, rather than Path, and deleted
the redundant assignment to Parent.
2012-10-25 14:55:46 -01:00
Tom Fulton 78d57e89d5 U4-408: Prevent dragging of toolbar icons by adding onmousedown="return false" 2012-10-25 16:36:21 +04:00
Tom Fulton d9049864f3 U4-395: Fix RTE in Members section (add ValidateRequest = false) 2012-10-25 19:21:46 +04:00
Hendy 21632d2ffc Merge 2012-10-25 10:14:50 -01:00
Hendy da3d20a5bb ImageCropper property alias now set via a drop down of all available aliases, and a safety check on the dataeditor to ensure the selected property was found 2012-10-25 10:14:24 -01:00
Anders Burla Johansen c0f0dcca3a Fixed some attributes in tinyMCEConfig.config U4-717 and U4-1006 2012-10-25 09:02:33 -02:00
Tom Fulton 22f7d8797c U4-377: Fix exception when attempting to access Value externally during a new dictionary item creation 2012-10-25 14:47:29 +04:00
Tom Fulton 25da44825e U4-377: Add code from michielvoo's pull request (trigger the dictionaryitem.saving event from dictionaryitem.setvalue() by calling
its Save() method.)
2012-10-25 14:46:12 +04:00
Sebastiaan@SEBTHINK 55d4a7e367 Merge 2012-10-25 08:53:41 -02:00
NielsHartvig@UMBRACORATI.localdomain 33e73ab965 Fixes U4-802, MacroEngine should sort the built in engine first 2012-10-25 08:37:55 -02:00
NielsHartvig@UMBRACORATI.localdomain 05db49c66d Merge 2012-10-25 07:56:34 -02:00
NielsHartvig@UMBRACORATI.localdomain 4cf2035039 Fixes U4-862, Hide Preview Button and "Link to Document" on content nodes that are not intended for display (e.g., those that have no templates) 2012-10-25 07:55:34 -02:00
Hendy 27f059bf58 Merge 2012-10-25 08:53:11 -01:00
Hendy aee8730315 Bugs: U4-902 & U4-366
Prevalue field removed from the integer datatype & regex validation now fires
2012-10-25 08:51:38 -01:00
Ismail Mayat b517d59bee U4-998Saving a User Type - speech bubble says "User Saved" 2012-10-25 08:38:25 -01:00
Ismail Mayat e4f3081da2 U4-998 Saving a User Type - speech bubble says "User Saved" 2012-10-25 08:21:47 -01:00
NielsHartvig@UMBRACORATI.localdomain 5cca506d20 The new Template.GetByAlias with optional useCache parameter breaks bw compat as method signature changes. Adding an overload and removing default value on overload 2012-10-25 07:13:34 -02:00
Shannon Deminick e3f9375fd2 changes template creator to use new UmbracoTemplatePage class instead of RenderViewPage 2012-10-24 11:10:27 +05:00
Shannon Deminick cbd8085675 Merge 2012-10-24 11:06:31 +05:00
Shannon Deminick a9d6c7872a Changed the PublishedContentRequestBuild to use the cached template lookup instead of going to the db each time,
added caching to the business logic template class's GetByAlias method. All of this will save db queries for each request meaning even
faster rendering. Fixed GetTemplateAlias extension method to use the correct Template class with caching.
2012-10-24 11:02:36 +05:00
Shannon Deminick d4d4272b1b Moved RenderModel to Models namespace. Created new base UmbracoViewPage to use for umbraco partial views, etc... and renamed
RenderViewPage to UmbracoTemplatePage which now inherits from UmbracoViewPage. Added NiceUrl and NiceUrlWithDomain as extension
methods to IPublishedContent.
2012-10-24 09:59:23 +05:00
Sebastiaan Janssen e9aef79747 Member search didn't work
#U4-643 Fixed
2012-10-23 18:38:27 -02:00
Sebastiaan Janssen 3b5a1ddcdd Fixed the build, forgot to remove file reference from the csproj file 2012-10-23 14:52:58 -02:00
Sebastiaan Janssen 14ad9f571c Upgrade to TinyMCE 3.5.7 2012-10-23 13:32:21 -02:00
Sebastiaan Janssen 243633365e Re-include ItemEditing javascripts 2012-10-23 10:46:26 -02:00
Sebastiaan Janssen 258d19df22 Remove Container DocTypes for now 2012-10-23 10:40:22 -02:00
Stephan 8261fa2aea fix package installer, use encodeURIComponent() vs escape() to support utf8 2012-10-23 09:37:33 -02:00
Stephan c434790b2f do not validate input when live editing to support RTE 2012-10-23 09:05:57 -02:00
Sebastiaan Janssen 4397319ac3 Add z-index too treePickerToolTip to get it on top when media picker preview is on 2012-10-23 08:24:33 -02:00
Sebastiaan Janssen 7309c7c02f Templates that have a space in the alias will be created without spaces in the
file name, when determining if the template exists, remove spaces from the alias
2012-10-22 10:36:54 -02:00
Sebastiaan Janssen 12e9ab050a Rewrite some more references to the tabId column and cmsTab table 2012-10-22 08:29:18 -02:00
sitereactor d0fd7c1374 Merge 2012-10-22 05:59:20 -02:00
sitereactor f7ccad4269 Updating language files with updates from github 2012-10-22 05:58:42 -02:00
Sebastiaan Janssen 1bf20b9c97 Update the version tests for mysql installer 2012-10-22 05:27:47 -02:00
Sebastiaan Janssen f03d861942 Updated MySql update script for 4.10.0 2012-10-21 11:47:01 -02:00
Sebastiaan Janssen c0eb3e256b MySQL total script updated for 4.10.0 2012-10-21 11:31:32 -02:00
Sebastiaan Janssen 41d7571e29 Merge 2012-10-21 11:08:57 -02:00
Sebastiaan Janssen c2f420be7a Fix issue where installer would not create properties on the media types because
it was trying to put information in the tabId column that's no longer there
2012-10-21 11:07:48 -02:00
Stephan b0e083e8fc refactor nice urls in editContent (U4-1017 and other issues) 2012-10-19 08:50:49 -02:00
Sebastiaan Janssen 04197a5900 Updated query to tabId to use propertyTypeGroupId instead, removed unreachable code 2012-10-18 11:39:38 -02:00
Sebastiaan Janssen d2fd02315a Fix skin configurator in Chrome not working after install.
SORRY for the commit to both files, still need to dive into the ASCX seperation
2012-10-18 07:46:46 -02:00
Sebastiaan Janssen f654c67540 Fix skin configurator in Chrome not working after install. 2012-10-18 07:41:24 -02:00
Sebastiaan Janssen 9b28214c3e Merge 2012-10-18 06:44:20 -02:00
Sebastiaan Janssen 6a665efd7e Styles dropdown is not updated when styled text is highlighted in the rich text editor
#U4-659 Fixed
2012-10-18 06:41:16 -02:00
Shannon Deminick 5aee883bd2 Added TypedSearch methods to UmbracoHelper and Search extension methods to the IPublishedContent.
Added GetTemplateAlias() extension method to IPublishedContent and to DynamicPublishedContent.
2012-10-18 08:00:07 +05:00
Shannon Deminick c0f7493e70 Merge 2012-10-18 07:17:20 +05:00
Shannon Deminick 7d8524dd55 Added additional namespace imports for MVC views in the views web.config. 2012-10-18 06:55:41 +05:00
Sebastiaan Janssen 4c667a6a3e Set web.config output to none because it might not exist when running automated
builds like build.bat or teamcity
2012-10-17 06:11:31 -02:00
Shannon Deminick ce06a30e64 added additional timeout to installer to ensure DOM is updated before redirecting. 2012-10-17 09:28:02 +05:00
Shannon Deminick 1be891d05f Added Thread.Sleep hack during package installer to attempt to always fluke out that the app pool will be restarted after redirect.
Currently this has worked in the past but only by fluke, this hack just makes the fluke probably work more often. In the next release we'll
need to refactor the package installers (there are about 7 instances of them in the codebase) to all use the same ajax methodology to ensure
that the app pool is restarted properly (which is now done properly during the install process).
2012-10-17 08:51:58 +05:00
Shannon Deminick e85f594b84 Fixed issue with trees not showing up for some packages, was issue with PluginManager caching between finding global types or finding types with specific attributes.
In this case, we were finding attributed trees only which was cached against the type of ITree, then we were looking for all ITrees but previously we cached finding ITrees
but the cache value was only the attributed ones.
Removed the caching of some plugin finding since they are only found once and there's no reason for the additional mem overhead.
2012-10-17 08:44:32 +05:00
Shannon Deminick a3278be3fe updated .ignore again with casing 2012-10-17 07:31:01 +05:00
Shannon Deminick 90aa8c3b5a reverted web.config back to standard (without user defined values) and added it to .ignore so that
user changes don't keep changing it and 'forgot' it in the source control.
2012-10-17 07:30:08 +05:00
Shannon Deminick ea217edaae Merge 2012-10-17 07:25:15 +05:00
Shannon Deminick 3cf9a45724 Finalized initial refactor of package installation for the installer, ensures the app pool is properly restarted
before installing Business Logic.
2012-10-17 07:08:35 +05:00
funka@WETWIRED 38fc6c980d Resolves redundant BaseTreePicker script initialization (U4-192) 2012-10-17 05:36:22 +07:00
Shannon Deminick cc34208871 More work on installer update for packages, nearly there. 2012-10-16 03:12:16 +05:00
Shannon Deminick 6f778c26d1 Initial commit of refactoring of package installer for the installer process. Converted a few webforms pages/controls to the new format, created
new JS class to manage the installation, created new MVC controller for managing the ajax installation
2012-10-16 01:33:35 +05:00
Sebastiaan Janssen 29b978c1cd Fixes issue where scrubbing the log would fail because of wrong datetime format 2012-10-15 12:11:31 -02:00
Sebastiaan Janssen 346a2d4fc9 Whoops, logging a little bit too much now, should only log errors 2012-10-15 11:38:15 -02:00
Sebastiaan Janssen 02cc7e69ec Merge 2012-10-15 07:03:29 -02:00
Sebastiaan Janssen acb66f45ac Change query to use propertyTypeGroupId instead of tabId (which has been renamed) 2012-10-15 07:03:12 -02:00
Sebastiaan Janssen 487fdea34e Logging for the datalayer now properly uses the LogHelper in Umbraco.Core 2012-10-15 07:02:29 -02:00
Shannon Deminick 0e0c4fcb1f Fixed an issue with unit tests and not resetting settings. 2012-10-14 08:11:49 +05:00
Shannon Deminick f7868b2cf1 Updated some of the Object resolver code, adds new protected AddTypes method, renamed method on Legacy resolver.
Fixes yet another issue with templates and package installs.
2012-10-13 10:59:21 +05:00
Shannon Deminick 0368f2846e Removed erroneous logging on plugin manager. 2012-10-13 09:26:30 +05:00
Shannon Deminick ee94652a0c Added unhandled exception logging. Added error checking to the DataTypeDefinition class... trying to
pinpoint where/when this bug occurs.
2012-10-13 08:49:44 +05:00
Shannon Deminick a1da12f033 Fixed SQL and CE installer to have the proper version spec queries... only by pure fluke did it ever work for 4.8! Argh!
Modified the CE one so that it is consistent with the Sql one, we should be relying on the same scripts here (or at least the same logic)
the one for CE will not work because even if the db is not installed it would have still returned 0 which would pass and the installer would have
thought it was installed.
2012-10-13 07:05:11 +05:00
Shannon Deminick ea406d2d7c Fixed SqlServer and CE installers to flag their latest available install version as 4.9, looks like MySQL hasn't been done yet
so have left it's installer flagged as 4.8 (just means that the intall will just hang... not sure why we have this flag anyways??
shouldn't we always support the latest version for all dbs??)
2012-10-13 06:43:24 +05:00
Sebastiaan Janssen 093a33e495 Fixed last setup/teardown problem for SQLCE in the unit tests 2012-10-12 15:05:07 -02:00
Sebastiaan Janssen 7a4ccc825d Only reset the DataDirectory path after clearing the database, else it will
never clear as it can't find a database at path null
Updated PublishedContentTests with correct amount of expected results
2012-10-12 14:45:13 -02:00
Sebastiaan Janssen a22efcdb2b Renamed datalayer loghelper to TemporaryLogHelper so it will stand out like a sore thumb 2012-10-12 13:29:27 -02:00
Sebastiaan Janssen 1b71c66256 Corrected some of the counts in PluginManagerTests so we can see why they start
failing when they do start failing again (upon inspecton of the returned
collections the current counts seem to reflect reality)
2012-10-12 12:45:31 -02:00
Sebastiaan Janssen dc7e18b97b Re-include splitbutton.js 2012-10-12 11:41:29 -02:00
Sebastiaan Janssen f6c51205fc Re-include splitbutton.js 2012-10-12 11:41:29 -02:00
Sebastiaan Janssen d45b5a3139 Re-include ItemEditing javascripts 2012-10-12 11:09:32 -02:00
Sebastiaan Janssen 15dd774229 The ISNULL function is not supported in SQL CE, changed to COALESCE 2012-10-12 10:15:18 -02:00
Sebastiaan Janssen b248604c0f Added logging to SqlHelper to debug install/upgrade and find obsoleted queries 2012-10-12 10:14:54 -02:00
Sebastiaan Janssen f01a195369 Updated total.sql for SQL CE - Installs with CE from scratch work again
Upgrade detection from 4.9 > 4.10 added
UNTESTED: Upgrades from 4.9 > 4.10 should perform the database upgrade now
2012-10-12 10:13:50 -02:00
NielsHartvig@UMBRACORATI.localdomain 75af1e9d7c Merge 2012-10-12 05:39:31 -02:00
Shannon Deminick d3c553c945 Fixes issue with wrapping the UmbEditor init in doc ready causing template editing not to work. 2012-10-12 09:15:33 +05:00
Shannon Deminick 689fe2a44f Fixes issue with wrapping the UmbEditor init in doc ready causing template editing not to work. 2012-10-12 09:15:33 +05:00
NielsHartvig@UMBRACORATI.localdomain 06519ab238 Fixes U4-1018. 2012-10-11 11:38:11 -02:00
Sebastiaan Janssen 65d5bc9155 Change from enableMvcSupport to defaultRenderingEngine in the release config too 2012-10-11 08:42:20 -02:00
Casey Neehouse 05fc15d164 Wraps Code Editor initialization in a document ready call to correct an IE7
sizing bug.
2012-10-11 13:02:36 +04:00
Casey Neehouse a3b87a1d8b Wraps Code Editor initialization in a document ready call to correct an IE7
sizing bug.
2012-10-11 13:02:36 +04:00
Shannon Deminick b6f7d99039 Fixed why all the unit tests were failing. Ported over a couple of unit tests from the legacy test project to see how
easy it would be and it looks pretty easy, just need the propery initialization data for the tests. Currently ported over the
Dictionary biz logic tests.... most fail but pretty sure it's due to init data.
2012-10-11 08:32:06 +05:00
Shannon Deminick c1aa60c1ac Merge 2012-10-11 07:55:00 +05:00
Shannon Deminick a2988a30c0 updated ignore. Fixed issue when media is not found and YSOD is displayed. 2012-10-11 07:54:04 +05:00
Casey Neehouse 23f2382947 Merge 2012-10-11 03:03:38 +04:00
Casey Neehouse 4d94909782 Folder Browser Enhancements - IE 7 Thumbnail list CSS corrections,
Added labels to the thumbnail size setter,
Capture/cancel the return key on the filter textbox.
2012-10-11 03:00:28 +04:00
Shannon Deminick 422a2a685c Fixes: U4-1015, U4-1014 2012-10-11 03:42:18 +05:00
Shannon Deminick c4f1235f0b Fixes issues with ApplicationRegistrar and ApplicationTreeRegistrar during install, they now check if the
application is configured, if not then they exit otherwise exceptions will be logged every time the app starts during install.
Added a log on application end with the reason for shutdown and nicer methods to override in global.asax.
2012-10-11 03:02:23 +05:00
Shannon Deminick ce4828d678 Fixes HasContent if there is actually no content (new install).
Fixes issue with TreeDefinitionCollection not initializing when accessing singleton... not sure how i overlooked that before. This fixes
issues with MNTP initialization and probably some other tree stuff.
Removes warning log in umbracomodule for not a document as this just takes up space in the log.
Fixes issue with logger that was logging 'Info' for our internal Debug calls.
2012-10-11 02:30:48 +05:00
Shannon Deminick 8e914e751c Fixes: U4-1013 - editing a View file in template edit ensures no duplicated files. 2012-10-11 00:46:19 +05:00
Shannon Deminick 7fefde4c8a Fixes: U4-1011, YSOD is generated if any created/installed packages files exist but they are empty. 2012-10-10 23:44:42 +05:00
Shannon Deminick 29614d6b03 Fixes: U4-1010, U4-1009 -> issues relating to template business logic changes which checks for default rendering engine (MVC vs WebForms) and fixes package
installation issues associated with them.
2012-10-10 23:31:54 +05:00
Shannon Deminick 16b47539b4 Fixes up an issue relating to U4-1010 but is only the initial fix, now need to look at the changing
the package installation process to ensure the templte files are there before the template db entries.
2012-10-10 22:33:49 +05:00
Shannon Deminick 83c53333c6 Removed GetDictionaryValue from RenderViewPage, this can be accessed through the @Umbraco property. 2012-10-10 20:45:51 +05:00
Shannon Deminick 77db6cad01 Fixes issues with last commmit. Fixes: U4-786 - made some things public 2012-10-10 20:44:29 +05:00
Shannon Deminick a10daaab52 Updated code from code review 2012-10-10 20:20:16 +05:00
Shannon Deminick 3ddb9785c7 added missing codebehinds. updated ignore file. 2012-10-10 20:04:11 +05:00
Sebastiaan Janssen 585eea1c6b Merge 2012-10-10 11:03:27 -02:00
Sebastiaan Janssen 10095a4ee7 Upgrade to CodeMirror 2.34 2012-10-10 11:02:59 -02:00
Shannon Deminick 8f4ccc53d5 Merge 2012-10-09 20:17:51 +05:00
Shannon Deminick f04db8c52c Converted umbracoPage.master to have the correct codebehind structure. Added base2 as a default lib in umbracoPage.
Converted EditView to use propery JS class so that we can now better support the editor for the new buttons (i.e. insert macro, etc...)
2012-10-09 20:17:27 +05:00
Sebastiaan Janssen e2283c2310 Made CodeMirror 100% height again 2012-10-09 12:25:36 -02:00
NielsHartvig@UMBRACORATI.localdomain 635f09fb75 Updates new Total.Sql for SQL Server to match the 4.10 db schema.
IMPORTANT: If you upgrade a previous 4.10 dev site, make sure to run the 'src\umbraco.datalayer\SqlHelpers\MySql\Sql\Version4_8_Upgrade.sql' script
IMPORTANT v2: The DB updates haven't been ported to SQL CE and MySQL yet, so they'll currently BREAK!
2012-10-09 06:56:18 -02:00
Shannon Deminick 9022894d23 Changed EnableMvcSupport config section and classes to be: DefaultRenderingEngine which uses an enum.
Added a real handy Enum<T> class for parsing/traversing enums.
2012-10-09 02:42:09 +05:00
Shannon Deminick 747675816d Changed editMacro over to use the correct codebehind structure. 2012-10-08 23:57:27 +05:00
Shannon Deminick 2833a8c5c7 Changed editTemplate over to use the correct codebehind structure 2012-10-08 23:52:37 +05:00
Shannon Deminick 75a686bc07 Changed umbracoDialog.master to have correct codebehind structure. 2012-10-08 23:46:49 +05:00
Shannon Deminick 76a521dd8b fixes script manager reference 2012-10-08 23:36:25 +05:00
Shannon Deminick 8fa36f3f22 Converted UmbracoField to use JS class Umbraco.Dialogs.UmbracoField.
Adds base2 lib o the default umbracoDialog.Master.
2012-10-08 23:32:43 +05:00
Shannon Deminick 18aef90017 Merge 2012-10-08 21:55:16 +05:00
Shannon Deminick 82bb410f4f Changed @Model.CurrentContent to @Model.Content, updated some ext methods for IPublishedContent. 2012-10-08 21:55:03 +05:00
pgregorynz caa937a4ef Updates to ViewEditor. Insert Page Field, Insert Dictionary Item,
Master Template Selector
2012-10-08 06:05:07 -10:00
pgregorynz d7103a3b83 Merge 2012-10-08 05:57:57 -10:00
pgregorynz e555520ddf Insert field Views. 2012-10-08 05:40:55 -10:00
Morten Bock a71961c35b Indenting 2012-10-08 13:33:18 -02:00
Niels Hartvig ed3f715988 Container Document Types 2012-10-08 11:53:35 -02:00
Casey Neehouse 26aca92337 Updates to the Change password dashboard UI - better language and corrected the
validation. Related to comments in issue U4-914.
2012-10-09 03:33:55 +04:00
tg@umbraco.com 406e3663f6 Merge 2012-10-08 08:43:38 -02:00
tg@umbraco.com da8af696c5 Fixes U4-680: insert Macro split buttons not working 2012-10-08 08:42:47 -02:00
Sebastiaan Janssen 12f5df33da Add z-index too treePickerToolTip to get it on top when media picker preview is on 2012-10-23 08:24:33 -02:00
tg@umbraco.com 775b2192ff Fixes U4-680: insert Macro split buttons not working 2012-10-08 08:42:47 -02:00
PerPloug 458de6296e Wraps masterpages selector in try/catch
to avoid exceptions if masterpage is missing for some reason
2012-10-08 07:19:36 -02:00
PerPloug b55ce96d85 Changes to editView, editTemplate and loadTemplates
to fix wrong create dialog, and missing master pre-selection
in master template dropdown
2012-10-08 07:12:02 -02:00
Shannon Deminick 8ae867389d Merge 2012-10-08 00:15:51 +05:00
Shannon Deminick 5fc3d8e248 Fixes threading issue with Dynamicexpression... would have caused some strange behavior in the past!
Fixes: U4-995 - most methods will now work in dynamic expressions
2012-10-08 00:09:44 +05:00
Sebastiaan Janssen 227d910722 Merge 2012-10-07 15:27:47 -02:00
Sebastiaan Janssen f184276ef8 Moved tree picker tooltip style to default.css so it also works in editMacro (and elsewhere) 2012-10-07 11:45:22 -02:00
funka@WETWIRED c72ab927a6 Resolves redundant BaseTreePicker script initialization (U4-192) 2012-10-17 05:36:22 +07:00
Sebastiaan Janssen a356552d2d Moved tree picker tooltip style to default.css so it also works in editMacro (and elsewhere) 2012-10-07 11:45:22 -02:00
Michiel van Oosterhout 5c6a595e48 Changed conditions to put the constant last, so (x == false) instead of (false == x).
Code now conforms to project coding standards.
2012-10-07 08:50:09 -02:00
Michiel van Oosterhout c1cfcaf9ea Deprecated MacroProperty.Public because its value is ignored. Removed the checkbox
for setting MacroProperty.Public from the macro editor.
2012-10-06 20:51:00 -02:00
callicj 40a413cd70 Added releaseDate, expireDate columns to the query defined on m_SQLOptimizedMany so the corresponding fields are populated when this query is used to load the object. 2012-10-07 11:28:43 -02:00
Michiel van Oosterhout c7c10b8ab6 Fixed typo for consistency and incorrect grammar. 2012-10-06 18:46:31 -02:00
Michiel van Oosterhout 2da0728b78 Do not call .Trim() on a string inside .IsNullOrEmpty(), the string may be null.
Instead use .IsNullOrWhiteSpace().

Saving a global setting will insert an appSetting in web.config if it does not
yet exist.
2012-10-06 18:46:12 -02:00
Casey Neehouse a71f3f8412 Updated SQLCE to 4.0.8876.1 (SP1) and closes u4-677 2012-10-07 00:39:04 +04:00
Casey Neehouse b21423efe2 Updates SQLCE to v.4.0.8854.1 to resolve a SQL issues related to Contour. 2012-10-07 00:02:38 +04:00
Shannon Deminick 5895858e6e Merge 2012-10-07 00:08:21 +05:00
Shannon Deminick cd38123fbd Fixes issue with DynamicExpression and parsing to ensure that it is using generic types, not hard coded types.
Ensures unit tests passing for Where, Single, SingleOrDefault with filters with dynamics.
2012-10-07 00:07:51 +05:00
Shannon Deminick 842d7120e6 Obsoletes DynamicQueryable in MacroEngines lib, proxies all calls to new DynamicQueryable in Umbraco.Web.
Adds more support for NodeTypeAlias and DocumentTypeAlias param names for compatibility.
Adds IsDocumentType is-helper method.
Adds unit tests for complex Linq using a Typed IPublishedContent object.
Adds unit tests for complex Linq using dynamics.
Adds support for Single, SingleOrDefault, First, FirstOrDefault, Last, LastOrDefault to dynamics for both DynamicNode and DynamicPublishedContent + unit tests.
Adds support for 'Children' on DynamicNode to keep things consistent, no longer required to have to do 'ChildrenAsList'.
DynamicNode now implements INode... not sure why this wasn't like that before.
2012-10-06 23:41:42 +05:00
Sebastiaan Janssen cae2183ab4 Merge 2012-10-06 11:47:55 -02:00
Sebastiaan Janssen 07e75dab15 BaseRestExtensions.Release.config should not be in the build package, output set to None 2012-10-06 11:47:01 -02:00
Sebastiaan Janssen 7bc2375a77 Adds a nice tooltip when hovering over the content/media picker
#U4-192 Fixed
2012-10-06 11:46:37 -02:00
Sebastiaan Janssen 5cebbd8a91 Adds a nice tooltip when hovering over the content/media picker
#U4-192 Fixed
2012-10-06 11:46:37 -02:00
Stephan db59b08f58 fix config files for BaseRestExtension.config 2012-10-06 07:20:12 -02:00
funka@WETWIRED 392fbb836f Resolves feature request U4-192 Add more meta data to Content and Media pickers 2012-10-06 01:26:56 +07:00
Sebastiaan Janssen 0cb8603c80 Updating version number to 4.9.1 2012-10-23 07:14:48 -02:00
Sebastiaan Janssen 20fc02053a Made CodeMirror 100% height again 2012-10-09 12:25:36 -02:00
Sebastiaan Janssen e389dc39a7 Upgrade to CodeMirror 2.34 2012-10-10 11:02:59 -02:00
Sebastiaan Janssen fbd4669da8 Unpublished icon in tree with published node
#U4-387 Fixed
2012-10-15 07:16:32 -02:00
funka@WETWIRED 2b2c75f5e4 Resolves feature request U4-192 Add more meta data to Content and Media pickers 2012-10-06 01:26:56 +07:00
Casey Neehouse 8c7b06fe2b U4-914 - Added additional security to the change password
dashboard control to require current password.
2012-10-05 21:12:12 +04:00
Sebastiaan Janssen 540db7137a Fixed config transform for BaseRestExtension.config 2012-10-05 13:45:06 -02:00
Stephan 079aae7e63 bugfix unit tests polluting each other - static settings issue 2012-10-05 08:23:43 -02:00
Stephan 6183e01642 bugfix xpath in DefaultPublishedContentStore for legacy XML schema 2012-10-05 08:00:06 -02:00
Sebastiaan Janssen cf91933791 Add some dummy files to ensure (empty) directories in the test project get created 2012-10-04 15:15:23 -02:00
Sebastiaan Janssen d10c3a960f Merge 2012-10-04 15:04:14 -02:00
Sebastiaan Janssen 4d6d89dbe7 Add Masterpages and Views folder in the unit tests to project so almost 250 more tests will run properly 2012-10-04 15:03:40 -02:00
Morten Bock c138c6643a Ignore casing, and avoid null http contexts 2012-10-04 14:48:14 -02:00
Morten Bock a2b876608f Refactoring to use object resolver, instead of ProviderBase 2012-11-21 07:14:40 -01:00
Shannon Deminick 9e113564fa Merge 2012-10-04 21:39:36 +05:00
Shannon Deminick f8848086fd Adds support for legacy schema to the DefaultPublishedContentStore, adds unit tests to support this. 2012-10-04 21:37:11 +05:00
Shannon Deminick 261a6af60a Fixes issue when xml file is corrupt and no doc type is registered, the mvc controller factory throws an exception. 2012-10-04 21:06:32 +05:00
Sebastiaan Janssen c66d70fbd8 Merge 2012-10-04 13:52:12 -02:00
Sebastiaan Janssen e8c7af8b25 Removed legacytests project for now. 2012-10-04 13:51:51 -02:00
Shannon Deminick 8804d912f2 More unit tests written and passing. 2012-10-04 06:00:47 +05:00
Shannon Deminick 54e5140d6a Added more extension methods to our strongly typed IPublishedContent object and IEnumerable<IPublishedContent> to match all of the available methods
that are on the DynamicPublishedContent object. Added more unit tests for all of these classes.
Moved some of the Dynamic objects into the web project which simplifies things quite a bit as some of these classes require access to the biz logic layer.
Now we have intellisense for all of the nice magical methods that were on DynamicPublishedContent on our strongly typed object!
2012-10-04 03:26:56 +05:00
Shannon Deminick c0102f1c71 Refactored the traversal, ishelper, etc... methods to be extension methods on IPublishedContent so now all of these methods are available on the Typed object not just the dynamic object which makes a whole lot more sense... and you can have intellisense.
Updated DynamicPublishedContent's methods to just proxy calls to the new extension methods so that all of the logic is contained in one place.
Added new GetRootDocuments to the IPublishedContentStore since we need this in order to get the root list of documents for many of these methods.
Fixed an issue with the DynamicNode to IPublishedContent converter.
Fixed many of the failing unit tests.
2012-10-04 01:31:08 +05:00
Shannon Deminick 831d1966dc Added IEnumerable extensions to TypedContent, TypedMedia, Content, and Media methods 2012-10-02 22:55:36 +05:00
Shannon Deminick ef5525e67f renamed DynamicDocumentList to DynamicPublishedContentList
simplified some of the DynamicPublishedContent methods to accept Func<IPublishedContent> instead of Func<DynamicPublishedContent>, made the IsHelper method private as this shouldn't be exposed.
renamed other objects starting with DynamicDocument to DynamicPublishedContent
2012-10-02 22:51:53 +05:00
Shannon Deminick f3e04ac871 Changed method name ContentTyped to TypedContent and MediaTyped to TypedMedia. 2012-10-02 22:10:18 +05:00
Shannon Deminick ba98f587b2 Changed query methods on UmbracoHelper to just Content, ContentTyped, Media, MediaTyped 2012-10-02 21:58:07 +05:00
Shannon Deminick 2753dbe5b4 ensures enctype attribute is added in BeginUmbracoForm.
Adds CurrentCulture to RenderModel
2012-10-02 21:19:21 +05:00
Shannon Deminick 56c93891a8 Fixes the ClearDatabase call in SqlCEHelper... pretty flukey that unit tests were even working with this bug for so long.
Fixes the RenderRouteHandlerTests.
2012-10-02 02:33:19 +05:00
Shannon Deminick 6bd005775d After talks with morten and stephane, this renames
DocumentNotFoundHandler  -> PublishedContentNotFoundHandler
2012-10-02 01:43:59 +05:00
Shannon Deminick 73c79e8528 After talks with morten and stephane, this renames
IDocumentLookup -> IPublishedContentLookup
2012-10-02 01:43:05 +05:00
Shannon Deminick 827d4dd6c0 After talks with morten and stephane, this renames
DocumentRequestBuilder -> PublishedContentRequestBuilder
2012-10-02 01:41:54 +05:00
Shannon Deminick ffd14c839b After talks with morten and stephane, this renames
DocumentRequest -> PublishedContentRequest
2012-10-02 01:40:19 +05:00
Shannon Deminick f8d8b767b8 update ignore file 2012-10-02 01:37:02 +05:00
Shannon Deminick 4f011e0390 Some naming tweaks to fix up from previous commit. 2012-10-02 01:36:42 +05:00
Shannon Deminick 053df24640 After talks with morten and stephane, this renames
IDocument -> IPublishedContent
DynamicDocument -> DynamicPublishedContent
2012-10-02 01:35:39 +05:00
Shannon Deminick 45c335702d Updated view engine to look only in App_Plugins/ not App_Plugins/Packages/.
Updated view engine to automatically create the required razor web.config in the packages
Views folder if it is not there already.
2012-10-01 23:43:47 +05:00
Shannon Deminick bc04d4f8da Added PluginViewEngine for App_Plugins 2012-10-01 23:22:23 +05:00
Shannon Deminick be5076783f Adds ~/App_Plugins/Packages folder to be created in build script 2012-10-01 23:10:27 +05:00
Shannon Deminick 5c20f4f6ec Fixes: U4-U4-917
Fixes: U4-821
2012-10-01 23:04:57 +05:00
Shannon Deminick 42da98e020 Moves codebehind for EditView into UI project 2012-10-01 22:09:49 +05:00
Stephan eeb305c740 fix uQuery.GetNodeIdByUrl 2012-10-01 13:08:10 -02:00
Stephan c19541cb11 handle routing cache corruption cases, more unit tests 2012-10-01 12:20:51 -02:00
Stephan dea22f22cb fix UriUtility, fix unit tests 2012-10-01 09:52:32 -02:00
Stephan 656c61d1e2 fix xpath for finding default node because sortOrder may not start at zero 2012-10-01 06:55:44 -02:00
Shannon Deminick bac038b82d Converted treeInit.aspx so that it's codebehind and designer files are in the UI project and only
the old TreeInit class exists in the Umbraco.Web project (not the aspx file). It needs to stay there
to maintain backwards compatibility for anyone that may have inherited from that file.
2012-10-01 03:57:57 +05:00
Shannon Deminick dd6d0e380e Updated the /umbraco/umbraco.aspx page to have all of it's aspx + codebehind + designer files in the UI project and
left the original class in the Umbraco.Web project as to not break backwards compatibility for anyone that may have inherited from that
class.
2012-10-01 03:41:37 +05:00
Morten Bock c95c1a7038 Add support for thumbs and crops from standard datatypes. 2012-09-30 20:37:05 -02:00
Morten Bock 9e1c5e71e4 Adding the umbraco:image control, and the ImageUrl feature with a some generic ProviderFeature classes, to make it easier to implement future provider based features. 2012-11-21 07:13:31 -01:00
Sebastiaan Janssen aba68720bb Localized the create window for new Scrips (js) 2012-11-21 06:54:52 -01:00
Sebastiaan Janssen 1b1722c875 Renamed method to remove characters that are illegal in XML and made the method internal for now 2012-11-21 06:23:31 -01:00
Michiel van Oosterhout 248af2eaa2 Correct code that validates the user name when the session times out by serializing
user name and password.

Adds a minified 4KB JSON library to umbraco.aspx to support older browsers, namely
https://github.com/douglascrockford/JSON-js (public domain)
2012-10-07 20:54:34 -02:00
Casey Neehouse 0709174560 Merge 2012-11-20 21:11:11 +05:00
Casey Neehouse b0c0ed050d Adds SQL to validate that a node is published before loading the xml.
U4-759, u4-590, U4-589
2012-11-20 21:09:19 +05:00
Sebastiaan Janssen e3a085774c Revert 5c828605ef65 / 8b3a266b2d00 because that would have nasty side effects,
see http://issues.umbraco.org/issue/U4-1061
2012-11-20 14:49:30 -01:00
Sebastiaan Janssen 6f0ddc37a0 Include System.Data.SqlServerCe* should do a copy local 2012-11-20 14:13:47 -01:00
Sebastiaan Janssen d3eb5ceabe Merge 2012-11-20 12:55:17 -01:00
Stephan 1bffb7395c U4-1192 - uQuery.GetNodeIdByUrl should not follow redirects etc 2012-11-20 09:12:45 -01:00
Stephan e636a42744 .hgignore ~/scripts and ~/images 2012-11-20 08:52:56 -01:00
Stephan d3927a1265 code annotation attributes TLC 2012-11-20 08:49:06 -01:00
Stephan d6fc106588 fix DisposableTimer so args can be evaluated _after_ completion 2012-11-20 08:34:32 -01:00
Stephan 68fc833280 U4-1186 - bugfix previous commit 2012-11-19 16:09:43 -01:00
David@David-PC 5a8443fe72 committed wrong version 2012-11-18 18:48:56 -01:00
David@David-PC 153fb4a248 Do a recursive unpublish (fixes U4-462, U4-594, U4-1061) 2012-11-17 14:25:04 -01:00
Michael Wulff Nielsen 72ef5b01d2 Fixes bug 383, inserting macro parameters with quotes fails in macrocontainer 2012-11-20 09:29:38 -01:00
NielsHartvig@UMBRACORATI.localdomain 0854fee4ee Update to sanitizer 2012-11-16 14:24:24 -01:00
NielsHartvig@UMBRACORATI.localdomain e122d40fb9 The BOSS is fixing U4-367 2012-11-16 14:08:28 -01:00
Sebastiaan Janssen b696aa4340 ApplicationContext.Current.ApplicationCache wasn't public due to an oversight, it is now. 2012-11-19 15:31:58 -01:00
Sebastiaan Janssen e32dd303e3 Have to revert Microsoft.WebApplication.target file change as we got weird
results (umbraco.presentation folder and a XmlSerializers dll in the root).
Copied the targets file to the appropriate Program Files folder on the build
server. :-(
2012-11-19 15:02:43 -01:00
Stephan 7c524abb84 U4-1186 - support wildcard domains to change the culture 2012-11-19 14:11:34 -01:00
Stephan 993bac8a29 bugfix LogHelper 2012-11-19 14:09:52 -01:00
Shannon Deminick b40dbf73ca Changes case back to the correct EditView 2012-10-01 03:00:05 +05:00
Shannon Deminick 0808665342 Changes editView to editViewTEMP so that we can change it back to the correct case. 2012-10-01 02:55:53 +05:00
Shannon Deminick 7623746f64 changed editViewTEMP to EditView with correct casing. 2012-10-01 02:52:58 +05:00
Shannon Deminick 3152427ff7 Changed name of editView to editViewTEMP in order to change it back to the correct case. 2012-10-01 02:52:28 +05:00
Shannon Deminick 85e88e5640 Merge 2012-10-01 02:48:39 +05:00
Shannon Deminick ea3d2f893f Added AsDynamic extension to IDocument.
Makes DynamicDocument explicitly implement IDocument as well.
Changes all ContentById methods, etc... back to returning just 'dynamic'
Removes valueAlias from the .Field method of UmbracoHelper which didn't actually do anything
removes altValueAlias from the .Field method of the UmbracoHelper which didn't actually do anything.
2012-10-01 02:48:08 +05:00
Stephan 3cddc5e4dc merge 2012-09-30 14:04:38 -02:00
Stephan 8cd49749ec fix routing, more unit tests 2012-09-30 14:02:11 -02:00
Stephan e45bf57632 fix how we resolve "default node", now using sortOrder 2012-09-30 12:25:47 -02:00
Stephan 3e99dd0d55 fix NiceUrl and add more tests 2012-09-30 12:24:23 -02:00
Sebastiaan Janssen be2ed3762b Merge 2012-09-30 06:46:37 -02:00
Sebastiaan Janssen e3abd49276 Fix regression bug 2012-09-30 06:46:08 -02:00
Shannon Deminick d76f6c1cdb {localLink} parsing in MVC is now all working. 2012-09-29 11:35:31 +07:00
Shannon Deminick 840109dc58 updates missing code block 2012-09-29 11:19:19 +07:00
Shannon Deminick 1aebce7ad6 makes SystemDirectories and SystemFiles public.
moves ResolveUrlsFromTextString to TemplateUtilities class and obsoletes other ones.
Fixes an issue if content cache is stored in codegen folder and not in med trust.
Updates the XmlDocument (IDocumentProperty) to always return a value with parsed {localLink} and resolved Urls and cache them so the parsing only happens once.
2012-09-29 11:11:48 +07:00
Shannon Deminick 11fd6553e9 Ensures that localLinks are parsed when rendering fields and macros using UmbracoHelper.
Added additional ControllerExtensions to render views as strings.
2012-09-29 08:49:21 +07:00
Shannon Deminick 690c4a165c Creates TemplateUtilities class for parsing local links and obsoletes the old method. 2012-09-29 08:13:49 +07:00
Shannon Deminick 8fb159ddc2 Changes IThumbnailProvider to exist under Umbraco.Core.Media instead of just Umbraco.Core.
Moves many of the MVC extension methods into the Umbraco.Web.Mvc namespace and tidies up a few other
class's namespaces
2012-09-29 08:07:00 +07:00
Shannon Deminick b3ca264af1 Explicitly loads webforms handler and remaps to it, now we can share this code somehow with the RenderRouteHandler when
we want to support having a no-template render as a 404.
2012-09-29 07:36:19 +07:00
Shannon Deminick 34e71027b3 Changed Is404 on DocumentRequest to internal as only the DocumentRequestBuilder should set this, removed the Is404 being set in the
DefaultLastChanceLookup as lookups shouldn't set the 404.
Cleaned up ObjectExtensions TryConvertValue method.
Ensures that the routes are created before the CoreBootManager complete is called.
2012-09-29 07:20:23 +07:00
Stephan 926427ff68 merge 2012-09-28 11:14:04 -02:00
Stephan abe4944843 routing - handle when umbraco is not ready or has no content 2012-09-28 11:11:47 -02:00
PerPloug 5f12767f48 Flet 2012-09-28 09:27:12 -02:00
PerPloug 04e0b35c7d Method Renaming to follow standards
Marking IOHelper methods as internal
Removing unneeded umbraco setting
Missing icon and missing folder in UI project
2012-09-28 09:19:16 -02:00
Stephan d82cbfccc5 remove a ref to requestHandler, fix DefaultRoutesCache management 2012-09-28 09:04:49 -02:00
Stephan 3ed1b4c77d remove unused setting option 2012-09-28 08:14:01 -02:00
Stephan 6c4869f931 merge 2012-09-28 07:08:37 -02:00
Stephan b0e336e01f routing, fix "no content" splash, fix "no template" handling, fix redirects 2012-09-28 07:04:33 -02:00
Shannon Deminick 05bdd42567 Fixes issue with UmbracoHelper in back office when there is not Document.
Adds another overload to BeginUmbracoForm.
2012-09-28 08:08:36 +07:00
Stephan d8c2a71531 bugfix document.GetPropertyValue and object.TryConvertTo 2012-09-27 15:41:24 -02:00
Stephan a469e3dbe3 fix base/rest service - cleanup + new config file 2012-09-27 15:37:21 -02:00
PerPloug b8b951f094 Missing UmbracoSettings change in umbraco.core
IOHelper in umbraco.core
Both related to mvc views in template tree
2012-09-27 06:30:59 -02:00
PerPloug c409cfa421 Create/Ui.xml file for templates
umbracoSettings.config file
2012-09-27 06:29:41 -02:00
PerPloug 9f7814591e Adds Seperate View Editor for mvc templates
Changes the template tree to look for existing views
to override the .master
2012-09-27 06:24:04 -02:00
PerPloug 2c995f7fa7 Moves masterpage and view creation away from the template
class and into seperate helpers.
2012-09-27 06:23:09 -02:00
PerPloug 7e5db90b3b Adds IO Helper overload for the views and masterpages
Adds UmbracoSettings to toggle mvc templating support
2012-09-27 06:21:59 -02:00
Shannon Deminick f7f83bc057 Changed IPublishedContentStore and IPublishedMediaStore back to internal as we don't need to expose these yet. Instead have added
an UmbracoHelper property to the PluginController class which will expose any methods needed by devs to retreive media or content.
Have updated UmbracoHelper with loads of new helpful methods and moved the Wrap methods to HtmlHelper extensions because this is purely to
do with rendering html (have written unit tests for it too).
Updated some 'library' methods to proxy calls to UmbracoHelper so we only have to maintain one set of code.
Added a convenience property to UmbracoContext to return the current NiceUrlProvider so you don't have to go through the RoutingContext to get it.
2012-09-27 08:30:35 +07:00
Shannon Deminick 530e7ae44e removed ref to missing template file 2012-09-27 07:06:14 +07:00
Stephan 126044cd48 bring back scheduled tasks - #U4-809 2012-09-26 12:51:27 -02:00
Sebastiaan Janssen f76e90990f Include packages.config anyway, just tell it to not output in the build 2012-09-26 11:58:52 -02:00
Sebastiaan Janssen 587542ace7 The build.bat file now won't exit when there's an error so you can inspect it, if there's no errors it will just exit
Excluded missing index.cshtml file from project (was giving build error)
2012-09-26 06:48:11 -02:00
Shannon Deminick d3676b376d Removed test route 2012-09-26 13:59:24 +07:00
Shannon Deminick 53a3ad24e6 comments out test surface controllers for now 2012-09-26 13:44:23 +07:00
Shannon Deminick 05add96294 Ensures web.config includes new namespace reference 2012-09-26 13:43:47 +07:00
Shannon Deminick 9b5fd3d67b Merge 2012-09-26 13:42:44 +07:00
Shannon Deminick 5ece0b5af0 Surface controllers now auto-routing, both locally declared and plugin types (which require a [PluginController] attribute and an Area Name assigned).
BeginUmbracoForm working for both local and plugin SurfaceControllers. SurfaceController class now inherits from PluginController which exposes all things a dev would
need including making IPublishedContentStore and IPublishedMediaStore public which can be accessed simply by properties on the controller.
Updated web.config for views to include Umbraco.Web namespace for all of our helper methods.
BeginUmbracoForm now has many more overrides for which you can specify a type or a generic type (we no longer require GUIDs :)
2012-09-26 13:42:03 +07:00
Shannon Deminick 332b42aa49 Changed how surface controllers are routed: because we don't load plugins in via App_Plugins/[PackageName] like we did in v5 which meant that we can autoroute all plugin controllers with their own areas, in v4 we have to do something different.
Instead (because we still want areas), we have an attribute called PluginControllerAttribute which allows a dev to assign an area name as a string. A package developer should always ensure that all of their plugin controllers are assigned to the same
area. This also lets us get rid of the GUID id part of the plugin (hopefully we can leave it out, just need to run some tests). Since we have areas, package devs can then put their views into
their own folders and not clutter up the local devs ~/Views folder. Perhaps we use App_Plugins/[PackageName] for the views like we did in v5 but need to ask on the mail list. Otherwise it will be the standard MVC:
~/Areas/[AreaName]/Views which will still also clutter up the local devs view folder if they are using Areas.
2012-09-26 11:04:07 +07:00
Sebastiaan Janssen 97472c6ce6 Ignore file excluded the web.config file in the views folder, which is why the build failed, not because it wasn't included 2012-09-25 11:56:33 -02:00
Sebastiaan Janssen 48a3a920d2 Web.config file was not included, making the build fail 2012-09-25 11:53:27 -02:00
Shannon Deminick 7b7e3b82f1 Started adding tests for surface controller routing. They are working but not quite correctly yet. 2012-09-25 13:33:47 +07:00
Shannon Deminick 0b7f04ab37 Added all code to support auto-routing surface controllers and started implementing the code for
BeginUmbracoForm.
2012-09-25 13:09:59 +07:00
Shannon Deminick 083b18139a Adds code to RenderViewEngine to ensure the /Views folder exists and also that the razor web.config file exists there too.
I've also added this web.config file to the sln so it should output in the build by default though it will still be created automatically if
its not there.
2012-09-25 11:20:05 +07:00
Shannon Deminick 1bc3943f33 Fixes: #U4-894 - moves the int Priority out of the IThumbnailProvider class as it is only metadata, moved
this into a new generic WeightedPluginAttribute which can be used for other resolves/objects that require a weight.
2012-09-25 11:06:32 +07:00
Hendy@Blueberry 449613de3e updated check for uQuery.IGetProperty
added XPathCheckBoxList return obj for uQuery .GetProperty<T>("alias")
2012-09-24 20:54:26 -01:00
Stephan 7d8ec2678c initialize Umbraco sooner in the request pipeline 2012-09-24 12:49:36 -02:00
Stephan 12c0ce258b fixing routing + add Lookup tests 2012-09-24 12:10:25 -02:00
Stephan 42317ec207 merge 2012-09-24 11:37:55 -02:00
Stephan 343c14db48 fixing routing, 404, domains + add NiceUrl and UriUtility tests 2012-09-24 11:36:25 -02:00
Hendy@Blueberry 2fcb9d7b30 added uQuery.IGetProperty - allows GetProperty<T> extension methods to pass T hydration to a method in T 2012-09-23 10:34:39 -01:00
Sebastiaan Janssen ccbcb991b1 Text for Alias is changed to Alternative link
#U4-891 Fixed
2012-09-22 12:14:42 -02:00
sebastiaan 33f4da875a Additional fix for #U4-306 - click to the right of the node still collapsed the tree 2012-09-22 10:54:22 -02:00
sebastiaan 0549e39a00 The ClientDependency and ExamineIndexes folder are not needed in /App_Data any more
They are automatically generated in /App_Data/TEMP
2012-09-22 10:34:03 -02:00
Shannon Deminick 6fb0fc643b Merge 2012-09-21 23:54:31 +07:00
Shannon Deminick 8824579dac Made IThumbnailProvider public which fixes 4.10 loading them, plus now people can make their own :)
However, I'd like to move the Priority flag onto an attribute instead of part of the interface because it
is metadata and not functionality of the class itself. Will make a tracking issue for it.
2012-09-21 23:54:14 +07:00
Stephan 94b6a9df8d fix base/rest service - loading assemblies & caching methods 2012-09-21 10:10:03 -02:00
Stephan cb8a8b997f bugfix TypeFinder.GetAllAssemblies duplicate App_Code 2012-09-21 10:01:51 -02:00
Casey Neehouse fe99c22022 Merge 2012-09-21 01:56:19 +04:00
Casey Neehouse 0225047a52 Removes .ChildNode calls for .SelectNodes() with correct element selection. Allows comments in configuration.
Also updates some Macro Properties to work with new schema.
2012-09-21 01:53:43 +04:00
sebastiaan d89a24d96b Tree disappears if you click slightly below the root node
#U4-306 Fixed
2012-09-20 17:02:07 -02:00
sebastiaan c5535ddbc2 Improved SafeFileName method to include all valid characters as listed by RFC 3986 section 2.2 Reserved Characters (January 2005) and character data chars that could be ambiguous
Now characters like Chinese characters are allowed in the filenames, which addresses the issue below
#U4-885 Fixed
2012-09-20 16:46:55 -02:00
Stephan 3a21d48dbc merge 2012-09-20 14:38:08 -02:00
Stephan ea8ff709c2 further refactor base/rest service into Umbraco.Web 2012-09-20 14:37:23 -02:00
sebastiaan eb9937c33a Packages.config should not be included in the project as it shouldn't be in the builds 2012-09-20 10:24:56 -02:00
sebastiaan 777c7dd683 Update to 4.10.0 for the nuspec files as well 2012-09-20 09:16:03 -02:00
sebastiaan 10963fe3c4 Remove .nupkg files 2012-09-20 09:13:11 -02:00
sebastiaan 3e5d684333 Update version number to 4.10.0 2012-09-20 09:10:50 -02:00
greystate 6a9b2b260b Applied pull request: 3402 - typo on starter kit install screen 2012-09-20 09:09:55 -01:00
Morten@Thinkpad-X220 7a38d7f845 Adding TinyMCE language files for plugins and themes. There are still a few missing for the umbraco theme though. 2012-09-20 06:45:23 -02:00
Morten@Thinkpad-X220 745707dc4b Removing TinyMCE3 language files before they can be properly attached 2012-09-20 06:36:34 -02:00
sebastiaan 1f4ceaa75c Included the tinyMCE language files in the project so they'll actually be in the build
#U4-277 Fixed
2012-09-20 06:27:09 -02:00
Shannon Deminick a16f28eb26 Re-implemented GetProperty on IDocument, had removed it because I didn't see a need for it because we already have a Properties collection, however we do require it
for specific implementations where the IDocument needs to search for the specified property based on alias since it might not already know about it. This is true for the
DefaultPublishedMediaStore where a property may not exist in the Examine cache so we need to fallback to the db in that case.
2012-09-20 14:17:40 +07:00
Shannon Deminick fa36ff3662 removed erroneous Wrap methods that were hidden by other overloads based on optional parameters. 2012-09-20 13:32:08 +07:00
Shannon Deminick ae4cb00bbc Got Wrap methods on UmbracoHelper, deprecated old classes in the macroEngines project that Wrap utilizes and proxies
all calles in RazorLibraryCore for Wrap to UmbracoHelper. Fixed up the HtmlTagWrapper classes so they have immutable properties and replaced
public fields with Properties.
2012-09-20 13:16:38 +07:00
Shannon Deminick fd166389c4 Changed the MVC view class to expose the UmbracoHelper as just @Umbraco instead of @UmbracoHelper, this
follows the same naming conventions as MVC with HtmlHelper is exposed just as @Html, plus it is less to type
2012-09-20 12:47:37 +07:00
Shannon Deminick a48b996571 Got ChildrenAsTable working as extensions on DynamicDocument with supporting unit tests.
Have updated the ChildrenAsTable code for Node as well to use the same base code, this should
also fix some issues with generating a datatable correctly when a content type is changed, previously
the cache was not cleared for Alias to name mapping.
2012-09-20 12:42:43 +07:00
Shannon Deminick 6e4929b84d Fixes recent commits and aspx files not being edited in the correct place and split the aspx files + codebehinds properly so there's no confusion over
which one to edit.
2012-09-20 07:31:32 +07:00
Shannon Deminick f912d465c5 Moved BaseRestHandler out of the BaseRest namespace.
Updated PublishedMediaStore and wrote a bunch of unit tests for it which are all now passing.
2012-09-20 07:13:45 +07:00
Shannon Deminick 3e292b77ad Merge 2012-09-20 03:47:34 +07:00
Shannon Deminick dc000ea33c Update to DefaultPublishedMediaStore, changed namespace for some unit tests. 2012-09-20 03:47:24 +07:00
sebastiaan aaa8cafd0b Merge 2012-09-19 12:45:24 -02:00
sebastiaan ce0923cfc6 Uploading media with hyphens get a space added before the hyphen
New media uploader: illegal characters in the filename are not filtered
New media uploader: IE in intranet mode stores the whole path
Fixed U4-882 U4-883 U4-874
2012-09-19 12:45:11 -02:00
Casey Neehouse 7473557580 Removed umbracoApp and umbracoAppTree Foreign Keys from SqlAzure install script. 2012-09-19 15:02:02 +04:00
sebastiaan 982ba0f4b0 Corrected bug where PropertiesPane was only shown on media items 2012-09-19 07:49:51 -02:00
sebastiaan 278c1fefaa Merge 2012-09-19 06:20:09 -02:00
Matt@MBP13-PC 71b2137513 Merge 2012-09-18 13:25:56 -01:00
Matt@MBP13-PC 2952992ffe Fixed "inception" media tree bug due to recycle bin auto initializing when it shouldn't 2012-09-18 13:25:17 -01:00
sebastiaan 0dbd214b00 Merge 2012-09-18 09:16:22 -02:00
sebastiaan 90ca566e53 Little cleanup of some left-behind files 2012-09-18 09:14:38 -02:00
Stephan aa633bbbb2 merge 2012-09-18 08:55:39 -02:00
Stephan 2c204d9d9e refactor base/rest module into a handler so that it works again with the new UmbracoModule 2012-09-18 08:54:54 -02:00
Hendy@Blueberry 8307da1a87 XPath CBL / DDL prevalue descriptions for the XPath fields, and fix for CBL to load defaults 2012-09-17 21:21:33 -01:00
sebastiaan d339f74e95 Thanks to Darren Ferguson - Media items should indicate which Media Type (in Properties tab)
#U4-679 Fixed
Add "url to this file" label to property tab in media
#U4-173 Fixed
2012-09-17 10:53:22 -02:00
sebastiaan 59fe173933 Removed old and completely unused GraphicHeadlineFormat config setting
Some updates to umbracoSettings.config
Thanks to Jan Skovgaard for the help!
2012-09-17 07:47:13 -02:00
dseefeld 51769847ad Error: Delete media item with upload property - empty recycle bin fails
Fixed #U4-771
2012-09-17 04:06:53 -02:00
Sebastiaan Janssen 918e7ad682 Fixed "inception" media tree bug due to recycle bin auto initializing when it shouldn't 2012-10-23 07:06:50 -02:00
dseefeld ca55579982 Error: Delete media item with upload property - empty recycle bin fails
Fixed #U4-771
2012-09-17 04:06:53 -02:00
Darren@Darren-VAIO b5099c37c7 Standard doc type properties no longer prefixed with @ in "Insert Umbraco page field" dialogue
Fixed #U4-859
2012-09-16 10:49:19 -02:00
Macke@MacsonServer 2826fbd807 Fixes #U4-840 Changed the blog url in MetaWeblog API. Url-property of getUsersBlogs, will now contain the full url to the blog, not just the "server_name". 2012-09-16 09:41:53 -02:00
sebastiaan b5d209677e Changed scriptDisableEditor comment to reflect new js lib and it's now also working in IE
Thanks to Jan Skovgaard for noticing it was wrong!
2012-09-16 09:16:26 -02:00
sebastiaan b15d03a54d #U4-784 Fixed
Member.MakeNew duplicate LoginName exception message uses wrong data
2012-09-15 08:43:06 -02:00
sebastiaan 247aa08d57 Fixes U4-778 - Visualize XSLT is not working. 2012-09-15 08:32:25 -02:00
Shannon Deminick 394078d470 Merge 2012-09-15 12:19:53 +07:00
Shannon Deminick 91834e8f53 Migrated logic to create a DataTable from a Node or pretty much any other object in to a central place so we only have to maintain code in one place.
Now need to just test it with Node and create the DynamicNode extension methods for returning as a DataTable.
2012-09-15 12:17:42 +07:00
sebastiaan 201bc2d1ab Merge 2012-09-14 11:23:42 -02:00
sebastiaan 29ed7bf8ae Fixes U4-776 umbraco:item xslt property not rendering in template - Thanks to Michael Wulff Nielsen for the quick spot and contribution! 2012-09-14 11:19:57 -02:00
leekelleher 26f32bab8e Dashboard controls: Tidied up the UI.
Made use of ClientDependency for CSS/JS includes.
CSS tweaks for success/notice/error messages.
Removed from "Umbraco.Web.UI" project, master version now in "Umbraco.Web"; (confirmed with Seb)
(MediaDashboardFolderBrowser.ascx was missing from "Umbraco.Web" - added)
2012-09-14 11:41:30 -01:00
Shannon Deminick 1566b16f0f Migrated most of the functionality from RazorLibraryCore to UmbracoHelper and updated RazorLibraryCore to call
the methods in UmbracoHelper so we only have to maintain one set of code. Didn't port over the Wrap methods because
I need feedback on these as to what they do/are supposed to do.
Added the Media methods to UmbracoHelper using the media store stuff.
2012-09-14 09:09:23 +07:00
Shannon Deminick 0a8b1cc784 Big cleanup of DynamicDocument, removed DynamicBackingItem for this implementation as it is not required.
Removd DynamicBackingItemType since media and content are the same.
2012-09-14 07:28:44 +07:00
Matt@MBP13-PC c441887a96 Updated treePicker dialog to allow the passing in of a NodeKey via querystring 2012-09-13 18:00:25 -01:00
Matt@MBP13-PC 32d76cc143 Fixed issue with AbstractPrevalueEditor throwing WebResource 404s when implemented by a type outside of the umbraco.editorControl namespace 2012-09-13 17:58:18 -01:00
sebastiaan 4340df53fd U4-843 Number of "Last Edits" is now configurable. 2012-09-13 14:42:59 -02:00
sebastiaan f6c6f4f0c0 U4-55 Remove Linq to Umbraco from the core - Removes the menu item as well 2012-09-13 11:23:19 -02:00
Shannon Deminick 18713fe513 Fixes one test with DynamicNode 2012-09-13 13:38:51 +07:00
Shannon Deminick a1edad4e08 Fixed DynamicNodeTests with db support 2012-09-13 13:02:02 +07:00
Shannon Deminick 1c040912f6 Exposes the IDocument property as CurrentDocument on the Model for MVC pages. 2012-09-13 12:28:08 +07:00
Shannon Deminick 458f1d3b8f Fixed setting the Is404 flag 2012-09-13 12:23:58 +07:00
Shannon Deminick 9e5f2f3c9a Fixed template engine selection... oops :) Should all work now!
Fixed DefaultPublishedContentStore to correctly find a secondary root document that doesn't have a domain assigned.
2012-09-13 12:19:56 +07:00
Shannon Deminick f6022c8dda Merge 2012-09-13 11:48:16 +07:00
Shannon Deminick 0ed15db408 Fixed the NiceUrlProvider as it some refactor on a previous commit broke some stuff.
Fixed up some unit tests with NiceUrlProvider to ensure that the second node under the root get's
the correct URL assigned.
Added unit test to ensure that route caches are persisted correctly.
2012-09-13 11:45:06 +07:00
Shannon Deminick c742c6c249 Created new GlobalSettings unit tests to validate reserved paths as well as updated the umbraco module tests with an install path without
the suffixed '/'. Fixed a bug with the reserved paths which was caused by code written in 4.9 to the new code written in 4.10 and the combined
effort was not working. Added more logic to cleanup the URL before comparing too.
Cleaned up GlobalSettings to not have any reliance whatsoever on httpcontext (which of course it shouldn't and not sure why it even did before).
Obsoleted a few methods on the legacy GlobalSettings that aren't used anywhere and should be removed in the future.
Cleaned up a bit of the UmbracoModule with the URLs used.
2012-09-13 09:00:21 +07:00
Shannon Deminick b06a4d2e13 Merge 2012-09-13 06:48:16 +07:00
Shannon Deminick 89cd2772dc add note 2012-09-13 06:48:06 +07:00
Morten@Thinkpad-X220 48c69b9335 Fixes U4-781 Removed duplicate swedish language file. 2012-09-12 05:57:27 -02:00
sebastiaan e8d6f694e7 Added back missing translation trees 2012-09-12 04:22:39 -02:00
sebastiaan 253b58aafb Corrected bad merge (again) 2012-09-11 06:42:00 -02:00
sebastiaan a864fc1fe8 Fix merge problem 2012-09-11 05:29:36 -02:00
sebastiaan 8a5cd21603 Merge with default 2012-09-11 05:02:33 -02:00
Shannon Deminick f2a7b3b255 Updated the published content stores so that content doesn't inherit from media, instead there is a base
interface IPublishedDataStore.
Simplified the interface structure and removed the GetDocumentProperty method as it is not needed and i think existed
before we updated the codebase to not rely on xml.
2012-09-11 05:58:16 +07:00
Shannon Deminick d5ca5e32b4 Fixes the issue with trailing slashes and the comparison in GlobalSettings and updated unit tests
to support the fix.
2012-09-11 05:27:39 +07:00
Shannon Deminick 37969909ca Updated the DynamicDocument and node unit tests to not init a db each time, runs much faster though in the future
we might have to re-enable this in a smart way.
2012-09-11 04:43:30 +07:00
sebastiaan fe92947d72 TeamCity build fails on missing Views\Home.cshtml in Umbraco.Web.UI, removed it. 2012-09-10 12:15:03 -02:00
sebastiaan b9165a8b70 TeamCity build fails on missing App_Code\TestClass.cs in Umbraco.Web.UI, removed it. 2012-09-10 12:10:17 -02:00
Shannon Deminick 27bcea78d2 Started implementing new IPublishedMediaStore which will replace the notion of the legacy ExamineBackedMedia and
moving forward will open up many nice opportunities. This will be used for the media accessor in the new DynamicDocument.
Renamed XmlPublishedContentStore to just DefaultPublishedContentStore.
Made GetProperty an extension method for IDocument and removed from the interface as it is not needed there.
2012-09-08 13:22:45 +07:00
Shannon Deminick ce9be79ec6 Added the Examine Search methods to DynamicDocument as extension methods.
Renamed a few things.
2012-09-08 11:59:01 +07:00
Shannon Deminick d83887e314 Ported updates to DynamicDocument to allow dynamic access to RTE content and still have it
render all embedded macro content without resorting to use some other mechanism.
Fixes the .Field method of the UmbracoHelper.
2012-09-08 11:30:19 +07:00
Shannon Deminick 59fa733156 Created MacroTagParser and updated ItemRenderer to use it. Have DynamicDocument rendering RTE content
with macro content without having to use any special methods, we just use a new custom Property Editor value converter.
Now just need to port this over to DynamicNode too.
Obsoleted a method on the 'helper' class to something much more meaningful... hopefully we can do that with the rest of that class too.
2012-09-08 07:13:03 +07:00
sebastiaan 534c28046a Added tag Release-4.9.0 for changeset 09f5a69cf19e 2012-09-07 07:10:51 -02:00
sebastiaan 4056b47d32 Removed tag Release-4.9.0 2012-09-07 07:10:32 -02:00
sebastiaan 1581944661 Update to CodeMirror for U4-762 2012-09-07 07:10:02 -02:00
Shannon Deminick 5e9d791523 Moved the DocumentNotFoundHandler to diff namespace, created new NoTemplateHandler and updated the engine
to route to it when no template is selected and when there are no hijacked routes.
2012-09-07 08:28:18 +07:00
Shannon Deminick 9127061194 Added support for determining rendering engine based on template chosen. 2012-09-07 07:57:25 +07:00
Shannon Deminick 9563526108 re-reverted the global settings stripping trailing slashes as it is needed for the new
Routing pipeline.
2012-09-07 06:26:34 +07:00
Shannon Deminick 61d7dba2c0 Merge with 4.9.0 2012-09-07 06:24:51 +07:00
sebastiaan e0093d69f1 Merge 4.9.0 back into the default branch 2012-09-06 16:13:57 -02:00
sebastiaan af6693bb5a Close 4.9.0 branch 2012-09-06 16:08:09 -02:00
sebastiaan 0a37b90592 Added tag Release-4.9.0 for changeset de73e687ddf6 2012-09-06 16:07:52 -02:00
Morten Christensen@ThinkPadX220.ab-nat1.dk fa33563a36 Embed classes internal -> public.
Renaming Embed.config to EmbeddedMedia.config
2012-09-06 15:23:42 -02:00
sebastiaan acc985d1d9 Forgot to add the new script to the project, made folder structure consistent 2012-09-06 14:03:41 -02:00
sebastiaan 1b25920507 Forgot to add the new script to the project 2012-09-06 14:01:38 -02:00
sebastiaan 12c92aedcc Adding SQLAzure script needed to update the WebPI feed when there's database changes 2012-09-06 13:57:11 -02:00
sebastiaan 70a814a20c Fixes U4-741 - umbracoReservedPaths was not properly filtering after removing trailing slashes 2012-09-06 12:25:04 -02:00
Morten Christensen@ThinkPadX220 874faf6f83 Removing collation in total db script, as it was a strange mix of danish and latin1 general. 2012-09-06 10:26:25 -02:00
Morten Christensen@ThinkPadX220 040d09ec42 Merge 2012-09-06 08:12:20 -02:00
Morten Christensen@ThinkPadX220 73c5451ff7 Merge 2012-09-06 08:11:18 -02:00
sebastiaan 03865ba978 Re-included ItemEditing*.js for canvas, was removed after a merge with 4.10 2012-09-06 08:10:48 -02:00
Morten Christensen@ThinkPadX220 8692d0777f Changing classes to internal instead of public in Core project. The abstract classes in the Web project can be used to create providers. 2012-09-06 08:00:55 -02:00
sebastiaan 422d9a14b2 Changed the AutoSuggest to be disabled for IE globally instead of just for scripting files so future autosuggest additions won't show up in IE either 2012-09-06 07:49:04 -02:00
sebastiaan 36ad275037 Merge 2012-09-06 07:43:24 -02:00
sebastiaan 2ec35aa0fa Disable Codemirror code completion for IE as it doesn't work properly and mostly just gets in your way 2012-09-06 07:41:45 -02:00
Morten Christensen@ThinkPadX220 fff09caebf Adding a bat file as a shortcut to building nuget packages. Should be part of the build process tho. 2012-09-06 07:40:18 -02:00
Morten Christensen@ThinkPadX220 0e2bc2bc13 Making a few corrections to the embed plugin - primarily changing namespace in Core project. 2012-09-06 07:39:38 -02:00
netaddicts 2a6fc37dce Fixes U4-755 Increase width of Name field to match width of other text fields 2012-09-06 06:00:00 -02:00
sebastiaan 4e9783ed91 Fix iframe uploader (IE6-9) to get the response in the correct format 2012-09-06 04:42:03 -02:00
Shannon Deminick 8081d1d97b Merge with 4.9.0 2012-09-06 12:20:20 +07:00
sebastiaan ae1eac4a7a Added < and > to the urlReplacing as they never actually work and cause errors (404 and 500) 2012-09-05 13:05:23 -02:00
sebastiaan a91d17d8b0 Added \ and | to the urlReplacing as they never actually work and cause errors (404 and 500) 2012-09-05 12:38:12 -02:00
sebastiaan b43a774d7f Found an install where somehow the div around propertyPane had z-index 1000, the same as the uploadpanel, therefore hiding it 2012-09-05 06:59:26 -02:00
sebastiaan 71b9691431 New media uploader now opens the folder in which you were uploading after upload. 2012-09-05 02:03:18 -02:00
Shannon Deminick 36c6dbb6be updated a doc 2012-09-05 09:36:30 +07:00
Shannon Deminick 56b7f8d98b Got .Field method for MVC working and have macro's rendering inside of RTE in MVC.
Added internal setting for global settings to return an MVC area string based on the umbraco path.
Added a ton of extension methods from v5 that are used in much of the MVC engines.
Added UmbracoHelper methods for MVC rendering including Field so that we can render the correct RTE
field markup when the RTE contains a macro, will add extension methods for the @CurrentPage dynamic object to
do the same to make it consistent.
2012-09-05 09:35:24 +07:00
Shannon Deminick bba5e6a59a Fixed issue with new UmbracoModule trying to strip the legacy umbPage query string stuff too early (still need to ask Niels about what this does)
Fixed issue with page update with Document ctor to try catch the Parent property. Removed a bunch of erroneous tracing and replaced with LogHelper.
2012-09-05 08:01:53 +07:00
Shannon Deminick 4dc181b4de Merge with 4.9.0 2012-09-05 07:25:31 +07:00
Shannon Deminick 792860a7bb updated a TODO 2012-09-05 07:22:39 +07:00
sebastiaan 4d101a3a58 Only refresh the tree when all files are done uploading
Remove upload panel when all files are done
2012-09-04 14:37:11 -02:00
sebastiaan 8bab9d7fa5 Added node path to be able to refresh the tree + refreshing the tree after an upload succeeds 2012-09-04 14:27:54 -02:00
sebastiaan 0413b1fbca FileSystemProviders.Release.config shouldn't be content 2012-09-04 13:29:48 -02:00
sebastiaan 2089990769 Changed folderBrowser datatype to use the new MediaDashboardFolderBrowser control 2012-09-04 12:59:05 -02:00
sebastiaan 9843e2e15d Add razor highlighting for codemirror 2012-09-04 12:04:06 -02:00
tg@umbraco.com 25721afcf4 Also makes sure tinyMCE embed plugin is enabled by default on SQLCE 2012-09-04 10:34:35 -02:00
tg@umbraco.com cd75b4b1c9 Merge 2012-09-04 10:32:56 -02:00
tg@umbraco.com 30377f987f Makes sure tinyMCE embed plugin is enabled by default 2012-09-04 10:31:41 -02:00
tg@umbraco.com 644c42556b Updates icon of tinyMCE embed plugin so it's the same for both the toolbar and prevalue editor 2012-09-04 10:27:57 -02:00
Morten Christensen@ThinkPadX220 7eea48a55d Adding nuspec files for nuget packages 2012-09-04 09:19:00 -02:00
sebastiaan 062584de0e Put the ++ back instead of + 1 2012-09-04 08:57:56 -02:00
sebastiaan 57f9bd2846 Changes casing of /Media in FileSystemProvider.config for backwards compatibility (media protect pkg)
Included missing images for the installer
2012-09-04 08:35:15 -02:00
sebastiaan 673e040aa3 Fixed mediadashboard problem, ClientDependency doesn't like newlines in js using \ 2012-09-04 08:10:29 -02:00
sebastiaan f486ff6441 Improving fileUploader.js with jsLint suggestions 2012-09-04 07:44:23 -02:00
sebastiaan 73c6aaa995 Hide throbber when there's no files found
Few updates to make the folderbrowser js safer (as suggested by jslint)
2012-09-04 07:22:15 -02:00
sebastiaan f0dc50d406 Merge 2012-09-04 06:40:37 -02:00
sebastiaan 4e737f7a89 Include mediadashboard in release config, ignore kraftwerk web.config, include upload icon 2012-09-04 06:39:49 -02:00
Morten Christensen@ThinkPadX220 c98f29d462 Updating Danish and English language files with updates from github pull requests 2012-09-04 05:51:24 -02:00
sebastiaan 5beee157a5 Merge 2012-09-04 04:07:02 -02:00
sebastiaan 9171a0d080 Fixes U4-725 Image Cropper - Quality field does not save 2012-09-04 04:06:33 -02:00
leekelleher 6aeaa4ae92 FolderBrowser: Corrected typo on Upload button title attribute.
Small CSS tweak to filter input textbox - side padding.
2012-09-03 19:15:15 -01:00
leekelleher c345b9f47c Applied patch from uComponents for uQuery - GetContentIdByPropertyId 2012-09-03 18:57:54 -01:00
leekelleher 99cf1e9f6d Web.UI project - nested embed.Release.config file 2012-09-03 18:56:59 -01:00
Morten Christensen@ThinkPadX220 7259ad1ff1 Updating Chinese language file with pull request from localization project on github. 2012-09-03 12:39:15 -02:00
Morten Christensen@ThinkPadX220 7dfeae1d0e Minor adjustment to language files according to issue U4-385 2012-09-03 11:32:39 -02:00
Morten Christensen@ThinkPadX220 1121cfe534 Updating Dutch Language file 2012-09-03 10:05:52 -02:00
Morten Christensen@ThinkPadX220 a68c7e8f83 Updating German language file 2012-09-03 10:05:05 -02:00
Morten Christensen@ThinkPadX220 dd89af607f Updating swedish language file 2012-09-03 10:04:26 -02:00
tg@umbraco.com e6c2bf3d01 Adds vir dir support to tinyMCE embed plugin 2012-09-03 05:24:50 -02:00
tg@umbraco.com 917838c0ef Merge 2012-09-03 05:12:44 -02:00
tg@umbraco.com 68e96587f7 Adds vimeo provider to embed.config 2012-09-03 05:11:33 -02:00
Shannon Deminick c3747d70ce Added ObjectExtensionsTests, Added functionality for MVC to render any macro types (i.e. razor and xslt, etc..)
Adds UmbracoHelper as a property to the RenderViewPage for MVC. Tested rendering Xslt and Razor macros with and
without parameters and works well.
Next we need to get the RTE rendering with macros embedded in MVC.
2012-09-03 07:54:09 +07:00
Shannon Deminick 2fc0fe574b Fixed XmlDocument GetProperty to check for user properties 'invariantly'.
Added a method on content to remove the file persistence queue just before it's written based on the module, this should hopefully speed things up and fix some potential issues.
Added an overloaded method on library for UpdateDocumentCache which should save on a few dozen sql calls when publishing a node since we already have
the Document object reference yet we were looking it up again for no reason.
2012-09-02 07:35:57 +07:00
Shannon Deminick a293f53438 Fixes type finder to ensure editorControls are found 2012-09-01 08:52:14 +07:00
Shannon Deminick 85b7574f43 Fixed unit test 2012-09-01 08:30:44 +07:00
Shannon Deminick c961eb368c Fixed up NiceUrl caching inconsistencies 2012-09-01 08:27:16 +07:00
Shannon Deminick 529c52844d Started writing NiceUrlProvider unit tests as there are a bunch of issues with it. Have fixed one of them.
Updated unit test hierarchy of classes so that if one doesn't require a db it can opt out and thus it runs much much faster.
2012-09-01 08:11:40 +07:00
Shannon Deminick 6949178f4b removed formHandlers.config... pretty sure we removed this functionality about a zillion versions ago.
Removed old Nant build folder and files.
removed the umbVersion query string check as this was used for the old preview functionality and isn't used anymore (plus it could never work the way its implemented).
2012-09-01 07:03:56 +07:00
Shannon Deminick 30ec9406de Merge with 4.9.0 2012-09-01 06:20:36 +07:00
tg@umbraco.com 2be79d68cd Updates umbraco embed tinyMCE plugin lang files 2012-08-31 11:42:59 -02:00
tg@umbraco.com 914f639afe Removes GetPreview method from IEmbedProvider 2012-08-31 11:32:38 -02:00
tg@umbraco.com 591a19920f Updates tinyMceConfig.Release.config with embed plugin stuff 2012-08-31 11:30:32 -02:00
tg@umbraco.com 0676d9fa7a Disables Tidy by default 2012-08-31 11:28:16 -02:00
tg@umbraco.com aa8f066f9a Merge 2012-08-31 11:25:14 -02:00
tg@umbraco.com 3e3789d468 Adds embed.Release.config 2012-08-31 11:24:16 -02:00
tg@umbraco.com 85dcf5002f Adds webservice method for embed plugin + embed config file 2012-08-31 11:23:18 -02:00
sebastiaan be0d843c86 Fixes U4-419 Improved editing xslt/razor/ruby/python files in subfolders a little bit (it now actually works)
Still needs more work to make it safer (especially entering backslashes will give YSODs and sometimes when you move to a different folder the old file stays behind)
2012-08-31 11:00:38 -02:00
janusschmidtDK 67c1435fb0 Fix for U4-727 - Small performance issue in backend when loading stylesheet properties. 2012-08-31 10:43:14 -02:00
tg@umbraco.com 85f7ed387f updates tinyMCE config with umbraco embed plugin 2012-08-31 09:43:24 -02:00
tg@umbraco.com f32f559ab7 Adds tinyMCE umbraco embed plugin 2012-08-31 09:37:35 -02:00
tg@umbraco.com b75ea3d589 Adds core components and providers for embed stuff 2012-08-31 09:28:19 -02:00
sebastiaan 06e84f4a98 D'oh! Apologies for bad testing, query had one too many AND's in there =) 2012-08-31 07:07:09 -02:00
sebastiaan 96f582f188 Fix for U4-650 was incorrect, removing ASCII filters out øåæ and probably other letters as well.
It's now very exact, just look if the first letter is not in a list of 26 letters.
2012-08-31 07:01:14 -02:00
Shannon Deminick 04f49d42cf Added unit tests for LookupByPageId ILookup 2012-08-31 07:43:09 +07:00
Shannon Deminick f0148ae833 Added more backwards compatibility to default.aspx 2012-08-31 07:27:17 +07:00
Shannon Deminick 4ced9cf8b2 updated more backwards compatibility with default.aspx 2012-08-31 07:22:41 +07:00
Shannon Deminick d0ab7e505d Updated unit tests for the module to inherit from proper base classes.
Updated default.aspx to support more backwards compatible features that had been removed, there
was a lot of breaking changes there!
2012-08-31 07:19:54 +07:00
Shannon Deminick b511ae3a1a Created new LookupByIdQuery ILookup which is now the first thing that is looked up. Have cleaned up
all of the default.aspx stuff so that no routing logic takes place there, all routing logic now takes
place entirely in the module.
2012-08-30 08:26:01 +07:00
sebastiaan 85d7d5e7cf Fixes U4-708 Sort order for new nodes is set wrong when the max sortorder != number of nodes 2012-08-29 13:48:34 -02:00
Shannon Deminick 05ebc8d2f9 Changed the Template prop of documentrequest to be a new TemplateLookup object since we are going
to need to support MVC and the old Template object is for webforms. I've added a lot of TODO's here
because we'll need to enable the lookups properly in each ILookup and also set the rendering engine (IsMvc)
in the ILookups too. This hasn't been enabled, yet, just a bunch of TODO's written.
2012-08-29 08:54:29 +07:00
Shannon Deminick b86d513aff Updated the new module to handle when no template is found (blank page) instead of the handlers (webforms or mvc) handling this. 2012-08-29 08:17:31 +07:00
Shannon Deminick c251c9f0d3 Changed the Is404 property on the doc request to be set by the last chance lookup, not by the module
because in the future if people override the last chance lookup, they might not want it to be 404, it will
be up to them.
2012-08-29 08:10:10 +07:00
Shannon Deminick 7be4480254 added HasValue unit test, removed the default.aspx file from the Web project, it now only exists in the UI project but
the codebehind still exist in the web for backwards compatibility. Updated the logging so that the LogHelper
can now write to a TraceContext specified if debugging which is handy if we want to write to the normal trace.
2012-08-29 07:47:16 +07:00
Shannon Deminick 3cd1592abc Added better support for Skip for DynamicDocument and DynamicNode and added unit tests. 2012-08-28 09:33:34 +07:00
Shannon Deminick bc3a5122dd Fixes DynamicNode issue not implementing IEnumerable<DynamicNode>
Adds a few unit tests for DynamicDocument/DynamicNode and fixes both to properly support the 'Take' method
as this wasn't really working. Not sure how or why it was working previously. Have also allowed for extension
methods to be executed against either of these objects that accept IQueryable which was not supported before.
2012-08-28 09:20:30 +07:00
Shannon Deminick 4d2b145369 Merge 2012-08-28 06:51:11 +07:00
Shannon Deminick 32350fd35a adds some docs 2012-08-28 06:51:01 +07:00
jholland@HQLT-JHolland.SCRIBEHQ.local a922272c67 Included swfobject.swf
Fixes: U4-624
2012-08-27 19:38:32 +04:00
jholland@HQLT-JHolland.SCRIBEHQ.local 3c7b5d7522 Widened content name field in backoffice
Fixes: U4-369
2012-08-27 23:33:06 +04:00
azzlack 33c07a2390 Updated AbstractDataEditor and AbstractDataEditorControl code comments. 2012-08-27 16:19:13 -02:00
"azzlack" d2210e9985 Updated AbstractDataEditor and AbstractDataEditorControl code comments. 2012-08-27 16:08:17 -02:00
Ove@EyeCatch-MPC 48e8e12877 Reverted some changes to AbstractDataEditorControl in 7260 to retain backwards compatibility. 2012-08-27 14:59:39 -02:00
sebastiaan 2b248e621c Merge in Azzlack/AbstractDataEditorFix 2012-08-27 11:14:06 -02:00
sebastiaan edfe6ed547 Merge uQuery dictionary fix from Azzlack/uQueryDictionaryFix 2012-08-27 10:48:13 -02:00
sebastiaan 6cffa06bd6 Merge 2012-08-27 08:08:26 -02:00
sebastiaan d08946c822 Merge 2012-08-27 08:07:50 -02:00
sebastiaan 6892c1afb8 Merge fixes getnodeidbypathlevel regression
http://ucomponents.codeplex.com/workitem/14727
2012-08-27 08:06:54 -02:00
sebastiaan 7cecb01ffd Merge fixes getnodeidbypathlevel regression
http://ucomponents.codeplex.com/workitem/14727
2012-08-27 08:06:30 -02:00
sebastiaan 66cbfaf8a5 Merge fixes getnodeidbypathlevel regression
Original issue: http://ucomponents.codeplex.com/workitem/14727
2012-08-27 08:05:17 -02:00
Matt@MBP13-PC 38d3d6b575 Updated ImageMediaFactory to support png transparency
Updated UmbracoFile to remove '.' from gif extension check
2012-08-27 08:01:51 -01:00
Shannon Deminick 528b06f692 Got the RenderViewPage rendering with the new DynamicDocument for the @CurrentPage property 2012-08-25 07:14:23 +07:00
Shannon Deminick 92602e3480 Added unit tests for legacy DynamicNode which now just runs tests on the abstract class so we share tests between
DynamicDocument and DynamicNode.
Fixes: #U4-691
Fixes: #U4-690
2012-08-25 07:07:00 +07:00
Casey Neehouse f18e59575f Changed versionDate to be set from application as possibly related to u4-387 2012-08-24 21:58:53 +04:00
Shannon Deminick 64c9d97e53 Got extension methods working on DynamicDocument/DynamicDocumentList and added unit tests
for them.
2012-08-24 23:44:47 +07:00
Shannon Deminick 71fd352ea5 Merge with 4.9.0 2012-08-24 22:41:27 +07:00
Shannon Deminick fbd20fd4b1 Removes 'OLD' root folder 2012-08-24 22:41:00 +07:00
Shannon Deminick b0f77a38f0 Merge with 4.9.0 2012-08-24 22:38:03 +07:00
leekelleher bf5c3bf5ae Fixes U4-688 - 4.8.1 can't upgrade using SQLCE
(Also preparation for resolving U4-677 - SQLCE Medium Trust)
2012-08-24 13:56:39 -01:00
leekelleher e9e598d32c Corrected typo (macro/xsltExtensions) 2012-08-24 13:14:52 -01:00
PerPloug b2eeb6a70d Script rename, fixes a couple of IE bugs, much more stable now, much better in
IE now, so with a bit of more thorough use, it could be included by default for
IE
2012-08-24 07:01:54 -02:00
PerPloug 9e4cf35370 Small script name change to reflect custom codearea script 2012-08-24 07:00:04 -02:00
leekelleher ebd87e0eaa Implemented U4-86 - Move EXSLT references from being predefined in core to xsltExtensions.config 2012-08-23 17:55:45 -01:00
Shannon Deminick d369567f3f Fixes .proj merge issue 2012-08-23 23:13:55 +06:00
Shannon Deminick ba0b0ea52d Merge with 4.9.0 2012-08-23 22:33:52 +06:00
Shannon Deminick f36a88384d Migrated UmbracoSettings, GlobalSettings, XmlHelper, IOHelper and supporting classes to Umbraco.Core.
This fixes the need for Umbraco.Core to reference business logic since business logic needs to reference
Umbraco.Core (Umbraco.Core should never reference any other project except for interfaces, it is the 'Core'
of the new codebase.
2012-08-23 22:28:22 +06:00
Shannon Deminick 7fb89da4db Merge with 4.9.0 2012-08-23 22:05:07 +06:00
leekelleher 19f7ba1ef4 MNTP: Applied CSS fix to the header style. Bug raised on uComponents.
http://ucomponents.codeplex.com/workitem/14746
2012-08-23 14:19:00 -01:00
leekelleher 23532b0ec8 Nested a Web.config transform file 2012-08-23 11:01:31 -01:00
leekelleher 47042ed3d3 Implemented U4-193 - Feature Request: Add meta tag to enable use of Chrome Frame in IE 2012-08-23 10:49:50 -01:00
leekelleher 0c57e0e6eb Updated my web.config transforms for Medium Trust support 2012-08-23 10:49:19 -01:00
Hartvig@UMBRACOTESLA ace18acd7e Missing web.config.templates and a missing stylesheet for the codemirror 2012-08-22 19:01:14 -02:00
Casey Neehouse b91fa1a8f2 Fixes Issue U4-387 - HasPendingChanges method was added and the comparison was
converted from rounded seconds into milliseconds.  So effectively time was set
from 1.5 seconds lapse to .5 seconds lapse. Change to 2 seconds lapse.

May still occur on slow db connections or rather large document types.
//original code commented in the Tree:
Math.Round(new TimeSpan(dd.UpdateDate.Ticks - dd.VersionDate.Ticks).TotalSeconds, 0) > 1
2012-08-22 18:46:55 +04:00
PerPloug 7a84761810 Fixes build errror because method GetPropertyTypes() has been replaced with
GetAll() - this is a breaking change who the F* changed that?
2012-08-22 12:02:28 -02:00
PerPloug 18200aa997 Flet 2012-08-22 12:00:04 -02:00
PerPloug bd0ebeb092 Dublicate files in Umbraco.Web.UI 2012-08-22 11:59:42 -02:00
PerPloug 358610655b Changes to javascript and css editors 2012-08-22 11:58:32 -02:00
PerPloug fa3f79c0e4 Changes to Pythin (cshtml) xslt and template editors 2012-08-22 11:55:57 -02:00
PerPloug d25fae730d Custom umbraco code area wrapper changes around codemirror 2 2012-08-22 11:55:19 -02:00
PerPloug 5b150c74ac Codemirror 2 core files 2012-08-22 11:54:40 -02:00
PerPloug 83fcdcfd86 CodeArea Control to support Codemirror 2 options 2012-08-22 11:53:57 -02:00
hartvig bd058d649a Fixes U4-673 2012-08-22 11:05:25 -02:00
hartvig ec638b9c3e Fixes U4-672 2012-08-22 10:20:59 -02:00
Matt@MBP13-PC 7b4bf6e502 Fixed issue with file uploader not working in IE
Fixed issue with folder browser response getting cached
2012-08-22 07:03:50 -01:00
Shannon Deminick d7f8214d24 Got extension methods working for DynamicDocument. Exposes some new APIs publicly because they need to work with type finding and med trust, plus we need to expose these for MVC 2012-08-22 08:33:19 +06:00
Shannon Deminick 22c0350a4a Have deprecated more of the dynamic class in the macroEngines project to proxy to the
classes in the Umbraco.Core project.
2012-08-22 07:47:21 +06:00
Shannon Deminick 3222d39808 Moved all classes for legacy DynamicNode into seperate files so we can easily identify what is there and
obsolete them properly.
2012-08-22 07:08:05 +06:00
Shannon Deminick 33c339a724 Moved all classes for legacy DynamicNode into seperate files so we can easily identify what is there and
obsolete them properly.
2012-08-22 07:07:52 +06:00
Shannon Deminick e9c793cede Fixed difficult merge 2012-08-22 05:57:34 +06:00
Shannon Deminick 1cbd355a2a Merge with 4.9.0 2012-08-22 05:38:45 +06:00
Shannon Deminick bee73cce12 Changed IApplicationEvents to IApplicationEventHandler.
Removed all reflection calls to BindingFlags.NonPublic which was mostly used by DynamicNode, this will
not work in medium trust.
2012-08-22 05:21:02 +06:00
Matt@MBP13-PC f5d258b42d Added thumbnail size selector to folder browser 2012-08-21 08:59:10 -01:00
Matt@MBP13-PC c1278674c3 Added throbber to library to show progress whilst loading media items 2012-08-21 08:17:07 -01:00
Matt@MBP13-PC 605e66c159 Fixed issue with Media factories saving relative file path rather than URL
Added styling to file uploader to show errored and canceled uploads including tooltip message
2012-08-21 07:53:07 -01:00
Matt@MBP13-PC b86bbb0e82 Tweaked some file uploader styles 2012-08-21 07:06:07 -01:00
Matt@MBP13-PC 930dd74edb Merge 2012-08-21 06:54:52 -01:00
Matt@MBP13-PC d30b5b0b2c Updatedt TinyMCEWebControl.cs to use IFileSystem 2012-08-21 06:42:01 -01:00
leekelleher 8e785cc215 Resolved U4-385 Hard Coded word "Packages".
The tree alias was called "packager" instead of "packages".
(Will update the GitHub Localization project too!)
2012-08-20 21:16:27 -01:00
Matt@MBP13-PC efe0970245 Updated UmbracoMetaWeblogAPI.cs to use IFileSystem 2012-08-20 13:55:51 -01:00
Matt@MBP13-PC 15264d36f0 Removed unused method from TinyMCEWebControl 2012-08-20 12:37:30 -01:00
Matt@MBP13-PC 298e06974e Updated mediaService to use IFileSystem 2012-08-20 12:36:56 -01:00
Matt@MBP13-PC 91acf40b3b Updatedt tinyMCEImageHelper to use IFileSystem when creating scaled images 2012-08-20 11:56:16 -01:00
Matt@MBP13-PC 085f4a4fcf Updated Document code to use IFileSystem when copying
Added some helper extention methods for IFileSystem
2012-08-20 11:42:18 -01:00
Matt@MBP13-PC 3e2510cbda Added code to auto seek stream to begining when saving via IFileSystem just in case 2012-08-20 10:51:14 -01:00
Matt@MBP13-PC 2775d9bedc Removed AbstractFileSystem in favour of extension methods
Updated UmbracoFile to use IFileSystem
Updated UmbracoMediaFactories to use IFileSystem
2012-08-20 10:46:32 -01:00
Matt@MBP13-PC 7afbc8e7bf Merge 2012-08-20 09:43:19 -01:00
Matt@MBP13-PC 3a2ed918de Added dynamic wrapper support to IFileSystem to allow context specific implementations from which to hang extension methods upon (ie IMediaFileSystem) 2012-08-20 09:42:32 -01:00
Matt@MBP13-PC 847b3523a8 Made folder browser filtering client side 2012-08-20 09:41:28 -01:00
Shannon Deminick 72ac3532d2 Updated DynamicDocument to be much more readable and allows for inheriting the structure so we can potentially use it
in DynamicNode (to be inherited from)
2012-08-20 11:22:45 +06:00
Shannon Deminick e24e3af955 Added DynamicDocument tests for getting a converted value for a custom PropertyEditorValueConverter, updated
DynamicDocument with performance enhancements, should perform much quicker for multiple requests for the same property now.
2012-08-20 09:11:14 +06:00
Casey Neehouse 3180b5c5b6 Additional RenderTemplate modification to reset context in error situations. 2012-08-19 11:25:44 +04:00
Casey Neehouse 480f73dba7 Corrections to RenderTemlate(pageId) method to reset context and remove
altTemplate from the rendering page.
2012-08-19 09:26:13 +04:00
Shannon Deminick 56a13c5e0c Created new IPropertyEditorValueConverter for use with DynamicDocument so we don't have to rely on
any more xml configuration sections to created and add value 'mappers' / converters. This saves on tons
of code and makes it really easy for devs to handle their own conversions for use with dynamic node.
2012-08-18 11:39:18 +06:00
Shannon Deminick 7175860ae0 Added tests for dynamic node to select children based on the child doc type names including pluralized names and added
support for checking with case insensitivity. Example. CurrentPage.NewsItems where NewsItem is a child doc type alias.
Found one reason why the old dynamic node has performance issues and have added a note, just need to do more reseearch to
make sure my findings are correct.
Changed over all of the new DynamicNode classes to be DynamicDocument instead.
2012-08-18 11:03:30 +06:00
Shannon Deminick 9177257952 Fixed/Cleaned up new dynamic node, added more support for member properties such as propertyId and added much better
support for camel case vs pascal case names. Also added support for returning the strongly typed value for reflected properties.
Also added support for handling "@" prefixed property names when using GetProperty("@Id") or similar.
Added unit tests for all of the above and other dynamic node methods.
2012-08-17 14:02:29 +06:00
Shannon Deminick 3da387591d Deprecated many of the classes for Dynamics in the macro engines project and proxied these calls
to the superceded classes.
2012-08-17 06:22:51 +06:00
Shannon Deminick 5213d6de5c renamed IContentStore to IPublishedContentStore. Migrating DynamicNode to Umbraco.Core and cleaning up it's supported codebase.
Starting writing a few unit tests for the new DynamicNode codebase. Will of course leave the original DynamicNode stuff in its
current place for backwards compatibility but will deprecate many of the classes which will call the new ones.
2012-08-17 04:27:47 +06:00
Matt@MBP13-PC bd5182792e Added double click to edit support 2012-08-16 10:31:00 -01:00
Matt@MBP13-PC b057b6d68a Implemented media sorting 2012-08-16 10:03:37 -01:00
Matt@MBP13-PC 0bc1234a4e Fixes issue with missing master pages
Re-added missing build script
2012-08-16 07:06:46 -01:00
Casey Neehouse 8b76f2a893 Added hostname to title on login.aspx for support purposes. 2012-08-16 02:27:08 +04:00
Casey Neehouse 943e53f655 Adding config template. 2012-08-16 01:15:54 +04:00
Shannon Deminick 9846d6dc4d Merge with 4.9.0 2012-08-15 23:21:12 +06:00
Shannon Deminick 4e9f9b77f4 Created CultureDictionaryFactoryResolver for use in the new MVC views which returns a ICultureDictionary.
This allows us in the future to use any type of data source for the dictionary. Have obsoleted the old
ICultureDictionary in the macro engines project (where it doesn't belong anyways). The new one doesn't expose
the 'Language' property to the front-end because this is a business logic class which means designers can just delete
a whole language from the db by calling 'Delete' on the object !
2012-08-15 23:20:37 +06:00
Shannon Deminick 91e9392992 Re-removed umbraco version header after bad merge and removed from new routing module.
Started addding new ICultureDictionary since this cannot belong in the macros project.
2012-08-15 21:21:31 +06:00
hartvig 6093e4ff5e Adds CDT property to ContentType class 2012-08-15 09:07:28 -02:00
Shannon Deminick 2f4a18087d Fixes issue with trailing slashes and reserved urls 2012-08-15 01:23:57 +06:00
Shannon Deminick f52ae8c46b Adds unit tests for LookupByNiceUrlAndTemplate and fixes issues for when paths contain .aspx 2012-08-15 01:01:21 +06:00
Shannon Deminick ce53f400a8 Re-instated the build script... this got deleted during a bad merge!
Fixed the UI proj file with the correct attributes for the FileSystemProviders.config
2012-08-15 00:22:42 +06:00
Shannon Deminick b9b24990b6 Merge with 4.9.0 2012-08-15 00:08:38 +06:00
Shannon Deminick b596b3584e Added lookup by id tests. 2012-08-14 23:56:23 +06:00
Shannon Deminick 05f8778e40 Adds another unit test for the RenderRouteHandler 2012-08-14 23:42:44 +06:00
Shannon Deminick ed4de4465f Added RenderRouteHandlerTests 2012-08-14 23:35:34 +06:00
Matt@MBP13-PC 766a834f53 Updated the Image thumbnail provider to use IFileSystem 2012-08-14 12:24:51 -01:00
Matt@MBP13-PC 546b53f9b0 Merge 2012-08-14 09:12:36 -01:00
Matt@MBP13-PC e2274b7892 Hooked up IFileSystem to the file uploader / IFile 2012-08-14 09:11:49 -01:00
hartvig c11bc9559c Implements U4-165 2012-08-14 07:45:47 -02:00
sebastiaan a581dc18c8 Merge with 4.8.1 (2nd) 2012-08-14 07:21:18 -02:00
sebastiaan cff0d9dfbf Closing branch. 2012-08-14 07:15:32 -02:00
sebastiaan b8f7ea50f7 Added tag Release-4.8.1 for changeset 8f8a20385788 2012-08-14 07:06:26 -02:00
Shannon Deminick d95b688a7f Adds new IUmbracoEvents: #U4-164 2012-08-14 12:03:34 +06:00
leekelleher d329123cda U4-163 Picker Relations - reincluded data-type; previous fixes for U4-162 resolved issues. 2012-08-13 23:02:17 -01:00
leekelleher aceb5b0203 U4-162 Relation Types - Resolves MySQL issues; re-enabled Tree attribute.
Changed umbraco.DataLayer project to use .NET 4.0, (was previously using 3.5), reason being that we could use Guid.Parse.
Also resolves workitem:30434 - Error when copying node and keeping relation between original and copy.
2012-08-13 22:45:01 -01:00
Matt@MBP13-PC 524244d1ec Added FileSystemProviders config section
Added FileSystemProviderManager class for fetching a file system provider by alias (this should probably be moved into the Umbraco context in 4.10)
2012-08-13 13:26:06 -01:00
Matt@MBP13-PC ad291265f3 Added PhysicalFileSystem constructor overload to work out the rootPath / rootUrl from a virtualRoot path (Can only work with a valid HttpContext) 2012-08-13 10:23:45 -01:00
Matt@MBP13-PC d2ac9158c6 Added IFileSystem
Fixed issue with last merge
2012-08-13 10:04:31 -01:00
Matt@MBP13-PC f6e59e0264 Merge with 4.8.1 (2nd) 2012-08-13 06:38:43 -01:00
Matt@MBP13-PC 8afa6298e0 Merge with 4.8.1 (2nd) 2012-08-13 06:24:52 -01:00
shannon@ShandemVaio f6436d2eee Added unit tests for LookupByAlias which are now all passing. 2012-08-10 23:46:09 +06:00
shannon@ShandemVaio 813fcf5903 Fixed up minor issues with content store changes, web site is now rendering with new IDocument engine. 2012-08-10 13:55:22 +06:00
shannon@ShandemVaio c522ad6e30 Created an ContentStoreResolver so we can specify a custom ContentStore which means we can return a custom
IDocument. This now means we've opened up the possibility of an abstracted routing lookup system to map to a Document
stored anywhere. By default this is obviously Xml but could theoretically be anything, still internal until more review
of the API is done.
2012-08-10 13:38:02 +06:00
shannon@ShandemVaio a858712bcc Change namespace from Umbraco.Web.Model to Umbraco.Web.Models 2012-08-10 13:19:25 +06:00
shannon@ShandemVaio e131011667 Rename namespace from Umbraco.Core.Resolving to Umbraco.Core.ObjectResolution 2012-08-10 13:18:13 +06:00
shannon@ShandemVaio 3415554142 Moves types into matching files. 2012-08-10 13:11:37 +06:00
shannon@ShandemVaio 61c4a9e68d Created IDocument and IDocumentProperty to one day replace INode since it doesn't contain enough information
and is poorly formatted, this now allows us to properly abstract an IDocument using the new IContentStore which now
returns IDocument instead of XmlNode so we now have an abstraction away from Xml for routing.
2012-08-10 13:08:47 +06:00
shannon@ShandemVaio 7280dbc66e Finished LookupByNiceUrl unit tests, all passing. 2012-08-09 11:22:34 +06:00
shannon@ShandemVaio 67e921f862 Added check to UriUtility to check for default.aspx since this path will show up for pre-IIS7 websites, added
unit tests for UriUtility, updated UmbracoModule to use the UmbracoUrl to pass to the document request.
Added more unit tests for LookupByNiceUrl.
2012-08-09 11:08:24 +06:00
shannon@ShandemVaio e75aebc4fd Fixed up an issue with the ContentStore, added more unit tests to prove the fix is correct, added more unit tests
for the LookupByNiceUrl IDocumentLookup which all pass.
2012-08-09 07:41:13 +06:00
shannon@ShandemVaio 2e5db72a09 Updated DocumentRequest so that it doesn't actually do the searching, it acts more like a model.
The DocumentSearcher now performs the searching and sets the properties on the DocumentRequest, this
simplifies the dependencies between the contexts. Updated the LookupByNiceUrlTests unit test, now all
initialization is working and the test runs which will be the basis for testing all of the IDocumentLookups.
2012-08-09 04:15:35 +06:00
shannon@ShandemVaio 739de3ef78 Started writing tests for all DocumentLookups as these all require many tests including tests for
routes when using IIS 7 and pre-IIS 7 platforms.
2012-08-08 23:55:55 +06:00
shannon@ShandemVaio 626b9ceefa Updated Web.UI project to support MVC and VS MVC dialogs.
Updated RenderViewPage to include UmbracoContext and DocumentRequest.
2012-08-08 23:37:54 +06:00
shannon@ShandemVaio 4111298b00 Got routing working properly with MVC and our HttpModule 2012-08-08 23:10:34 +06:00
Matt@MBP13-PC cd56882845 Media grid now refreshes after uploads have completed 2012-08-08 12:09:22 -01:00
Matt@MBP13-PC 37ddb9223f Added friendly name support to DMU webservice to allow uploaded files to set the media items friendly name 2012-08-08 11:54:52 -01:00
Matt@MBP13-PC 44a15900c7 Removed upload method from FolderBrowserService as re-using the DMU web service instead 2012-08-08 09:26:25 -01:00
Matt@MBP13-PC ccd56f5594 Hooked up support for overwriting
Made DMU web service check for logged in user if no credentials are passed in
2012-08-08 09:08:09 -01:00
Matt@MBP13-PC a989ea77ff Switched DMU web service to support XML and JSON so can be used by media dashboard aswell
Added dmu.ashx file in old plugin folder to add backwards compatability
2012-08-08 08:37:07 -01:00
shannon@ShandemVaio 9e611ba8f4 Updated new GlobalSettings version 2012-08-07 21:42:11 +06:00
shannon@ShandemVaio 6f8b016728 Merge with 4.9.0 2012-08-07 21:41:24 +06:00
shannon@ShandemVaio d92d309c61 Added initial MVC supporting files and updated some unit tests. 2012-08-07 21:40:34 +06:00
Matt@MBP13-PC 872ef1fadc Added Multi-file delete support to media grid
Added file name change support to multi-file uploader
2012-08-07 09:30:11 -01:00
Matt@MBP13-PC 9b8d40ee2d Fixed broken noNodes page 2012-08-07 07:53:19 -01:00
shannon@ShandemVaio d9eb8b426c Added TODO notes for NiceUrlProvider to fix an issue for Stephan. 2012-08-07 04:55:27 +06:00
shannon@ShandemVaio ef0d7821eb Fixes default url cache to use concurrentdictionary instead of custom locks as this was causing errors.
Updated the references between context objects since a DocumentRequest should only be set when rendering
a front-end doc, not in the back office.
Fixes the LookupByNiceUrl to work with non directory paths.
Fixes the UmbracoContext.ClientUrl to work properly.
2012-08-07 03:54:47 +06:00
shannon@ShandemVaio b68bcba85e Updated UmbracoModule to support the TransferRequest just like umbraMVCo does using query strings. Added more
unit tests for UmbracoModule, refactored the Umbraco.Web.Routing.Domains to not have static methods and created an
interface for it so that we can unit test it. Changed DocumentRequest stuff to internal. Finally got unit test working for the module
2012-08-07 02:33:08 +06:00
shannon@ShandemVaio fbf94bbf01 Fixed module with client side perf check, added unit test 2012-08-06 23:04:08 +06:00
shannon@ShandemVaio 19205f1435 Improves perf of UmbracoModule rendering, adds unit test for UmbracoModule, fixes StateHelper with HttpContext.Current,
Fixes Action with empty JsSource, Fixes GlobalSettings to be unit testable, adds medium trust config
section to my own transform.
2012-08-06 22:40:06 +06:00
Matt@MBP13-PC 1e271455e8 Added multi select / drag to re-order support 2012-08-06 10:57:41 -01:00
Matt@MBP13-PC 1ad7abcd69 Incremented global version number 2012-08-06 07:47:53 -01:00
Matt@MBP13-PC 7a93c108fb Merge with 4.8.1 (2nd) 2012-08-06 07:20:46 -01:00
sebastiaan c8ac04228e Workitem: 30933 - Missing language packs breaks TinyMCE (4.8) --> Language packs re-included 2012-08-04 17:32:21 -02:00
shannon@ShandemVaio 11a6b2a31f Changed ThumbnailProviderManager to ThumbnailProvidersResolver and initializes it in WebBootManager 2012-08-04 06:20:06 +06:00
shannon@ShandemVaio 58dec4774d Merge with 4.9.0 2012-08-04 06:12:02 +06:00
shannon@ShandemVaio 7235141f02 missing readme file content 2012-08-04 06:10:12 +06:00
shannon@ShandemVaio 32bef227b7 Added App_Code assembly loading to new type finder, had to recompile log4net to support medium trust.
Updated TypeFinder and assembly info to support medium trust.
2012-08-04 06:07:29 +06:00
sebastiaan 082378815f Fixes issue 30965 - Pipe character in URL causes YSOD 2012-08-02 16:39:15 -02:00
sebastiaan f8bdb42a63 Fixes issue 30905 - Checkbox "Include unpublished child pages" for Dutch Language doesn't work 2012-08-02 16:34:05 -02:00
Matt@MBP13-PC 86be51f7ce Added missing files 2012-08-02 09:31:35 -01:00
Michael Wulff Nielsen 5e720ec965 Fixed GetNodeIdByPathLevel regression from uComponents 2012-08-02 07:27:31 -02:00
Michael Wulff Nielsen 7a274bf429 Fixed GetNodeIdByPathLevel regression from uComponents 2012-08-02 07:26:21 -02:00
Michael Wulff Nielsen 11cf53d3ba Fixed GetNodeIdByPathLevel regression from uComponents 2012-08-02 07:24:18 -02:00
shannon@ShandemVaio a539fd2554 Fixes DataTypesResolver namespace 2012-08-01 23:53:19 +06:00
shannon@ShandemVaio 8a192a0065 Renamed TypeFinder2 to Umbraco.Core.TypeFinder. Obsoleted old TypeFinder and cleaned up non-used methods
in the new TypeFinder. Updated some unit tests and removed benchmark tests since we already have the benchmarks.
2012-08-01 23:50:33 +06:00
shannon@ShandemVaio 923f4f517f Created ActionsResolver for creating IActions and updated Action class to use this now. Still needs
a bit of cleanup, see TODO notes in Action.cs
2012-08-01 23:30:37 +06:00
shannon@ShandemVaio d644b44d80 Created PackageActionsResolver object to deal with IPackageAction plugins. 2012-08-01 23:03:26 +06:00
shannon@ShandemVaio 2115146fdb Removed old MacroControlFactory - marked as internal FTW ! moved it to new MacroFieldEditorsResolver
using the new framework. Also moved PersistableMacroProperty to new assembly (it was also marked as internal).
Updated unit tests to work with Resolution and resetting resolvers.
2012-08-01 22:46:13 +06:00
shannon@ShandemVaio 646e96ab15 Changed PluginResolverType to PluginManager. Reinstated Resolution and ResolverBase<T> since
this gives us more control over all Resolvers and streamlines them. Created IBootManager, CoreBootManager and WebBootManager
to handle the application initialization including the creation of Resolvers. This means that if people are using the dlls outside
of the web app, they can run the boot strappers to initialize everything.
2012-08-01 22:06:15 +06:00
Matt@MBP13-PC 4049a77332 Made ThumbnailProviders internal for the time being. We'll make them public in 4.10 as this has a new / consistant way of loading plugins. 2012-08-01 08:37:18 -01:00
Matt@MBP13-PC cabe37014b Moved IThumbnailProvider interface to root of Umbraco.Core assembly 2012-08-01 08:13:45 -01:00
Matt@MBP13-PC 20fada8fd4 Converted ThumbnailProviderManager to singleton and made internal 2012-08-01 08:11:48 -01:00
shannon@ShandemVaio dff3905e85 Converted over ThumbnailProviderManager to ThumbnailProvidersResolver using the new apis. 2012-08-01 11:24:39 +06:00
shannon@ShandemVaio c2ee1e63bb Added unit tests for ManyObjectResolverBase for the different lifetime scope of instantiated objects. 2012-08-01 10:48:19 +06:00
shannon@ShandemVaio d4806895a9 Had to remove the Resolution freezing idea because we are lazily instantiating the singleton instances, otherwise
we have to instantiate them all on startup which means that all type searching happens on startup and not lazily which
is bad for performance. I don't think its a big deal that we're not freezing these objects, MVC doesn't freeze its singletons
and nobody seems to have a problem with it, people will just know not to modify these items after startup.
2012-08-01 10:15:39 +06:00
shannon@ShandemVaio bee357ffdc Obsoletes umbraco.cms.businesslogic.datatype.controls.Factory with new Umbraco.Core.DataTypesResolver 2012-08-01 10:05:39 +06:00
shannon@ShandemVaio a0a99e8f12 Obsoletes umbraco.presentation.cache with new Umbraco.Core.CacheRefreshersResolver
Have removed ResolverBase as we cannot rely on manually setting the current singleton object since applications outside of the standard umbraco web application
might be using these singletons and would expect they already be setup. Have changed all current resolvers to manage their
own singleton instances and sealed them.
2012-08-01 09:49:10 +06:00
shannon@ShandemVaio 4368c8a015 Merge with 4.8.0 2012-08-01 07:04:30 +06:00
shannon@ShandemVaio ddc2619511 Merge with 4.9.0 2012-08-01 06:31:28 +06:00
Matt@MBP13-PC 69b3645e9c Added Edit / Download context menu support for media library 2012-07-31 13:31:31 -01:00
Matt@MBP13-PC 4e1e7fe657 Added context menu to media grid
Restructured folderBrowser js class to be less clutered
2012-07-31 12:56:51 -01:00
Matt@MBP13-PC 2481a8df98 Updated fileUploader to use face uploader progress bar when uploading using iFrames. 2012-07-31 08:15:42 -01:00
shannon@ShandemVaio 76c99d3f47 Changed TypeFinder2 to be a static object as there's no reason to have it as an instance.
Still need to integrate the app_code stuff into the new one and then merge the old/new
2012-07-31 03:24:33 +06:00
shannon@ShandemVaio 2fd8d17be9 Changed Action over to use PluginTypeResolver to find IActions and added unit test for it. 2012-07-31 03:14:24 +06:00
shannon@ShandemVaio 5b8057f063 Updated cache refresher factory to use PluginTypeResolver and added unit tests to show that it
resolves the objects, fixes up the GetAll() call since I'm not sure if that actually ever worked.
2012-07-31 03:08:46 +06:00
shannon@ShandemVaio c9a4b708aa Fixes TreeDefinitionCollection to lazily load/find the trees 2012-07-31 02:45:18 +06:00
shannon@ShandemVaio 2537925350 Fixed up unit tests, enables logging for unit tests 2012-07-31 02:34:57 +06:00
shannon@ShandemVaio 5a3534bc52 Upgraded macr to use PluginTypeResolver to resolve XsltExtensions and added unit tests
to support finding these types.
2012-07-31 02:16:29 +06:00
shannon@ShandemVaio 5da0445c32 Updated TreeDefinitionCollection to use PluginTypeResolver and fixed its code to be thread safe.
Updated restExtensions to use PluginTypeResolver and added unit test for resolving these types.
Updated TypeFinder2 with a slight perf increase.
2012-07-31 01:56:03 +06:00
shannon@ShandemVaio 352d817fc1 Updates DynamicNode to use PluginTypeResolver, fixees DynamicNode RazorDataTypeModelTypes resolution
to be thread safe. Removes unused classes (we can put them back if we need them later)
2012-07-31 01:06:10 +06:00
shannon@ShandemVaio e55e688dc7 Added unit test for ContentStore, added object extensions and supporting classes from v5,
added RhinoMocks to the test project and httpcontext factory from v5 unit tests to be used
in our v4 ones.
2012-07-31 00:02:27 +06:00
shannon@ShandemVaio ec22d985ef Updated all lookups to use new logging system. Updated lookups resolvers to use ManyObjectResolverBase
and are just adding the known resolvers on app startup and commented out the other resolver stuff for now.
Fixed up xpath statement for resolving the first document, site now renders :)
2012-07-30 22:52:59 +06:00
Matt@MBP13-PC 3b6508e534 Merge 2012-07-30 10:23:01 -01:00
Matt@MBP13-PC 60ec172d37 Tweak to file uploader so that if the upload is complete, it just removes the UI item 2012-07-30 10:22:35 -01:00
shannon@ShandemVaio 95451e99a7 Reinstating persisting of xml cache file in new module. 2012-07-29 00:04:11 +06:00
shannon@ShandemVaio 1aa70c4bb8 Reinstated temporary new settings in the UmbracoModule and have changed UmbracoModule to reference
the new Umbraco.Core.Configuration settings instead of the legacy ones.
2012-07-28 23:53:07 +06:00
shannon@ShandemVaio 750f5b18d3 Changed the UmbracoModule to use new logging system and updated the log4net config (not release config) to
enable Debug calls.
2012-07-28 23:40:48 +06:00
shannon@ShandemVaio b7cea05f18 Added unit test for custom log file appender, integrated a few more classes from v5 for tracing,
added initial trace logging to application startup which works. Changed the application startup handler
to use new logging, now the system won't bork if the sql db isn't initialized.
2012-07-28 23:08:02 +06:00
azzlack b226be4939 Split AbstractDataEditorControl to separate class file.
Cleaned up code in AbstractDataEditor and AbstractDataEditorControl.
Made AbstractDataEditorControl inherit from INamingContainer to help with control id issues.
Made the ID and DataTypeName fields of AbstractDataEditor abstract so they must be implemented.
2012-07-27 21:34:58 -02:00
azzlack 16127a378a Fixed uQuery GetDictionaryItem method so it doesnt throw exception if the requested item does not exist, and returns fallback string instead. 2012-07-27 21:04:23 -02:00
shannon@ShandemVaio b09422ed5e Added Log4Net and supporting classes from v5 in order to start integration of new diagnostic logging system. 2012-07-28 01:28:39 +06:00
shannon@ShandemVaio b186d5f8e4 Migrated UmbracoSettings and GlobalSettings along with other supporting classes to Umbraco.Core.
Everything is still marked as internal until such time we can clean everything up.
2012-07-28 00:13:06 +06:00
sgay c4d578442b merge 2012-07-27 14:08:00 -02:00
sgay 83f76ed4a4 cosmetic & doc 2012-07-27 14:06:41 -02:00
sitereactor 6870ea3ff5 Closed branch 4.8.0 2012-07-27 07:06:28 -02:00
sgay 74dd444506 merge 2012-07-27 04:48:53 -02:00
shannon@ShandemVaio 573c5a3387 Updated MacroControlFactory to use PluginTypeResolver and added unit test to ensure it finds the types. 2012-07-27 12:45:56 +06:00
sgay 872fb9d8f3 fix previous commit 2012-07-27 04:39:43 -02:00
shannon@ShandemVaio da0217d330 Updated PackageAction to use PluginTypeResolver and added unit test to ensure they are found. 2012-07-27 12:29:41 +06:00
shannon@ShandemVaio 507b6ab773 Updated MediaFactory to use PluginTypeResolver and added a unit test to ensure they are being found. 2012-07-27 12:23:22 +06:00
shannon@ShandemVaio 960dd52750 Created MacroEngineFactory tests, updated DataTypeFactory tests. 2012-07-27 12:14:27 +06:00
shannon@ShandemVaio 5576f65ef0 Updated DataType factory to use PluginTypeResolver and made the dictionary thread safe.
Updated MacroEngineFactory to use PluginTypeResolver and made it thread safe. Have also
updated it to only create one instance of each IMacroEngine per application which should
increase performance a teeny bit, plus that's how it should be.
2012-07-27 11:54:29 +06:00
shannon@ShandemVaio 1823cce4f6 Changed over Action to use PluginTypeResolver to find and instantiate IActionHandlers and included a unit test. 2012-07-27 10:53:40 +06:00
shannon@ShandemVaio 09a68f9376 Updated ApplicationTreeRegistrar to use PluginTypeResolver, created unit tests for resolving trees/applications 2012-07-27 10:37:12 +06:00
agrath 1700516148 Another NRE that I missed 2012-07-26 16:05:44 -12:00
agrath 3654070f2e Merge 2012-07-26 15:47:50 -12:00
agrath a3b091758c Fixed a NRE in FileHandlerData when user has not updated umbracoSettings.config to add the new /settings/content/imaging/autoFillImageProperties node 2012-07-26 15:36:34 -12:00
shannon@ShandemVaio 58fbe9f4ab Added new TypeFinder methods for resolving types with attributes. Updated the PluginResolver to resolve IApplication 2012-07-27 06:24:57 +06:00
shannon@ShandemVaio 92f983a569 Removed Freezing event as we won't need it 2012-07-27 06:02:41 +06:00
shannon@ShandemVaio 8082abc27a Added MultipleResolverBase 2012-07-27 05:52:01 +06:00
shannon@ShandemVaio 373fdd324b Fixes up ResolverBase and it's static lock object which isn't actually required because
our singleton is a getter/setter and field access is thread safe. Updated SingleResolverBase
to ensure that TResolved is a class so the null check works properly.
2012-07-27 05:25:26 +06:00
shannon@ShandemVaio dbe43a0918 Updated the PluginTypeResolver to have a generic way of instantiating the plugin types it has
already found. Have added some notes to some classes that need to be fixed up. Removed the PluginTypeResolver
from the ApplicationContext since it is a utility and isn't exposing application objects.
2012-07-27 01:01:34 +06:00
shannon@ShandemVaio a6b9aca45a Changed PluginResolver to PluginTypeResolver, created new base method to do the resolution and caching,
Updated ApplicationStartupHandler to use it and to not register on the static method, the real method is now
used and is called on app startup (much cleaner). Added tests for PluginTypeResolver. Added events to
UmbracoApplication and virtual methods for developers to override.
2012-07-27 00:40:00 +06:00
shannon@ShandemVaio 1731ad45f5 Had to manually merge some stuff and fix up some class names/locations. I think some files
and changes had not been committed properly.
Fixed up some resolver classes to ensure the generic type is a class so == null works properly.
Changed to internal until we decide to expose.
2012-07-26 23:05:51 +06:00
shannon@ShandemVaio 32e8a1a5dc Merge 2012-07-26 22:53:58 +06:00
shannon@ShandemVaio 466d871ede Fixes Umbraco.Web reference in editorControls project 2012-07-26 22:34:56 +06:00
shannon@ShandemVaio 25037ed9c8 Fixes Umbraco.Web reference in editorControls project 2012-07-26 22:31:41 +06:00
sgay 53f6577b32 write xml doc 2012-07-26 14:21:47 -02:00
shannon@ShandemVaio a78b5f50dd Merge with 4.9.0 2012-07-26 22:19:52 +06:00
shannon@ShandemVaio 15c5b5de57 Moved type helper methods from TypeFinder2 to TypeHelper. Created SystemUtilities for detecting
app trust levels. Updated all calls to TypeFinder to TypeFinder2 and updated tests.
2012-07-26 22:19:08 +06:00
shannon@ShandemVaio 62d6db935d Integrating v5 TypeFinder. Imported a few classes from v5 regarding utility classes and partial trust
unit test helper classes. Changed calls from old TypeFinder to new TypeFinder2. Created benchmark unit
tests to test speed differences between them.
Fixes: 30946 - IOHelper with HttpContext issue
Fixes: 30945 - AppCodeFileExtensions issue with UmbracoSettings
2012-07-26 21:12:54 +06:00
sgay fec2e0eb6e rename routing 'resolvers' to 'lookups' 2012-07-26 12:56:41 -02:00
leekelleher 0eefbdc610 uQuery: Random never takes last element (applied from uComponents changeset 018bd63444b6) 2012-07-26 12:12:38 -01:00
Matt@MBP13-PC fe87f6b89f Added js file uploader code
Can now drag and drop files in, and trigger upload sequence.
2012-07-26 12:11:42 -01:00
sgay a08c698c77 merge 2012-07-26 07:54:36 -02:00
sgay 6b4fff176a refactor resolution of components 2012-07-26 07:52:13 -02:00
Sebastiaan Janssen 908e8b40a2 Merge 2012-07-25 12:45:45 -02:00
Sebastiaan Janssen 514326adfe Merge with 4.8.0 2012-07-25 07:35:15 -02:00
Matt@MBP13-PC ef0f8b5282 Created ThumbnailProviders for folder browser to allow custom thumbnail generation based on file ext 2012-07-24 10:06:07 -01:00
Matt@MBP13-PC 135bfc6d94 Move FolderBrowser control to Umbraco.Web project 2012-07-24 06:19:30 -01:00
shannon@ShandemVaio 5fcd8b1d52 Fixed file names of ReadLock and UpradeableReadLock. Fixes up UpgradeableReadLock to ensure
that it it is upgraded it releases its writelock on dispose. Fixes up RouteLookups to have
correct locking. Fixes up library to resolve the NiceUrlResolver using the UmbracoContext.Current
singleton acessor.
2012-07-23 23:03:00 +06:00
Matt@MBP13-PC 82ca2609ec Made a start on the folder browser control
Added base2 js library
2012-07-23 14:29:52 -01:00
Matt@MBP13-PC fdcc81003d Added knockout js library 2012-07-23 10:28:53 -01:00
Matt@MBP13-PC c51267136c Upgraded tags datatype to use jQuery tags input plugin gor a nicer UI (still works the same under the hood) 2012-07-23 10:05:29 -01:00
Matt@MBP13-PC 9f60e49a32 Added missing project reference 2012-07-23 06:59:26 -01:00
slace 74b8b4f147 merging two PRs into the 4.9.0 branch 2012-07-22 13:28:56 -10:00
slace af7faa42d4 Merging changes from PeterD/fix29140 2012-07-22 13:23:41 -10:00
sgay 3546b3e954 refactor routing 2012-07-22 14:01:18 -02:00
slace 705e06af46 Merging changes from TomvE/UmbracoRequestHandlerOptimization 2012-07-20 18:06:37 -10:00
Stephan 533cc91a68 merge 2012-07-20 19:09:30 -02:00
sgay 5fbf4379cc refactor routing 2012-07-20 18:54:59 -02:00
shannon@ShandemVaio d9faea49ec Changed the ILookup resolution, now that DocumentRequest object contains everything to do the lookups
we don't have to create each ILookup per request, these can exist one  per application.
2012-07-21 00:59:27 +06:00
shannon@ShandemVaio 36e3857643 Ensures the legacy UmbracoContext is created. 2012-07-21 00:47:17 +06:00
shannon@ShandemVaio fa469416a2 added note 2012-07-21 00:44:58 +06:00
shannon@ShandemVaio c60abf747c Updated the default.aspx and page classes to match what Stephen had in his fork.
Have updated the web.config to use the new HttpModule but the XPath statement that is generated
for the LookupByPath doesn't seem to be matching my root node. But everything else is actually working!
2012-07-21 00:42:11 +06:00
shannon@ShandemVaio be51bfa67f Changed RoutingEnvironment to RoutingContet. Cleaned up how the context reference each other, now
this starts making a bunch of sense. Have empty ctor's on all ILookups since their methods get passed a
 DocumentRequest object which has access to all of the context's and properties that they will ever need.
2012-07-21 00:20:50 +06:00
shannon@ShandemVaio 8f278bcaa5 Added singleton for managing ILookups collection, allows for adding/removing/inserting at runtime/startup 2012-07-20 23:42:55 +06:00
shannon@ShandemVaio 6c872e8a65 Implements singly registered RoutesCache object and re-interfaces IRoutesCache which can now be
set at runtime. Exposes UmbracoContext via DocumentRequest which simplifies some things. Removes
dependency on UmbracoContext from DefaultRoutesCache, now InPreviewMode is checked before passing
processing to the IRoutesCache provider. Changed NiceUrls to NiceUrlResolver.
2012-07-20 23:10:43 +06:00
shannon@ShandemVaio 1b9e226f61 Moves app initialization into new UmbracoApplication (global.asax) 2012-07-20 22:02:28 +06:00
shannon@ShandemVaio 25b06a88ab Began integration of Stephen's new routing logic. The sln compiles and things have been refactored
from the initial concept. The module is not active as it currently will not work because of
contructor dependencies and classes marked as internal, will liase with Stephen regarding this.
2012-07-20 01:04:35 +06:00
shannon@ShandemVaio f2c084feda Merge with 4.9.0 2012-07-19 22:52:34 +06:00
shannon@ShandemVaio f83ae489db Fixes remaining circular dependencies and updates the build script to not have
to manually build these projects seperately :)
fixes: #U4-77
2012-07-19 22:48:09 +06:00
shannon@ShandemVaio 00c18fe764 Fixes first circular dependency with webservices (#U4-77) 2012-07-19 22:38:33 +06:00
shannon@ShandemVaio ce90e114df Update to use IISExpress #U4-75 with Aarons fixes 2012-07-19 22:15:15 +06:00
shannon@ShandemVaio c205197683 Fixes up build script to build Umbraco.Web.UI project 2012-07-19 22:01:36 +06:00
shannon@ShandemVaio b13c16ddc2 Moved remaining classes/files into "umbraco.presentation" folder 2012-07-19 21:49:42 +06:00
shannon@ShandemVaio 8c9e19c0b7 Ensures language files are included in solution 2012-07-19 21:45:55 +06:00
shannon@ShandemVaio 14dd4fcd68 Moved files in Umbraco.Web to "umbraco.presentation" folder to keep old 'legacy' stuff in one place
so its easier to move forward with the new namespaces/code.
2012-07-19 21:38:56 +06:00
shannon@ShandemVaio d82bb9bff1 Merge with 4.10.0 2012-07-19 21:18:51 +06:00
shannon@ShandemVaio 4b819c081e Merge with 4.9.0 2012-07-19 21:18:05 +06:00
shannon@ShandemVaio c91ef375ba Merge with 4.8.0 2012-07-19 21:17:25 +06:00
sitereactor 26315c1f92 Added tag Release-4.8.0 for changeset 096f20bb0575 2012-07-19 06:11:21 -02:00
shannon@ShandemVaio 82d8e2854a updates ignore file so that it doesn't keep wanting to update the web.config 2012-07-19 02:25:59 +06:00
shannon@ShandemVaio 7e5f4c20bf Updates the circular reference projects post builds to build to Umbraco.Web.UI
(now we can actually look at fixing these references! :)
2012-07-19 02:25:13 +06:00
shannon@ShandemVaio 6e459a3afb Fixes namespace issues when changing default namesapce to Umbraco.Web as the autogen
classes namespaces were changed.
Removed post build and custom targets from Umbraco.Web
2012-07-19 02:19:32 +06:00
shannon@ShandemVaio 2e8ab316fe re-removing the presentation stuff that was merged back in. 2012-07-19 01:32:59 +06:00
shannon@ShandemVaio c4760e0593 manually merged in tinymce language changes. 2012-07-19 01:23:53 +06:00
shannon@ShandemVaio 0f8797096d Merged with 4.9.0 2012-07-19 01:22:22 +06:00
shannon@ShandemVaio 9a1935e6ea Fixes small merge issue 2012-07-19 01:06:39 +06:00
shannon@ShandemVaio 25bd7b8ad7 Merge with 4.8.0 2012-07-19 01:02:16 +06:00
shannon@ShandemVaio 7ca29b87f3 Removed all client side files as they now exist in Umbraco.Web.UI 2012-07-19 00:52:58 +06:00
shannon@ShandemVaio 9679d0f6df Renamed umbraco.presentation to Umbraco.Web and changed the folder it resides in.
Started removal of files/folder from Umbraco.Web that belong in Umbraco.Web.UI.
2012-07-18 23:54:20 +06:00
shannon@ShandemVaio 62f4db0b76 added Umbraco.Web.UI containing only web rendering files 2012-07-18 04:35:30 +06:00
shannon@ShandemVaio 8046a778bd Fixes the UmbracoRequest, UmbracoResponse, UmbracoServerUtility to use the Base classes
not the wrapper classes since this is incorrect, now they are at least abstracted so they
don't rely on the real HttpContext but these should be obsoleted and not used but thats
a different story
2012-07-18 02:59:00 +06:00
TomvE 34b10f7499 Only call System.Web.Security.Membership.GetUser once and keep result locally to improve performance of request handler for protected pages.
Same thing for the currentPage attributes ID and Path.
2012-07-17 14:23:47 -01:00
shannon@ShandemVaio 23b2899101 Imports many of the useful extension methods from v5 that are also used in umbraMVCo to begin the
MVC integration.
Imported the unit tests associated with each of these imported classes.
2012-07-17 03:51:34 +06:00
shannon@ShandemVaio 6c8d72576c Creating 4.10.0 branch 2012-07-17 03:29:25 +06:00
shannon@ShandemVaio 10f2d9b3ed Updated assembly info for Umbraco.Web proj 2012-07-17 03:28:15 +06:00
shannon@ShandemVaio dfe512ead8 Got ApplicationTreeTest working in new NUnit test project. 2012-07-17 03:23:06 +06:00
shannon@ShandemVaio ddbde6e15f Got ApplicationTests working with new unit test project.
Had to fix the ApplicationTree and Application classes to lazily call the Cache method
(which is no renamed to EnsureCache) so that we could set the config location in the unit tests.
This should also improve performance a teeny bit and allow for better error handling if required.
2012-07-17 03:14:22 +06:00
shannon@ShandemVaio 96cc9a1f35 Missing file updates 2012-07-17 01:33:14 +06:00
shannon@ShandemVaio 21203b8070 Renamed umbraco.Test to Umbraco.LegacyTests
Updated InternalsVisibleTo declarations.
Updated the ApplicationTest test to use a new base class as a test to install a local sqlce database
for testing against.
Added Umbraco.Core project.
Added Umbraco.Web project.
Created new sln folder Legacy
2012-07-17 01:32:46 +06:00
Peter@KASSA01.lan 63d6b05460 modified 3 dialogs to escape language-items containing single quote when inserted in javascript 2012-07-15 10:53:34 -02:00
Peter@KASSA01.lan 0c9b239bd3 fixing #30477 and #29003 2012-07-14 08:04:58 -02:00
Floris Robbemont 290f01ea3e Fixed issue #30816 2012-05-17 15:31:36 -02:00
DMITRIY@Dmitriy-PC f0de2d3141 Fix 29-06-2012 - When edit tab name not in English, value saving wrong in the database, because old SQL query didn't use parameters,
so caption in database was ??????????
2012-06-29 07:39:58 -03:00
vnbaaij@hotmail.com b3aaef7d0e Fixes issue #30422 The textbox was filled with the physical path (i.e /parent/file) to the file. It only needs the loggical path (i.e. parent/file) 2011-12-29 11:49:16 -01:00
TomF@TOMF11.cp.local f740cf50c2 Fix for 26965 - Cannot delete member when login consist of digits 2011-12-15 20:38:35 +05:00
sebastiaan 9736e627c5 Fixes U4-650 Member section, the "Other" node does not work on SQL CE 2012-08-30 10:44:48 -02:00
sebastiaan a4bc45528a Fixes U4-514 - MediaType.GetByAlias throws if alias isn't found 2012-08-30 08:38:49 -02:00
DougM 9a19106b22 Fix for workitem #30553 'Umbraco unique naming issue' 2011-10-26 19:56:21 -01:00
indra_k af992cccfe work item 30487
will cause exception when Masterpages folder contain a directory without skin.xml
possibly caused by unclean skin uninstall
src/Umbraco.Web/umbraco.presentation/umbracoLiveEditing\Modules\SkinModule\SkinCustomizer.ascx.cs
2011-09-20 07:13:14 -07:00
sebastiaan 65af083996 U4-708 New document sort order only needs to be set in 1 place, no seperate update needed for documents in root
Changed the name of the method to GetNewDocumentSortOrder to be more accurate
2012-08-30 03:39:17 -02:00
scarta 6e77a09008 Issue 30472 - Fixed exception where 'Item has already been added...' is thrown during umbraco.controls.ContentControl.CreateChildControls.
ContentTypes are cached, but contain a lazily-loaded list which could potentially be populated twice by two separate requests.
2011-09-14 12:47:08 -01:00
Dallas taylor f9a33b5471 Removed logging of the publish event from the presentation. The event is also logged in the publishWithResult() method, and was causing the Publish event to appear twice in the Audit Trail. 2012-08-03 06:10:16 +04:00
tom.fulton@Tom-PC.imulus.local 09184041b7 Fix U4-722 - Feature: Add TinyMCE email address detection (mailto) 2012-08-31 02:48:55 +06:00
sebastiaan 1118e1e3fd Have to duplicate previous fix in the Umbraco.Web project as Umbraco.Web.UI gets overwritten with it 2012-09-02 16:17:12 -02:00
abutland 6f64e480df U4-53: auto selections of allowed/default templates
- set default on selection of allow template if not already set
 - de-select default template if template set as not allowed
 - select allowed template if default template selected
2012-08-19 18:28:13 -02:00
4349 changed files with 233825 additions and 142861 deletions
+24 -6
View File
@@ -27,12 +27,17 @@ umbraco\presentation\usercontrols\*
umbraco\presentation\scripts\*
umbraco\presentation\fonts\*
umbraco\presentation\css\*
glob:*App_Code\*
glob:*App_Data\*
glob:*media\*
glob:*masterpages\*
glob:*macroScripts\*
glob:*xslt\*
src\Umbraco.Web.UI\css\*
src\Umbraco.Web.UI\App_Code\*
src\Umbraco.Web.UI\App_Data\*
src\Umbraco.Tests\App_Data\*
src\Umbraco.Web.UI\media\*
src\Umbraco.Web.UI\masterpages\*
src\Umbraco.Web.UI\macroScripts\*
src\Umbraco.Web.UI\xslt\*
src\Umbraco.Web.UI\images\*
src\Umbraco.Web.UI\scripts\*
umbraco\presentation\umbraco\plugins\uComponents\uComponentsInstaller.ascx
umbraco\presentation\packages\uComponents\MultiNodePicker\CustomTreeService.asmx
@@ -41,3 +46,16 @@ _BuildOutput/*
build/UmbracoCms.AllBinaries.zip
build/UmbracoCms.WebPI.zip
build/UmbracoCms.zip
build/*.nupkg
src/Umbraco.Tests/config/applications.config
src/Umbraco.Tests/config/trees.config
src/Umbraco.Web.UI/web.config
*.orig
src/Umbraco.Tests/config/404handlers.config
src/Umbraco.Web.UI/Views/*.cshtml
src/Umbraco.Web.UI/Views/*.vbhtml
src/Umbraco.Tests/config/umbracoSettings.config
src/Umbraco.Web.UI/App_Plugins/*
src/Umbraco.Web.UI/Views/*
src\Umbraco.Web.UI\[W]eb.config
+5
View File
@@ -7,3 +7,8 @@ ffc34b23e1a03785e4098afa4290d8c03cf10115 Release-4.5.2
d03fcffb8834a9583a56813bb44b6abbd9f042cc Release-4.6.0
1809f7b2593270c192cd47bdcfdb392100686f79 4.7.2
488779dec0ceb1d2874bcef906241b919325c904 4.8.0-beta
096f20bb0575d6199f20fcb3147b63554e765a74 Release-4.8.0
8f8a203857886b373148af29edd57460a42940be Release-4.8.1
de73e687ddf6086ed52b6554676c1632865d07f2 Release-4.9.0
8d7d8609e2e4b971da99cd97f72132ce85ce3333 Release-4.9.1
f6da531fbb4c251ff61d314e2a7effb13c71e74a Release-4.10.0
-58
View File
@@ -1,58 +0,0 @@
using System.Reflection;
using System.Runtime.CompilerServices;
//
// General Information about an assembly is controlled through the following
// set of attributes. Change these attribute values to modify the information
// associated with an assembly.
//
[assembly: AssemblyTitle("")]
[assembly: AssemblyDescription("")]
[assembly: AssemblyConfiguration("")]
[assembly: AssemblyCompany("")]
[assembly: AssemblyProduct("")]
[assembly: AssemblyCopyright("")]
[assembly: AssemblyTrademark("")]
[assembly: AssemblyCulture("")]
//
// Version information for an assembly consists of the following four values:
//
// Major Version
// Minor Version
// Build Number
// Revision
//
// You can specify all the values or you can default the Revision and Build Numbers
// by using the '*' as shown below:
[assembly: AssemblyVersion("1.0.*")]
//
// In order to sign your assembly you must specify a key to use. Refer to the
// Microsoft .NET Framework documentation for more information on assembly signing.
//
// Use the attributes below to control which key is used for signing.
//
// Notes:
// (*) If no key is specified, the assembly is not signed.
// (*) KeyName refers to a key that has been installed in the Crypto Service
// Provider (CSP) on your machine. KeyFile refers to a file which contains
// a key.
// (*) If the KeyFile and the KeyName values are both specified, the
// following processing occurs:
// (1) If the KeyName can be found in the CSP, that key is used.
// (2) If the KeyName does not exist and the KeyFile does exist, the key
// in the KeyFile is installed into the CSP and used.
// (*) In order to create a KeyFile, you can use the sn.exe (Strong Name) utility.
// When specifying the KeyFile, the location of the KeyFile should be
// relative to the project output directory which is
// %Project Directory%\obj\<configuration>. For example, if your KeyFile is
// located in the project directory, you would specify the AssemblyKeyFile
// attribute as [assembly: AssemblyKeyFile("..\\..\\mykey.snk")]
// (*) Delay Signing is an advanced option - see the Microsoft .NET Framework
// documentation for more information on this.
//
[assembly: AssemblyDelaySign(false)]
[assembly: AssemblyKeyFile("")]
[assembly: AssemblyKeyName("")]
-94
View File
@@ -1,94 +0,0 @@
using System;
using System.Runtime.InteropServices;
// GPL Licensed work
// (c) Christian Palm + umbraco crew 2005
// Kudos to Christian Palm for finally making a
// Tidy solution that just works
// palmdk@gmail.com
namespace CPalmTidy
{
/// <summary>
/// Summary description for tidy.
/// </summary>
public class Tidy
{
public string error;
public string outputFile;
public string inputFile;
public string configFile;
public Tidy()
{
this.error = "";
this.outputFile = "";
this.inputFile = "";
this.configFile = "";
}
public bool Run()
{
int i = CallTidyMain(this.inputFile, this.outputFile, this.configFile);
this.error = i.ToString();
//this.error = "this.inputFile: " + this.inputFile + "<br>this.outputFile: " + this.outputFile + "<br>this.configFile: " + this.configFile;
return true;
}
[DllImport(@"TidyDll.dll")]
static extern int CallTidyMain(
[MarshalAs(UnmanagedType.LPStr)] string inFileName,
[MarshalAs(UnmanagedType.LPStr)] string outFileName,
[MarshalAs(UnmanagedType.LPStr)] string optionsFileName
);
public string ErrorValue
{
get
{
return this.error;
}
}
public string ConfigFile
{
get
{
return this.configFile;
}
set
{
this.configFile = value;
}
}
public string OutputFile
{
get
{
return this.outputFile;
}
set
{
this.outputFile = value;
}
}
public string InputFile
{
get
{
return this.inputFile;
}
set
{
this.inputFile = value;
}
}
}
}
-106
View File
@@ -1,106 +0,0 @@
<Project DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003" ToolsVersion="3.5">
<PropertyGroup>
<ProjectType>Local</ProjectType>
<ProductVersion>8.0.50727</ProductVersion>
<SchemaVersion>2.0</SchemaVersion>
<ProjectGuid>{C584F126-315D-4136-A3EA-E87A108D27DA}</ProjectGuid>
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
<Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
<ApplicationIcon>
</ApplicationIcon>
<AssemblyKeyContainerName>
</AssemblyKeyContainerName>
<AssemblyName>umbraco.CPalmTidy</AssemblyName>
<AssemblyOriginatorKeyFile>
</AssemblyOriginatorKeyFile>
<DefaultClientScript>JScript</DefaultClientScript>
<DefaultHTMLPageLayout>Grid</DefaultHTMLPageLayout>
<DefaultTargetSchema>IE50</DefaultTargetSchema>
<DelaySign>false</DelaySign>
<OutputType>Library</OutputType>
<RootNamespace>umbraco.CPalmTidy</RootNamespace>
<RunPostBuildEvent>OnBuildSuccess</RunPostBuildEvent>
<StartupObject>
</StartupObject>
<FileUpgradeFlags>
</FileUpgradeFlags>
<UpgradeBackupLocation>
</UpgradeBackupLocation>
<SccProjectName>SAK</SccProjectName>
<SccLocalPath>SAK</SccLocalPath>
<SccAuxPath>SAK</SccAuxPath>
<SccProvider>SAK</SccProvider>
<OldToolsVersion>2.0</OldToolsVersion>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
<OutputPath>bin\Debug\</OutputPath>
<AllowUnsafeBlocks>false</AllowUnsafeBlocks>
<BaseAddress>285212672</BaseAddress>
<CheckForOverflowUnderflow>false</CheckForOverflowUnderflow>
<ConfigurationOverrideFile>
</ConfigurationOverrideFile>
<DefineConstants>DEBUG;TRACE</DefineConstants>
<DocumentationFile>bin\Debug\umbraco.CPalmTidy.XML</DocumentationFile>
<DebugSymbols>true</DebugSymbols>
<FileAlignment>4096</FileAlignment>
<NoStdLib>false</NoStdLib>
<NoWarn>
</NoWarn>
<Optimize>false</Optimize>
<RegisterForComInterop>false</RegisterForComInterop>
<RemoveIntegerChecks>false</RemoveIntegerChecks>
<TreatWarningsAsErrors>false</TreatWarningsAsErrors>
<WarningLevel>4</WarningLevel>
<DebugType>full</DebugType>
<ErrorReport>prompt</ErrorReport>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
<OutputPath>bin\Release\</OutputPath>
<AllowUnsafeBlocks>false</AllowUnsafeBlocks>
<BaseAddress>285212672</BaseAddress>
<CheckForOverflowUnderflow>false</CheckForOverflowUnderflow>
<ConfigurationOverrideFile>
</ConfigurationOverrideFile>
<DefineConstants>TRACE</DefineConstants>
<DocumentationFile>
</DocumentationFile>
<DebugSymbols>false</DebugSymbols>
<FileAlignment>4096</FileAlignment>
<NoStdLib>false</NoStdLib>
<NoWarn>
</NoWarn>
<Optimize>true</Optimize>
<RegisterForComInterop>false</RegisterForComInterop>
<RemoveIntegerChecks>false</RemoveIntegerChecks>
<TreatWarningsAsErrors>false</TreatWarningsAsErrors>
<WarningLevel>4</WarningLevel>
<DebugType>none</DebugType>
<ErrorReport>prompt</ErrorReport>
</PropertyGroup>
<ItemGroup>
<Reference Include="System">
<Name>System</Name>
</Reference>
<Reference Include="System.Data">
<Name>System.Data</Name>
</Reference>
<Reference Include="System.XML">
<Name>System.XML</Name>
</Reference>
</ItemGroup>
<ItemGroup>
<Compile Include="AssemblyInfo.cs">
<SubType>Code</SubType>
</Compile>
<Compile Include="tidy.cs">
<SubType>Code</SubType>
</Compile>
</ItemGroup>
<Import Project="$(MSBuildBinPath)\Microsoft.CSharp.targets" />
<PropertyGroup>
<PreBuildEvent>
</PreBuildEvent>
<PostBuildEvent>
</PostBuildEvent>
</PropertyGroup>
</Project>
Binary file not shown.
@@ -1,36 +0,0 @@
using System.Reflection;
using System.Runtime.CompilerServices;
using System.Runtime.InteropServices;
// General Information about an assembly is controlled through the following
// set of attributes. Change these attribute values to modify the information
// associated with an assembly.
[assembly: AssemblyTitle("umbraco.Juno")]
[assembly: AssemblyDescription("")]
[assembly: AssemblyConfiguration("")]
[assembly: AssemblyCompany("Microsoft")]
[assembly: AssemblyProduct("umbraco.Juno")]
[assembly: AssemblyCopyright("Copyright © Microsoft 2010")]
[assembly: AssemblyTrademark("")]
[assembly: AssemblyCulture("")]
// Setting ComVisible to false makes the types in this assembly not visible
// to COM components. If you need to access a type in this assembly from
// COM, set the ComVisible attribute to true on that type.
[assembly: ComVisible(false)]
// The following GUID is for the ID of the typelib if this project is exposed to COM
[assembly: Guid("6a24821f-2031-4e6b-af37-c045c9de9ce3")]
// Version information for an assembly consists of the following four values:
//
// Major Version
// Minor Version
// Build Number
// Revision
//
// You can specify all the values or you can default the Build and Revision Numbers
// by using the '*' as shown below:
// [assembly: AssemblyVersion("1.0.*")]
[assembly: AssemblyVersion("1.0.0.0")]
[assembly: AssemblyFileVersion("1.0.0.0")]
-58
View File
@@ -1,58 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<PropertyGroup>
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
<Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
<ProductVersion>8.0.30703</ProductVersion>
<SchemaVersion>2.0</SchemaVersion>
<ProjectGuid>{6C9A6403-6457-4989-BF20-A575535B89AF}</ProjectGuid>
<OutputType>Library</OutputType>
<AppDesignerFolder>Properties</AppDesignerFolder>
<RootNamespace>umbraco.Juno</RootNamespace>
<AssemblyName>umbraco.Juno</AssemblyName>
<TargetFrameworkVersion>v4.0</TargetFrameworkVersion>
<FileAlignment>512</FileAlignment>
<SccProjectName>SAK</SccProjectName>
<SccLocalPath>SAK</SccLocalPath>
<SccAuxPath>SAK</SccAuxPath>
<SccProvider>SAK</SccProvider>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
<DebugSymbols>true</DebugSymbols>
<DebugType>full</DebugType>
<Optimize>false</Optimize>
<OutputPath>bin\Debug\</OutputPath>
<DefineConstants>DEBUG;TRACE</DefineConstants>
<ErrorReport>prompt</ErrorReport>
<WarningLevel>4</WarningLevel>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
<DebugType>pdbonly</DebugType>
<Optimize>true</Optimize>
<OutputPath>bin\Release\</OutputPath>
<DefineConstants>TRACE</DefineConstants>
<ErrorReport>prompt</ErrorReport>
<WarningLevel>4</WarningLevel>
</PropertyGroup>
<ItemGroup>
<Reference Include="System" />
<Reference Include="System.Core" />
<Reference Include="System.Xml.Linq" />
<Reference Include="System.Data.DataSetExtensions" />
<Reference Include="Microsoft.CSharp" />
<Reference Include="System.Data" />
<Reference Include="System.Xml" />
</ItemGroup>
<ItemGroup>
<Compile Include="Class1.cs" />
<Compile Include="Properties\AssemblyInfo.cs" />
</ItemGroup>
<Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
<!-- To modify your build process, add your task inside one of the targets below and uncomment it.
Other similar extension points exist, see Microsoft.Common.targets.
<Target Name="BeforeBuild">
</Target>
<Target Name="AfterBuild">
</Target>
-->
</Project>
@@ -1,19 +0,0 @@
using System.Reflection;
using System.Runtime.CompilerServices;
using System.Runtime.InteropServices;
// General Information about an assembly is controlled through the following
// set of attributes. Change these attribute values to modify the information
// associated with an assembly.
[assembly: AssemblyTitle("umbraco.Legacy")]
[assembly: AssemblyDescription("")]
[assembly: AssemblyConfiguration("")]
[assembly: AssemblyProduct("umbraco.Legacy")]
// Setting ComVisible to false makes the types in this assembly not visible
// to COM components. If you need to access a type in this assembly from
// COM, set the ComVisible attribute to true on that type.
[assembly: ComVisible(false)]
// The following GUID is for the ID of the typelib if this project is exposed to COM
[assembly: Guid("3d5900ae-111a-45be-96b3-d9e4606ca793")]
-264
View File
@@ -1,264 +0,0 @@
using System;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.ComponentModel;
using System.Collections;
using System.Collections.Specialized;
using System.Globalization;
namespace umbraco.controls
{
/// <summary>
/// Summary description for datePicker.
/// </summary>
[DefaultProperty("Text"),
ToolboxData("<{0}:datePicker runat=server></{0}:datePicker>")]
public class datePicker_old : System.Web.UI.WebControls.WebControl
{
private DateTime _datetime = new DateTime(1900, 1, 1);
private bool _showTime = false;
private int _yearsBack = 100;
private string[] _minutes = {"00", "15", "30", "45"};
private string[] _hours = {"--", "00", "01", "02", "03", "04", "05", "06", "07", "08", "09", "10", "11", "12", "13", "14", "15", "16", "17", "18", "19", "20", "21", "22", "23"};
private string[] _days = {"--", "1", "2", "3", "4", "5", "6", "7", "8", "9", "10", "11", "12", "13", "14", "15", "16", "17", "18", "19", "20", "21", "22", "23", "24", "25", "26", "27", "28", "29", "30", "31"};
private ArrayList _months = new ArrayList();
private ArrayList _years = new ArrayList();
private string _globalAlias = "Da-dk";
public string CustomMinutes
{
set {_minutes = value.Split(", ".ToCharArray());}
}
public bool ShowTime
{
set {_showTime = value;}
get {return _showTime;}
}
public string GlobalizationAlias
{
set {_globalAlias = value;}
get {return _globalAlias;}
}
public int YearsBack
{
set {_yearsBack = value;}
get {return _yearsBack;}
}
[Bindable(true),
Category("Appearance"),
DefaultValue("")]
public DateTime DateTime
{
get
{
return _datetime;
}
set
{
try
{
_datetime = value;
}
catch {
}
}
}
protected override void OnLoad(EventArgs e)
{
base.OnLoad (e);
if (Page.IsPostBack)
{
try
{
_datetime = DateTime.Parse(System.Web.HttpContext.Current.Request.Form[this.ClientID]);
}
catch {}
}
}
protected override void OnInit(EventArgs e)
{
base.OnInit (e);
}
/// <summary>
/// Render this control to the output parameter specified.
/// </summary>
/// <param name="output"> The HTML writer to write out to </param>
protected override void Render(HtmlTextWriter output)
{
System.Web.HttpContext.Current.Trace.Warn("rendering datetime control!");
DateTimeFormatInfo dtInfo = System.Threading.Thread.CurrentThread.CurrentCulture.DateTimeFormat;
string daySelect = "--", monthSelect = "--", yearSelect = "--", hourSelect = "--", minuteSelect = "--";
if (_datetime.Year > 1900)
{
daySelect = _datetime.Day.ToString();
monthSelect = dtInfo.MonthNames[_datetime.Month-1];
yearSelect = _datetime.Year.ToString();
hourSelect = _datetime.Hour.ToString();
if (hourSelect.Length < 2)
hourSelect = "0" + hourSelect;
minuteSelect = markMinute(_datetime.Minute);
}
_months.Add("--");
for (int i=0;i<12;i++)
{
_months.Add(dtInfo.MonthNames[i]);
}
_years.Add("--");
for (int i=DateTime.Now.Year-_yearsBack; i<DateTime.Now.Year+20;i++)
{
_years.Add(i);
}
ListBox Days = new ListBox();
Days.SelectionMode = ListSelectionMode.Single;
Days.Rows = 1;
Days.ID = this.ID + "_days";
Days.DataSource = _days;
try
{
Days.SelectedValue = daySelect;
}
catch {
}
Days.DataBind();
Days.Attributes.Add("onChange", "umbracoUpdateDatePicker('" + this.ClientID + "');");
ListBox Months = new ListBox();
Months.Attributes.Add("onChange", "umbracoUpdateDatePicker('" + this.ClientID + "');");
Months.SelectionMode = ListSelectionMode.Single;
Months.Rows = 1;
Months.ID = this.ID + "_months";
for (int i=0; i<_months.Count; i++)
{
ListItem li = new ListItem(_months[i].ToString(), (i).ToString());
Months.Items.Add(li);
if (_months[i].ToString() == monthSelect.ToString())
Months.SelectedIndex = i;
}
ListBox Years = new ListBox();
Years.SelectionMode = ListSelectionMode.Single;
Years.Rows = 1;
Years.ID = this.ID + "_years";
Years.DataSource = _years;
try
{
Years.SelectedValue = yearSelect;
}
catch {}
Years.DataBind();
Years.Attributes.Add("onChange", "umbracoUpdateDatePicker('" + this.ClientID + "');");
ListBox Hours = new ListBox();
Hours.SelectionMode = ListSelectionMode.Single;
Hours.Rows = 1;
Hours.ID = this.ID + "_hours";
Hours.DataSource = _hours;
try
{
Hours.SelectedValue = hourSelect;
}
catch {}
Hours.DataBind();
Hours.Attributes.Add("onChange", "umbracoUpdateDatePicker('" + this.ClientID + "');");
ListBox Minutes = new ListBox();
Minutes.SelectionMode = ListSelectionMode.Single;
Minutes.Rows = 1;
Minutes.ID = this.ID + "_minutes";
// Copy minutes
ArrayList minutesSource = new ArrayList();
foreach (string s in _minutes)
if (s.Trim() != "")
minutesSource.Add(s);
minutesSource.Insert(0, "--");
Minutes.DataSource = minutesSource;
try
{
Minutes.SelectedValue = minuteSelect;
}
catch {}
Minutes.DataBind();
Minutes.Attributes.Add("onChange", "umbracoUpdateDatePicker('" + this.ClientID + "');");
// add in the format
this.Controls.Add(Days);
this.Controls.Add(new LiteralControl(" "));
this.Controls.Add(Months);
this.Controls.Add(new LiteralControl(" "));
this.Controls.Add(Years);
if (this.ShowTime)
{
this.Controls.Add(new LiteralControl(" "));
this.Controls.Add(Hours);
this.Controls.Add(new LiteralControl(" : "));
this.Controls.Add(Minutes);
}
//this.Controls.Add(new LiteralControl(" <a href=\"#\"><img src=\"images/editor/calendar.gif\" alt=\"Pick a date\" class=\"clickImg\"/></a>"));
base.RenderChildren(output);
output.WriteLine("<input type=\"hidden\" id=\"" + this.ClientID + "\" name=\"" + this.ClientID + "\" value=\"" + _datetime.ToString() + "\"/>");
}
private string markMinute(int minute)
{
int _currentDiff = 100;
int _currentMinute = 0;
System.Collections.ArrayList _localMinutes = new ArrayList();
foreach (string s in _minutes)
{
_localMinutes.Add(s);
}
_localMinutes.Add("60");
foreach (string s in _localMinutes)
{
if (s.Trim() != "")
{
if (_currentDiff > Math.Abs(int.Parse(s)-minute))
{
_currentMinute = int.Parse(s);
_currentDiff = Math.Abs(int.Parse(s)-minute);
}
}
}
if (_currentMinute == 60)
return "00";
else
{
if (_currentMinute.ToString().Length == 1)
return "0" + _currentMinute.ToString();
else
return _currentMinute.ToString();
}
}
}
}
@@ -1,240 +0,0 @@
using System;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.ComponentModel;
using System.Collections;
using System.Collections.Specialized;
using System.Globalization;
using ClientDependency.Core;
using umbraco.IO;
namespace umbraco.controls
{
/// <summary>
/// Summary description for datePicker.
/// </summary>
[DefaultProperty("Text"),
ToolboxData("<{0}:datePicker runat=server></{0}:datePicker>")]
[ClientDependency(200, ClientDependencyType.Javascript, "datepicker/cal_s.js", "UmbracoClient")]
[ClientDependency(201, ClientDependencyType.Javascript, "datepicker/cal_set_s.js", "UmbracoClient")]
[ClientDependency(202, ClientDependencyType.Javascript, "datepicker/lang/calendar-en.js", "UmbracoClient")]
[ClientDependency(ClientDependencyType.Css, "datepicker/aqua/theme.css", "UmbracoClient")]
public class datePicker : TextBox
{
private DateTime _datetime = DateTime.Now;
private bool _showTime = false;
private bool _emptyDateAsDefault = false;
private int _yearsBack = 100;
private string[] _minutes = { "00", "15", "30", "45" };
private string[] _hours = { "--", "00", "01", "02", "03", "04", "05", "06", "07", "08", "09", "10", "11", "12", "13", "14", "15", "16", "17", "18", "19", "20", "21", "22", "23" };
private string[] _days = { "--", "1", "2", "3", "4", "5", "6", "7", "8", "9", "10", "11", "12", "13", "14", "15", "16", "17", "18", "19", "20", "21", "22", "23", "24", "25", "26", "27", "28", "29", "30", "31" };
private ArrayList _months = new ArrayList();
private ArrayList _years = new ArrayList();
private string _globalAlias = "Da-dk";
private string dateFormatJs = "%Y-%m-%d";
private string dateFormatNet = "yyyy-MM-dd";
private string dateFormatJsSelect = "";
private string dateTimeVisibleValue = "";
public string CustomMinutes
{
set { _minutes = value.Split(", ".ToCharArray()); }
}
public bool EmptyDateAsDefault
{
set { _emptyDateAsDefault = value; }
}
public bool ShowTime
{
set { _showTime = value; }
get { return _showTime; }
}
public string GlobalizationAlias
{
set { _globalAlias = value; }
get { return _globalAlias; }
}
public int YearsBack
{
set { _yearsBack = value; }
get { return _yearsBack; }
}
[Bindable(true),
Category("Appearance"),
DefaultValue("")]
public DateTime DateTime
{
get
{
return _datetime;
}
set
{
try
{
_datetime = value;
this.Text = _datetime.ToString();
}
catch
{
}
}
}
protected override void OnLoad(EventArgs e)
{
base.OnLoad(e);
if (Page.IsPostBack)
{
try
{
string dateVal = this.Text;
DateTime tempDate;
tempDate = DateTime.Parse(dateVal);
if (_showTime)
{
tempDate = new DateTime(
int.Parse(dateVal.Substring(0, 4)),
int.Parse(dateVal.Substring(5, 2)),
int.Parse(dateVal.Substring(8, 2)),
int.Parse(dateVal.Substring(11, 2)),
int.Parse(dateVal.Substring(14, 2)), 0);
}
else
tempDate = new DateTime(
int.Parse(dateVal.Substring(0, 4)),
int.Parse(dateVal.Substring(5, 2)),
int.Parse(dateVal.Substring(8, 2)), 0, 0, 0);
_datetime = tempDate;
}
catch
{
_datetime = new DateTime(1, 1, 1, 0, 0, 0);
}
}
else
{
if (this.Text != "")
_datetime = DateTime.Parse(this.Text);
}
}
protected override void OnInit(EventArgs e)
{
if (this.ShowTime)
{
dateFormatJs += " %H:%M";
dateFormatNet += " HH:mm";
dateFormatJsSelect = ",\n" +
" showsTime : true,\n" +
" timeFormat : 24 \n";
}
base.OnInit(e);
}
protected override void OnPreRender(EventArgs e)
{
if (!_emptyDateAsDefault)
{
if (_datetime.Year != 1 || _datetime.Month != 1 || _datetime.Day != 1)
{
this.Text = _datetime.ToString(dateFormatNet);
dateTimeVisibleValue = _datetime.ToString(dateFormatNet);
}
else
{
this.Text = "";
dateTimeVisibleValue = ui.Text("noDate");
}
}
base.OnPreRender(e);
}
/// <summary>
/// Render this control to the output parameter specified.
/// </summary>
/// <param name="output"> The HTML writer to write out to </param>
///
protected override void Render(HtmlTextWriter output)
{
// DateTimeFormatInfo dtInfo = System.Threading.Thread.CurrentThread.CurrentCulture.DateTimeFormat;
base.Render(output);
//output.WriteLine("<input type=\"text\" id=\"" + this.ClientID + "\" name=\"" + this.ClientID + "\" value=\"" + dateTimeValue + "\"/>");
output.WriteLine("<span id=\"" + this.ClientID + "_show_e\">" + dateTimeVisibleValue + "</span> ");
output.WriteLine("<img src=\"" + IOHelper.ResolveUrl( SystemDirectories.Umbraco_client ) + "/datePicker/images/calPickerIcon.png\" onMouseOver=\"this.src='" + IOHelper.ResolveUrl(SystemDirectories.Umbraco_client) + "/datePicker/images/calPickerIconHover.png'\" onMouseOut=\"this.src='/umbraco_client/datePicker/images/calPickerIcon.png'\" id=\"" + this.ClientID + "_f_trigger_e\" style=\"cursor: pointer; border: 1px solid #CCC\" title=\"" + ui.Text("choose") + " " + ui.Text("date") + "...\" align=\"absmiddle\"/>");
output.WriteLine("<a href=\"javascript:void(0);\" onClick=\"document.forms[0]['" + this.ClientID + "'].value = ''; document.getElementById('" + this.ClientID + "_show_e').innerHTML = '" + ui.Text("noDate") + "';\">" + ui.Text("removeDate") + "</a>");
string strSetup = " Calendar.setup({" +
" inputField : \"" + this.ClientID + "\",\n" +
" ifFormat : \"" + dateFormatJs + "\",\n" +
" displayArea : \"" + this.ClientID + "_show_e\",\n" +
" daFormat : \"" + dateFormatJs + "\",\n" +
" button : \"" + this.ClientID + "_f_trigger_e\",\n" +
" singleClick : true\n" +
dateFormatJsSelect +
" });";
try
{
if (ScriptManager.GetCurrent(Page).IsInAsyncPostBack)
ScriptManager.RegisterClientScriptBlock(this, this.GetType(), "Calendar.Setup_" + this.ClientID, strSetup, true);
else
Page.ClientScript.RegisterStartupScript(this.GetType(), "Calendar.Setup_" + this.ClientID, strSetup, true);
}
catch
{
Page.ClientScript.RegisterStartupScript(this.GetType(), "Calendar.Setup_" + this.ClientID, strSetup, true);
}
}
private string markMinute(int minute)
{
int _currentDiff = 100;
int _currentMinute = 0;
System.Collections.ArrayList _localMinutes = new ArrayList();
foreach (string s in _minutes)
{
_localMinutes.Add(s);
}
_localMinutes.Add("60");
foreach (string s in _localMinutes)
{
if (s.Trim() != "")
{
if (_currentDiff > Math.Abs(int.Parse(s) - minute))
{
_currentMinute = int.Parse(s);
_currentDiff = Math.Abs(int.Parse(s) - minute);
}
}
}
if (_currentMinute == 60)
return "00";
else
{
if (_currentMinute.ToString().Length == 1)
return "0" + _currentMinute.ToString();
else
return _currentMinute.ToString();
}
}
}
}
@@ -1,70 +0,0 @@
using System;
using System.Collections.Generic;
using System.Text;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
namespace umbraco.controls {
public class calendar : PlaceHolder {
public bool ShowTime { get; set; }
public DateTime? SelectedDateTime { get; set; }
private DateTime _date;
public TextBox tb_hours = new TextBox();
public TextBox tb_minutes = new TextBox();
public TextBox tb_date = new TextBox();
protected override void OnLoad(EventArgs e)
{
base.OnLoad(e);
}
protected override void OnPreRender(EventArgs e)
{
base.OnPreRender(e);
_date = System.DateTime.Now;
if (SelectedDateTime.HasValue)
_date = SelectedDateTime.Value;
if (ShowTime) {
tb_minutes.Columns = 2;
tb_hours.Columns = 2;
tb_hours.Text = _date.Hour.ToString();
tb_minutes.Text = fixTime(_date.Minute);
Literal lit = new Literal();
lit.Text = ":";
this.Controls.Add(tb_hours);
this.Controls.Add(lit);
this.Controls.Add(tb_minutes);
}
tb_date.ID = base.ID + "_datePickField";
this.Controls.Add(tb_date);
AjaxControlToolkit.CalendarExtender cal = new AjaxControlToolkit.CalendarExtender();
cal.TargetControlID = tb_date.UniqueID;
cal.SelectedDate = _date;
this.Controls.Add(cal);
}
private static string fixTime(int input){
if (input.ToString().Length == 1)
return "0" + input.ToString();
else
return input.ToString();
}
}
}
@@ -1,506 +0,0 @@
using System;
using System.Collections;
using System.Text.RegularExpressions;
using System.Web;
using System.Web.UI;
using umbraco.BasePages;
using umbraco.BusinessLogic;
using umbraco.cms.businesslogic.web;
using umbraco.editorControls.wysiwyg;
using umbraco.interfaces;
using umbraco.uicontrols;
namespace umbraco.editorControls.tinymce {
public class TinyMCE : webcontrol.TinyMCE, IDataEditor, IMenuElement {
private IData _data;
private bool _enableContextMenu = false;
private string _editorButtons = "";
private string _advancedUsers = "";
private bool _fullWidth = false;
private int _width = 0;
private int _height = 0;
private bool _showLabel = false;
private string _plugins = "";
private ArrayList _stylesheets = new ArrayList();
private ArrayList _menuIcons = new ArrayList();
private SortedList _buttons = new SortedList();
private SortedList _mceButtons = new SortedList();
private bool _isInitialized = false;
private string _activateButtons = "";
private string _disableButtons = "help,visualaid,";
private int m_maxImageWidth = 500;
public virtual string Plugins {
get { return _plugins; }
set { _plugins = value; }
}
public TinyMCE(IData Data, string Configuration) {
_data = Data;
string[] configSettings = Configuration.Split("|".ToCharArray());
if (configSettings.Length > 0) {
_editorButtons = configSettings[0];
if (configSettings.Length > 1)
if (configSettings[1] == "1")
_enableContextMenu = true;
if (configSettings.Length > 2)
_advancedUsers = configSettings[2];
if (configSettings.Length > 3) {
if (configSettings[3] == "1")
_fullWidth = true;
else if (configSettings[4].Split(',').Length > 1) {
_width = int.Parse(configSettings[4].Split(',')[0]);
_height = int.Parse(configSettings[4].Split(',')[1]);
}
}
// default width/height
if (_width < 1)
_width = 500;
if (_height < 1)
_height = 400;
// add stylesheets
if (configSettings.Length > 4) {
foreach (string s in configSettings[5].Split(",".ToCharArray()))
_stylesheets.Add(s);
}
if (configSettings.Length > 6 && configSettings[6] != "")
_showLabel = bool.Parse(configSettings[6]);
if (configSettings.Length > 7 && configSettings[7] != "")
m_maxImageWidth = int.Parse(configSettings[7].ToString());
// sizing
if (!_fullWidth) {
config.Add("width", _width.ToString());
config.Add("height", _height.ToString());
}
if (_enableContextMenu)
_plugins += ",contextmenu";
// config.Add("theme_advanced_statusbar_location", "none");
// If the editor is used in umbraco, use umbraco's own toolbar
bool onFront = false;
if (HttpContext.Current.Request.Path.ToLower().IndexOf(GlobalSettings.Path.ToLower()) > -1)
config.Add("theme_advanced_toolbar_location", "external");
else {
onFront = true;
config.Add("theme_advanced_toolbar_location", "top");
}
// load plugins
IDictionaryEnumerator pluginEnum = tinyMCEConfiguration.Plugins.GetEnumerator();
while (pluginEnum.MoveNext()) {
tinyMCEPlugin plugin = (tinyMCEPlugin)pluginEnum.Value;
if (plugin.UseOnFrontend || (!onFront && !plugin.UseOnFrontend))
_plugins += "," + plugin.Name;
}
if (_plugins.StartsWith(","))
_plugins = _plugins.Substring(1, _plugins.Length - 1);
if (_plugins.EndsWith(","))
_plugins = _plugins.Substring(0, _plugins.Length - 1);
config.Add("plugins", _plugins);
// Check advanced settings
if (("," + _advancedUsers + ",").IndexOf("," + UmbracoEnsuredPage.CurrentUser.UserType.Id + ",") > -1)
config.Add("umbracoAdvancedMode", "true");
else
config.Add("umbracoAdvancedMode", "false");
// Check maximum image width
config.Add("umbracoMaximumDefaultImageWidth", m_maxImageWidth.ToString());
// Styles
string cssFiles = String.Empty;
string styles = string.Empty;
foreach (string styleSheetId in _stylesheets) {
if (styleSheetId.Trim() != "")
try {
StyleSheet s = StyleSheet.GetStyleSheet(int.Parse(styleSheetId), false, false);
cssFiles += GlobalSettings.Path + "/../css/" + s.Text + ".css";
foreach (StylesheetProperty p in s.Properties) {
if (styles != string.Empty) {
styles += ";";
}
if (p.Alias.StartsWith("."))
styles += p.Text + "=" + p.Alias;
else
styles += p.Text + "=" + p.Alias;
}
cssFiles += ",";
} catch (Exception ee) {
Log.Add(LogTypes.Error, -1,
string.Format(
string.Format("Error adding stylesheet to tinymce (id: {{0}}). {0}", ee),
styleSheetId));
}
}
config.Add("content_css", cssFiles);
config.Add("theme_advanced_styles", styles);
// Add buttons
IDictionaryEnumerator ide = tinyMCEConfiguration.Commands.GetEnumerator();
while (ide.MoveNext()) {
tinyMCECommand cmd = (tinyMCECommand)ide.Value;
if (_editorButtons.IndexOf("," + cmd.Alias + ",") > -1)
_activateButtons += cmd.Alias + ",";
else
_disableButtons += cmd.Alias + ",";
}
if (_activateButtons.Length > 0)
_activateButtons = _activateButtons.Substring(0, _activateButtons.Length - 1);
if (_disableButtons.Length > 0)
_disableButtons = _disableButtons.Substring(0, _disableButtons.Length - 1);
// Add buttons
initButtons();
_activateButtons = "";
int separatorPriority = 0;
ide = _mceButtons.GetEnumerator();
while (ide.MoveNext()) {
string mceCommand = ide.Value.ToString();
int curPriority = (int)ide.Key;
// Check priority
if (separatorPriority > 0 &&
Math.Floor(decimal.Parse(curPriority.ToString()) / 10) >
Math.Floor(decimal.Parse(separatorPriority.ToString()) / 10))
_activateButtons += "separator,";
_activateButtons += mceCommand + ",";
separatorPriority = curPriority;
}
config.Add("theme_advanced_buttons1", _activateButtons);
config.Add("theme_advanced_buttons2", "");
config.Add("theme_advanced_buttons3", "");
config.Add("theme_advanced_toolbar_align", "left");
config.Add("theme_advanced_disable", _disableButtons);
config.Add("theme_advanced_path ", "true");
config.Add("extended_valid_elements", "div[*]");
config.Add("document_base_url", "/");
config.Add("event_elements", "div");
if (HttpContext.Current.Request.Path.IndexOf(GlobalSettings.Path) > -1)
config.Add("language", User.GetUser(BasePage.GetUserId(BasePage.umbracoUserContextID)).Language);
else
config.Add("language", System.Threading.Thread.CurrentThread.CurrentCulture.TwoLetterISOLanguageName);
if (_fullWidth) {
config.Add("auto_resize", "true");
base.Cols = 30;
base.Rows = 30;
} else {
base.Cols = 0;
base.Rows = 0;
}
}
}
#region IDataEditor Members
#region TreatAsRichTextEditor
public virtual bool TreatAsRichTextEditor {
get { return false; }
}
#endregion
#region ShowLabel
public virtual bool ShowLabel {
get { return _showLabel; }
}
#endregion
#region Editor
public Control Editor {
get { return this; }
}
#endregion
#region Save()
public virtual void Save() {
string parsedString = base.Text.Trim();
if (parsedString != string.Empty) {
parsedString = replaceMacroTags(parsedString).Trim();
// clean macros and add paragraph element for tidy
bool removeParagraphs = false;
if (parsedString.Length > 16 && parsedString.ToLower().Substring(0, 17) == "|||?umbraco_macro") {
removeParagraphs = true;
parsedString = "<p>" + parsedString + "</p>";
}
// tidy html
if (UmbracoSettings.TidyEditorContent) {
string tidyTxt = library.Tidy(parsedString, false);
if (tidyTxt != "[error]") {
// compensate for breaking macro tags by tidy
parsedString = tidyTxt.Replace("/?>", "/>");
if (removeParagraphs) {
if (parsedString.Length - parsedString.Replace("<", "").Length == 2)
parsedString = parsedString.Replace("<p>", "").Replace("</p>", "");
}
} else {
// TODO
// How to log errors? _data.NodeId does not exist?
//BusinessLogic.Log.Add(BusinessLogic.LogTypes.Error, BusinessLogic.User.GetUser(0), _data.NodeId, "Error tidying txt from property: " + _data.PropertyId.ToString());
}
}
// rescue umbraco tags
parsedString = parsedString.Replace("|||?", "<?").Replace("/|||", "/>").Replace("|*|", "\"");
// fix images
parsedString = tinyMCEImageHelper.cleanImages(parsedString);
// parse current domain and instances of slash before anchor (to fix anchor bug)
// NH 31-08-2007
if (HttpContext.Current.Request.ServerVariables != null) {
parsedString = parsedString.Replace(helper.GetBaseUrl(HttpContext.Current) + "/#", "#");
parsedString = parsedString.Replace(helper.GetBaseUrl(HttpContext.Current), "");
}
// if text is an empty parargraph, make it all empty
if (parsedString.ToLower() == "<p></p>")
parsedString = "";
}
_data.Value = parsedString;
// update internal webcontrol value with parsed result
base.Text = parsedString;
}
#endregion
protected override void OnLoad(EventArgs e) {
base.OnLoad(e);
try {
base.NodeId = ((cms.businesslogic.datatype.DefaultData)_data).NodeId;
base.VersionId = ((cms.businesslogic.datatype.DefaultData)_data).Version;
config.Add("umbraco_toolbar_id",
ElementIdPreFix + ((cms.businesslogic.datatype.DefaultData)_data).PropertyId.ToString());
} catch {
// Empty catch as this is caused by the document doesn't exists yet,
// like when using this on an autoform
}
Page.ClientScript.RegisterClientScriptBlock(GetType(), "tinymce",
"<script language=\"javascript\" type=\"text/javascript\" src=\"" +
JavascriptLocation + CoreFile + "\"></script>");
Page.ClientScript.RegisterClientScriptBlock(GetType(), "tinymceUmbPasteCheck",
"<script language=\"javascript\" type=\"text/javascript\" src=\"" +
JavascriptLocation +
"/plugins/umbracoAdditions/umbPasteCheck.js\"></script>");
}
protected override void Render(HtmlTextWriter output) {
base.JavascriptLocation = GlobalSettings.ClientPath + "/tinymce/tiny_mce.js";
base.Render(output);
}
protected override void OnInit(EventArgs e) {
base.OnInit(e);
if (!Page.IsPostBack) {
if (_data != null && _data.Value != null)
base.Text = _data.Value.ToString();
}
}
private string replaceMacroTags(string text) {
while (findStartTag(text) > -1) {
string result = text.Substring(findStartTag(text), findEndTag(text) - findStartTag(text));
text = text.Replace(result, generateMacroTag(result));
}
return text;
}
private string generateMacroTag(string macroContent) {
string macroAttr = macroContent.Substring(5, macroContent.IndexOf(">") - 5);
string macroTag = "|||?UMBRACO_MACRO ";
Hashtable attributes = ReturnAttributes(macroAttr);
IDictionaryEnumerator ide = attributes.GetEnumerator();
while (ide.MoveNext()) {
if (ide.Key.ToString().IndexOf("umb_") != -1) {
// Hack to compensate for Firefox adding all attributes as lowercase
string orgKey = ide.Key.ToString();
if (orgKey == "umb_macroalias")
orgKey = "umb_macroAlias";
macroTag += orgKey.Substring(4, orgKey.ToString().Length - 4) + "=|*|" +
ide.Value.ToString() + "|*| ";
}
}
macroTag += "/|||";
return macroTag;
}
public static Hashtable ReturnAttributes(String tag) {
Hashtable ht = new Hashtable();
MatchCollection m =
Regex.Matches(tag, "(?<attributeName>\\S*)=\"(?<attributeValue>[^\"]*)\"",
RegexOptions.IgnoreCase | RegexOptions.IgnorePatternWhitespace);
foreach (Match attributeSet in m)
ht.Add(attributeSet.Groups["attributeName"].Value.ToString(),
attributeSet.Groups["attributeValue"].Value.ToString());
return ht;
}
private int findStartTag(string text) {
string temp = "";
text = text.ToLower();
if (text.IndexOf("ismacro=\"true\"") > -1) {
temp = text.Substring(0, text.IndexOf("ismacro=\"true\""));
return temp.LastIndexOf("<");
}
return -1;
}
private int findEndTag(string text) {
string find = "<!-- endumbmacro -->";
int endMacroIndex = text.ToLower().IndexOf(find);
string tempText = text.ToLower().Substring(endMacroIndex + find.Length, text.Length - endMacroIndex - find.Length);
int finalEndPos = 0;
while (tempText.Length > 5)
if (tempText.Substring(finalEndPos, 6) == "</div>")
break;
else
finalEndPos++;
return endMacroIndex + find.Length + finalEndPos + 6;
}
#endregion
#region IDataFieldWithButtons Members
public object[] MenuIcons {
get {
initButtons();
object[] tempIcons = new object[_menuIcons.Count];
for (int i = 0; i < _menuIcons.Count; i++)
tempIcons[i] = _menuIcons[i];
return tempIcons;
}
}
private void initButtons() {
if (!_isInitialized) {
_isInitialized = true;
// Add icons for the editor control:
// Html
// Preview
// Style picker, showstyles
// Bold, italic, Text Gen
// Align: left, center, right
// Lists: Bullet, Ordered, indent, undo indent
// Link, Anchor
// Insert: Image, macro, table, formular
foreach (string button in _activateButtons.Split(',')) {
if (button.Trim() != "") {
try {
tinyMCECommand cmd = (tinyMCECommand)tinyMCEConfiguration.Commands[button];
string appendValue = "";
if (cmd.Value != "")
appendValue = ", '" + cmd.Value + "'";
_mceButtons.Add(cmd.Priority, cmd.Command);
_buttons.Add(cmd.Priority,
new editorButton(cmd.Alias, ui.Text("buttons", cmd.Alias, null), cmd.Icon,
"tinyMCE.execInstanceCommand('" + ClientID + "', '" +
cmd.Command + "', " + cmd.UserInterface + appendValue + ")"));
} catch (Exception ee) {
Log.Add(LogTypes.Error, User.GetUser(0), -1,
string.Format("TinyMCE: Error initializing button '{0}': {1}", button, ee.ToString()));
}
}
}
// add save icon
int separatorPriority = 0;
IDictionaryEnumerator ide = _buttons.GetEnumerator();
while (ide.MoveNext()) {
object buttonObj = ide.Value;
int curPriority = (int)ide.Key;
// Check priority
if (separatorPriority > 0 &&
Math.Floor(decimal.Parse(curPriority.ToString()) / 10) >
Math.Floor(decimal.Parse(separatorPriority.ToString()) / 10))
_menuIcons.Add("|");
try {
editorButton e = (editorButton)buttonObj;
MenuIconI menuItem = new MenuIconClass();
menuItem.OnClickCommand = e.onClickCommand;
menuItem.ImageURL = e.imageUrl;
menuItem.AltText = e.alttag;
menuItem.ID = e.id;
_menuIcons.Add(menuItem);
} catch {
}
separatorPriority = curPriority;
}
}
}
#endregion
#region IMenuElement Members
public string ElementName {
get { return "div"; }
}
public string ElementIdPreFix {
get { return "umbTinymceMenu"; }
}
public string ElementClass {
get { return "tinymceMenuBar"; }
}
public int ExtraMenuWidth {
get {
initButtons();
return _buttons.Count * 40 + 300;
}
}
#endregion
}
}
@@ -1,205 +0,0 @@
using System;
using System.Collections;
using System.Drawing;
using System.Drawing.Drawing2D;
using System.Drawing.Imaging;
using System.Text.RegularExpressions;
using System.Web;
using umbraco.BusinessLogic;
using umbraco.IO;
namespace umbraco.editorControls.tinymce
{
internal class tinyMCEImageHelper
{
public static string cleanImages(string html)
{
string[] allowedAttributes = UmbracoSettings.ImageAllowedAttributes.ToLower().Split(',');
string pattern = @"<img [^>]*>";
MatchCollection tags =
Regex.Matches(html + " ", pattern, RegexOptions.IgnoreCase | RegexOptions.IgnorePatternWhitespace);
foreach (Match tag in tags)
{
if (tag.Value.ToLower().IndexOf("umbraco_macro") == -1)
{
string cleanTag = "<img";
int orgWidth = 0, orgHeight = 0;
// gather all attributes
// TODO: This should be replaced with a general helper method - but for now we'll wanna leave umbraco.dll alone for this patch
Hashtable ht = new Hashtable();
MatchCollection m =
Regex.Matches(tag.Value.Replace(">", " >"),
"(?<attributeName>\\S*)=\"(?<attributeValue>[^\"]*)\"|(?<attributeName>\\S*)=(?<attributeValue>[^\"|\\s]*)\\s",
RegexOptions.IgnoreCase | RegexOptions.IgnorePatternWhitespace);
foreach (Match attributeSet in m)
{
ht.Add(attributeSet.Groups["attributeName"].Value.ToString().ToLower(),
attributeSet.Groups["attributeValue"].Value.ToString());
if (attributeSet.Groups["attributeName"].Value.ToString().ToLower() == "width")
orgWidth = int.Parse(attributeSet.Groups["attributeValue"].Value.ToString());
else if (attributeSet.Groups["attributeName"].Value.ToString().ToLower() == "height")
orgHeight = int.Parse(attributeSet.Groups["attributeValue"].Value.ToString());
}
// If rel attribute exists and if it's different from current sizing we should resize the image!
if (helper.FindAttribute(ht, "rel") != "")
{
int newWidth = 0, newHeight = 0;
// if size has changed resize image serverside
string[] newDims = helper.FindAttribute(ht, "rel").Split(",".ToCharArray());
if (newDims.Length > 0 &&
(newDims[0] != helper.FindAttribute(ht, "width") ||
newDims[1] != helper.FindAttribute(ht, "height")))
{
try
{
cleanTag += doResize(ht, out newWidth, out newHeight);
}
catch (Exception err)
{
cleanTag += " src=\"" + helper.FindAttribute(ht, "src") + "\"";
if (helper.FindAttribute(ht, "width") != "")
{
cleanTag += " width=\"" + helper.FindAttribute(ht, "width") + "\"";
cleanTag += " height=\"" + helper.FindAttribute(ht, "height") + "\"";
}
Log.Add(LogTypes.Error, User.GetUser(0), -1,
"Error resizing image in editor: " + err.ToString());
}
} else
{
cleanTag = StripSrc(cleanTag, ht);
if (helper.FindAttribute(ht, "width") != "")
{
cleanTag += " width=\"" + helper.FindAttribute(ht, "width") + "\"";
cleanTag += " height=\"" + helper.FindAttribute(ht, "height") + "\"";
}
}
}
else
{
// Add src, width and height properties
cleanTag = StripSrc(cleanTag, ht);
if (helper.FindAttribute(ht, "width") != "")
{
cleanTag += " width=\"" + helper.FindAttribute(ht, "width") + "\"";
cleanTag += " height=\"" + helper.FindAttribute(ht, "height") + "\"";
}
}
// Build image tag
foreach (string attr in allowedAttributes)
{
if (helper.FindAttribute(ht, attr) != "")
{
string attrValue = helper.FindAttribute(ht, attr);
cleanTag += " " + attr + "=\"" + attrValue + "\"";
}
}
if (bool.Parse(GlobalSettings.EditXhtmlMode))
cleanTag += "/";
cleanTag += ">";
html = html.Replace(tag.Value, cleanTag);
}
}
return html;
}
private static string StripSrc(string cleanTag, Hashtable ht)
{
string src = helper.FindAttribute(ht, "src");
// update orgSrc to remove umbraco reference
if (src.IndexOf("/media/") > -1)
src = src.Substring(src.IndexOf("/media/"), src.Length - src.IndexOf("/media/"));
cleanTag += " src=\"" + src + "\"";
return cleanTag;
}
private static string doResize(Hashtable attributes, out int finalWidth, out int finalHeight)
{
string resizeDim = helper.FindAttribute(attributes, "width") + "," +
helper.FindAttribute(attributes, "height");
string[] resizeDimSplit = resizeDim.Split(',');
string orgSrc = HttpContext.Current.Server.HtmlDecode(helper.FindAttribute(attributes, "src").Replace("%20", " "));
string[] orgDim = helper.FindAttribute(attributes, "rel").Split(",".ToCharArray());
float orgWidth = float.Parse(orgDim[0]);
float orgHeight = float.Parse(orgDim[1]);
string newSrc = "";
int newWidth = int.Parse(resizeDimSplit[0]);
int newHeight = int.Parse(resizeDimSplit[1]);
if (orgHeight > 0 && orgWidth > 0 && resizeDim != "" && orgSrc != "")
{
// Check dimensions
if (Math.Abs(orgWidth/newWidth) > Math.Abs(orgHeight/newHeight))
{
newHeight = (int) Math.Round((float) newWidth*(orgHeight/orgWidth));
}
else
{
newWidth = (int) Math.Round((float) newHeight*(orgWidth/orgHeight));
}
// update orgSrc to remove umbraco reference
if (orgSrc.IndexOf("/media/") > -1)
orgSrc = orgSrc.Substring(orgSrc.IndexOf("/media/"), orgSrc.Length - orgSrc.IndexOf("/media/"));
string ext = orgSrc.Substring(orgSrc.LastIndexOf(".") + 1, orgSrc.Length - orgSrc.LastIndexOf(".") - 1);
newSrc = orgSrc.Replace("." + ext, "_" + newWidth.ToString() + "x" + newHeight.ToString() + ".jpg");
string fullSrc = IOHelper.MapPath(orgSrc);
string fullSrcNew = IOHelper.MapPath(newSrc);
// Load original image
Image image = Image.FromFile(fullSrc);
// Create new image with best quality settings
Bitmap bp = new Bitmap(newWidth, newHeight);
Graphics g = Graphics.FromImage(bp);
g.SmoothingMode = SmoothingMode.HighQuality;
g.InterpolationMode = InterpolationMode.HighQualityBicubic;
g.PixelOffsetMode = PixelOffsetMode.HighQuality;
// Copy the old image to the new and resized
Rectangle rect = new Rectangle(0, 0, newWidth, newHeight);
g.DrawImage(image, rect, 0, 0, image.Width, image.Height, GraphicsUnit.Pixel);
// Copy metadata
ImageCodecInfo[] codecs = ImageCodecInfo.GetImageEncoders();
ImageCodecInfo codec = null;
for (int i = 0; i < codecs.Length; i++)
{
if (codecs[i].MimeType.Equals("image/jpeg"))
codec = codecs[i];
}
// Set compresion ratio to 90%
EncoderParameters ep = new EncoderParameters();
ep.Param[0] = new EncoderParameter(Encoder.Quality, 90L);
// Save the new image
bp.Save(fullSrcNew, codec, ep);
}
// return the new width and height
finalWidth = newWidth;
finalHeight = newHeight;
return
" src=\"" + newSrc + "\" width=\"" + newWidth.ToString() + "\" height=\"" + newHeight.ToString() +
"\"";
}
}
}
@@ -1,403 +0,0 @@
using System;
using System.Collections;
using System.Collections.Specialized;
using System.Text.RegularExpressions;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using umbraco.BusinessLogic;
using umbraco.cms.businesslogic.macro;
using umbraco.cms.businesslogic.media;
using umbraco.cms.businesslogic.property;
using Content = umbraco.cms.businesslogic.Content;
namespace umbraco.editorControls.tinymce.webcontrol {
public class TinyMCE : WebControl, IPostBackDataHandler {
private string _javascriptLocation = GlobalSettings.ClientPath + "/tinymce";
private string _coreFile = "/tiny_mce.js";
private int _rows = 13;
private int _cols = 60;
public NameValueCollection config;
private string temp;
private int _nodeId = -1;
private Guid _versionId;
public int NodeId {
set { _nodeId = value; }
}
public Guid VersionId {
set { _versionId = value; }
}
public string CoreFile {
get { return _coreFile; }
}
public TinyMCE() {
config = new NameValueCollection();
config.Add("mode", "exact");
config.Add("theme", "advanced");
//content_css : "/mycontent.css"
temp = string.Empty;
//this._config.SetStringParam(TinyMCEConfig.StringParameter.mode, "exact");
//this._config.SetStringParam(TinyMCEConfig.StringParameter.theme, "advanced");
//this._config.SetStringParam(TinyMCEConfig.StringParameter.plugins, "advlink,noneditable,advimage,flash");
//this._config.SetStringParam(TinyMCEConfig.StringParameter.theme_advanced_buttons3_add, "flash");
}
// <summary>
/// The text of the editor
/// </summary>
public string Text {
get { return (string)ViewState["text"]; }
set { ViewState["text"] = value; }
}
// <summary>
/// The number of rows in the textarea that gets converted to the editor.
/// This affects the size of the editor. Default is 10
/// </summary>
public int Rows {
get { return _rows; }
set { _rows = value; }
}
// <summary>
/// The number of columns in the textarea that gets converted to the editor.
/// This affects the size of the editor. Default is 40.
/// </summary>
public int Cols {
get { return _cols; }
set { _cols = value; }
}
// <summary>
/// Path to the TinyMCE javascript, default is "jscripts/tiny_mce/tiny_mce.js"
/// </summary>
public string JavascriptLocation {
get { return _javascriptLocation; }
set { _javascriptLocation = value; }
}
/// <summary>
/// Draws the editor
/// </summary>
/// <param name="outWriter">The writer to draw the editor to</param>
protected override void Render(HtmlTextWriter writer) {
writer.WriteLine("<!-- tinyMCE -->\n");
writer.WriteLine("<script language=\"javascript\" type=\"text/javascript\">");
writer.WriteLine("tinyMCE.init({");
for (int i = 0; i < config.Count; i++) {
writer.WriteLine(config.GetKey(i) + " : \"" + config.Get(i) + "\",");
}
writer.WriteLine("theme_advanced_resizing : true,");
writer.WriteLine("theme_advanced_resize_horizontal : false,");
writer.WriteLine("apply_source_formatting : true,");
writer.WriteLine("relative_urls : false,");
writer.WriteLine("valid_elements : {0},", tinyMCEConfiguration.ValidElements);
writer.WriteLine("invalid_elements : \"{0}\",", tinyMCEConfiguration.InvalidElements);
writer.WriteLine("elements : \"" + UniqueID + "\",");
writer.WriteLine("umbracoPath: \"" + GlobalSettings.Path + "\"");
writer.WriteLine("});");
// write a message that this is deprecated
writer.WriteLine("alert('This page use an old version of the Richtext Editor (TinyMCE2), which is deprecated and no longer supported in Umbraco 4. \\n\\nPlease upgrade by going to\\n- Developer\\n- Data Types\\n- Richtext editor\\n- And choose \\'TinyMCE3 wysiwyg\\' as the rendercontrol\\n\\nIf you don\\'t have administrative priviledges in umbraco, you should contact your administrator');");
writer.WriteLine("</script>\n");
writer.WriteLine("<!-- /tinyMCE -->\n");
if (Cols > 0)
writer.Write("<textarea class=\"tinymce" + UniqueID + "\" id=\"" + UniqueID + "\" name=\"" + UniqueID + "\" cols=\"" + Cols + "\" rows=\"" +
Rows + "\" style=\"width: 100%\">\n");
else
writer.Write("<textarea class=\"tinymce" + UniqueID + "\" id=\"" + UniqueID + "\" name=\"" + UniqueID + "\">\n");
// if the document exists, parse it for macros
if (_nodeId != -1)
writer.Write(parseMacrosToHtml(formatMedia(Text)));
else
writer.Write(Text);
writer.WriteLine("</textarea>");
}
private string formatMedia(string html) {
// Local media path
string localMediaPath = getLocalMediaPath();
// Find all media images
string pattern = "<img [^>]*src=\"(?<mediaString>/media[^\"]*)\" [^>]*>";
MatchCollection tags =
Regex.Matches(html, pattern, RegexOptions.IgnoreCase | RegexOptions.IgnorePatternWhitespace);
foreach (Match tag in tags)
if (tag.Groups.Count > 0) {
// Replace /> to ensure we're in old-school html mode
string tempTag = "<img";
string orgSrc = tag.Groups["mediaString"].Value;
// gather all attributes
// TODO: This should be replaced with a general helper method - but for now we'll wanna leave umbraco.dll alone for this patch
Hashtable ht = new Hashtable();
MatchCollection m =
Regex.Matches(tag.Value.Replace(">", " >"),
"(?<attributeName>\\S*)=\"(?<attributeValue>[^\"]*)\"|(?<attributeName>\\S*)=(?<attributeValue>[^\"|\\s]*)\\s",
RegexOptions.IgnoreCase | RegexOptions.IgnorePatternWhitespace);
foreach (Match attributeSet in m) {
if (attributeSet.Groups["attributeName"].Value.ToString().ToLower() != "src")
ht.Add(attributeSet.Groups["attributeName"].Value.ToString(),
attributeSet.Groups["attributeValue"].Value.ToString());
}
// build the element
// Build image tag
IDictionaryEnumerator ide = ht.GetEnumerator();
while (ide.MoveNext())
tempTag += " " + ide.Key.ToString() + "=\"" + ide.Value.ToString() + "\"";
// Find the original filename, by removing the might added width and height
orgSrc =
orgSrc.Replace(
"_" + helper.FindAttribute(ht, "width") + "x" + helper.FindAttribute(ht, "height"), "").
Replace("%20", " ");
// Check for either id or guid from media
string mediaId = getIdFromSource(orgSrc, localMediaPath);
Media imageMedia = null;
try {
int mId = int.Parse(mediaId);
Property p = new Property(mId);
imageMedia = new Media(Content.GetContentFromVersion(p.VersionId).Id);
} catch {
try {
imageMedia = new Media(Content.GetContentFromVersion(new Guid(mediaId)).Id);
} catch {
}
}
// Check with the database if any media matches this url
if (imageMedia != null) {
try {
// Check extention
if (imageMedia.getProperty("umbracoExtension").Value.ToString() != orgSrc.Substring(orgSrc.LastIndexOf(".") + 1, orgSrc.Length - orgSrc.LastIndexOf(".") - 1))
orgSrc = orgSrc.Substring(0, orgSrc.LastIndexOf(".") + 1) +
imageMedia.getProperty("umbracoExtension").Value.ToString();
// Format the tag
tempTag = tempTag + " rel=\"" +
imageMedia.getProperty("umbracoWidth").Value.ToString() + "," +
imageMedia.getProperty("umbracoHeight").Value.ToString() + "\" src=\"" + orgSrc +
"\"";
tempTag += "/>";
// Replace the tag
html = html.Replace(tag.Value, tempTag);
} catch (Exception ee) {
Log.Add(LogTypes.Error, User.GetUser(0), -1,
"Error reading size data from media: " + imageMedia.Id.ToString() + ", " +
ee.ToString());
}
} else
Log.Add(LogTypes.Error, User.GetUser(0), -1,
"Error reading size data from media (not found): " + orgSrc);
}
return html;
}
private string getIdFromSource(string src, string localMediaPath) {
// important - remove out the umbraco path + media!
src = src.Replace(localMediaPath, "");
string _id = "";
// Check for directory id naming
if (src.Length - src.Replace("/", "").Length > 0) {
string[] dirSplit = src.Split("/".ToCharArray());
string tempId = dirSplit[0];
try {
// id
_id = int.Parse(tempId).ToString();
} catch {
// guid
_id = tempId;
}
} else {
string[] fileSplit = src.Replace("/media/", "").Split("-".ToCharArray());
// guid or id
if (fileSplit.Length > 3) {
for (int i = 0; i < 5; i++)
_id += fileSplit[i] + "-";
_id = _id.Substring(0, _id.Length - 1);
} else
_id = fileSplit[0];
}
return _id;
}
private string getLocalMediaPath() {
string[] umbracoPathSplit = GlobalSettings.Path.Split("/".ToCharArray());
string umbracoPath = "";
for (int i = 0; i < umbracoPathSplit.Length - 1; i++)
umbracoPath += umbracoPathSplit[i] + "/";
return umbracoPath + "media/";
}
private string parseMacrosToHtml(string input) {
int nodeId = _nodeId;
Guid versionId = _versionId;
string content = input;
string pattern = @"(<\?UMBRACO_MACRO\W*[^>]*/>)";
MatchCollection tags =
Regex.Matches(content, pattern, RegexOptions.IgnoreCase | RegexOptions.IgnorePatternWhitespace);
// Page for macro rendering
page p = new page(nodeId, versionId);
HttpContext.Current.Items["macrosAdded"] = 0;
HttpContext.Current.Items["pageID"] = nodeId.ToString();
foreach (Match tag in tags) {
try {
// Create div
Hashtable attributes = helper.ReturnAttributes(tag.Groups[1].Value);
string div = macro.renderMacroStartTag(attributes, nodeId, versionId).Replace("&quot;", "&amp;quot;");
// Insert macro contents here...
macro m;
if (helper.FindAttribute(attributes, "macroID") != "")
m = new macro(int.Parse(helper.FindAttribute(attributes, "macroID")));
else {
// legacy: Check if the macroAlias is typed in lowercasing
string macroAlias = helper.FindAttribute(attributes, "macroAlias");
if (macroAlias == "") {
macroAlias = helper.FindAttribute(attributes, "macroalias");
attributes.Remove("macroalias");
attributes.Add("macroAlias", macroAlias);
}
if (macroAlias != "")
m = new macro(Macro.GetByAlias(macroAlias).Id);
else
throw new ArgumentException("umbraco is unable to identify the macro. No id or macroalias was provided for the macro in the macro tag.", tag.Groups[1].Value);
}
if (helper.FindAttribute(attributes, "macroAlias") == "")
attributes.Add("macroAlias", m.Alias);
try {
div += macro.MacroContentByHttp(nodeId, versionId, attributes);
} catch {
div += "<span style=\"color: green\">No macro content available for WYSIWYG editing</span>";
}
div += macro.renderMacroEndTag();
content = content.Replace(tag.Groups[1].Value, div);
} catch (Exception ee) {
Log.Add(LogTypes.Error, this._nodeId, "Macro Parsing Error: " + ee.ToString());
string div = "<div class=\"umbMacroHolder mceNonEditable\"><p style=\"color: red\"><strong>umbraco was unable to parse a macro tag, which means that parts of this content might be corrupt.</strong> <br /><br />Best solution is to rollback to a previous version by right clicking the node in the tree and then try to insert the macro again. <br/><br/>Please report this to your system administrator as well - this error has been logged.</p></div>";
content = content.Replace(tag.Groups[1].Value, div);
}
}
return content;
}
private static readonly object TextChangedEvent = new object();
/// <summary>
/// Raises an event when the text in the editor changes.
/// </summary>
public event EventHandler TextChanged {
add { Events.AddHandler(TextChangedEvent, value); }
remove { Events.RemoveHandler(TextChangedEvent, value); }
}
/// <summary>
/// Event for text change.
/// </summary>
/// <param name="e"></param>
protected virtual void OnTextChanged(EventArgs e) {
if (Events != null) {
EventHandler oEventHandler = (EventHandler)Events[TextChangedEvent];
if (oEventHandler != null) {
oEventHandler(this, e);
}
}
}
/// <summary>
/// Called when a postback occurs on the page the control is placed at
/// </summary>
/// <param name="postDataKey">The key of the editor data</param>
/// <param name="postCollection">All the posted data</param>
/// <returns></returns>
bool IPostBackDataHandler.LoadPostData(string postDataKey, NameValueCollection postCollection) {
string newText = postCollection[postDataKey];
if (newText != Text) {
Text = newText;
return true;
}
return false;
}
/// <summary>
/// Raises an event when postback occurs
/// </summary>
void IPostBackDataHandler.RaisePostDataChangedEvent() {
OnTextChanged(EventArgs.Empty);
}
}
public enum TinyMceButtons {
code,
bold,
italic,
underline,
strikethrough,
justifyleft,
justifycenter,
justifyright,
justifyfull,
bullist,
numlist,
outdent,
indent,
cut,
copy,
pasteword,
undo,
redo,
link,
unlink,
image,
table,
hr,
removeformat,
sub,
sup,
charmap,
anchor,
umbracomacro
}
}
@@ -1,56 +0,0 @@
using System;
namespace umbraco.editorControls.wysiwyg
{
/// <summary>
/// Summary description for WysiwygDataType.
/// </summary>
public class WysiwygDataType : cms.businesslogic.datatype.BaseDataType,interfaces.IDataType
{
private editor _Editor;
private cms.businesslogic.datatype.DefaultData _baseData;
private interfaces.IDataPrevalue _prevalueeditor;
public override interfaces.IDataEditor DataEditor
{
get
{
if (_Editor == null)
{
_Editor = new editor((cms.businesslogic.datatype.DefaultData)Data);
}
return _Editor;
}
}
public override interfaces.IData Data
{
get
{
if (_baseData == null)
_baseData = new cms.businesslogic.datatype.DefaultData(this);
return _baseData;
}
}
public override Guid Id
{
get {return new Guid("a3776494-0574-4d93-b7de-efdfdec6f2d1");}
}
public override string DataTypeName
{
get {return "Editor";}
}
public override interfaces.IDataPrevalue PrevalueEditor
{
get
{
if (_prevalueeditor == null)
_prevalueeditor = new DefaultPrevalueEditor(this,false);
return _prevalueeditor;
}
}
}
}
@@ -1,563 +0,0 @@
using System;
using System.Collections;
using System.Drawing;
using System.Drawing.Drawing2D;
using System.Drawing.Imaging;
using System.Text.RegularExpressions;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using umbraco.BusinessLogic;
using umbraco.interfaces;
using umbraco.uicontrols;
namespace umbraco.editorControls.wysiwyg
{
/// <summary>
/// Generates a field for typing numeric data
/// </summary>
public class editor : HiddenField, IDataFieldWithButtons
{
private ArrayList _buttons = new ArrayList();
private bool _isInitialized = false;
private String _text;
private ArrayList _menuIcons = new ArrayList();
private bool _browserIsCompatible = false;
private cms.businesslogic.datatype.DefaultData _data;
public editor(cms.businesslogic.datatype.DefaultData Data)
{
_data = Data;
if (HttpContext.Current.Request.Browser.Win32 &&
HttpContext.Current.Request.Browser.Browser == "IE")
_browserIsCompatible = true;
}
public virtual bool TreatAsRichTextEditor
{
get { return true; }
}
public bool ShowLabel
{
get { return false; }
}
public Control Editor
{
get { return this; }
}
public String Text
{
get
{
if (_text == null) return "";
HttpContext.Current.Trace.Warn("return text", _text);
return _text;
}
set
{
_text = " " + value + " ";
if (_text.Trim() != "")
{
// Check for umbraco tags
string pattern = @"[^'](<\?UMBRACO_MACRO\W*[^>]*/>)[^']";
MatchCollection tags =
Regex.Matches(_text, pattern, RegexOptions.IgnoreCase | RegexOptions.IgnorePatternWhitespace);
foreach (Match tag in tags)
{
_text =
_text.Replace(tag.Groups[1].Value,
"<IMG alt='" + tag.Groups[1].Value + "' src=\"/imagesmacroo.gif\">");
}
// Clean urls
// _text = _text.Replace("http://" + System.Web.HttpContext.Current.Request.ServerVariables["SERVER_NAME"], "").Replace("HTTP://" + System.Web.HttpContext.Current.Request.ServerVariables["SERVER_NAME"], "");
}
base.Value = _text.Trim();
}
}
public virtual object[] MenuIcons
{
get
{
initButtons();
object[] tempIcons = new object[_menuIcons.Count];
for (int i = 0; i < _menuIcons.Count; i++)
tempIcons[i] = _menuIcons[i];
return tempIcons;
}
}
public override string Value
{
get { return base.Value; }
set
{
base.Value = " " + value + " ";
// Check for umbraco tags
string pattern = @"[^'](<\?UMBRACO_MACRO\W*[^>]*/>)[^']";
MatchCollection tags =
Regex.Matches(base.Value + " ", pattern,
RegexOptions.IgnoreCase | RegexOptions.IgnorePatternWhitespace);
foreach (Match tag in tags)
{
base.Value =
base.Value.Replace(tag.Groups[1].Value,
"<IMG alt='" + tag.Groups[1].Value + "' src=\"/imagesmacroo.gif\">");
}
Text = base.Value.Trim();
}
}
private string cleanImages(string html)
{
string[] allowedAttributes = UmbracoSettings.ImageAllowedAttributes.ToLower().Split(',');
string pattern = @"<img [^>]*>";
MatchCollection tags =
Regex.Matches(html + " ", pattern, RegexOptions.IgnoreCase | RegexOptions.IgnorePatternWhitespace);
foreach (Match tag in tags)
{
if (tag.Value.ToLower().IndexOf("umbraco_macro") == -1)
{
string cleanTag = "<img";
// gather all attributes
// TODO: This should be replaced with a general helper method - but for now we'll wanna leave umbraco.dll alone for this patch
Hashtable ht = new Hashtable();
MatchCollection m =
Regex.Matches(tag.Value.Replace(">", " >"),
"(?<attributeName>\\S*)=\"(?<attributeValue>[^\"]*)\"|(?<attributeName>\\S*)=(?<attributeValue>[^\"|\\s]*)\\s",
RegexOptions.IgnoreCase | RegexOptions.IgnorePatternWhitespace);
foreach (Match attributeSet in m)
ht.Add(attributeSet.Groups["attributeName"].Value.ToString().ToLower(),
attributeSet.Groups["attributeValue"].Value.ToString());
// Build image tag
foreach (string attr in allowedAttributes)
{
if (helper.FindAttribute(ht, attr) != "")
cleanTag += " " + attr + "=\"" + helper.FindAttribute(ht, attr) + "\"";
}
// If umbracoResizeImage attribute exists we should resize the image!
if (helper.FindAttribute(ht, "umbracoresizeimage") != "")
{
try
{
cleanTag += doResize(ht);
}
catch (Exception err)
{
cleanTag += " src=\"" + helper.FindAttribute(ht, "src") + "\"";
if (helper.FindAttribute(ht, "width") != "")
{
cleanTag += " width=\"" + helper.FindAttribute(ht, "width") + "\"";
cleanTag += " height=\"" + helper.FindAttribute(ht, "height") + "\"";
}
Log.Add(LogTypes.Error, User.GetUser(0), -1,
"Error resizing image in editor: " + err.ToString());
}
}
else
{
// Add src, width and height properties
cleanTag += " src=\"" + helper.FindAttribute(ht, "src") + "\"";
if (helper.FindAttribute(ht, "width") != "")
{
cleanTag += " width=\"" + helper.FindAttribute(ht, "width") + "\"";
cleanTag += " height=\"" + helper.FindAttribute(ht, "height") + "\"";
}
}
if (bool.Parse(GlobalSettings.EditXhtmlMode))
cleanTag += "/";
cleanTag += ">";
html = html.Replace(tag.Value, cleanTag);
}
}
return html;
}
private string doResize(Hashtable attributes)
{
string resizeDim = helper.FindAttribute(attributes, "umbracoresizeimage");
string[] resizeDimSplit = resizeDim.Split(',');
string orgSrc = helper.FindAttribute(attributes, "src").Replace("%20", " ");
int orgHeight = int.Parse(helper.FindAttribute(attributes, "umbracoorgheight"));
int orgWidth = int.Parse(helper.FindAttribute(attributes, "umbracoorgwidth"));
string beforeWidth = helper.FindAttribute(attributes, "umbracobeforeresizewidth");
string beforeHeight = helper.FindAttribute(attributes, "umbracobeforeresizeheight");
string newSrc = "";
if (orgHeight > 0 && orgWidth > 0 && resizeDim != "" && orgSrc != "")
{
// Check filename
if (beforeHeight != "" && beforeWidth != "")
{
orgSrc = orgSrc.Replace("_" + beforeWidth + "x" + beforeHeight, "");
}
string ext = orgSrc.Substring(orgSrc.LastIndexOf(".") + 1, orgSrc.Length - orgSrc.LastIndexOf(".") - 1);
newSrc = orgSrc.Replace("." + ext, "_" + resizeDimSplit[0] + "x" + resizeDimSplit[1] + ".jpg");
string fullSrc = HttpContext.Current.Server.MapPath(orgSrc);
string fullSrcNew = HttpContext.Current.Server.MapPath(newSrc);
// Load original image
System.Drawing.Image image = System.Drawing.Image.FromFile(fullSrc);
// Create new image with best quality settings
Bitmap bp = new Bitmap(int.Parse(resizeDimSplit[0]), int.Parse(resizeDimSplit[1]));
Graphics g = Graphics.FromImage(bp);
g.SmoothingMode = SmoothingMode.HighQuality;
g.InterpolationMode = InterpolationMode.HighQualityBicubic;
g.PixelOffsetMode = PixelOffsetMode.HighQuality;
// Copy the old image to the new and resized
Rectangle rect = new Rectangle(0, 0, int.Parse(resizeDimSplit[0]), int.Parse(resizeDimSplit[1]));
g.DrawImage(image, rect, 0, 0, image.Width, image.Height, GraphicsUnit.Pixel);
// Copy metadata
ImageCodecInfo[] codecs = ImageCodecInfo.GetImageEncoders();
ImageCodecInfo codec = null;
for (int i = 0; i < codecs.Length; i++)
{
if (codecs[i].MimeType.Equals("image/jpeg"))
codec = codecs[i];
}
// Set compresion ratio to 90%
EncoderParameters ep = new EncoderParameters();
ep.Param[0] = new EncoderParameter(Encoder.Quality, 90L);
// Save the new image
bp.Save(fullSrcNew, codec, ep);
orgSrc = newSrc;
}
return " src=\"" + newSrc + "\" width=\"" + resizeDimSplit[0] + "\" height=\"" + resizeDimSplit[1] + "\"";
}
public void Save()
{
if (Text.Trim() != "")
{
// Parse for servername
if (HttpContext.Current.Request.ServerVariables != null)
{
_text = _text.Replace(helper.GetBaseUrl(HttpContext.Current) + GlobalSettings.Path + "/", "");
_text = _text.Replace(helper.GetBaseUrl(HttpContext.Current), "");
}
// Parse for editing scriptname
string pattern2 = GlobalSettings.Path + "/richTextHolder.aspx?[^#]*#";
MatchCollection tags2 =
Regex.Matches(_text, pattern2, RegexOptions.IgnoreCase | RegexOptions.IgnorePatternWhitespace);
foreach (Match tag in tags2)
{
_text = _text.Replace(tag.Value, "");
HttpContext.Current.Trace.Warn("editor-match", tag.Value);
}
// Parse for macros inside images
string pattern = @"<IMG\W*alt='(<?[^>]*>)'[^>]*>";
MatchCollection tags =
Regex.Matches(_text, pattern, RegexOptions.IgnoreCase | RegexOptions.IgnorePatternWhitespace);
foreach (Match tag in tags)
if (tag.Groups.Count > 0)
{
string umbTag = tag.Groups[1].Value;
// Check for backwards compliance with old macro-tag format (<?UMBRACO_MACRO xxxx> vs. new format with closed tags: <?UMBRACO_MACRO xxxx/>)
if (umbTag.IndexOf("/>") < 0)
umbTag = umbTag.Substring(0, umbTag.Length - 1) + "/>";
_text = _text.Replace(tag.Value, umbTag);
}
// check for image tags
_text = cleanImages(_text);
_text = replaceMacroTags(_text).Trim();
// clean macros and add paragraph element for tidy
bool removeParagraphs = false;
if (_text.Length > 15 && _text.ToLower().Substring(0, 17) == "|||?umbraco_macro")
{
removeParagraphs = true;
_text = "<p>" + _text + "</p>";
}
// tidy html
if (UmbracoSettings.TidyEditorContent)
{
string tidyTxt = library.Tidy(_text, false);
if (tidyTxt != "[error]")
{
// compensate for breaking macro tags by tidy
_text = tidyTxt.Replace("/?>", "/>");
if (removeParagraphs)
{
if (_text.Length - _text.Replace("<", "").Length == 2)
_text = _text.Replace("<p>", "").Replace("</p>", "");
}
}
else
Log.Add(LogTypes.Error, User.GetUser(0), _data.NodeId,
"Error tidying txt from property: " + _data.PropertyId.ToString());
}
// rescue umbraco tags
_text = _text.Replace("|||?", "<?").Replace("/|||", "/>").Replace("|*|", "\"");
// if text is an empty parargraph, make it all empty
if (_text.ToLower() == "<p></p>")
_text = "";
}
// cms.businesslogic.Content.GetContentFromVersion(_version).getProperty(_alias).Value = Text;
_data.Value = Text;
}
private string replaceMacroTags(string text)
{
while (findStartTag(text) > -1)
{
string result = text.Substring(findStartTag(text), findEndTag(text) - findStartTag(text));
text = text.Replace(result, generateMacroTag(result));
}
return text;
}
private string generateMacroTag(string macroContent)
{
string macroAttr = macroContent.Substring(5, macroContent.IndexOf(">") - 5);
string macroTag = "|||?UMBRACO_MACRO ";
Hashtable attributes = ReturnAttributes(macroAttr);
IDictionaryEnumerator ide = attributes.GetEnumerator();
while (ide.MoveNext())
{
if (ide.Key.ToString().IndexOf("umb_") != -1)
macroTag += ide.Key.ToString().Substring(4, ide.Key.ToString().Length - 4) + "=|*|" +
ide.Value.ToString() + "|*| ";
}
macroTag += "/|||";
return macroTag;
}
public static Hashtable ReturnAttributes(String tag)
{
Hashtable ht = new Hashtable();
MatchCollection m =
Regex.Matches(tag, "(?<attributeName>\\S*)=\"(?<attributeValue>[^\"]*)\"",
RegexOptions.IgnoreCase | RegexOptions.IgnorePatternWhitespace);
foreach (Match attributeSet in m)
ht.Add(attributeSet.Groups["attributeName"].Value.ToString(),
attributeSet.Groups["attributeValue"].Value.ToString());
return ht;
}
private int findStartTag(string text)
{
string temp = "";
text = text.ToLower();
if (text.IndexOf("ismacro=\"true\"") > -1)
{
temp = text.Substring(0, text.IndexOf("ismacro=\"true\""));
return temp.LastIndexOf("<");
}
return -1;
}
private int findEndTag(string text)
{
string find = "<!-- endumbmacro --></div>";
return text.ToLower().IndexOf("<!-- endumbmacro --></div>") + find.Length;
}
private void initButtons()
{
if (!_isInitialized)
{
_isInitialized = true;
// Test for browser compliance
if (_browserIsCompatible)
{
// Add icons for the editor control:
// Html
// Preview
// Style picker, showstyles
// Bold, italic, Text Gen
// Align: left, center, right
// Lists: Bullet, Ordered, indent, undo indent
// Link, Anchor
// Insert: Image, macro, table, formular
_buttons.Add(
new editorButton("html", ui.Text("buttons", "htmlEdit", null),
GlobalSettings.Path + "/images/editor/html.gif", "viewHTML('" + ClientID + "')"));
_buttons.Add("split");
_buttons.Add(
new editorButton("showstyles", ui.Text("buttons", "styleShow", null) + " (CTRL+SHIFT+V)",
GlobalSettings.Path + "/images/editor/showStyles.gif",
"umbracoShowStyles('" + ClientID + "')"));
_buttons.Add("split");
_buttons.Add(
new editorButton("bold", ui.Text("buttons", "bold", null) + " (CTRL+B)",
GlobalSettings.Path + "/images/editor/bold.gif",
"umbracoEditorCommand('" + ClientID + "', 'bold', '')"));
_buttons.Add(
new editorButton("italic", ui.Text("buttons", "italic", null) + " (CTRL+I)",
GlobalSettings.Path + "/images/editor/italic.gif",
"umbracoEditorCommand('" + ClientID + "', 'italic', '')"));
_buttons.Add(
new editorButton("graphicheadline", ui.Text("buttons", "graphicHeadline", null) + "(CTRL+B)",
GlobalSettings.Path + "/images/editor/umbracoTextGen.gif",
"umbracoTextGen('" + ClientID + "')"));
_buttons.Add("split");
_buttons.Add(
new editorButton("justifyleft", ui.Text("buttons", "justifyLeft", null),
GlobalSettings.Path + "/images/editor/left.gif",
"umbracoEditorCommand('" + ClientID + "', 'justifyleft', '')"));
_buttons.Add(
new editorButton("justifycenter", ui.Text("buttons", "justifyCenter", null),
GlobalSettings.Path + "/images/editor/center.gif",
"umbracoEditorCommand('" + ClientID + "', 'justifycenter', '')"));
_buttons.Add(
new editorButton("justifyright", ui.Text("buttons", "justifyRight", null),
GlobalSettings.Path + "/images/editor/right.gif",
"umbracoEditorCommand('" + ClientID + "', 'justifyright', '')"));
_buttons.Add("split");
_buttons.Add(
new editorButton("listBullet", ui.Text("buttons", "listBullet", null),
GlobalSettings.Path + "/images/editor/bullist.gif",
"umbracoEditorCommand('" + ClientID + "', 'insertUnorderedList', '')"));
_buttons.Add(
new editorButton("listNumeric", ui.Text("buttons", "listNumeric", null),
GlobalSettings.Path + "/images/editor/numlist.gif",
"umbracoEditorCommand('" + ClientID + "', 'insertOrderedList', '')"));
_buttons.Add(
new editorButton("deindent", ui.Text("buttons", "deindent", null),
GlobalSettings.Path + "/images/editor/deindent.gif",
"umbracoEditorCommand('" + ClientID + "', 'Outdent', '')"));
_buttons.Add(
new editorButton("indent", ui.Text("buttons", "indent", null),
GlobalSettings.Path + "/images/editor/inindent.gif",
"umbracoEditorCommand('" + ClientID + "', 'Indent', '')"));
_buttons.Add("split");
_buttons.Add(
new editorButton("linkInsert", ui.Text("buttons", "linkInsert", null),
GlobalSettings.Path + "/images/editor/link.gif",
"umbracoLink('" + ClientID + "')"));
_buttons.Add(
new editorButton("linkLocal", ui.Text("buttons", "linkLocal", null),
GlobalSettings.Path + "/images/editor/anchor.gif",
"umbracoAnchor('" + ClientID + "')"));
_buttons.Add("split");
_buttons.Add(
new editorButton("pictureInsert", ui.Text("buttons", "pictureInsert", null),
GlobalSettings.Path + "/images/editor/image.gif",
"umbracoImage('" + ClientID + "')"));
_buttons.Add(
new editorButton("macroInsert", ui.Text("buttons", "macroInsert", null),
GlobalSettings.Path + "/images/editor/insMacro.gif",
"umbracoInsertMacro('" + ClientID + "', '" + GlobalSettings.Path + "')"));
_buttons.Add(
new editorButton("tableInsert", ui.Text("buttons", "tableInsert", null),
GlobalSettings.Path + "/images/editor/instable.gif",
"umbracoInsertTable('" + ClientID + "', '" + GlobalSettings.Path + "')"));
_buttons.Add(
new editorButton("formFieldInsert", ui.Text("buttons", "formFieldInsert", null),
GlobalSettings.Path + "/images/editor/form.gif",
"umbracoInsertForm('" + ClientID + "', '" + GlobalSettings.Path + "')"));
// add save icon
foreach (object o in _buttons)
{
try
{
MenuIconI menuItem = new MenuIconClass();
editorButton e = (editorButton)o;
menuItem.OnClickCommand = e.onClickCommand;
menuItem.ImageURL = e.imageUrl;
menuItem.AltText = e.alttag;
menuItem.ID = e.id;
_menuIcons.Add(menuItem);
}
catch
{
_menuIcons.Add("|");
}
}
}
}
}
protected override void OnLoad(EventArgs e)
{
base.OnLoad(e);
Page.ClientScript.RegisterClientScriptInclude(Page.GetType(), "UMBRACO_EDITOR", GlobalSettings.Path + "/js/editorBarFunctions.js");
}
/// <summary>
/// Render this control to the output parameter specified.
/// </summary>
/// <param name="output"> The HTML writer to write out to </param>
protected override void Render(HtmlTextWriter output)
{
if (_browserIsCompatible)
{
base.Render(output);
output.Write("<iframe name=\"" + ClientID + "_holder\" id=\"" + ClientID +
"_holder\" style=\"border: 0px; width: 100%; height: 100%\" frameborder=\"0\" src=\"" +
GlobalSettings.Path + "/richTextHolder.aspx?nodeId=" + _data.NodeId.ToString() +
"&versionId=" + _data.Version.ToString() + "&propertyId=" + _data.PropertyId.ToString() +
"\"></iframe>");
output.Write("<input type=\"hidden\" name=\"" + ClientID + "_source\" value=\"\">");
string strScript = "function umbracoRichTextSave" + ClientID + "() {\nif (document.frames[\"" +
ClientID + "_holder\"].document.getElementById(\"holder\")) document.getElementById(\"" +
ClientID + "\").value = document.frames[\"" + ClientID +
"_holder\"].document.getElementById(\"holder\").innerHTML;\n}" +
"addSaveHandler('umbracoRichTextSave" + ClientID + "();');";
try
{
if (ScriptManager.GetCurrent(Page).IsInAsyncPostBack)
ScriptManager.RegisterClientScriptBlock(this, this.GetType(), "umbracoRichTextSave" + this.ClientID, strScript, true);
else
Page.ClientScript.RegisterStartupScript(this.GetType(), "umbracoRichTextSave" + this.ClientID, strScript, true);
}
catch
{
Page.ClientScript.RegisterStartupScript(this.GetType(), "umbracoRichTextSave" + this.ClientID, strScript, true);
}
}
else
{
output.WriteLine("<textarea name=\"" + ClientID + "\" style=\"width: 100%; height: 95%\">" +
HttpContext.Current.Server.HtmlEncode(base.Value.Trim()) +
"</textarea>");
output.WriteLine(
"<p class=\"guiDialogTiny\"><i>(Unfortunately WYSIWYG editing is only useLiveEditing in Internet Explorer on Windows. <a href=\"http://umbraco.org/various/cross-platform.aspx\" target=\"_blank\">More info</a>)</i></p>");
}
}
}
}
File diff suppressed because it is too large Load Diff
@@ -1,52 +0,0 @@
<%@ Page language="c#" Codebehind="edit.aspx.cs" AutoEventWireup="True" Inherits="umbraco.cms.presentation.edit" %>
<HTML>
<HEAD>
<script>
function resizeTabView(TabPageArr, TabViewName) {
var clientHeight =(document.compatMode=="CSS1Compat")?document.documentElement.clientHeight : document.body.clientHeight;
var clientWidth = document.body.clientWidth;
var leftWidth = parseInt(clientWidth*0.28);
var rightWidth = clientWidth; // leftWidth - 40;
newWidth = rightWidth; //-20;
newHeight = clientHeight-37;
document.getElementById(TabViewName + "_container").style.width = newWidth + "px";
document.getElementById(TabViewName + "_container").style.height = newHeight + "px";
//document.getElementById(TabViewName + "_container").style.border = "1px solid";
for (i=0;i<TabPageArr.length;i++) {
scrollwidth = newWidth - 32;
document.getElementById(TabPageArr[i] +"layer").style.height = (newHeight-100) + "px";
document.getElementById(TabPageArr[i] +"layer_menu").style.width = scrollwidth + "px";
document.getElementById(TabPageArr[i] +"layer_menu_slh").style.width = scrollwidth + "px";
}
}
// Save handlers for IDataFields
var saveHandlers = new Array()
function addSaveHandler(handler) {
saveHandlers[saveHandlers.length] = handler;
}
function invokeSaveHandlers() {
for (var i=0;i<saveHandlers.length;i++) {
eval(saveHandlers[i]);
}
}
</script>
<LINK href="css/umbracoGui.css" type="text/css" rel="stylesheet">
</HEAD>
<body ms_positioning="GridLayout" onload="resizeTabView(TabView1_tabs, 'TabView1')" onresize="resizeTabView(TabView1_tabs, 'TabView1')"
bgColor="#f2f2e9">
<form runat=server id=contentForm>
<INPUT id="doSave" type="hidden" name="doSave" runat="server">
<INPUT id="doPublish" type="hidden" name="doPublish" runat="server">
<asp:PlaceHolder id="plc" Runat="server"></asp:PlaceHolder>
</form>
</body>
</HTML>
@@ -1,52 +0,0 @@
using System;
using System.Collections;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Web;
using System.Web.SessionState;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.HtmlControls;
namespace umbraco.cms.presentation
{
/// <summary>
/// Summary description for edit.
/// </summary>
public partial class edit : BasePages.UmbracoEnsuredPage
{
protected uicontrols.TabView TabView1;
protected System.Web.UI.WebControls.TextBox documentName;
private cms.businesslogic.media.Media _document;
controls.ContentControl tmp;
protected void Page_Load(object sender, System.EventArgs e)
{
_document = new cms.businesslogic.media.Media(int.Parse(Request.QueryString["id"]));
tmp = new controls.ContentControl(_document,controls.ContentControl.publishModes.NoPublish, "TabView1");
tmp.Width = Unit.Pixel(666);
tmp.Height = Unit.Pixel(666);
plc.Controls.Add(tmp);
}
#region Web Form Designer generated code
override protected void OnInit(EventArgs e)
{
//
// CODEGEN: This call is required by the ASP.NET Web Form Designer.
//
InitializeComponent();
base.OnInit(e);
}
/// <summary>
/// Required method for Designer support - do not modify
/// the contents of this method with the code editor.
/// </summary>
private void InitializeComponent()
{
}
#endregion
}
}
@@ -1,19 +0,0 @@
//------------------------------------------------------------------------------
// <auto-generated>
// This code was generated by a tool.
// Runtime Version:2.0.50727.42
//
// Changes to this file may cause incorrect behavior and will be lost if
// the code is regenerated.
// </auto-generated>
//------------------------------------------------------------------------------
namespace umbraco.cms.presentation {
public partial class edit {
protected System.Web.UI.HtmlControls.HtmlForm contentForm;
protected System.Web.UI.HtmlControls.HtmlInputHidden doSave;
protected System.Web.UI.HtmlControls.HtmlInputHidden doPublish;
protected System.Web.UI.WebControls.PlaceHolder plc;
}
}
@@ -1,109 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<root>
<!--
Microsoft ResX Schema
Version 1.3
The primary goals of this format is to allow a simple XML format
that is mostly human readable. The generation and parsing of the
various data types are done through the TypeConverter classes
associated with the data types.
Example:
... ado.net/XML headers & schema ...
<resheader name="resmimetype">text/microsoft-resx</resheader>
<resheader name="version">1.3</resheader>
<resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
<resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
<data name="Name1">this is my long string</data>
<data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
<data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
[base64 mime encoded serialized .NET Framework object]
</data>
<data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
[base64 mime encoded string representing a byte array form of the .NET Framework object]
</data>
There are any number of "resheader" rows that contain simple
name/value pairs.
Each data row contains a name, and value. The row also contains a
type or mimetype. Type corresponds to a .NET class that support
text/value conversion through the TypeConverter architecture.
Classes that don't support this are serialized and stored with the
mimetype set.
The mimetype is used forserialized objects, and tells the
ResXResourceReader how to depersist the object. This is currently not
extensible. For a given mimetype the value must be set accordingly:
Note - application/x-microsoft.net.object.binary.base64 is the format
that the ResXResourceWriter will generate, however the reader can
read any of the formats listed below.
mimetype: application/x-microsoft.net.object.binary.base64
value : The object must be serialized with
: System.Serialization.Formatters.Binary.BinaryFormatter
: and then encoded with base64 encoding.
mimetype: application/x-microsoft.net.object.soap.base64
value : The object must be serialized with
: System.Runtime.Serialization.Formatters.Soap.SoapFormatter
: and then encoded with base64 encoding.
mimetype: application/x-microsoft.net.object.bytearray.base64
value : The object must be serialized into a byte array
: using a System.ComponentModel.TypeConverter
: and then encoded with base64 encoding.
-->
<xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
<xsd:element name="root" msdata:IsDataSet="true">
<xsd:complexType>
<xsd:choice maxOccurs="unbounded">
<xsd:element name="data">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
<xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" msdata:Ordinal="1" />
<xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
<xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
</xsd:complexType>
</xsd:element>
<xsd:element name="resheader">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" use="required" />
</xsd:complexType>
</xsd:element>
</xsd:choice>
</xsd:complexType>
</xsd:element>
</xsd:schema>
<resheader name="resmimetype">
<value>text/microsoft-resx</value>
</resheader>
<resheader name="version">
<value>1.3</value>
</resheader>
<resheader name="reader">
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<resheader name="writer">
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<data name="$this.TrayLargeIcon" type="System.Boolean, mscorlib, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>False</value>
</data>
<data name="$this.TrayAutoArrange" type="System.Boolean, mscorlib, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>True</value>
</data>
<data name="$this.DefaultModifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>Private</value>
</data>
</root>
@@ -1,181 +0,0 @@
using System;
using System.Data;
using System.Configuration;
using System.Collections;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;
using System.Text;
using umbraco.cms.presentation.Trees;
namespace umbraco.presentation.controls {
public class CheckboxTree : System.Web.UI.WebControls.TreeView {
protected override void OnInit(EventArgs e) {
base.OnInit(e);
if (ScriptManager.GetCurrent(this.Page) == null)
throw new Exception("This control requires a ScriptManager");
//RenderJS();
RenderJS();
}
protected override void Render(HtmlTextWriter writer) {
base.Render(writer);
}
/// <summary>
/// Return the instance on the loadContent class. This lazily instantiates the loadContent object and if it is
/// already created, it will return the already created instance.
/// </summary>
private loadContent ContentTree {
get {
if (m_contentTree != null)
return m_contentTree;
m_contentTree = new loadContent("content");
m_contentTree.FunctionToCall = m_clientNodeClicked;
m_contentTree.IsDialog = true;
m_contentTree.DialogMode = TreeDialogModes.id;
return m_contentTree;
}
}
private loadContent m_contentTree;
private string m_clientNodeChecked = "void(0);";
private string m_clientNodeClicked = "void(0);";
private bool m_showCheckBoxes = true;
private string m_imagesRootPath = GlobalSettings.Path + "/images/umbraco/";
private string m_unpublishedColor = "#999999";
/// <summary>
/// The JavaScript method to call when a node is clicked. The method will receive a node ID as it's parameter.
/// </summary>
public string OnClientNodeClicked {
get { return m_clientNodeClicked; }
set { m_clientNodeClicked = value; }
}
/// <summary>
/// The JavaScript method to call when a node is checked. The method will receive a comma seperated list of node IDs that are checked.
/// </summary>
public string OnClientNodeChecked {
get { return m_clientNodeChecked; }
set { m_clientNodeChecked = value; }
}
public bool ShowCheckBoxes {
get { return m_showCheckBoxes; }
set { m_showCheckBoxes = value; }
}
public string ImagesRootPath {
get { return m_imagesRootPath; }
set { m_imagesRootPath = value; }
}
public string UnpublishedColor {
get { return m_unpublishedColor; }
set { m_unpublishedColor = value; }
}
/// <summary>
/// The JavaScript function that is called when a node is checked
/// </summary>
protected const string JSSelectNode = "ContentTreeControl_CheckedNode";
/// <summary>
/// Registers JavaScript for the contentTree
/// </summary>
private void RenderJS() {
StringBuilder sb = new StringBuilder();
ContentTree.RenderJS(ref sb);
Page.ClientScript.RegisterClientScriptBlock(this.GetType(), "treeJS", sb.ToString(), true);
}
/// <summary>
/// Get the XmlTree for the Content Tree for the node ID passed in.
/// </summary>
/// <param name="nodeID"></param>
/// <returns></returns>
public static XmlTree GetNodeData(int? nodeID, CheckboxTree cbTree) {
XmlTree xTree = new XmlTree();
cbTree.ContentTree.id = (nodeID == null ? cbTree.ContentTree.StartNodeID : nodeID.Value);
cbTree.ContentTree.Render(ref xTree);
return xTree;
}
/// <summary>
/// Converts an XmlTree to a TreeNodeCollection
/// </summary>
/// <param name="xTree"></param>
/// <param name="parentNode"></param>
/// <returns></returns>
public static TreeNodeCollection FromXmlTree(XmlTree xTree, TreeNode parentNode, CheckboxTree cbTree) {
TreeNodeCollection nodes = new TreeNodeCollection(parentNode);
foreach (XmlTreeNode xNode in xTree) {
if (xNode != null) {
TreeNode node = FromXmlTreeNode(xNode, cbTree);
nodes.Add(node);
}
}
return nodes;
}
/// <summary>
/// Converts an XmlTreeNode to a TreeNode
/// </summary>
/// <param name="xNode"></param>
/// <returns></returns>
public static TreeNode FromXmlTreeNode(XmlTreeNode xNode, CheckboxTree cbTree) {
TreeNode node = new TreeNode(xNode.Text, xNode.NodeID, cbTree.ImagesRootPath + xNode.Icon, xNode.Action, "");
node.ImageUrl = "";
node.PopulateOnDemand = (string.IsNullOrEmpty(xNode.Source) ? false : true);
//node.SelectAction = (string.IsNullOrEmpty(xNode.Source) ? TreeNodeSelectAction.Select : TreeNodeSelectAction.Expand);
node.SelectAction = TreeNodeSelectAction.None;
string nodeMarkup = "";
//add our custom checkbox
if (cbTree.ShowCheckBoxes)
nodeMarkup += string.Format("<span class=\"treeCheckBox\"><input type='checkbox' id='{0}' name='{0}' value='{1}' onclick='{2}(this);' /></span>",
"chk" + node.Value, node.Value, cbTree.OnClientNodeChecked);
if (xNode.Icon.StartsWith(".")) {
nodeMarkup += "<div class=\"sprTree " + xNode.Icon.TrimStart('.') + "\"><img class=\"webfx-tree-icon\" src=\"../images/nada.gif\"/> </div>";
} else {
nodeMarkup += "<span class=\"treeIcon\"><img src=\"" + cbTree.ImagesRootPath + xNode.Icon + "\"/></span>";
}
//show the node as being not published
if (xNode.NotPublished.Value)
nodeMarkup += string.Format("<span class=\"treeText\" style='color:{0};'>{1}</span>", cbTree.UnpublishedColor, node.Text);
else {
nodeMarkup += string.Format("<span class=\"treeText\">{0}</span>", node.Text);
}
node.Text = nodeMarkup;
return node;
}
/*
/// <summary>
/// Populates child nodes on demand
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void objTree_TreeNodePopulate(object sender, TreeNodeEventArgs e) {
XmlTree xTree = GetNodeData(int.Parse(e.Node.Value));
TreeNodeCollection nodes = FromXmlTree(xTree, e.Node);
foreach (TreeNode node in nodes)
e.Node.ChildNodes.Add(node);
} */
}
}
@@ -1,23 +0,0 @@
using System;
namespace umbraco.controls
{
/// <summary>
/// Summary description for progressBar.
/// </summary>
public class progressBar : System.Web.UI.WebControls.WebControl
{
public progressBar()
{
}
protected override void Render(System.Web.UI.HtmlTextWriter writer)
{
writer.WriteLine("<div class=\"progressBar\"><table border=\"0\" cellspacing=\"0\" cellpadding=\"0\"><tr><td><div class=\"progressContainerLeft\" id=\"progressBar" + this.ClientID + "\" style=\"width: " + ((int) this.Width.Value+10).ToString() + "px\"><div class=\"progressIndicator\" style=\"width: 0px\"><img src=\"/umbraco/images/nada.gif\" id=\"progressBar" + this.ClientID + "_indicator\" width=\"0\" height=\"0\"/></div></div><div class=\"progressContainerRight\"><img src=\"/umbraco/images/nada.gif\" width=\"1\" height=\"1\"/></div><br style=\"clear: both\"/><span id=\"progressBar" + this.ClientID + "_text\" class=\"guiDialogTiny\" style=\"margin-top: 2px; width: 100%; text-align: center\"></span></td></tr></table><br class=\"guiDialogTiny\" style=\"clear: both\"/></div>");
}
}
}
@@ -1,80 +0,0 @@
using System;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.ComponentModel;
namespace umbraco.controls
{
/// <summary>
/// Summary description for windowCloser.
/// </summary>
[DefaultProperty("Text"),
ToolboxData("<{0}:windowCloser runat=server></{0}:windowCloser>")]
public class windowCloser : System.Web.UI.WebControls.WebControl
{
private string text;
private string secondText;
private string seconds;
[Bindable(true),
Category("Appearance"),
DefaultValue("")]
public string Text
{
get
{
return text;
}
set
{
text = value;
}
}
[Bindable(true),
Category("Appearance"),
DefaultValue("")]
public string SecondText
{
get
{
return secondText;
}
set
{
secondText = value;
}
}
[Bindable(true),
Category("Appearance"),
DefaultValue("")]
public string Seconds
{
get
{
return seconds;
}
set
{
seconds = value;
}
}
protected override void OnInit(EventArgs e)
{
Page.ClientScript.RegisterClientScriptBlock(this.GetType(), "windowCloser", "<script language=\"javascript\">\nfunction windowCloser(elementId, sec) {\n if (sec < 2) \n window.close();\n else {\n sec--;\n document.getElementById(elementId).innerHTML = sec;\n setTimeout('windowCloser(\\'' + elementId + '\\', ' + sec + ');', 1000);\n }\n}\n</script>");
base.OnInit (e);
}
/// <summary>
/// Render this control to the output parameter specified.
/// </summary>
/// <param name="output"> The HTML writer to write out to </param>
protected override void Render(HtmlTextWriter output)
{
output.Write(text + " <span id=\"timer\">" + seconds + "</span> " + secondText + "...\n</form>\n<script>\n windowCloser('timer', " + seconds + ");\n</script>");
}
}
}
Binary file not shown.

Before

Width:  |  Height:  |  Size: 44 B

-89
View File
@@ -1,89 +0,0 @@
#MB_overlay {
position: absolute;
margin: auto;
top: 0; left: 0;
width: 100%; height: 100%;
z-index: 9999;
background-color: #000!important;
}
#MB_overlay[id] { position: fixed; }
#MB_window {
position: absolute;
top: 0;
border: 0 solid;
text-align: left;
z-index: 10000;
}
#MB_window[id] { position: fixed!important; }
#MB_frame {
position: relative;
background-color: #fff;
height: 100%;
}
#MB_header {
margin: 0;
padding: 0;
}
#MB_content {
padding: 0px;
overflow: hidden;
height: 100%;
}
#MB_caption {
font: bold 100% "Lucida Grande", Arial, sans-serif;
text-shadow: #FFF 0 1px 0;
padding: .5em 2em .5em .75em;
margin: 0;
text-align: left;
}
#MB_close {
display: block;
position: absolute;
right: 5px; top: 4px;
padding: 2px 3px;
font-weight: bold;
text-decoration: none;
font-size: 13px;
}
#MB_close:hover {
background: transparent;
}
#MB_loading {
padding: 1.5em;
text-indent: -10000px;
background: transparent url(spinner.gif) 50% 0 no-repeat;
}
/* Color scheme */
#MB_frame {
padding-bottom: 0px;
}
#MB_window {
background-color: #EFEFEF;
color: #000;
}
#MB_content {border-top: 1px solid #F9F9F9; }
#MB_header {
background: url(../images/modalGradiant.gif) repeat-x bottom #fff;
border-bottom: 1px solid #CCC;
}
#MB_caption { color: #378080 }
#MB_close { color: #777 }
#MB_close:hover { color: #000 }
/* Alert message */
.MB_alert {
margin: 10px 0;
text-align: center;
}
-267
View File
@@ -1,267 +0,0 @@
/* menu body */
.menu-body {
color: Black;
margin: 0;
padding: 0;
overflow: hidden;
border: 0;
cursor: default;
}
.menu-body .outer-border {
border: 1px solid #666666;
margin: 0;
padding: 0;
}
.menu-body .inner-border {
width: 100%;
border: 1px solid #f9f8f7;
border-width: 1px 0 1px 0;
padding: 0 1px 0 1px;
margin: 0;
background: #f9f8f7 url("background.gif") repeat-y;
}
/* menu body */
/*****************************************************************************/
/* menu items */
.menu-body td {
font: Menu;
color: Black;
}
.menu-body .hover td {
background-color: #FFEEC2;
}
.menu-body .disabled-hover td {
background-color: white;
}
.menu-body td.empty-icon-cell {
padding: 2px;
border: 0;
}
.menu-body td.empty-icon-cell span {
width: 16px;
}
.menu-body td.icon-cell {
padding: 2px;
border: 0;
}
.menu-body td.icon-cell img {
width: 16px;
height: 16px;
margin: 0;
}
.menu-body .hover td.icon-cell img {
filter: none;
position: relative;
left: 0px;
top: 0px;
}
.menu-body .disabled-hover td.icon-cell img,
.menu-body .disabled td.icon-cell img {
display: static;
filter: Gray() Alpha(Opacity=40);
}
.menu-body .disabled-hover td.empty-icon-cell,
.menu-body .hover td.empty-icon-cell,
.menu-body .disabled-hover td.icon-cell,
.menu-body .hover td.icon-cell {
border: 1px solid #0A246A;
border-right: 0;
padding: 1px 2px 1px 1px;
}
.menu-body td.label-cell {
width: 100%;
padding: 2px 5px 2px 5px;
border: 0;
}
.menu-body .disabled-hover td.label-cell,
.menu-body .hover td.label-cell,
.menu-body .disabled-hover td.shortcut-cell,
.menu-body .hover td.shortcut-cell {
padding: 1px 5px 1px 5px;
border: 1px solid #0A246A;
border-left: 0;
border-right: 0;
}
.menu-body td.shortcut-cell {
padding: 2px 5px 2px 5px;
}
.menu-body td.arrow-cell {
width: 20px;
padding: 2px 2px 2px 0px;
font-family: Webdings,Lucida Grande;
}
/* end menu items */
/*****************************************************************************/
/* disabled items */
.menu-body .disabled-hover td.arrow-cell,
.menu-body .hover td.arrow-cell {
padding: 1px 1px 1px 0px;
border: 1px solid #0A246A;
border-left: 0;
}
.menu-body #scroll-up-item td,
.menu-body #scroll-down-item td {
font-family: Webdings !important;
text-align: center;
padding: 10px;
}
.menu-body .disabled td {
color: #cccccc;
}
.menu-body .disabled-hover td {
background-color: white;
color: #cccccc;
}
/* end disabled items */
/*****************************************************************************/
/* separator */
.menu-body .separator td {
font-size: 0.001mm;
padding: 1px 0px 1px 27px;
}
.menu-body .separator-line {
overflow: hidden;
border-top: 1px solid #dbd8d1;
height: 1px;
}
/* end separator */
/*****************************************************************************/
/* Scroll buttons */
.menu-body #scroll-up-item,
.menu-body #scroll-down-item {
width: 100%;
}
.menu-body #scroll-up-item td,
.menu-body #scroll-down-item td {
font-family: Webdings;
text-align: center;
padding: 1px 5px 1px 5px;
}
.menu-body #scroll-up-item .disabled-hover td,
.menu-body #scroll-up-item .hover td,
.menu-body #scroll-down-item .disabled-hover td,
.menu-body #scroll-down-item .hover td {
border: 1px solid #0A246A;
padding: 0px 4px 0px 4px;
}
/* End scroll buttons */
/*****************************************************************************/
/* radio and check box items */
.menu-body .checked {
padding: 0px;
}
.menu-body .checked.hover {
padding: 0px;
}
.menu-body .checked .check-box,
.menu-body .checked .radio-button {
display: inline-block;
font-family: Webdings;
overflow: hidden;
color: MenuText;
text-align: center;
vertical-align: center;
background-color: #b6bdd2;
border: 1px solid #0A246A;
}
.menu-body .check-box {
width: 19px;
height: 19px;
font-size: 133%;
padding-bottom: 5px;
padding-left: 1px;
}
.menu-body .radio-button {
width: 19px;
height: 19px;
font-size: 50%;
padding: 5px;
}
/* end radio and check box items */
/*****************************************************************************/
/* Menu Bar */
.menu-bar {
background: ButtonFace;
cursor: default;
padding: 1px;
}
.menu-bar .menu-button {
background: ButtonFace;
color: ButtonText;
font: Menu;
padding: 3px 7px 3px 7px;
border: 0;
margin: 0;
display: inline-block;
white-space: nowrap;
cursor: default;
}
.menu-bar .menu-button.active {
background: #dbd8d1;
padding: 2px 6px 3px 6px;
border: 1px solid #666666;
border-bottom: 0;
}
.menu-bar .menu-button.hover {
background: #b6bdd2;
padding: 2px 6px 2px 6px;
border-width: 1px;
border-style: solid;
@@ -1,131 +0,0 @@
#cmenu
{
background: #f0f0f0 url(../images/contextMenuBg.gif) repeat-y left;
border:1px solid #979797;
padding: 3px;
width: 180px;
}
.menuicon,.menuiconon
{
cursor:pointer;
font-family:Arial,Lucida Grande;
font-size:11px;
height:20px;
margin:1px;
color: #1a1818;
}
.menuicon {
padding:2px;
}
.menuiconon {
padding:1px;
background:#dcecf3;
border: 1px solid #a8d8eb;
}
#cmenu img {
height:16px;
width:16px;
margin:1px 10px 0 2px;
}
#cmenu .splitter {
border-top: 1px solid #e0e0e0;
border-bottom: 1px solid #fff;
height:0px;
margin:4px 0px 4px 28px;
padding: 0px;
display:block;
width: 150px;
}
/* css sprites */
.menuSpr {
float: left;
background-image: url(../images/actions/sprites.png);
background-position: -7px -8px;
margin: 1px 13px 1px 0px;
margin-top: 1px;
width: 17px;
height: 16px;
}
.sprNew {
background-position: -7px -339px;
}
.sprCreateFolder {
background-position: -7px -108px;
}
.sprSendToTranslate {
background-position: -7px -636px;
}
.sprBinEmpty {
background-position: -7px -42px;
}
.sprTranslate {
background-position: -7px -636px;
}
.sprSave {
background-position: -7px -603px;
}
.sprImportDocumentType {
background-position: -7px -273px;
}
.sprExportDocumentType {
background-position: -7px -240px;
}
.sprAudit {
background-position: -7px -8px;
}
.sprPackage2 {
background-position: -7px -405px;
}
.sprDelete {
background-position: -7px -174px;
}
.sprMove {
background-position: -7px -141px;
}
.sprCopy {
background-position: -7px -75px;
}
.sprSort {
background-position: -7px -670px;
}
.sprPermission {
background-position: -7px -438px;
}
.sprProtect {
background-position: -7px -471px;
}
.sprRollback {
background-position: -7px -570px;
}
.sprRefresh {
background-position: -7px -537px;
}
.sprNotify {
background-position: -7px -372px;
}
.sprUpdate {
background-position: -7px -603px;
}
.sprPublish {
background-position: -7px -504px;
}
.sprToPublish {
background-position: -7px -504px;
}
.sprLogout {
background-position: -7px -306px;
}
.sprDomain {
background-position: -7px -207px;
}
.sprLiveEdit {
background-position: -7px -706px;
}
Binary file not shown.

Before

Width:  |  Height:  |  Size: 343 B

@@ -1,39 +0,0 @@
.dynamic-tab-pane-control .tab-page {
height: 90%;
}
.dynamic-tab-pane-control .tab-page .dynamic-tab-pane-control .tab-page {
height: 100px;
}
html, body {
background: ThreeDFace;
}
form {
margin: 0;
padding: 0;
}
/* over ride styles from webfxlayout */
body {
margin: 10px;
width: auto;
height: auto;
}
.dynamic-tab-pane-control h2 {
text-align: center;
width: auto;
}
.dynamic-tab-pane-control h2 a {
display: inline;
width: auto;
}
.dynamic-tab-pane-control a:hover {
background: transparent;
}
-120
View File
@@ -1,120 +0,0 @@
.overlayHolder
{
position: relative;
display: inline;
}
.treeOverlay
{
filter: Alpha(Opacity=80);
position: absolute;
z-index: 500;
left: 8;
top: 6;
}
.newVersionOverlay
{
position: absolute;
z-index: 500;
left: 0px;
top: 0px;
width: 8px;
height: 8px;
background: no-repeat url(../images/newVersion_overlay.png);
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/newVersion_overlay.png');
}
.newProtectOverlay
{
position: absolute;
z-index: 500;
left: 6px;
top: 9px;
width: 8px;
height: 8px;
background: no-repeat url(../images/protect_overlay.gif);
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/protect_overlay.gif');
}
.webfx-tree-container
{
margin: 0px;
padding: 0px;
font: icon;
white-space: nowrap;
}
.webfx-tree-item
{
padding: 0px 0px 4px 0px;
margin: 0px;
font: icon;
color: WindowText;
white-space: nowrap;
height: 16px;
}
.webfx-tree-item a, .webfx-tree-item a:active, .webfx-tree-item a:hover
{
}
.webfx-tree-item a
{
color: #2f2f2f;
text-decoration: none;
outline: none;
}
.webfx-tree-item a:hover
{
text-decoration: underline;
}
.webfx-tree-item a:active
{
text-decoration: none;
}
.webfx-tree-item img
{
vertical-align: middle;
border: 0px;
}
.webfx-tree-icon
{
width: 16px;
height: 16px;
padding-right: 7px;
}
.umbraco-tree-icon-grey
{
filter: Alpha(Opacity=30);
}
/*
keep strong focus instead of different selector colors on inactive/active
.webfx-tree-item a.selected-inactive, .webfx-tree-item a.selected {
color: windowtext;
background: #e5e5e5;
border: 1px solid #d9d9d9;
padding: 2px;
}
*/
.webfx-tree-item a.selected-inactive, .webfx-tree-item a.selected
{
color: windowtext;
background: #d5effc;
border: 1px solid #99defd;
-moz-border-radius: 2px;
-webkit-border-radius: 2px;
padding: 1px;
}
@@ -1,71 +0,0 @@
<%@ Page language="c#" Codebehind="editCell.aspx.cs" AutoEventWireup="True" Inherits="umbraco.dialogs.editCell" %>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" >
<HTML>
<HEAD>
<title>umbraco :: <%=umbraco.ui.Text("defaultdialogs", "insertformfield", this.getUser())%> &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;</title>
<meta name="GENERATOR" Content="Microsoft Visual Studio .NET 7.1">
<meta name="CODE_LANGUAGE" Content="C#">
<meta name="vs_defaultClientScript" content="JavaScript">
<meta name="vs_targetSchema" content="http://schemas.microsoft.com/intellisense/ie5">
<LINK href="../css/umbracoGui.css" type="text/css" rel="stylesheet">
<style>body {margin: 2px;}</style>
<SCRIPT LANGUAGE="JavaScript">
<!--
function editCell()
{
window.returnValue = document.forms[0].cellWidth.value + ',\'' +
document.forms[0].tableAlign[document.forms[0].tableAlign.selectedIndex].text + '\', \'' +
document.forms[0].tableVAlign[document.forms[0].tableVAlign.selectedIndex].text + '\', \'\'';
window.close();
}
function undoCell()
{
window.returnValue = '<%=umbraco.helper.Request("width")%>';
window.close();
}
//-->
</SCRIPT>
</HEAD>
<body MS_POSITIONING="GridLayout">
<h3><%=umbraco.ui.Text("defaultdialogs", "insertlink", this.getUser())%></h3>
<form id="Form1" method="post" runat="server">
<TABLE class="propertyPane" id="macroProperties" cellSpacing="0" cellPadding="4" width="98%"
border="0" runat="server">
<TBODY>
<TR>
<TD class="guiDialogForm">
<%=umbraco.ui.Text("width")%>
</td>
<td>
<input type="text" size="4" maxlength="10" class="guiInputText" name="cellWidth" value="<%=umbraco.helper.Request("width")%>">
</td>
</tr>
<TR>
<TD class="guiDialogForm">
<%=umbraco.ui.Text("justify")%>
</td>
<td>
<asp:DropDownList Runat="server" id="tableAlign" CssClass="guiInputText"></asp:DropDownList>
</td>
</tr>
<TR>
<TD class="guiDialogForm">
<%=umbraco.ui.Text("justifyVertical")%>
</td>
<td>
<asp:DropDownList Runat="server" id="tableVAlign" CssClass="guiInputText"></asp:DropDownList>
</select><br/><br/>
<input type="button" class="guiInputButton" onClick="undoCell()" value="Fortryd"> &nbsp;
<input type="button" class="guiInputButton" onClick="editCell()" value="Opdatér">
</td>
</tr>
</tbody>
</TABLE>
</form>
</body>
</HTML>
@@ -1,61 +0,0 @@
using System;
using System.Collections;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Web;
using System.Web.SessionState;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.HtmlControls;
namespace umbraco.dialogs
{
/// <summary>
/// Summary description for editCell.
/// </summary>
public partial class editCell : BasePages.UmbracoEnsuredPage
{
protected void Page_Load(object sender, System.EventArgs e)
{
string[] aligns = {"", "left", "center", "right"};
string[] valigns = {"", "top", "middle", "bottom"};
foreach(string s in aligns)
{
ListItem li = new ListItem(s, s);
if (s == helper.Request("align").ToLower())
li.Selected = true;
tableAlign.Items.Add(li);
}
foreach(string s in valigns)
{
ListItem li = new ListItem(s, s);
if (s == helper.Request("valign").ToLower())
li.Selected = true;
tableVAlign.Items.Add(li);
}
}
#region Web Form Designer generated code
override protected void OnInit(EventArgs e)
{
//
// CODEGEN: This call is required by the ASP.NET Web Form Designer.
//
InitializeComponent();
base.OnInit(e);
}
/// <summary>
/// Required method for Designer support - do not modify
/// the contents of this method with the code editor.
/// </summary>
private void InitializeComponent()
{
}
#endregion
}
}
@@ -1,52 +0,0 @@
//------------------------------------------------------------------------------
// <auto-generated>
// This code was generated by a tool.
// Runtime Version:2.0.50727.3082
//
// Changes to this file may cause incorrect behavior and will be lost if
// the code is regenerated.
// </auto-generated>
//------------------------------------------------------------------------------
namespace umbraco.dialogs {
public partial class editCell {
/// <summary>
/// Form1 control.
/// </summary>
/// <remarks>
/// Auto-generated field.
/// To modify move field declaration from designer file to code-behind file.
/// </remarks>
protected global::System.Web.UI.HtmlControls.HtmlForm Form1;
/// <summary>
/// macroProperties control.
/// </summary>
/// <remarks>
/// Auto-generated field.
/// To modify move field declaration from designer file to code-behind file.
/// </remarks>
protected global::System.Web.UI.HtmlControls.HtmlTable macroProperties;
/// <summary>
/// tableAlign control.
/// </summary>
/// <remarks>
/// Auto-generated field.
/// To modify move field declaration from designer file to code-behind file.
/// </remarks>
protected global::System.Web.UI.WebControls.DropDownList tableAlign;
/// <summary>
/// tableVAlign control.
/// </summary>
/// <remarks>
/// Auto-generated field.
/// To modify move field declaration from designer file to code-behind file.
/// </remarks>
protected global::System.Web.UI.WebControls.DropDownList tableVAlign;
}
}
@@ -1,42 +0,0 @@
<?xml version="1.0" encoding="utf-8" ?>
<root>
<xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
<xsd:element name="root" msdata:IsDataSet="true">
<xsd:complexType>
<xsd:choice maxOccurs="unbounded">
<xsd:element name="data">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
<xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" />
<xsd:attribute name="type" type="xsd:string" />
<xsd:attribute name="mimetype" type="xsd:string" />
</xsd:complexType>
</xsd:element>
<xsd:element name="resheader">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" use="required" />
</xsd:complexType>
</xsd:element>
</xsd:choice>
</xsd:complexType>
</xsd:element>
</xsd:schema>
<resheader name="ResMimeType">
<value>text/microsoft-resx</value>
</resheader>
<resheader name="Version">
<value>1.0.0.0</value>
</resheader>
<resheader name="Reader">
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<resheader name="Writer">
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
</root>
@@ -1,52 +0,0 @@
<%@ Page language="c#" Codebehind="insertAnchor.aspx.cs" AutoEventWireup="True" Inherits="umbraco.dialogs.insertAnchor" %>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" >
<html>
<head>
<title>umbraco :: <%=umbraco.ui.Text("defaultdialogs", "insertAnchor", this.getUser())%> &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;</title>
<meta name="GENERATOR" Content="Microsoft Visual Studio .NET 7.1">
<meta name="CODE_LANGUAGE" Content="C#">
<meta name=vs_defaultClientScript content="JavaScript">
<meta name=vs_targetSchema content="http://schemas.microsoft.com/intellisense/ie5">
<LINK href="../css/umbracoGui.css" type="text/css" rel="stylesheet">
<style>body {margin: 2px;}</style>
<SCRIPT LANGUAGE="JavaScript">
<!--
function insertAnchor()
{
window.returnValue = document.forms[0].anchorName.value;
window.close();
}
function doSubmit() {insertAnchor();}
var functionsFrame = this;
var tabFrame = this;
var isDialog = true;
var submitOnEnter = true;
-->
</script>
<script type="text/javascript" src="../js/umbracoCheckKeys.js"></script>
</head>
<body MS_POSITIONING="GridLayout">
<h3><%=umbraco.ui.Text("defaultdialogs", "insertAnchor", this.getUser())%></h3>
<form id="Form1" method="post" runat="server">
<TABLE WIDTH="100%" CELLPADDING=4 CELLSPACING=0 class="propertyPane">
<TR>
<TD class="propertyHeader">
<%=umbraco.ui.Text("defaultdialogs", "anchorInsert", this.getUser())%>
</td>
<td class="propertyContent">
<input type="text" size="30" maxlength="100" class="guiInputText" name="anchorName" value="<%=Request.QueryString["anchorName"]%>"><br/><br/>
<input type="button" class="guiInputButton" onClick="insertAnchor()" value="<%=umbraco.ui.Text("general", "insert", this.getUser())%>">
&nbsp; <input type="button" class="guiInputButton" onClick="if (confirm('<%=umbraco.ui.Text("general", "areyousure", this.getUser())%>')) window.close();" value="<%=umbraco.ui.Text("general", "cancel", this.getUser())%>">
</td>
</tr>
</table><br />
</form>
</body>
</html>
@@ -1,43 +0,0 @@
using System;
using System.Collections;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Web;
using System.Web.SessionState;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.HtmlControls;
namespace umbraco.dialogs
{
/// <summary>
/// Summary description for insertAnchor.
/// </summary>
public partial class insertAnchor : BasePages.UmbracoEnsuredPage
{
protected void Page_Load(object sender, System.EventArgs e)
{
// Put user code to initialize the page here
}
#region Web Form Designer generated code
override protected void OnInit(EventArgs e)
{
//
// CODEGEN: This call is required by the ASP.NET Web Form Designer.
//
InitializeComponent();
base.OnInit(e);
}
/// <summary>
/// Required method for Designer support - do not modify
/// the contents of this method with the code editor.
/// </summary>
private void InitializeComponent()
{
}
#endregion
}
}
@@ -1,25 +0,0 @@
//------------------------------------------------------------------------------
// <auto-generated>
// This code was generated by a tool.
// Runtime Version:2.0.50727.3082
//
// Changes to this file may cause incorrect behavior and will be lost if
// the code is regenerated.
// </auto-generated>
//------------------------------------------------------------------------------
namespace umbraco.dialogs {
public partial class insertAnchor {
/// <summary>
/// Form1 control.
/// </summary>
/// <remarks>
/// Auto-generated field.
/// To modify move field declaration from designer file to code-behind file.
/// </remarks>
protected global::System.Web.UI.HtmlControls.HtmlForm Form1;
}
}
@@ -1,42 +0,0 @@
<?xml version="1.0" encoding="utf-8" ?>
<root>
<xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
<xsd:element name="root" msdata:IsDataSet="true">
<xsd:complexType>
<xsd:choice maxOccurs="unbounded">
<xsd:element name="data">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
<xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" />
<xsd:attribute name="type" type="xsd:string" />
<xsd:attribute name="mimetype" type="xsd:string" />
</xsd:complexType>
</xsd:element>
<xsd:element name="resheader">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" use="required" />
</xsd:complexType>
</xsd:element>
</xsd:choice>
</xsd:complexType>
</xsd:element>
</xsd:schema>
<resheader name="ResMimeType">
<value>text/microsoft-resx</value>
</resheader>
<resheader name="Version">
<value>1.0.0.0</value>
</resheader>
<resheader name="Reader">
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<resheader name="Writer">
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
</root>
@@ -1,165 +0,0 @@
<%@ Page language="c#" Codebehind="insertFormField.aspx.cs" AutoEventWireup="True" Inherits="umbraco.dialogs.insertFormField" %>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" >
<HTML>
<HEAD>
<title>umbraco :: <%=umbraco.ui.Text("buttons", "formFieldInsert", this.getUser())%> &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;</title>
<meta name="GENERATOR" Content="Microsoft Visual Studio .NET 7.1">
<meta name="CODE_LANGUAGE" Content="C#">
<meta name="vs_defaultClientScript" content="JavaScript">
<meta name="vs_targetSchema" content="http://schemas.microsoft.com/intellisense/ie5">
<LINK href="../css/umbracoGui.css" type="text/css" rel="stylesheet">
<style>body {margin: 2px;}</style>
<SCRIPT LANGUAGE="JavaScript">
<!--
function insertFormField() {
var formTypes = document.forms[0].formType
for (var i=0; i<formTypes.length; i++) {
if (formTypes[i].checked)
var formType = formTypes[i].value;
}
var hiddenFieldAdd = "style=\"width: 0px; height: 0px\"";
var formNavn = document.forms[0].formNavn.value;
var formSize = document.forms[0].formSize.value;
var formHeight = document.forms[0].formHeight.value;
var formValue = document.forms[0].formValue.value;
var formRedirect = document.forms[0].formRedirect.value;
if (formType == 'textarea')
var formElement = '<textarea name="umbForm' + formNavn + '" rows="' + formHeight + '" cols="' + formSize + '"></textarea>';
else {
if (formType == 'submit')
var formElement = '<input type="hidden" ' + hiddenFieldAdd + ' name="umbracoAction" value="mailForm"><input type="hidden" ' + hiddenFieldAdd + ' name="umbracoRedirect" value="' + formRedirect + '"><input type="hidden" ' + hiddenFieldAdd + ' name="sendTo" value="' + document.forms[0].formSendTo.value + '"><input type="' + formType + '" name="sbmt" size="' + formSize + '" value="' + formValue + '">';
else
var formElement = '<input type="' + formType + '" name="umbForm' + formNavn + '" size="' + formSize + '" value="' + formValue + '">';
}
window.returnValue = formElement;
window.close();
}
function formatForm(formType) {
formEnable('formNavn');
formDisable('formRedirect');
if (formType == 'radio' || formType == 'checkbox') {
formDisable('formSize');
formDisable('formHeight');
formDisable('formSendTo');
}
if (formType == 'text') {
formEnable('formSize');
formDisable('formHeight');
formDisable('formSendTo');
}
if (formType == 'textarea') {
formEnable('formSize');
formEnable('formHeight');
formDisable('formSendTo');
}
if (formType == 'submit') {
formDisable('formNavn');
formDisable('formSize');
formDisable('formHeight');
formEnable('formSendTo');
formEnable('formRedirect');
}
}
function formDisable(element) {
document.getElementById(element+ "Label").className = 'guiDialogDisabled';
document.forms[0][element].className = 'guiInputDisabled';
document.forms[0][element].disabled = true;
}
function formEnable(element) {
document.getElementById(element+ "Label").className = 'guiDialogNormal';
document.forms[0][element].className = 'guiInputText';
document.forms[0][element].disabled = false;
}
function doSubmit() {insertFormField();}
var functionsFrame = this;
var tabFrame = parent.parent.right;
var isDialog = true;
var submitOnEnter = true;
-->
</script>
<script type="text/javascript" src="js/umbracoCheckKeys.js"></script>
<script language="javascript">
function dialogHandler(id) {
document.forms[0].linkText.value = id;
}
</script>
</HEAD>
<body MS_POSITIONING="GridLayout">
<h3><%=umbraco.ui.Text("buttons", "formFieldInsert", this.getUser())%></h3>
<form id="Form1" method="post" runat="server">
<TABLE class="propertyPane" id="macroProperties" cellSpacing="0" cellPadding="4" width="98%"
border="0" runat="server">
<TBODY>
<TR>
<TD class="propertyHeader" width="30%"><%=umbraco.ui.Text("type", this.getUser())%></TD>
<TD class="propertyContent">
<input type="radio" name="formType" value="submit" onClick="formatForm(this.value)"> <img src="../images/editor/formButton.gif">
<input type="radio" name="formType" value="checkbox" onClick="formatForm(this.value)"> <img src="../images/editor/formCheckbox.gif">
<input type="radio" name="formType" value="radio" onClick="formatForm(this.value)"> <img src="../images/editor/formRadio.gif">
<input type="radio" name="formType" value="select" onClick="formatForm(this.value)"> <img src="../images/editor/formSelect.gif">
<input type="radio" name="formType" value="text" onClick="formatForm(this.value)"> <img src="../images/editor/formText.gif">
<input type="radio" name="formType" value="textarea" onClick="formatForm(this.value)"> <img src="../images/editor/formTextarea.gif"><br />
</td>
</TR>
<TR>
<TD class="propertyHeader" width="30%"><%=umbraco.ui.Text("name", this.getUser())%>
</TD>
<TD class="propertyContent" id="formNavnLabel">
<input type="text" name="formNavn" value="<%=umbraco.helper.Request("formNavn")%>" size="40" class="guiInputText"><br />
</TD>
</TR>
<TR>
<TD class="propertyHeader" id="formSizeLabel" width="30%"><%=umbraco.ui.Text("width", this.getUser())%></TD>
<TD class="propertyContent">
<input type="text" name="formSize" value="<%=umbraco.helper.Request("formSize")%>" size="6" class="guiInputText" disabled><br />
</TD>
</TR>
<TR>
<TD class="propertyHeader" id="formHeightLabel" width="30%"><%=umbraco.ui.Text("height", this.getUser())%></TD>
<TD class="propertyContent">
<input type="text" name="formHeight" value="<%=umbraco.helper.Request("formHeight")%>" size="6" class="guiInputText" disabled><br />
</TD>
</TR>
<TR>
<TD class="propertyHeader" id="formValueLabel" width="30%"><%=umbraco.ui.Text("value", this.getUser())%></TD>
<TD class="propertyContent">
<input type="text" name="formValue" value="<%=umbraco.helper.Request("formValue")%>" size="20" class="guiInputText"><br />
</TD>
</TR>
<TR>
<TD class="propertyHeader" id="formSendToLabel" width="30%"><%=umbraco.ui.Text("reciept", this.getUser())%></TD>
<TD class="propertyContent">
<input type="text" name="formSendTo" value="<%=umbraco.helper.Request("formSendTo")%>" size="20" class="guiInputText" disabled><br />
</TD>
</TR>
<TR>
<TD class="propertyHeader" id="formRedirectLabel" width="30%"><%=umbraco.ui.Text("showPageOnSend", this.getUser())%></TD>
<TD class="propertyContent">
<input type="text" name="formRedirect" value="<%=umbraco.helper.Request("formRedirect")%>" size="20" class="guiInputText" disabled><br />
</TD>
</TR>
<TR>
<TD class="propertyHeader" width="30%"></TD>
<TD class="propertyContent">
<input type="button" value=" <%=umbraco.ui.Text("insert")%> " class="inpButton" onClick="insertFormField();"><br />
</TD>
</TR>
</tbody>
</TABLE>
</form>
</body>
</HTML>
@@ -1,43 +0,0 @@
using System;
using System.Collections;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Web;
using System.Web.SessionState;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.HtmlControls;
namespace umbraco.dialogs
{
/// <summary>
/// Summary description for insertFormField.
/// </summary>
public partial class insertFormField : BasePages.UmbracoEnsuredPage
{
protected void Page_Load(object sender, System.EventArgs e)
{
// Put user code to initialize the page here
}
#region Web Form Designer generated code
override protected void OnInit(EventArgs e)
{
//
// CODEGEN: This call is required by the ASP.NET Web Form Designer.
//
InitializeComponent();
base.OnInit(e);
}
/// <summary>
/// Required method for Designer support - do not modify
/// the contents of this method with the code editor.
/// </summary>
private void InitializeComponent()
{
}
#endregion
}
}
@@ -1,88 +0,0 @@
//------------------------------------------------------------------------------
// <auto-generated>
// This code was generated by a tool.
// Runtime Version:2.0.50727.3082
//
// Changes to this file may cause incorrect behavior and will be lost if
// the code is regenerated.
// </auto-generated>
//------------------------------------------------------------------------------
namespace umbraco.dialogs {
public partial class insertFormField {
/// <summary>
/// Form1 control.
/// </summary>
/// <remarks>
/// Auto-generated field.
/// To modify move field declaration from designer file to code-behind file.
/// </remarks>
protected global::System.Web.UI.HtmlControls.HtmlForm Form1;
/// <summary>
/// macroProperties control.
/// </summary>
/// <remarks>
/// Auto-generated field.
/// To modify move field declaration from designer file to code-behind file.
/// </remarks>
protected global::System.Web.UI.HtmlControls.HtmlTable macroProperties;
/// <summary>
/// formNavnLabel control.
/// </summary>
/// <remarks>
/// Auto-generated field.
/// To modify move field declaration from designer file to code-behind file.
/// </remarks>
protected global::System.Web.UI.HtmlControls.HtmlTableCell formNavnLabel;
/// <summary>
/// formSizeLabel control.
/// </summary>
/// <remarks>
/// Auto-generated field.
/// To modify move field declaration from designer file to code-behind file.
/// </remarks>
protected global::System.Web.UI.HtmlControls.HtmlTableCell formSizeLabel;
/// <summary>
/// formHeightLabel control.
/// </summary>
/// <remarks>
/// Auto-generated field.
/// To modify move field declaration from designer file to code-behind file.
/// </remarks>
protected global::System.Web.UI.HtmlControls.HtmlTableCell formHeightLabel;
/// <summary>
/// formValueLabel control.
/// </summary>
/// <remarks>
/// Auto-generated field.
/// To modify move field declaration from designer file to code-behind file.
/// </remarks>
protected global::System.Web.UI.HtmlControls.HtmlTableCell formValueLabel;
/// <summary>
/// formSendToLabel control.
/// </summary>
/// <remarks>
/// Auto-generated field.
/// To modify move field declaration from designer file to code-behind file.
/// </remarks>
protected global::System.Web.UI.HtmlControls.HtmlTableCell formSendToLabel;
/// <summary>
/// formRedirectLabel control.
/// </summary>
/// <remarks>
/// Auto-generated field.
/// To modify move field declaration from designer file to code-behind file.
/// </remarks>
protected global::System.Web.UI.HtmlControls.HtmlTableCell formRedirectLabel;
}
}
@@ -1,42 +0,0 @@
<?xml version="1.0" encoding="utf-8" ?>
<root>
<xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
<xsd:element name="root" msdata:IsDataSet="true">
<xsd:complexType>
<xsd:choice maxOccurs="unbounded">
<xsd:element name="data">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
<xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" />
<xsd:attribute name="type" type="xsd:string" />
<xsd:attribute name="mimetype" type="xsd:string" />
</xsd:complexType>
</xsd:element>
<xsd:element name="resheader">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" use="required" />
</xsd:complexType>
</xsd:element>
</xsd:choice>
</xsd:complexType>
</xsd:element>
</xsd:schema>
<resheader name="ResMimeType">
<value>text/microsoft-resx</value>
</resheader>
<resheader name="Version">
<value>1.0.0.0</value>
</resheader>
<resheader name="Reader">
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<resheader name="Writer">
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
</root>
@@ -1,98 +0,0 @@
<%@ Page language="c#" Codebehind="insertImage.aspx.cs" AutoEventWireup="True" Inherits="umbraco.dialogs.insertImage" %>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" >
<HTML>
<HEAD>
<title>umbraco ::
<%=umbraco.ui.Text("defaultdialogs", "insertimage", this.getUser())%>
</title>
<meta name="GENERATOR" Content="Microsoft Visual Studio .NET 7.1">
<meta name="CODE_LANGUAGE" Content="C#">
<meta name="vs_defaultClientScript" content="JavaScript">
<meta name="vs_targetSchema" content="http://schemas.microsoft.com/intellisense/ie5">
<LINK href="../css/umbracoGui.css" type="text/css" rel="stylesheet">
<style>BODY { MARGIN: 2px }
label {
width:100px;
}
</style>
<script language="javascript">
function dialogHandler(id) {
document.frames.imageViewer.document.location.href = 'dialogs/imageViewer.aspx?id=' + id;
}
function updateImageSource(src, alt, width, height) {
document.getElementById("imageSrc").value = src;
document.getElementById("imageAlt").value = alt;
document.getElementById("imageWidth").value = width;
document.getElementById("imageHeight").value = height;
}
function insertImage()
{
var imageName = document.getElementById("imageAlt").value;
var imageWidth = document.getElementById("imageWidth").value;
var imageHeight = document.getElementById("imageHeight").value;
var imageSource = document.getElementById("imageSrc").value.replace("thumb.jpg", ".jpg");
var imageTitle = document.getElementById("imageTitle").value;
var orgHeight = imageHeight;
var orgWidth = imageWidth;
if (imageWidth != '' && imageWidth > 500) {
if (imageWidth > imageHeight)
orgRatio = parseFloat(imageHeight/imageWidth).toFixed(2)
else
orgRatio = parseFloat(imageWidth/imageHeight).toFixed(2)
imageHeight = Math.round(500 * parseFloat(imageHeight/imageWidth).toFixed(2));
imageWidth = 500;
}
window.returnValue = imageName + '|||' + imageSource + '|||' + imageWidth + '|||' + imageHeight + '|||' + imageTitle + '|||' + orgWidth + '|||' + orgHeight;
window.close();
}
function doSubmit() {}
var functionsFrame = this;
var tabFrame = this;
var isDialog = true;
var submitOnEnter = true;
</script>
<script type="text/javascript" src="../js/umbracoCheckKeys.js"></script>
</HEAD>
<body MS_POSITIONING="GridLayout">
<h3><%=umbraco.ui.Text("defaultdialogs", "insertimage",this.getUser())%></h3>
<form id="Form1" method="post" runat="server">
<input type="hidden" name="imageHeight"> <input type="hidden" name="imageWidth">
<input type="hidden" name="imageSrc">
<TABLE class="propertyPane" cellSpacing="0" cellPadding="4" width="98%" border="0" runat="server" ID="Table1">
<TBODY>
<tr>
<TD class="propertyHeader" width="30%">
<asp:PlaceHolder ID="PlaceHolder1" Runat="server" />
</TD>
</tr>
</TBODY>
</TABLE>
<TABLE class="propertyPane" cellSpacing="0" cellPadding="4" width="98%" border="0" runat="server" ID="Table2">
<TBODY>
<tr>
<td>
<label for="imageAlt"><%=umbraco.ui.Text("alternativeText")%>:</label> <input type="text" id="imageAlt" name="imageAlt" value="" style="width:150px"/> <small><%=umbraco.ui.Text("alternativeTextHelp")%></small>
<br />
<label for="imageTitle"><%=umbraco.ui.Text("titleOptional")%></label> <input type="text" name="imageTitle" value="" style="width:150px"/>
</td>
</tr>
<tr>
<td>
<input type="button" onClick="insertImage();" value="<%=umbraco.ui.Text("defaultdialogs", "insertimage", this.getUser())%>"/>
</td>
</tr>
</tbody>
</table>
</form>
</body>
</HTML>
@@ -1,56 +0,0 @@
using System;
using System.Collections;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Web;
using System.Web.SessionState;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.HtmlControls;
namespace umbraco.dialogs
{
public partial class insertImage : BasePages.UmbracoEnsuredPage
{
protected uicontrols.TabView tbv = new uicontrols.TabView();
protected void Page_Load(object sender, System.EventArgs e)
{
// Put user code to initialize the page here
uicontrols.TabPage tp = tbv.NewTabPage(ui.Text("choose"));
tp.HasMenu = false;
tp.Controls.Add(new LiteralControl("<div style=\"padding: 5px;\"><iframe src=\"../TreeInit.aspx?app=media&amp;isDialog=true&amp;dialogMode=id&amp;contextMenu=false\" style=\"LEFT: 9px; OVERFLOW: auto; WIDTH: 200px; POSITION: relative; TOP: 0px; HEIGHT: 250px; BACKGROUND-COLOR: white\"></iframe>&nbsp;<iframe src=\"imageViewer.aspx\" id=\"imageViewer\" style=\"LEFT: 9px; OVERFLOW: auto; WIDTH: 250px; POSITION: relative; TOP: 0px; HEIGHT: 250px; BACKGROUND-COLOR: white\"></iframe></div>"));
uicontrols.TabPage tp2 = tbv.NewTabPage(ui.Text("create") + " " + ui.Text("new"));
tp2.HasMenu = false;
tp2.Controls.Add(new LiteralControl("<iframe frameborder=\"0\" src=\"uploadImage.aspx\" style=\"LEFT: 0px; OVERFLOW: auto; WIDTH: 500px; POSITION: relative; TOP: 0px; HEIGHT: 220px; BACKGROUND-COLOR: white; border: none\"></iframe>"));
PlaceHolder1.Controls.Add(tbv);
}
#region Web Form Designer generated code
override protected void OnInit(EventArgs e)
{
//
// CODEGEN: This call is required by the ASP.NET Web Form Designer.
//
tbv.ID="tabview1";
tbv.Width = 500;
tbv.Height = 290;
InitializeComponent();
base.OnInit(e);
}
/// <summary>
/// Required method for Designer support - do not modify
/// the contents of this method with the code editor.
/// </summary>
private void InitializeComponent()
{
}
#endregion
}
}
@@ -1,52 +0,0 @@
//------------------------------------------------------------------------------
// <auto-generated>
// This code was generated by a tool.
// Runtime Version:2.0.50727.3082
//
// Changes to this file may cause incorrect behavior and will be lost if
// the code is regenerated.
// </auto-generated>
//------------------------------------------------------------------------------
namespace umbraco.dialogs {
public partial class insertImage {
/// <summary>
/// Form1 control.
/// </summary>
/// <remarks>
/// Auto-generated field.
/// To modify move field declaration from designer file to code-behind file.
/// </remarks>
protected global::System.Web.UI.HtmlControls.HtmlForm Form1;
/// <summary>
/// Table1 control.
/// </summary>
/// <remarks>
/// Auto-generated field.
/// To modify move field declaration from designer file to code-behind file.
/// </remarks>
protected global::System.Web.UI.HtmlControls.HtmlTable Table1;
/// <summary>
/// PlaceHolder1 control.
/// </summary>
/// <remarks>
/// Auto-generated field.
/// To modify move field declaration from designer file to code-behind file.
/// </remarks>
protected global::System.Web.UI.WebControls.PlaceHolder PlaceHolder1;
/// <summary>
/// Table2 control.
/// </summary>
/// <remarks>
/// Auto-generated field.
/// To modify move field declaration from designer file to code-behind file.
/// </remarks>
protected global::System.Web.UI.HtmlControls.HtmlTable Table2;
}
}
@@ -1,109 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<root>
<!--
Microsoft ResX Schema
Version 1.3
The primary goals of this format is to allow a simple XML format
that is mostly human readable. The generation and parsing of the
various data types are done through the TypeConverter classes
associated with the data types.
Example:
... ado.net/XML headers & schema ...
<resheader name="resmimetype">text/microsoft-resx</resheader>
<resheader name="version">1.3</resheader>
<resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
<resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
<data name="Name1">this is my long string</data>
<data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
<data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
[base64 mime encoded serialized .NET Framework object]
</data>
<data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
[base64 mime encoded string representing a byte array form of the .NET Framework object]
</data>
There are any number of "resheader" rows that contain simple
name/value pairs.
Each data row contains a name, and value. The row also contains a
type or mimetype. Type corresponds to a .NET class that support
text/value conversion through the TypeConverter architecture.
Classes that don't support this are serialized and stored with the
mimetype set.
The mimetype is used forserialized objects, and tells the
ResXResourceReader how to depersist the object. This is currently not
extensible. For a given mimetype the value must be set accordingly:
Note - application/x-microsoft.net.object.binary.base64 is the format
that the ResXResourceWriter will generate, however the reader can
read any of the formats listed below.
mimetype: application/x-microsoft.net.object.binary.base64
value : The object must be serialized with
: System.Serialization.Formatters.Binary.BinaryFormatter
: and then encoded with base64 encoding.
mimetype: application/x-microsoft.net.object.soap.base64
value : The object must be serialized with
: System.Runtime.Serialization.Formatters.Soap.SoapFormatter
: and then encoded with base64 encoding.
mimetype: application/x-microsoft.net.object.bytearray.base64
value : The object must be serialized into a byte array
: using a System.ComponentModel.TypeConverter
: and then encoded with base64 encoding.
-->
<xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
<xsd:element name="root" msdata:IsDataSet="true">
<xsd:complexType>
<xsd:choice maxOccurs="unbounded">
<xsd:element name="data">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
<xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" msdata:Ordinal="1" />
<xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
<xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
</xsd:complexType>
</xsd:element>
<xsd:element name="resheader">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" use="required" />
</xsd:complexType>
</xsd:element>
</xsd:choice>
</xsd:complexType>
</xsd:element>
</xsd:schema>
<resheader name="resmimetype">
<value>text/microsoft-resx</value>
</resheader>
<resheader name="version">
<value>1.3</value>
</resheader>
<resheader name="reader">
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<resheader name="writer">
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<data name="$this.TrayLargeIcon" type="System.Boolean, mscorlib, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>False</value>
</data>
<data name="$this.TrayAutoArrange" type="System.Boolean, mscorlib, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>True</value>
</data>
<data name="$this.DefaultModifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>Private</value>
</data>
</root>
@@ -1,92 +0,0 @@
<%@ Page language="c#" Codebehind="insertLink.aspx.cs" AutoEventWireup="True" Inherits="umbraco.dialogs.insertLink" %>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" >
<HTML>
<HEAD>
<title>umbraco :: <%=umbraco.ui.Text("defaultdialogs", "insertlink", this.getUser())%> &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;</title>
<meta name="GENERATOR" Content="Microsoft Visual Studio .NET 7.1">
<meta name="CODE_LANGUAGE" Content="C#">
<meta name="vs_defaultClientScript" content="JavaScript">
<meta name="vs_targetSchema" content="http://schemas.microsoft.com/intellisense/ie5">
<LINK href="../css/umbracoGui.css" type="text/css" rel="stylesheet">
<style>body {margin: 2px;}</style>
<script language="javascript">
var linkToInsert = "";
function dialogHandler(id) {
// Find link
document.forms[0].linkText.value = id;
// document.forms[0].linkText.value = linkToInsert.substr(linkToInsert.indexOf(",")+1, linkToInsert.length-2-linkToInsert.indexOf(","));
}
function doLink()
{
var linkName = document.forms[0].linkText.value;
if (linkName.indexOf('@') > 0 && linkName.indexOf('mailto:') < 0)
linkName = 'mailto:' + linkName;
else {
if (linkName.length - replaceChars(linkName, ".", "").length > 1 && linkName.toLowerCase().indexOf('http') < 0 )
linkName = 'http://' + linkName;
}
window.returnValue = document.forms[0].linkNewWindow.checked + '|'+linkName.replace(/\+/g,'\%2b').replace(/\?/g,'\%3f');
window.close();
}
function replaceChars(entry, out, add) {
temp = "" + entry;
while (temp.indexOf(out)>-1) {
pos= temp.indexOf(out);
temp = "" + (temp.substring(0, pos) + add +
temp.substring((pos + out.length), temp.length));
}
return temp;
}
function doSubmit() {doLink();}
var functionsFrame = this;
var tabFrame = this;
var isDialog = true;
var submitOnEnter = true;
</script>
<script type="text/javascript" src="../js/umbracoCheckKeys.js"></script>
</HEAD>
<body onload="this.focus();">
<h3><%=umbraco.ui.Text("defaultdialogs", "insertlink", this.getUser())%></h3>
<form id="Form1" method="post" runat="server">
<TABLE class="propertyPane" id="macroProperties" cellSpacing="0" cellPadding="4" width="98%"
border="0" runat="server">
<TBODY>
<TR>
<TD class="propertyHeader" width="30%"><%=umbraco.ui.Text("defaultdialogs", "link", this.getUser())%></TD>
<TD class="propertyContent">
<asp:TextBox id="linkText" runat="server" Width="252px"></asp:TextBox>&nbsp;&nbsp;
<input type="hidden" id="actualLink" runat="server" />
<input type="button" onClick="doLink()" Value="<%=umbraco.ui.Text("general", "ok", this.getUser())%>"/></TD>
</TR>
<TR>
<TD class="propertyHeader" width="30%"><%=umbraco.ui.Text("defaultdialogs", "linknewwindow", this.getUser())%>
</TD>
<TD class="propertyContent">
<asp:CheckBox id="linkNewWindow" runat="server"></asp:CheckBox>
<%=umbraco.ui.Text("general", "yes", this.getUser())%>
</TD>
</TR>
<TR>
<TD class="propertyHeader" width="30%"><%=umbraco.ui.Text("defaultdialogs", "linkinternal", this.getUser())%></TD>
<TD class="propertyContent">
<asp:PlaceHolder ID="ph" Runat="server"></asp:PlaceHolder>
</TD>
</TR>
</tbody>
</TABLE>
</form>
</body>
</HTML>
@@ -1,76 +0,0 @@
using System;
using System.Collections;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Web;
using System.Web.SessionState;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.HtmlControls;
namespace umbraco.dialogs
{
/// <summary>
/// Summary description for insertLink.
/// </summary>
public partial class insertLink : BasePages.UmbracoEnsuredPage
{
protected uicontrols.TabView tbv = new uicontrols.TabView();
protected void Page_Load(object sender, System.EventArgs e)
{
if (Request.QueryString["linkName"] != null)
{
string link = Request.QueryString["linkName"];
// actualLink.Value = link;
// if (link.IndexOf("{#") > -1)
// linkText.Text = link.Substring(link.IndexOf(",")+1, link.Length-2-link.IndexOf(","));
// else
linkText.Text = link;
}
if (helper.Request("linkNewWindow") == "_blank")
linkNewWindow.Checked = true;
uicontrols.TabPage tp = tbv.NewTabPage(ui.Text("content"));
tp.HasMenu = false;
tp.Controls.Add(new LiteralControl("<iframe frameborder=\"0\" src=\"../TreeInit.aspx?app=content&amp;isDialog=true&amp;contextMenu=false\" style=\"LEFT: 0px; OVERFLOW: auto; WIDTH: 280px; POSITION: relative; TOP: 0px; HEIGHT: 220px; BACKGROUND-COLOR: white; border: none\"></iframe>"));
uicontrols.TabPage tp2 = tbv.NewTabPage(ui.Text("media"));
tp2.HasMenu = false;
tp2.Controls.Add(new LiteralControl("<iframe frameborder=\"0\" src=\"../TreeInit.aspx?app=media&amp;isDialog=true&amp;contextMenu=false\" style=\"LEFT: 0px; OVERFLOW: auto; WIDTH: 280px; POSITION: relative; TOP: 0px; HEIGHT: 220px; BACKGROUND-COLOR: white; border: none\"></iframe>"));
ph.Controls.Add(tbv);
}
public BusinessLogic.User GetUser()
{
return base.getUser();
}
#region Web Form Designer generated code
override protected void OnInit(EventArgs e)
{
//
// CODEGEN: This call is required by the ASP.NET Web Form Designer.
//
tbv.ID="tabview1";
tbv.Width = 300;
tbv.Height = 250;
InitializeComponent();
base.OnInit(e);
}
/// <summary>
/// Required method for Designer support - do not modify
/// the contents of this method with the code editor.
/// </summary>
private void InitializeComponent()
{
}
#endregion
}
}
@@ -1,70 +0,0 @@
//------------------------------------------------------------------------------
// <auto-generated>
// This code was generated by a tool.
// Runtime Version:2.0.50727.3082
//
// Changes to this file may cause incorrect behavior and will be lost if
// the code is regenerated.
// </auto-generated>
//------------------------------------------------------------------------------
namespace umbraco.dialogs {
public partial class insertLink {
/// <summary>
/// Form1 control.
/// </summary>
/// <remarks>
/// Auto-generated field.
/// To modify move field declaration from designer file to code-behind file.
/// </remarks>
protected global::System.Web.UI.HtmlControls.HtmlForm Form1;
/// <summary>
/// macroProperties control.
/// </summary>
/// <remarks>
/// Auto-generated field.
/// To modify move field declaration from designer file to code-behind file.
/// </remarks>
protected global::System.Web.UI.HtmlControls.HtmlTable macroProperties;
/// <summary>
/// linkText control.
/// </summary>
/// <remarks>
/// Auto-generated field.
/// To modify move field declaration from designer file to code-behind file.
/// </remarks>
protected global::System.Web.UI.WebControls.TextBox linkText;
/// <summary>
/// actualLink control.
/// </summary>
/// <remarks>
/// Auto-generated field.
/// To modify move field declaration from designer file to code-behind file.
/// </remarks>
protected global::System.Web.UI.HtmlControls.HtmlInputHidden actualLink;
/// <summary>
/// linkNewWindow control.
/// </summary>
/// <remarks>
/// Auto-generated field.
/// To modify move field declaration from designer file to code-behind file.
/// </remarks>
protected global::System.Web.UI.WebControls.CheckBox linkNewWindow;
/// <summary>
/// ph control.
/// </summary>
/// <remarks>
/// Auto-generated field.
/// To modify move field declaration from designer file to code-behind file.
/// </remarks>
protected global::System.Web.UI.WebControls.PlaceHolder ph;
}
}
@@ -1,109 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<root>
<!--
Microsoft ResX Schema
Version 1.3
The primary goals of this format is to allow a simple XML format
that is mostly human readable. The generation and parsing of the
various data types are done through the TypeConverter classes
associated with the data types.
Example:
... ado.net/XML headers & schema ...
<resheader name="resmimetype">text/microsoft-resx</resheader>
<resheader name="version">1.3</resheader>
<resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
<resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
<data name="Name1">this is my long string</data>
<data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
<data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
[base64 mime encoded serialized .NET Framework object]
</data>
<data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
[base64 mime encoded string representing a byte array form of the .NET Framework object]
</data>
There are any number of "resheader" rows that contain simple
name/value pairs.
Each data row contains a name, and value. The row also contains a
type or mimetype. Type corresponds to a .NET class that support
text/value conversion through the TypeConverter architecture.
Classes that don't support this are serialized and stored with the
mimetype set.
The mimetype is used forserialized objects, and tells the
ResXResourceReader how to depersist the object. This is currently not
extensible. For a given mimetype the value must be set accordingly:
Note - application/x-microsoft.net.object.binary.base64 is the format
that the ResXResourceWriter will generate, however the reader can
read any of the formats listed below.
mimetype: application/x-microsoft.net.object.binary.base64
value : The object must be serialized with
: System.Serialization.Formatters.Binary.BinaryFormatter
: and then encoded with base64 encoding.
mimetype: application/x-microsoft.net.object.soap.base64
value : The object must be serialized with
: System.Runtime.Serialization.Formatters.Soap.SoapFormatter
: and then encoded with base64 encoding.
mimetype: application/x-microsoft.net.object.bytearray.base64
value : The object must be serialized into a byte array
: using a System.ComponentModel.TypeConverter
: and then encoded with base64 encoding.
-->
<xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
<xsd:element name="root" msdata:IsDataSet="true">
<xsd:complexType>
<xsd:choice maxOccurs="unbounded">
<xsd:element name="data">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
<xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" msdata:Ordinal="1" />
<xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
<xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
</xsd:complexType>
</xsd:element>
<xsd:element name="resheader">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" use="required" />
</xsd:complexType>
</xsd:element>
</xsd:choice>
</xsd:complexType>
</xsd:element>
</xsd:schema>
<resheader name="resmimetype">
<value>text/microsoft-resx</value>
</resheader>
<resheader name="version">
<value>1.3</value>
</resheader>
<resheader name="reader">
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<resheader name="writer">
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<data name="$this.TrayAutoArrange" type="System.Boolean, mscorlib, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>True</value>
</data>
<data name="$this.DefaultModifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>Private</value>
</data>
<data name="$this.TrayLargeIcon" type="System.Boolean, mscorlib, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>False</value>
</data>
</root>
@@ -1,96 +0,0 @@
<%@ Page language="c#" Codebehind="insertTextGen.aspx.cs" AutoEventWireup="True" Inherits="umbraco.dialogs.insertTextGen" %>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" >
<HTML>
<HEAD>
<title>umbraco :: <%=umbraco.ui.Text("defaultdialogs", "insertgraphicheadline", this.getUser())%> &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;</title>
<meta name="GENERATOR" Content="Microsoft Visual Studio .NET 7.1">
<meta name="CODE_LANGUAGE" Content="C#">
<meta name="vs_defaultClientScript" content="JavaScript">
<meta name="vs_targetSchema" content="http://schemas.microsoft.com/intellisense/ie5">
<LINK href="../css/umbracoGui.css" type="text/css" rel="stylesheet">
<style>BODY { MARGIN: 2px }
</style>
<script language="javascript">
function doTextGen() {
var theForm = document.Form1;
var bgColor = theForm.pickerBgColor.value;
var fgColor = theForm.pickerColor.value;
var isBold = theForm.isBold.checked;
if (isBold)
isBold = '1';
else
isBold = '0';
if (fgColor == '')
fgColor = '000000'
if (bgColor == '')
bgColor = 'FFFFFF'
var textGen = '<img src="<%=umbraco.GlobalSettings.Path%>/TextGen.aspx?text=' + theForm.Text.value.replace(/\&/gi,"\&amp;") + '&font=' +
theForm.fontList[theForm.fontList.selectedIndex].value + '&size='+
theForm.fontSizeList[theForm.fontSizeList.selectedIndex].text + '&color=' + fgColor + '&bgColor=' + bgColor + '&bold=' + isBold + '" border="0" alt="' + theForm.Text.value.replace(/\&/gi,"\&amp;") + '"/>';
window.returnValue = textGen;
window.close();
}
function doSubmit() {doTextGen();}
var functionsFrame = this;
var tabFrame = this;
var isDialog = true;
var submitOnEnter = true;
</script>
<script type="text/javascript" src="../js/umbracoCheckKeys.js"></script>
</HEAD>
<body MS_POSITIONING="GridLayout">
<h3><%=umbraco.ui.Text("defaultdialogs", "insertgraphicheadline", this.getUser())%></h3>
<form id="Form1" method="post" runat="server">
<TABLE class="propertyPane" id="macroProperties" cellSpacing="0" cellPadding="4" width="98%"
border="0" runat="server">
<TBODY>
<TR>
<TD class="propertyHeader" width="30%"><%=umbraco.ui.Text("graphicheadline", "text", this.getUser())%></TD>
<TD class="propertyContent">
<asp:TextBox id="Text" runat="server" Width="252px"></asp:TextBox>&nbsp;&nbsp;
</TD>
</TR>
<TR>
<TD class="propertyHeader" width="30%"><%=umbraco.ui.Text("graphicheadline", "font", this.getUser())%>
</TD>
<TD class="propertyContent">
<asp:DropDownList Runat="server" ID="fontList"></asp:DropDownList>
:
<asp:DropDownList ID="fontSizeList" Runat="server"></asp:DropDownList><br />
<asp:CheckBox ID="isBold" Runat="server" />
<%=umbraco.ui.Text("graphicheadline", "bold", this.getUser())%>
</TD>
</TR>
<TR>
<TD class="propertyHeader" width="30%"><%=umbraco.ui.Text("graphicheadline", "color", this.getUser())%></TD>
<TD class="propertyContent">
<asp:PlaceHolder id="PlaceholderColor" runat="server"></asp:PlaceHolder>
</TD>
</TR>
<TR>
<TD class="propertyHeader" width="30%"><%=umbraco.ui.Text("graphicheadline", "backgroundcolor", this.getUser())%></TD>
<TD class="propertyContent">
<asp:PlaceHolder id="PlaceHolderBgColor" runat="server"></asp:PlaceHolder>
</TD>
</TR>
<TR>
<TD class="propertyHeader" width="30%"></TD>
<TD class="propertyContent">
<input type="button" onclick="doSubmit()" value=" OK "/>
</TD>
</TR>
</TBODY>
</TABLE>
</form>
</body>
</HTML>
@@ -1,82 +0,0 @@
using System;
using System.Collections;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Web;
using System.Web.SessionState;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.HtmlControls;
using System.Xml;
namespace umbraco.dialogs
{
/// <summary>
/// Summary description for insertTextGen.
/// </summary>
public partial class insertTextGen : BasePages.UmbracoEnsuredPage
{
protected void Page_Load(object sender, System.EventArgs e)
{
// Put user code to initialize the page here
// Load form config file
XmlDocument fontConfig = new XmlDocument();
fontConfig.Load(IO.IOHelper.MapPath(IO.SystemDirectories.Umbraco + "/config/fonts/fonts.xml"));
foreach (XmlNode font in fontConfig.SelectSingleNode("//fonts"))
fontList.Items.Add(new ListItem(font.FirstChild.Value, font.Attributes.GetNamedItem("filename").Value));
foreach (XmlNode fontSize in fontConfig.SelectSingleNode("//sizes"))
fontSizeList.Items.Add(new ListItem(fontSize.FirstChild.Value));
ArrayList _colors = new ArrayList();
ArrayList _bgColors = new ArrayList();
foreach (XmlNode color in fontConfig.SelectSingleNode("//colors"))
_colors.Add(new ListItem(color.FirstChild.Value));
foreach (XmlNode bgColor in fontConfig.SelectSingleNode("//bgcolors"))
_bgColors.Add(new ListItem(bgColor.FirstChild.Value));
PlaceholderColor.Controls.Add(colorRange(_colors, "pickerColor"));
PlaceHolderBgColor.Controls.Add(colorRange(_bgColors, "pickerBgColor"));
}
private Control colorRange(ArrayList Colors, string Alias)
{
Control _colors = new Control();
_colors.Controls.Add(new LiteralControl("<input type=\"hidden\" name=\"" + Alias + "\" value=\"FFFFFF\"/>"));
_colors.Controls.Add(new LiteralControl("<span id=\"" + Alias + "holder\" style=\"border: 1px solid black; background-color: #FFFFFF\"><img src=\"../images/nada.gif\" width=15 height=15 border=0></span>&nbsp; " + ui.Text("choose") + ": "));
foreach (object color in Colors)
{
_colors.Controls.Add(
new LiteralControl("<span style=\"margin: 2px; border: 1px solid black; background-color: #" + color.ToString() + "\"><a href=\"#\" onClick=\"document.forms[0]['" + Alias + "'].value = '" + color.ToString() + "'; document.all['" + Alias + "holder'].style.backgroundColor = '#" + color.ToString() + "'\"><img src=\"../images/nada.gif\" width=15 height=15 border=0></a></span>"));
}
return _colors;
}
#region Web Form Designer generated code
override protected void OnInit(EventArgs e)
{
//
// CODEGEN: This call is required by the ASP.NET Web Form Designer.
//
InitializeComponent();
base.OnInit(e);
}
/// <summary>
/// Required method for Designer support - do not modify
/// the contents of this method with the code editor.
/// </summary>
private void InitializeComponent()
{
}
#endregion
}
}
@@ -1,88 +0,0 @@
//------------------------------------------------------------------------------
// <auto-generated>
// This code was generated by a tool.
// Runtime Version:2.0.50727.3082
//
// Changes to this file may cause incorrect behavior and will be lost if
// the code is regenerated.
// </auto-generated>
//------------------------------------------------------------------------------
namespace umbraco.dialogs {
public partial class insertTextGen {
/// <summary>
/// Form1 control.
/// </summary>
/// <remarks>
/// Auto-generated field.
/// To modify move field declaration from designer file to code-behind file.
/// </remarks>
protected global::System.Web.UI.HtmlControls.HtmlForm Form1;
/// <summary>
/// macroProperties control.
/// </summary>
/// <remarks>
/// Auto-generated field.
/// To modify move field declaration from designer file to code-behind file.
/// </remarks>
protected global::System.Web.UI.HtmlControls.HtmlTable macroProperties;
/// <summary>
/// Text control.
/// </summary>
/// <remarks>
/// Auto-generated field.
/// To modify move field declaration from designer file to code-behind file.
/// </remarks>
protected global::System.Web.UI.WebControls.TextBox Text;
/// <summary>
/// fontList control.
/// </summary>
/// <remarks>
/// Auto-generated field.
/// To modify move field declaration from designer file to code-behind file.
/// </remarks>
protected global::System.Web.UI.WebControls.DropDownList fontList;
/// <summary>
/// fontSizeList control.
/// </summary>
/// <remarks>
/// Auto-generated field.
/// To modify move field declaration from designer file to code-behind file.
/// </remarks>
protected global::System.Web.UI.WebControls.DropDownList fontSizeList;
/// <summary>
/// isBold control.
/// </summary>
/// <remarks>
/// Auto-generated field.
/// To modify move field declaration from designer file to code-behind file.
/// </remarks>
protected global::System.Web.UI.WebControls.CheckBox isBold;
/// <summary>
/// PlaceholderColor control.
/// </summary>
/// <remarks>
/// Auto-generated field.
/// To modify move field declaration from designer file to code-behind file.
/// </remarks>
protected global::System.Web.UI.WebControls.PlaceHolder PlaceholderColor;
/// <summary>
/// PlaceHolderBgColor control.
/// </summary>
/// <remarks>
/// Auto-generated field.
/// To modify move field declaration from designer file to code-behind file.
/// </remarks>
protected global::System.Web.UI.WebControls.PlaceHolder PlaceHolderBgColor;
}
}
@@ -1,109 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<root>
<!--
Microsoft ResX Schema
Version 1.3
The primary goals of this format is to allow a simple XML format
that is mostly human readable. The generation and parsing of the
various data types are done through the TypeConverter classes
associated with the data types.
Example:
... ado.net/XML headers & schema ...
<resheader name="resmimetype">text/microsoft-resx</resheader>
<resheader name="version">1.3</resheader>
<resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
<resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
<data name="Name1">this is my long string</data>
<data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
<data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
[base64 mime encoded serialized .NET Framework object]
</data>
<data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
[base64 mime encoded string representing a byte array form of the .NET Framework object]
</data>
There are any number of "resheader" rows that contain simple
name/value pairs.
Each data row contains a name, and value. The row also contains a
type or mimetype. Type corresponds to a .NET class that support
text/value conversion through the TypeConverter architecture.
Classes that don't support this are serialized and stored with the
mimetype set.
The mimetype is used forserialized objects, and tells the
ResXResourceReader how to depersist the object. This is currently not
extensible. For a given mimetype the value must be set accordingly:
Note - application/x-microsoft.net.object.binary.base64 is the format
that the ResXResourceWriter will generate, however the reader can
read any of the formats listed below.
mimetype: application/x-microsoft.net.object.binary.base64
value : The object must be serialized with
: System.Serialization.Formatters.Binary.BinaryFormatter
: and then encoded with base64 encoding.
mimetype: application/x-microsoft.net.object.soap.base64
value : The object must be serialized with
: System.Runtime.Serialization.Formatters.Soap.SoapFormatter
: and then encoded with base64 encoding.
mimetype: application/x-microsoft.net.object.bytearray.base64
value : The object must be serialized into a byte array
: using a System.ComponentModel.TypeConverter
: and then encoded with base64 encoding.
-->
<xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
<xsd:element name="root" msdata:IsDataSet="true">
<xsd:complexType>
<xsd:choice maxOccurs="unbounded">
<xsd:element name="data">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
<xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" msdata:Ordinal="1" />
<xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
<xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
</xsd:complexType>
</xsd:element>
<xsd:element name="resheader">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" use="required" />
</xsd:complexType>
</xsd:element>
</xsd:choice>
</xsd:complexType>
</xsd:element>
</xsd:schema>
<resheader name="resmimetype">
<value>text/microsoft-resx</value>
</resheader>
<resheader name="version">
<value>1.3</value>
</resheader>
<resheader name="reader">
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<resheader name="writer">
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<data name="$this.TrayLargeIcon" type="System.Boolean, mscorlib, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>False</value>
</data>
<data name="$this.TrayAutoArrange" type="System.Boolean, mscorlib, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>True</value>
</data>
<data name="$this.DefaultModifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>Private</value>
</data>
</root>
@@ -1,16 +0,0 @@
<%@ Page language="c#" MasterPageFile="../masterpages/umbracoDialog.Master" Codebehind="modalHolder.aspx.cs" AutoEventWireup="True" Inherits="umbraco.dialogs.modalHolder" %>
<asp:Content ContentPlaceHolderID="head" runat="server">
<style type="text/css">
body{
border: 0px;
height: 100%;
margin: 0px;
padding: 0px;
}
</style>
</asp:Content>
<asp:Content ContentPlaceHolderID="body" runat="server">
<iframe frameborder="1" src="<%=umbraco.helper.Request("url")%>?<%=umbraco.helper.Request("params").Replace("|", "&")%>" scrolling="auto" width="100%" height="100%"></iframe>
</asp:Content>
@@ -1,43 +0,0 @@
using System;
using System.Collections;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Web;
using System.Web.SessionState;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.HtmlControls;
namespace umbraco.dialogs
{
/// <summary>
/// Summary description for modalHolder.
/// </summary>
public partial class modalHolder : System.Web.UI.Page
{
protected void Page_Load(object sender, System.EventArgs e)
{
// Put user code to initialize the page here
}
#region Web Form Designer generated code
override protected void OnInit(EventArgs e)
{
//
// CODEGEN: This call is required by the ASP.NET Web Form Designer.
//
InitializeComponent();
base.OnInit(e);
}
/// <summary>
/// Required method for Designer support - do not modify
/// the contents of this method with the code editor.
/// </summary>
private void InitializeComponent()
{
}
#endregion
}
}
@@ -1,16 +0,0 @@
//------------------------------------------------------------------------------
// <auto-generated>
// This code was generated by a tool.
// Runtime Version:2.0.50727.3053
//
// Changes to this file may cause incorrect behavior and will be lost if
// the code is regenerated.
// </auto-generated>
//------------------------------------------------------------------------------
namespace umbraco.dialogs {
public partial class modalHolder {
}
}
@@ -1,59 +0,0 @@
<%@ Page language="c#" Codebehind="paste.aspx.cs" AutoEventWireup="True" Inherits="umbraco.dialogs.paste" %>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" >
<html>
<head>
<title>umbraco :: <%=umbraco.ui.Text("defaultdialogs", "paste", this.getUser())%> &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;</title>
<meta name="GENERATOR" Content="Microsoft Visual Studio .NET 7.1">
<meta name="CODE_LANGUAGE" Content="C#">
<meta name=vs_defaultClientScript content="JavaScript">
<meta name=vs_targetSchema content="http://schemas.microsoft.com/intellisense/ie5">
<LINK href="../css/umbracoGui.css" type="text/css" rel="stylesheet">
<style>body {margin: 2px;}</style>
<SCRIPT LANGUAGE="JavaScript">
<!--
function returnPasteValue()
{
for (var i=0;i<document.forms[0].length;i++) {
if(document.forms[0][i].name = "action") {
if (document.forms[0][i].checked) {
window.returnValue = document.forms[0][i].value;
break;
}
}
}
window.close();
}
function doSubmit() {returnPasteValue();}
var functionsFrame = this;
var tabFrame = this;
var isDialog = true;
var submitOnEnter = true;
-->
</script>
<script type="text/javascript" src="../js/umbracoCheckKeys.js"></script>
</head>
<body MS_POSITIONING="GridLayout">
<h3><%=umbraco.ui.Text("defaultdialogs", "paste", this.getUser())%></h3>
<form method="post">
<TABLE WIDTH="100%" CELLPADDING=4 CELLSPACING=0 class="propertyPane">
<tr><td colspan="2" class="propertyHeader">
<span style="color: #666">
<%=umbraco.ui.Text("paste", "errorMessage", this.getUser())%><br/><br/></span>
<input type="radio" name="action" id="removeSpecial" value="removeSpecial" checked> <label for="removeSpecial"><%=umbraco.ui.Text("paste", "removeSpecialFormattering", this.getUser())%></label><br/>
<input type="radio" name="action" id="removeAll" value="removeAll"> <label for="removeAll"><%=umbraco.ui.Text("paste", "removeAll", this.getUser())%></label><br/>
<input type="radio" name="action" id="doNothing" value="doNothing"> <label for="doNothing"><%=umbraco.ui.Text("paste", "doNothing", this.getUser())%></label><br/>
<br/>
<input type="button" class="guiInputButton" onClick="returnPasteValue()" value="<%=umbraco.ui.Text("general", "ok", this.getUser())%>">
</td>
</tr>
</table><br />
</form>
</body>
</html>
@@ -1,43 +0,0 @@
using System;
using System.Collections;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Web;
using System.Web.SessionState;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.HtmlControls;
namespace umbraco.dialogs
{
/// <summary>
/// Summary description for paste.
/// </summary>
public partial class paste : BasePages.UmbracoEnsuredPage
{
protected void Page_Load(object sender, System.EventArgs e)
{
// Put user code to initialize the page here
}
#region Web Form Designer generated code
override protected void OnInit(EventArgs e)
{
//
// CODEGEN: This call is required by the ASP.NET Web Form Designer.
//
InitializeComponent();
base.OnInit(e);
}
/// <summary>
/// Required method for Designer support - do not modify
/// the contents of this method with the code editor.
/// </summary>
private void InitializeComponent()
{
}
#endregion
}
}
@@ -1,16 +0,0 @@
//------------------------------------------------------------------------------
// <auto-generated>
// This code was generated by a tool.
// Runtime Version:2.0.50727.3082
//
// Changes to this file may cause incorrect behavior and will be lost if
// the code is regenerated.
// </auto-generated>
//------------------------------------------------------------------------------
namespace umbraco.dialogs {
public partial class paste {
}
}
@@ -1,42 +0,0 @@
<?xml version="1.0" encoding="utf-8" ?>
<root>
<xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
<xsd:element name="root" msdata:IsDataSet="true">
<xsd:complexType>
<xsd:choice maxOccurs="unbounded">
<xsd:element name="data">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
<xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" />
<xsd:attribute name="type" type="xsd:string" />
<xsd:attribute name="mimetype" type="xsd:string" />
</xsd:complexType>
</xsd:element>
<xsd:element name="resheader">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" use="required" />
</xsd:complexType>
</xsd:element>
</xsd:choice>
</xsd:complexType>
</xsd:element>
</xsd:schema>
<resheader name="ResMimeType">
<value>text/microsoft-resx</value>
</resheader>
<resheader name="Version">
<value>1.0.0.0</value>
</resheader>
<resheader name="Reader">
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<resheader name="Writer">
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
</root>
Binary file not shown.

Before

Width:  |  Height:  |  Size: 45 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 90 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 124 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 438 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.8 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 281 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.7 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 205 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 209 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 409 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 409 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 11 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 209 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 330 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.0 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 66 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 67 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 61 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 66 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 596 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 549 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 540 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 540 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 574 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 197 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 589 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 158 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 201 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 208 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 574 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 590 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 102 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 57 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 84 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.2 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 586 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 149 B

Some files were not shown because too many files have changed in this diff Show More