Git Product home page Git Product logo

leblender's People

Contributors

bjarnef avatar davidtwamley avatar jasonkvickers avatar kvakulo avatar mirkomaty avatar sajones926 avatar soreng avatar terenberger avatar wiedikerli avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

leblender's Issues

LeBlender Editor Property Validation

I have a number of custom LeBlender Editors, each with several properties of varying types (Image Pickers, Textstrings, True/False).

I need a way to stop people from adding a content block to the grid if they don't fill out all of the fields. Is there any way I can implement some sort of Required validation on them? i.e. if they don't fill them all out, it won't add the custom grid editor to the grid and will display an appropriate error.

NREs from GetCacheExpiration When Using Hosting Grid Editors in App_Plugins

I have some of my grid editors defined in the App_Plugins folder. They load and work OK, but my Umbraco trace log is filled with NullReferenceExceptions from GetCacheExpiration(). It appears that when checking for grid editor settings, LeBlender only looks in \config\grid.editors.config.js and not in App_Plugins.

Issues when using core property value converters

When using core property value converters in Umbraco 7.6.x and 7.7.x and casting e.g. value from an Author Picker Umbraco.MultiNodeTreePicker2 to IEnumerable<IPublishedContent> it returns an exception:

Der opstod en fejl under udførelsen af den underordnede anmodning for handler 'System.Web.Mvc.HttpHandlerUtil+ServerExecuteHttpHandlerAsyncWrapper'.
foreach (BlogPost blogPost in blogPosts)
{
     Employee author = (blogPost.Author ?? Enumerable.Empty<IPublishedContent>()).FirstOrDefault() as Employee;
}

When I use same logic just in a regular partial view there are no issues.

Problem with reflection in GetLeBlenderControllers

Hi,

In GetLeBlenderControllers (in Lecoati.LeBlender.Extension.Helper) you scan ALL assemblies for the type LeBlenderController. This crashes however on certain dll's like Microsoft.SingnalR.Core. Because of this a null result is cached and the scanning will be done again on the next request and so on.

LeBlender Umbraco Exception - An item with the same key has already been added

We are facing a strange behaviour with LeBlender editor, we have the following scenario we setup a datatype in backoffice, which is leblender type. Then we pick up a new property which is an archetype datatype and this child could hold as you may know complex datatypes contents as user wants. Now the tricky part is coming, because we set here a grid content page which can holds modules. These modules are all kind of types, doesn't matter, mostly BUT, if we have a module which type is LeBlender then we've got an exception that ,, An item with the same key has already been added" - so basicly the problem is, I think then when leblender render the editor it gives the same key for both - same for the parent and same for the child. Basically we have leblender editor in leblender editor. At backoffice side everything looks great.
Could you point me out what should we change, or maybe you could give us some updates?! Thanks in advance!

Custom controller - custom model

Hi,

Just a question this time.
I'm using a custom controller and I though it would be possible to pass on a custom model to the view, like this:

public class TwitterController : LeBlenderController
{
    public ActionResult Index(LeBlenderModel model)
    {
        var item = model.Items.Single();
        string tweetUrl = item.GetValue<string>("tweetURL");
        return View(tweetUrl);
    }
}

And the view:

@inherits UmbracoViewPage<string>

@Model

Unfortunately the Model is null in the view. Am I doing something wrong?

Changing datatype does not update dataTypeGuid in the database if alias is kept the same

I created an editor where one of the properties was originally a dropdown list datatype. I have content in the DB using this editor. I then switched that datatype to a MNTP, but I did not change the property name or alias. When saving the content a second time (after selecting content with the MNTP), the value in the database changes but the dataTypeGuid does not.

The reason that this is a problem is that it will not deploy properly using Courier. The deployed value gets wiped out on the receiving instance.

Here's an example of the data stored in the DB (property is called Science Branch) when it was saved with the DDL datatype:

"scienceBranch": { "value": "29", "dataTypeGuid": "118f8ef3-c212-4c5f-92ea-413f4fdbdeca", "editorAlias": "scienceBranch", "editorName": "Science Branch" }

After switching to a MNTP, this is what's in the DB:

"scienceBranch": { "value": "1085", "dataTypeGuid": "118f8ef3-c212-4c5f-92ea-413f4fdbdeca", "editorAlias": "scienceBranch", "editorName": "Science Branch" }

But it really should be this:

"scienceBranch": { "value": "1085", "dataTypeGuid": "f3e624bc-924c-4506-b6Ba-8d3a6eCe15ce", "editorAlias": "scienceBranch", "editorName": "Science Branch" }

If I change the property alias, it then correctly updates the dataTypeGuid, however, it clears out the values I had previously selected. Seems like maybe it's just missing a check to see if they data type changed.

Add option to disable item

When allowing multiple items it would be great to have an option to disable an item, e.g. like in Archetype.
Sometimes you might have content you just want to disable temporary.
For now I can add a checkbox property to hide/disable an item.

Caching on master/frontend set ups

We have been working on moving a site that uses leblender from a single instance setup to a load balanced master/frontend setup (as seen in the flexible load balancing tutorial on umbraco's wiki). In this set up the master server handles the backoffice activities and is strictly not allowed to scale whereas the frontend server/s are not used for backoffice tasks and are allowed to scale. Our current implementation of this setup uses two different URLs for the master and frontend servers (this could potentially be changed with some url routing perhaps).

While testing this setup I noticed that changes made on the master's backoffice would not be seen on the frontend server's urls until the cache for that grid editor expired. This contrasts with the built in grid editors (RTE, headline, etc.) which would have the changes made in the master backoffice.

To further understand the conditions of this I tested some different scenarios. I used the master server's domain to view the page before/after an update. In this case, the update was visible immediately. The same change would not be visible on the frontend domain for another hour (also experimenting with cache lengths!).

Another scenario I tried was updating the grid element using the back office on the frontend server's backoffice which should not be an issue with low loads as the instance count was 1. I viewed the page before/after the change. This case behaved the same as the master backoffice/master domain scenario.

My first theory was that leblender may not have been following the caching best practices (using ApplicationContext.ApplicationCache.RuntimeCache versus HttpRuntime.Cache) so I began to look into the leblender source. Leblender appears to be using the correct method of caching, which should allow the load balanced setups to effectively poison the cache when changes are made.

Looking further into how the cache was being used, I noticed that the cache key string was built using HttpContext.Current.Request.Url, which when coerced to a string resolves to the full url (example: https://mysite.com/somepage?thing=2). In the context of a single server/domain environment, this works fine as when the backoffice publishes a change, the cache for that element is updated accordingly. However in a multi domain environment I suspect there is multiple cache entries for each grid element and only the master domain's is updated when the page is published, leading to the delay in the frontend page showing the change.

My proposed change is to change the use of HttpContext.Current.Request.Url to HttpContext.Current.Request.Url.PathAndQuery.

This should retain the ability to cache by specific page and query values, but allow for multi domain setups to update the cache accurately.

I plan to make a pull request with this change, but please let me know if there is something I have overlooked with this change.

Unable to deploy with Teamcity, seems to be something wrong with the path.

[trunk\src\Limetta.Umbraco.Web\Limetta.Umbraco.Web.csproj.teamcity] AutoParameterizationWebConfigConnectionStringsCore [14:04:04][AutoParameterizationWebConfigConnectionStringsCore] ParameterizeTransformXml [14:04:04][AutoParameterizationWebConfigConnectionStringsCore] ParameterizeTransformXml [14:04:04][ParameterizeTransformXml] Transforming Source File: C:\TeamCity\buildAgent\work\be672c2b98195605\trunk\src\Limetta.Umbraco.Web\App_Plugins\LeBlender\Web.config;.\App_Plugins\LeBlender\Web.config [14:04:04][ParameterizeTransformXml] C:\Program Files (x86)\MSBuild\Microsoft\VisualStudio\v11.0\Web\Microsoft.Web.Publishing.targets(2352, 5): Could not open Source file: Could not find a part of the path 'C:\TeamCity\buildAgent\work\be672c2b98195605\trunk\src\Limetta.Umbraco.Web\App_Plugins\LeBlender\Web.config;\App_Plugins\LeBlender\Web.config'. [14:04:04][ParameterizeTransformXml] Transformation failed

The key part being:
[ParameterizeTransformXml] C:\Program Files (x86)\MSBuild\Microsoft\VisualStudio\v11.0\Web\Microsoft.Web.Publishing.targets(2352, 5): Could not open Source file: Could not find a part of the path 'C:\TeamCity\buildAgent\work\be672c2b98195605\trunk\src\Limetta.Umbraco.Web\App_Plugins\LeBlender\Web.config;\App_Plugins\LeBlender\Web.config'.

So somewhere there seems to be an extra ";". Saw a similar issue on umbraco package at http://issues.umbraco.org/issue/U4-4510.

I installed 1.0.8.2 and 1.0.8.3 and I get the same issue on these. (With Umbraco 7.3.1).

Add option to change "Edit your content here" text

In the grid editor overlay, LeBlender display the text "Edit your content here".
It would be great if one can change this text, e.g. with a short description, which is more useful to editors than just "Edit your content here".

image

Using LeBlender with WebApi

Hi!

I'm using LeBlender at the moment inside a WebApi method, but getting a value in the partial view is triggering an Exception.
The problem is inside Lecoati.LeBlender.Extension.Helper.GetTargetContentType():

internal static PublishedContentType GetTargetContentType()
{
    if (UmbracoContext.Current.IsFrontEndUmbracoRequest)
    {
        return GetUmbracoHelper().AssignedContentItem.ContentType;
    }
    else if (!string.IsNullOrEmpty(HttpContext.Current.Request["doctype"]))
    {
        return PublishedContentType.Get(PublishedItemType.Content, HttpContext.Current.Request["doctype"]);
    }
    else
    {
        int contenId = int.Parse(HttpContext.Current.Request["id"]);
        return (PublishedContentType)ApplicationContext.Current.ApplicationCache.RuntimeCache.GetCacheItem(
            "LeBlender_GetTargetContentType_" + contenId,
            () =>
            {
                var services = ApplicationContext.Current.Services;
                var contentType = PublishedContentType.Get(PublishedItemType.Content, services.ContentService.GetById(contenId).ContentType.Alias);
                return contentType;
            });
    }
}

Because IsFrontEndUmbracoRequest is false and there's no doctype in the request, the code falls back to getting the request id.
This fails, because there is no request id. There should be a method to pass a content id via the GetValue method.

missing colons on three views

three of the 4 views from here: (LeBlender/Src/Lecoati.LeBlender.Ui/App_Plugins/LeBlender/views_samples) are missing a colon on the line:

Layout="" (should end with a colon)

this causes a compile error when running through a build server which checks view compilation

GridEditorManager is installed in wrong location - Umbraco 7.4

When installing LeBlender to use with Umbraco 7.4 - the installation puts the GridEditorManager folder inside the [Website]/Views folder but it should go into Umbraco/Views.

If you try to use Grid Editor in Umbraco - you will get a 404 but moving the location of the GridEditorManager folder will fix this issue.

This needs fixing for future versions of LeBlender.

Modify config via textarea not working

When modifying config via the textarea, e.g. in GridMaps package if you change zoom from 6 to 8, the config change is not saved.

image

Furthermore if switching from "custom" to another grid editor and then back, it has cleared the values - you have to refresh to see the existing config value again.

Display property alias in title attribute in debug mode

Add clearfix for preview

When using classes like left og right in backoffice the element is using float.
In this example the element is positioned left, center or right based on classes with the same names.

However when floating to right I actually can't edit the grid element (second click), because the height of the container is 0.

image

But if you add a class to the container like preview with following style, then the height if adjusted to the content:

.preview:after {
   content: "."; 
   visibility: hidden; 
   display: block; 
   height: 0; 
   clear: both;
}

image

View and config properties is not shown for "custom" datatype

I noticed when selecting "custom" datatype option in datatypes dropdown in the property setting dialog, it didn't show the additional "view" and "config" properties.

Furthermore I think it was an issue that this "custom" option just saved an empty string in the guid property, because Angular didn't select the option from the empty value. Instead I have changed this to an empty guid 00000000-0000-0000-0000-000000000000

image

Other Value converters?

We have used an archetype in the leblender properties...

Model.Items.First().GetValue<ArchetypeModel>("list");

returns null...

its not only archetype also multiurlpicker.

LeBlender will not work when Umbraco hosted in a virtual directory

When Umbraco is hosted in a virtual directory, then LeBlender will not work correctly because all of the URLs is uses start with '/' which means that unless Umbraco is in the site root, they will not resolve correctly.

It is possible to work around some of the JS references using URL rewrite rules, but you can not change the location is tries to POST any changes to.

It also means that when trying to render content server site, you get an error because it is trying to access content which .Net believes is outside of the current running application.

An example of the stack trace you receive when trying to render a page is:

System.ArgumentException: The virtual path '/app_plugins/leblender/editors/leblendereditor/views/base.cshtml' maps to another application, which is not allowed.
   at System.Web.Compilation.BuildManager.ValidateVirtualPathInternal(VirtualPath virtualPath, Boolean allowCrossApp, Boolean codeFile)
   at System.Web.Compilation.BuildManager.GetVPathBuildResultInternal(VirtualPath virtualPath, Boolean noBuild, Boolean allowCrossApp, Boolean allowBuildInPrecompile, Boolean throwIfNotFound, Boolean ensureIsUpToDate)
   at System.Web.Compilation.BuildManager.GetVPathBuildResultWithNoAssert(HttpContext context, VirtualPath virtualPath, Boolean noBuild, Boolean allowCrossApp, Boolean allowBuildInPrecompile, Boolean throwIfNotFound, Boolean ensureIsUpToDate)
   at System.Web.Compilation.BuildManager.GetVirtualPathObjectFactory(VirtualPath virtualPath, HttpContext context, Boolean allowCrossApp, Boolean throwIfNotFound)
   at System.Web.Mvc.BuildManagerWrapper.System.Web.Mvc.IBuildManager.FileExists(String virtualPath)
   at Microsoft.Web.Mvc.ViewEngineFixWorker`1.GetPathFromSpecificName(ControllerContext controllerContext, String name, String cacheKey, String[]& searchedLocations)
   at Microsoft.Web.Mvc.ViewEngineFixWorker`1.GetPath(ControllerContext controllerContext, String[] locations, String[] areaLocations, String locationsPropertyName, String name, String controllerName, String cacheKeyPrefix, Boolean useCache, String[]& searchedLocations)
   at Microsoft.Web.Mvc.ViewEngineFixWorker`1.FindPartialView(ControllerContext controllerContext, String partialViewName, Boolean useCache)
   at Umbraco.Core.Profiling.ProfilingViewEngine.FindPartialView(ControllerContext controllerContext, String partialViewName, Boolean useCache)
   at System.Web.Mvc.ViewEngineCollection.Find(Func`2 lookup, Boolean trackSearchedPaths)
   at System.Web.Mvc.HtmlHelper.FindPartialView(ViewContext viewContext, String partialViewName, ViewEngineCollection viewEngineCollection)
   at System.Web.Mvc.HtmlHelper.RenderPartialInternal(String partialViewName, ViewDataDictionary viewData, Object model, TextWriter writer, ViewEngineCollection viewEngineCollection)
   at System.Web.Mvc.Html.PartialExtensions.Partial(HtmlHelper htmlHelper, String partialViewName, Object model, ViewDataDictionary viewData)
   at ASP._Page_Views_Partials_grid_editors_base_cshtml.Execute() in d:\Apps\UmbracoCmsGreen\Website\CMS\Views\Partials\Grid\Editors\Base.cshtml:line 20

Nuget installation - package files not getting copied into project

I installed version 1.0.8.4 with nuget, and it works fine for me locally, but when anyone else tries to run the project, it doesn't restore all the Leblender files correctly into the project. The correct version of leblender is in my packages.config file, and it seems to copy the dll, but none of the other files (views/js/etc.).

Instead we get the error:

System.InvalidOperationException: The partial view '/appplugins/leblender/editors/leblendereditor/views/base.cshtml' was not found or no view engine supports the searched locations. The following locations were searched: /appplugins/leblender/editors/leblendereditor/views/base.cshtml

The workaround for us was to just copy all the leblender folders/files from \packages\Lecoati.LeBlender.1.0.8.4\Content\App_Plugins\LeBlender to the App-Plugins\LeBlender folder in the project. When restoring a package, should those folders be getting copied over into the project?

FYI - I am running Umbraco 7.4.3. Thanks.

Solution won't open

When I clone the repo to my computer and try to open the solution, I bump into 2 issues:

  1. The project file could not be loaded. Could not find file 'GitHub\LeBlender\Src\Lecoati.LeBlender.Ui\Lecoati.leblender.Ui.csproj'.
    The reason is because it's in the gitignore file.
  2. The references are invalid. Instead of pointing to the NuGet package assemblies, it's referencing "........\Bitbucket\lct_dreampeaks\packages..."

Render different HTML based on back-office/front-end

Hi,

This is more of a feature request than an issue, but would it be possible to detect if the grid editor view is rendered for the back-office or the front-end?
Just like Doc Type Grid Editor:

If your front end view is rather complex, you may decide that you want to feed the back office
preview an alternative, less complex view. To do this, within your cshtml, simply check for a
querystring parameter dtgePreview being set to “1” to detect being in preview mode to provide an
alternative view.
Example:

@inherits Umbraco.Web.Mvc.UmbracoViewPage
@if(Request.QueryString[“dtgePreview”] == "1"){
// Render preview view
} else {
// Render front end view
}

Add Property action just saves the datatype

When I create a new LeBlender editor I go to press 'Add Property' it just saves the datatype and I get this error in the console:

angular.min.js?cdv=665052652:63 TypeError: Cannot read property 'config' of undefined
at new (leblenderproperties.controller.js?cdv=665052652:8)
at d (angular.min.js?cdv=665052652:28)
at Object.instantiate (angular.min.js?cdv=665052652:28)
at angular.min.js?cdv=665052652:53
at angular.min.js?cdv=665052652:44
at n (angular.min.js?cdv=665052652:7)
at k (angular.min.js?cdv=665052652:44)
at e (angular.min.js?cdv=665052652:40)
at angular.min.js?cdv=665052652:39
at angular.min.js?cdv=665052652:158

Tried hard cache clear and refresh, and the issue persists when closing and re-opening a saved datatype.

Tried 1.0.8.4 had the issue, then tried 1.0.7 - same problem. Running against: 7.4.3

HasValue like IPublishedContent

Is there a way to check if a property value is "never" set?
The IPublishedContent has a method "HasValue" for this.

I think the IsEmptyProperty from the LeBlenderValue do that, but it's private.

Option to select alternative view

I have a case where I am creating an Image Box, with different properties like an image, a heading, a link etc.

Because of its alias "imageBox" it is by default looking for "ImageBox.cshtml" ... it would be great if you could select or speficy alternative view that the editors can choose between.

E.g. when you have the same model, but just want the present it in different ways..
At the moment I have to create a grid editor for each alternative view or use conditions like if, else if and else to output different markup based on a property.

Getting Leblender working with Skyburd.Umbraco.GridData

Hi
I'm using the GridData for the strongly typed grid. I need to write a new converter for the leblender. I have the converter below but i cannot get the leblendervaluefrom the json.

How are you parsing the json? Could you provide some methods?

The magic should happen here

Value = token.Value<LeBlenderValue>(); // <= here i need to parse the json

Here is the complete file:

    [JsonConverter(typeof(LeBlenderModelMatchingConverter))]
    public class GridControlLeBlenderValue : IGridControlValue
    {
        public GridControl Control { get; private set; }

        [JsonIgnore]
        public JToken JToken { get; private set; }

        [JsonProperty("value")]
        public LeBlenderValue Value;

        protected GridControlLeBlenderValue(GridControl control, JToken token)
        {
            Control = control;
            JToken = token;
            Value = token.Value<LeBlenderValue>(); // <= here i need to parse the json

        }

        public static GridControlLeBlenderValue Parse(GridControl control, JToken token)
        {
            if (token == null) return null;
            return new GridControlLeBlenderValue(control, token);
        }

        #endregion
    }

Thanks for your help!

public access to LeBlender property

I'm trying to make Vorto compatible with LeBlender, but one of the issues is that access to the property is marked internal or private in the majority of the LeBlender classes. To get things working it would be necessary to get access to the guid for a given LeBlender value which is available in properties object of LeBlenderValue but internal. Could any of this be opened up or a method put in the LeBlenderHelper class to provide access to the property?

7.6 Compatibility

I've installed Leblender in a fresh install of Umbraco 7.6. LeBlender was working for some time; however, it's suddenly stopped. When I click on a grid editor it throws an angular error

angular.min.js?cdv=1809374105:63 SyntaxError: Unexpected token ' in JSON at position 1337 at JSON.parse (<anonymous>) at ub (http://localhost:51857/umbraco/lib/angular/1.1.5/angular.min.js?cdv=1809374105:13:122) at e.defaults.transformResponse (http://localhost:51857/umbraco/lib/angular/1.1.5/angular.min.js?cdv=1809374105:98:83) at http://localhost:51857/umbraco/lib/angular/1.1.5/angular.min.js?cdv=1809374105:97:347 at Array.forEach (native) at n (http://localhost:51857/umbraco/lib/angular/1.1.5/angular.min.js?cdv=1809374105:6:470) at Yb (http://localhost:51857/umbraco/lib/angular/1.1.5/angular.min.js?cdv=1809374105:97:329) at c (http://localhost:51857/umbraco/lib/angular/1.1.5/angular.min.js?cdv=1809374105:99:14) at i (http://localhost:51857/umbraco/lib/angular/1.1.5/angular.min.js?cdv=1809374105:79:437) at http://localhost:51857/umbraco/lib/angular/1.1.5/angular.min.js?cdv=1809374105:80:485

I took a look at the JSON being returned from /backoffice/LeBlenderApi/PropertyGridEditor/GetAll and it looks a little messed
)]}', [{"name":"Rich text editor","alias":"rte","isGridEditor":true,"editor":{"view":"rte"},"prevalues":null},{"name":"Image","alias":"image","isGridEditor":true,"editor":{"view":"media"},"prevalues":null},{"name":"Macro","alias":"macro","isGridEditor":true,"editor":{"view":"macro"},"prevalues":null},{"name":"Embed","alias":"embed","isGridEditor":true,"editor":{"view":"embed"},"prevalues":null},{"name":"Textstring","alias":"textstring","isGridEditor":true,"editor":{"view":"textstring"},"prevalues":{"fields":[{"label":"Style","key":"style","description":"inline style","view":"textstring","advanced":false},{"label":"Markup","key":"markup","description":"markup of the input","view":"textstring","advanced":false}]}},{"name":"LeBlender Editor","alias":"leblenderEditor","isGridEditor":true,"editor":{"view":"/App_Plugins/LeBlender/editors/leblendereditor/LeBlendereditor.html"},"prevalues":{"fields":[{"label":"Properties","key":"editors","description":"LeBlender Editor properties","view":"/App_Plugins/LeBlender/editors/leblendereditor/leblenderproperties.html","advanced":false},{"label":"Render in the grid","key":"renderInGrid","description":"Render in the grid","view":"boolean","advanced":true},{"label":"Min","key":"min","description":"Minimum number of items","view":"number","advanced":true},{"label":"Max","key":"max","description":"Maximum number of items","view":"number","advanced":true},{"label":"Cache period","key":"expiration","description":"Cache period in seconds (by page)","view":"number","advanced":true}]}}]

I wonder if this is related to the update to latest JSON.Net http://issues.umbraco.org/issue/U4-9499

Change only cursor type for list header

The option to use multiple items in LeBlender editor change cursor style to pointer on the container, which also affect the UI when only having 1 item.
It makes a large part of the area in the dialog seem to be clickable - even it is not.

Instead of change cursor style on .list it should be added to its child node span.list-number.

Overlay opens when value is null

Sometimes the overlay opens right away when loading a page in backoffice and when using LeBlender in grid editor.

I restored a page locally from UaaS, where a "Testimonials" grid editor has a MTNP property. Model.Items / Lecoati.LeBlender.Extension.Models.LeBlenderValue was null ... if I then in grid editor select a node in MNTP and publish page again the overlay doesn't open, when page load... and when removing selected nodes in MNTP + publish, the overlay also stay closed.

Better error message

When a view contains an error, it would be nice to have a better error message - not just the exception message. Event just the YSOD would be good, but if it could be contained it would be better.

Sorting doesn't sync tree nodes

After sorting grid editor tree nodes, it seems to be out of sync, because when clicking a grid editor node after sorting, it redirects to content section.

I have to refresh the browser window before the tree nodes work again.
I think it need to use navigationService.syncTree after the sorting has been done.

Furthermore sometimes you can't drag the grid editor at bottom, because the footer overlaps these items.

If you open browser console window, you will see the footer overlaps the items.
image

It is using umb-panel-footer and I think it should have umb-panel-body as well.

In my own package Color Palettes I have the following for a panel/dialog (position: right):
https://github.com/bjarnef/color-palettes/blob/master/ColorPalettes/ColorPalettes/ColorPalettes/views/PaletteEditDialog.html#L3-L4

After upgrade of Umbraco 7.5.3 -> 7.5.4 LeBlender can't find datatype

After Umbraco Cloud has upgraded from 7.5.3 to 7.5.4, it seems it broke LeBlender.

E.g. an error in console like:

Failed to load resource: the server responded with a status of 417 (Missing token)

/umbraco/backoffice/LeBlenderApi/DataType/GetPropertyEditors?guid=0cc0eba1-9960-42c9-bf9b-60e150b429ae

From the commit in UaaS / Umbraco Cloud AutoMapper has beeen modified, which could be the reason why it fails somewhere in this method:

public object GetPropertyEditors(Guid guid)
{
var dataType = Services.DataTypeService.GetDataTypeDefinitionById(guid);
if (dataType == null)
{
throw new System.Web.Http.HttpResponseException(System.Net.HttpStatusCode.NotFound);
}
var dataTypeDisplay = AutoMapper.Mapper.Map<IDataTypeDefinition, Umbraco.Web.Models.ContentEditing.DataTypeDisplay>(dataType);
var propertyEditor = global::Umbraco.Core.PropertyEditors.PropertyEditorResolver.Current.PropertyEditors.Where(r => r.Alias == dataTypeDisplay.SelectedEditor).First();
return new { defaultPreValues = propertyEditor.DefaultPreValues, alias = propertyEditor.Alias, view = propertyEditor.ValueEditor.View, preValues = dataTypeDisplay.PreValues };
}

Invalid property

I have a LeBlender editor width two textboxes and a "Nested Content" containing some textfields and an url picker (RJP.MultiUrlPicker).

When the control is existing, and then edited, the nested content property is invalid until I make any changes in it.

Anyone else have had this problem?

LeBlender overwrite text-decoration

It seems LeBlender overwrite text-decoration to none, which affect property editors like content picker, link picker, etc. where it is useful to have text-decoration on hover.

Generally LeBlender should overwrite styles of property editors used in the overlay/dialog.

Multinode-treepicker doesn't close automatic

When a Multinode-treepicker (mntp) is chosen, as a property editor with a "Max number of items" of 1, it doesn't close automaticly after selecting a node. This does happen when the same mntp is used as a propertyeditor on a node.
image
image

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.