sitefinity / feather Goto Github PK
View Code? Open in Web Editor NEWmvc
License: Other
mvc
License: Other
I'm able to follow your guide to successfully create custom layout widgets. But it doesn't allow you to specify Column Labels, and the labels it creates are random and unrecognizable. I've noticed it's because the example doesn't include the sf_colsOut
class. Adding that class adds the column labels back, but it then also adds the options for the Sizes and Space, which for Bootstrap, you really wouldn't want the user to modify.
How can I specify Column Labels effectively?
Wireframes: http://ux.sitefinity.com/Sitefinity%20Feather/#p=link
This kind of goes with issue #48 in that how do you create custom form Feather widgets to match your selected Feather layout?
Cover Anchor view javascript implementation with client unit tests
Trying to setup a feather project based on the documentation. I've got Sitefinity 7.1.5200 installed with site setup, I installed the feather NuGet package. I've modified the AssemblyInfo.cs, but I can't find a copy of the SystemConfig.config file in my project:
Do I need to create a 'Configuration' folder under App_Data < Sitefinity and add a SystemConfig.config file?
Cover localization service with client unit tests
Cover Web Address view with client unit tests
I all of a sudden noticed that my changes to \ResourcePackages\Bootstrap\MVC\Views\Layouts\default.cshtml
were not being reflected on the client. I then also noticed that a 2nd Bootstrap.default
template was automatically created.
Any idea why a 2nd Bootstrap.default
would have been created and why my changes to Bootstrap's default.cshtml
are not showing up on the front-end?
//How I can call MessageWidget View here?
@Html.Raw(Model.Message)
The SfPlaceHolder helper wraps the content placeholders with a div with runat="server" and a hardcoded id, making it impossible to have more than one content placeholder on a layout.
public static MvcHtmlString SfPlaceHolder(this HtmlHelper helper, string containerName = "Body")
{
var htmlString = string.Format(System.Globalization.CultureInfo.InvariantCulture, "<div class='sfPublicWrapper' id='PublicWrapper' runat='server'><asp:contentplaceholder id='{0}' runat='server' /></div>", containerName);
return new MvcHtmlString(htmlString);
}
We need to optimize the UI tests for dynamic widgets in order to avoid dynamic module activation on each test (where the same module is used)
It seams that out of the box Feather uses a full-width layout with Bootstrap. It seems like it should be possible to use the fixed-width layout, but I'm at a loss to see where I would do that. Am I just missing where I should place the container
CSS class? Closest documentation I could find was the section on Bootstrap Resource Package.
Listed at this url is an example of how Sitefinity is able to be extended to support custom url routing.
http://www.sitefinity.com/developer-network/forums/developing-with-sitefinity-/url-routing
This works in non-feather projects, however we did encounter a bug when we were logged into the backend which occurred here: Telerik.Sitefinity.Web.UI.ScriptManagerWrapper.Page_InitComplete. We were able to get around this by disabling the in-line editor inside Administration > Settings > Pages > "Enable in-line editing." = false. I only note this so that if someone else runs across this, it may help them.
Additionally, for Feather projects, users may encounter a blank page when attempting to render a custom route. I believe the issue can be traced to this file: https://github.com/Sitefinity/feather/blob/master/Telerik.Sitefinity.Frontend/Resources/PackageManager.cs#L35 which obtains the current resource package. The method inspects both the Url and the PageInfo to obtain the current package, neither of which exist if you are using a virtual route (i.e. /my/custom/route/to/whatever)
As a result, the AddVariablesToPath() method inside LayoutVirtualPathBuilder.cs never applies the resource package (i.e. Bootstrap) to the virtual path. This in turn results in GetVirtualPath(IPageTemplate template) to return null because the layout is said not to exist.
To work around this, without making modifications to Telerik.Sitefinity.Frontend assembly, I was able to inject the following line of code in my method which returns RouteData just before my call to this.GetRouteDataInternal() [this assumes I am using Bootstrap for this instance].
SystemManager.CurrentHttpContext.Items["CurrentResourcePackage"] = "Bootstrap";
Finally, one last error I ran into, was despite disabling in-line editing as noted above, the following line in the default Bootstrap template caused a NullReferenceException when LayoutRenderer.RenderViewToString made a call to Render() the razor view:
@Html.InlineEditingManager(false)
Once I removed this line, the NullReferenceException was avoided, and the view rendered properly for my custom routes.
Hope this helps!
Hi guys,
please make the ResourceHelper.GetWebResourceUrl public in this file:
https://github.com/Sitefinity/feather/blob/master/Telerik.Sitefinity.Frontend/Mvc/Helpers/ResourceHelper.cs
The use case is that we may want to load scripts with a loading framework, so at the moment that's kind of hard. Either we need to copy the code somewhere or parse the script tag :)
Thanks.
I'm trying to figure out what's the best practice for master layout files (for Bootstrap it's the Bootstrap.default file). What I'm wondering is how to handle resources (css/js) that I want globally included but are also shared/used with widgets. I know you can use Url.WidgetContent
to register a resource in the view, but that places that resource directly in the content at that point. Yet I'd like to follow the best practice of adding CSS styles in the head and JavaScript at the end of the page.
So I want to add things in the master layout like jQuery, Bootstrap's JS, AngularJS, but placing them in the master at the bottom, and then using Url.WidgetContent
in the widget places the resources before the libraries are actually included. I also tried Razor Sections and they don't work either.
I'm looking for the the best way to do this to fit with Sitefinity/Feather. Any direction is appreciated.
We should upgrade all of the front end frameworks to their latest version
Modify the ExecuteController method of the DynamicUrlParamActionInvoker class in order to provide a brief message that error has been occurred.
Wireframes: http://ux.sitefinity.com/Sitefinity%20Feather/#p=anchor
Add the new selector's attributes sf-select-button-text and sf-change-button-text to the documentation
I've got a clean install of Sitefinity 7.2.5320.0 and I've installed the Feather package with all it's dependencies. I'm getting this error:
Error 2 The "OpenAccessClean" task could not be loaded from the assembly C:\Program Files %28x86%29\Telerik\Sitefinity 7.2\Projects\Project2\packages\Telerik.DataAccess.Fluent.2014.2.918.1\tools\enhancer\enhancer.exe. Could not load file or assembly 'file:///C:\Program Files %28x86%29\Telerik\Sitefinity 7.2\Projects\Project2\packages\Telerik.DataAccess.Fluent.2014.2.918.1\tools\enhancer\enhancer.exe' or one of its dependencies. The system cannot find the file specified. Confirm that the declaration is correct, that the assembly and all its dependencies are available, and that the task contains a public class that implements Microsoft.Build.Framework.ITask. SitefinityWebApp
Thoughts?
Steps to reproduce:
The doc article should describe the API for accessing parent/child items respectively from the child/parent dynamic content objects.
Steps to reproduce:
Cover Sites service with client unit tests
Implement the skeleton for LinkSelector directive:
Wireframes: http://ux.sitefinity.com/Sitefinity%20Feather/#p=link
Prerequisite: your project should be running as a web application (http://localhost/Test1/page1)
Steps to reproduce:
In feather-packages if I work on a, for example, .js file, the updates I make aren't applied in the front end.
Even if I request the file directly in the browser (e.g. http://localhost/path/to/file.js) and I add a query string to invalidate the browser cache - my changes aren't shown.
It seems the files are cached in a way that only an iisreset can reset the cache.
Another example is if I delete some of the widget templates in feather-packages in order to load them from feather-widgets. The result is that the deleted widgets are loaded anyway from cache.
Since the master layout we're using is based on Feather (Bootstrap), I'd like to use the custom layouts in the form designers as well. But when I drag one into the design surface, the content of the layout says:
Cannot find template "~/Frontend-Assembly/Telerik.Sitefinity.Frontend/GridSystem/Templates/my-custom-layout.html".
Also the preview of the form doesn't actually use the master layout, which I guess I can expect, but it makes it hard to get an idea of the true layout.
I'm not sure if I'm not understanding the wiki page correctly or not understanding what's capable, but I'm trying to use an original Sitefinity Designer with an MVC Widget dropped on a template based on Bootstrap.default and I keep getting an error. I've started from a fresh 7.2 project with the latest Feather. The error I get is in the form of a JavaScript alert message:
The relative virtual path '?package=Bootstrap' is not allowed here.
It happens right after I drop the widget onto a page based on the Bootstrap.default template. I also noticed that the request that's causing it to fail is the following with a 500 response:
PUT ~/Sitefinity/Services/Pages/ZoneEditorService.svc/Control/?package=Bootstrap
Could you help clarify what's capable with the original WebForm Designers?
Thanks,
Ryan
Steps to reproduce:
Implement Languages directive listing all languages for currently selected site
Wireframes: http://ux.sitefinity.com/Sitefinity%20Feather/#p=page_from_this_site
Implement Sites directive and Sites service listing all sites
Wireframes: http://ux.sitefinity.com/Sitefinity%20Feather/#p=page_from_this_site
Hi,
I created an empty Sitefinity 7.2.5310 project and followed the instructions of this GitHub project (Getting started).
However the site fails to start after all is done and complains about
"Could not load file or assembly 'Telerik.Sitefinity.Utilities, Version=7.2.5310.0, Culture=neutral, PublicKeyToken=b28c218413bdf563' or one of its dependencies. The located assembly's manifest definition does not match the assembly reference. (Exception from HRESULT: 0x80131040)"
I checked from the bin folder (Sitefinity project in Visual Studio) and it seems that it contains older version of this library file (7.2.5300.0) after installing the Feather package.
Here is some output from Package Manager Console
"PM> Install-Package Telerik.Sitefinity.Feather
Attempting to resolve dependency 'Telerik.Sitefinity.Core (≥ 7.2.5300.0 && ≤ 7.2.9999.9)'.
Attempting to resolve dependency 'Telerik.DataAccess.Fluent (≥ 2014.2.918.1 && ≤ 2014.2.999.9)'.
Attempting to resolve dependency 'Telerik.DataAccess.Core (= 2014.2.918.1)'.
Attempting to resolve dependency 'Telerik.Web.UI (≥ 2014.2.724.40 && ≤ 2014.2.999.99)'.
Attempting to resolve dependency 'ServiceStack.Signed (≥ 4.0.22 && ≤ 4.0.99)'.
Attempting to resolve dependency 'ServiceStack.Common.Signed (= 4.0.22)'.
Attempting to resolve dependency 'ServiceStack.Interfaces (= 4.0.22)'.
Attempting to resolve dependency 'ServiceStack.Text.Signed (= 4.0.22)'.
Attempting to resolve dependency 'ServiceStack.Client.Signed (= 4.0.22)'.
Attempting to resolve dependency 'AspNetMvc (≥ 4.0.20710.0 && ≤ 4.0.99999.9)'.
Attempting to resolve dependency 'Microsoft.AspNet.Mvc (≥ 4.0.20710.0 && < 4.1)'.
Attempting to resolve dependency 'Microsoft.AspNet.WebPages (≥ 2.0.20710.0 && < 2.1)'.
Attempting to resolve dependency 'Microsoft.Web.Infrastructure (≥ 1.0.0.0)'.
Attempting to resolve dependency 'Microsoft.AspNet.Razor (≥ 2.0.20710.0 && < 2.1)'.
Attempting to resolve dependency 'Microsoft.IdentityModel (= 6.1.7600.16394)'.
Attempting to resolve dependency 'Ninject (= 3.2.2.0)'.
Installing 'Telerik.Sitefinity.Core 7.2.5300.0'.
You are downloading Telerik.Sitefinity.Core from Telerik AD, the license agreement to which is available at http://www.sitefinity.com/purchase/license-agreement. Check the package for additional dependencies, which may come with their own license agreement(s). Your use of the package and dependencies constitutes your acceptance of their license agreements. If you do not accept the license agreement(s), then delete the relevant components from your device.
Successfully installed 'Telerik.Sitefinity.Core 7.2.5300.0'.."
As you can see it doesn't install the newest Sitefinity core library available. In order to get this working I would have to manually copy the newest library files from a clean install of Sitefinity 7.2.5310 and override the older versions copied by the package in the bin folder using those.
Are the Sitefinity library dependencies going to be updated any time soon?
We need to upgrade Test Studio to latest version (2014.4.1211.0). All packages should be updated as well in feather and feather-widgets test projects
This article should provide information about the existing settings for controlling the behavior of the system when there is an exception inside of a MVC action.
Steps to reproduce:
Currently the nuget package enforces a version of AspNetMVC >= 4.0.20710.0 && <= 4.0.99999.9 Is there any reason not to allow a newer version?
Thanks.
If I need to use user service, I create hidden field like this: and then access it through the java script: var serviceUrl = $('input#usersServiceUrl').val();
Is it possible to be created a service locator where I can write: SitefinityServices.getUserServiceUrl()
Link: #89
Branch: ShowMessageOnControllerException
Using the default MVC news widget, I can confirm filtering by Tags IS working, however, filtering by Categories IS NOT working. Based on the Wiki by Boyko-Karadzhov here https://github.com/Sitefinity/feather/wiki/How-to-implement-action-that-filters-by-category-or-tag
"Feather will try to match a category first and then fallbacks to tags. When an item matches the action is invoked with the matching taxon."
So, I have 2 categories: General and Friends, and 2 Tags: Bus and Trees
When I click the Tag; Bus, the page invoked is: "mysite.com/news/bus" and the news is filtered correctly showing only news articles tagged as bus.
When I click the Category; General, the page invoked is: "mysite.com/news/general" and ALL news articles are shown. In fact, replacing "general" with anything will just display ALL new articles, so I assume this is the default NO MATCH behaviour.
I can also confirm that falling back to the default sitefinity news widget and sitefinity category widget filtering by category does work correctly - so I can only assume at this stage there is an issue with the MVC widget?
Is anyone else experiencing this same issue?
The build status images should indicate whether there are tests that fail in the 'master' branch.
p.s. You can use the https://wiki.jenkins-ci.org/display/JENKINS/Embeddable+Build+Status+Plugin or other more useful Jenkins plugin.
[assembly: AssemblyCopyright("Copyright © Telerik 2014")]
Steps to reproduce:
Cover Page view javascript implementation with client unit tests
Hello Feather team,
I am trying out MVC List widget as per https://github.com/Sitefinity/feather/wiki/Create-a-MVC-List-widget but run into error saying View cannot be found.
"The view 'Index' or its master was not found or no view engine supports the searched locations. The following locations were searched:
~/Views/List/Index.aspx
~/Views/List/Index.ascx
~/Views/Shared/Index.aspx
~/Views/Shared/Index.ascx
~/Views/List/Index.cshtml
~/Views/List/Index.vbhtml
~/Views/Shared/Index.cshtml
~/Views/Shared/Index.vbhtml" is the error I receive.
The view "Index.cshtml" does exist in my class library and the class library is marked as ControllerContainer. Am I missing something here? (I remember trying this couple of weeks back and was working then)
Thanks
Venkata
I tried to create a directive for a designer and to use templateUrl option but I was not able to give a valid path to my template
Wireframes: http://ux.sitefinity.com/Sitefinity%20Feather/#p=page_from_this_site
Update Angular to 1.3.8/1.3.9
There is an issue with dynamic widget designers on our test server, which causes some UI tests to fail
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.