31

On the Content Manager Server locate System.config this is found in %TRIDION_HOME%\web\WebUI\WebRoot\Configuration Locate the following element: <filter for="Script" type="Tridion.Web.UI.Resources.Filters.JScriptMinifier, Tridion.Web.UI.Resources.Filters" enabled="always"> Replace the value for the enabled attribute to read "never" &...


20

JQuery is an independent library, that can co-exist with other libraries like Anguila. Here some steps that enable a developer to use JQuery in a GUI extension. 1) Update your JQuery file to use the noConflict method and pass it to a variable called for instance $j. 2) Reference the updated JQuery file in a group of resources used by your GUI Extension. &...


20

Take a look at the PowerTools Example Tool. The JS for the tool is visible at http://code.google.com/p/tridion-2011-power-tools/source/browse/trunk/PowerTools.Editor/PowerTools/Client/Example/Example.js - It has a progress bar which polls a background service, take a look at the PowerTools.Popups.Example.prototype._onExecuteButtonClicked() method. If you ...


18

It's usually a server-side error. So you could check the Application event log for any warnings from ASP.NET -- but the easiest is usually to just access the CME with these two URL parameters: ?mode=js and ?mode=css You can check your JavaScript console or browser developer tools for the exact request that returned a 500 error -- or you can try the above ...


12

At quick glance, looks like you are adding the reference to your commandset from your resource group in the wrong place, you should add it like: <cfg:fileset> <cfg:file type="script">/Counter/Counter.js</cfg:file> <cfg:file type="reference">Counter.CommandSet</cfg:file> </cfg:fileset> In your example you have it ...


12

Server-side The XML is available through the ConfigurationManager object from Tridion.Web.UI.Core: XmlDocument myConfigurationXml = ConfigurationManager.Editors["MyEditor"].CustomXml Client-side You need to add a child node called 'clientconfiguration' (same namespace) with the settings you want. The format of the content under that node is up to you. I ...


11

The following web browsers are listed as supported in the documentation for SDL Tridion 2013, under Content Manager Explorer prerequisites Internet Explorer 10.0 Internet Explorer 9.0 Safari 6.0 for the Mac Google Chrome, latest version Mozilla Firefox, latest version I'm not aware of any polyfills or feature detection in use. This doesn't mean that you ...


11

As I've promised, I'm back with a skeleton Visual Studio 2010 project that demonstrates a few concepts: a possible structure of a CME Extension Editor within a Visual Studio project editor's configuration to be able to extend the functionality provided by CME Dashboard, as of now (pre 2013 release) and so far, two ways to extend an existing CME command -- e....


11

You can run your extension code when the thread gets executed. To do so, try following function onDisplayStartedReadonly() { $evt.removeEventHandler($display, "start", onDisplayStartedReadonly); function onDisplayStartedReadonly$_collectProperties() { if ($display.getView().getId() == "ComponentView") { debugger; ...


10

I have this in my powershell profile. Basically, it's the same answer as Rob's. function SetGuiMinification($value){ $filename = 'C:\Program Files (x86)\Tridion\web\WebUI\WebRoot\Configuration\System.config' $conf = [xml](gc $filename) $conf.Configuration.filters.filter |?{$_.type -like '*JScriptMinifier*'} |%{$_.enabled = $value} $conf.Save($...


10

You can do that (alert) without a GUI extension, simply by using Event System (OnComponentSavePre event). The GUI extension framework is very different in 2011 and 2013, I would not recommend doing a real extension for 2009, as you would have to rebuild it once you upgrade. Creating a Tridion 2009 Event System is not as simple as 2011 or 2013, but ...


10

One IMPORTANT thing you'll need to think of is that a component can be published in different states on different pages, so there can be a scenario where multiple versions are published. Technically it's possible, actually there's probably a lot of ways to achieve this. Here's some topics I'd look into: 1) GUI Extensions - you'll need to show the version ...


10

What I have been doing lately is changing the CodeMirror css files themselves to get it to become larger. In your extensions folder under CodeMirror\CSS\codemirror.css change the top 2 classes to the following: .CodeMirror { line-height: 1em; font-family: monospace; height: 100%; /* Necessary so the scrollbar can be absolutely positioned within the ...


9

I assume the problem is in $evt.addEventHandler(item, "load", itemLoad); item.load(); As if Item is loaded, then it wont fire load event onitem.load()`. you can either do reload: item.load(true) or check if item is loaded if (item.isLoaded()) { itemLoad(); } else { $evt.addEventHandler(item, "load", itemLoad); item.load(); }


9

I seem to remember that old extension for some reason. ;) You are pretty close... I rewrote some of the logic to the following: var fieldBuilder = $display.getView().properties.controls.fieldBuilder; fieldsContainer = fieldBuilder.properties.input; fieldsNode = fieldsContainer.getElement(); control = null; $j(fieldsNode).children().each(...


9

This is an implementation detail that you shouldn't really have to deal with. But I believe Tridion 2013 uses version 3.30 of the Microsoft Ajax Minifier.


9

Basically it is managed in an HTTP module that is configured in the WebUI\Web.config file. <add type="Tridion.Web.UI.Core.Http.IconUrlRewriter, Tridion.Web.UI.Core" name="CME-Core-IconUrlRewriter"/> The icons that you see for instance T2L0P0 is a virtual name that is translated to a valid image. T: Type L: Lock P: Published It is the way the CME ...


9

Assuming, you`re opening item select dialog (Tridion.Cme.Views.ItemSelectDialog) to select the component you are interested in, you need to specify a filter in dialog features. As an example when you click on browse button to open popup dialog: Extension.Browse.prototype.onOpenClik = function Extension$browse(isControlVisible) { var contextItemID = ...


9

Your logic for isEnabled and isAvailable is triggered around the selection variable, and in your case checking to see if the item selected is a component and that the number of items selected is at least one. This works in your DashboardView when you select a component because your selection now has a length of one, and the item.getItemType() is a component....


9

You need to ensure that you have first selected the correct frame in the console. It defaults to 'top frame' but you'll want to choose e.g. Dashboard.aspx. You'll know it's the right one when it helps you with code completion :)


9

You probably need to look through InlineFormatArea.js and the Format Area Action commands (executeFAAction) You'll see that when in XM the necessary functions are called cross domain using the $xdm object. You will see functions such as this.applyBold this.applyItalic this.applyHTML the former two call off to applyTagFeature whilst the the latter, you're ...


9

It appears that Alchemy does not yet pick up HTML files. Try creating it as an ASPX file instead. Static HTML files are often cached a little too aggressively by the browsers anyway, so you might want to avoid them in any case if you plan to do anything dynamic in it.


8

You need to define remove section into lists section <ext:lists> <ext:remove> <!-- Defines an extension to remove from the runtime @id Defines an ID of the element to remove @name Defines the extension name --> ...


8

@idmatch is the regular expression mask which if applied to list parent ID, then definition associated is applied to the List. To extend existing views you should configure listdefinion section in ext:listdefinitions from your extension configuration. Like it is done at Gitgub config Example from previous post. ECL items has a mask /^ecl:\d+-(?'providerId'[...


8

As another option I would suggest the Tab Initialize Extenders. To use it you should create a class (well.. in terms of JavaScript of course ), implement public initialize method there, and register it as a Tab Initialize Extender for Translation Job General Tab (you should aslo configure Extension editor configuration to make this extension accessible). ...


8

You shouldn't have much of an issue from my understanding given the Anguilla framework setup such that the The JS runs in the client - if this is affected between upgrades etc. depends what your JS does ... For example if there is a dependency on the HTML attributes in the GUI make-up (I've seen worse) and the HTML/mark-up changes in an upgrade then your ...


8

Not a solution to your problem, but OOTB it's possible to add new 'Publication types' directly in the Tridion.ContentManager.Config file as part of the CM machine, a snippet is shown below: <publicationTypes> <!-- Constraints: 1) id and name attribute is unique. 2) id > 1024. Numbers below 1024 are reserved. 3) ...


8

You can do a little magic to customize the default ItemSelectDialog view after its loaded (assumption based on your comments with John Winter). First you'll want to create an extension group in your configuration. It should look something like: <resources catch="true"> <cfg:filters /> <cfg:extensiongroups> <cfg:extensiongroup ...


8

As stated in the comments above, next to defining the resources files in the configuration, you should also move the dll of your GUI extension project to the Tridion\web\WebUI\WebRoot\bin folder. I put this answer in here for clarity, so this question can have an "accepted" answer.


8

You can check if an item is a multimedia component with this code $models.getItem(itemId).isMultimedia() this will return true or false.


Only top voted, non community-wiki answers of a minimum length are eligible