Modify programmatically plugin parameters joomla - plugins

I would like to make a plugin that lets you use the google fonts. But I want the user to be able to choose from all fonts available. To do this I cannot use a static xml manifest for the menu but I need to create a updated list of the fonts in real time.
So how can I modify the plugin parameters programmatically? Is it also possible to use javascript to add some behavior to the menus for some ajax work?
Thanks

You need to create a custom element and add it to the plugin's xml file.
The following doc will let you know how to add custom element to a form.
You just need to change it according to your needs.
http://docs.joomla.org/Adding_a_multiple_item_select_list_parameter_type
This doc is just for example, you should be able to use this exact code, for example, you need not worry about saving the params. Joomla automatically saves the params of any plugin.

Related

How to add Typo3 Extensions to a page?

I googled for quite some time now and i cannot find a solution for such an easy beginner-problem.
I used the Typo3 Extension Builder to build a test-extension in Extbase. Now i want to use this and include it into one of my pages in the page tree structure to actually see if it works. When browsing the folder structure i can clearly see that the Domain model, the Controllers and all the views have properly been generated. But... How can i tell my page to include it and execute it?
I tried things like including the auto generated typescript into the templates of the pages but nothing works.
Thanks!
In Extension Builder make sure that you added "Frontend plugin" on the left pane. If you'll do it properly you will be able to add this plugin via CE "General Plugin" and then via field "Select plugin"
Sounds like you struggle on a more general level here.
In order to get the output of your Extension in the Frontend you have to assure the following steps:
Set up general Configuration, so that you can see the output of standard content elements in the frontend.
Install your extension and include its TypoScript.
Make sure you have a Plugin configured in your ext_localconf.php and registered in your ext_tables.php.
In the backend, create a new content element and choose "plugin" as its type.
Choose your registered plugin and save.
You should now see output of your extension in the frontend.

Jira plugin development - Is it possible to customize the 'Add project' page from a plugin?

I am developing a JIRA plugin and I'm trying to add a custom field to the Add project page. As far as I know, a custom field can be added only for an issue. Is it possible to add a custom field (a text field or a select list) at a project level?
I have found an plugin, which is able to add metadata on Project level.
Please take a glimpse at this link
Short answer: doable but not particularly easily
The way you do this is to write a WebWork plugin that changes the Java class that handles that webpage. The process is that the actions.xml file contains the AddProjects.jspa, e.g.
<action name="project.AddProject" alias="AddProject" roles-required="admin">
<view name="error">/secure/admin/views/addproject.jsp</view>
<view name="input">/secure/admin/views/addproject.jsp</view>
</action>
which tells you that the class name is AddProject, which you can extend to handle the user setting a value in this new field. Then you also need to decide how you're going to store values for each project (more info in the Practical JIRA Plugins or JIRA Development Cookbook books). The hardest part here is that the template files are .jsp files which you can't change directly with a plugin. What I usually do is write a ServletFilter to inject JavaScript to change the AddProjects page that way.
There is no elegant way, but you possibly can use Custom Project Properties for JIRA plugin.
This plugin allows to:
define list of custom fields for projects
define custom fields per project
fill custom fields on project administration page

How to extend Alfresco Share existing activity list dashlet with my own activity type?

In Community 4.0.a, I'm posting my custom activities in the repo following this: http://wiki.alfresco.com/wiki/3.0_Activities_Developer_Guide
I have defined my own activity type, with custom bundles and pagelink to display custom needs in the activity dashlet.
But I face an issue, I need to specialize the output based on the activity-type in a similar way of what is done already in activity-list.get.js in the specialize() function.
I can't hack the js cause I'm packaging things in my own amp for Share.
What is the best way to do it? Is there some kind of extension point or do I need to override completely the dashlet?
The old way (3.x) to change the behaviour of a webscript controller is to copy the code and overwrite the Javascript by placing it under web-extension: alfresco/web-extension/site-webscripts/org/alfresco/components/dashlets/activity-list.get.js. There you can modify the specialize() function or whatever you need to do.
All files you place in the alfresco/web-extension/site-webscripts folder will replace original files in the share.war WEB-INF/classes/alfresco/site-webscripts classpath. Best practice is to place your customizations in the tomcat/shared/classes/alfresco/web-extension folder so you don't need to modify the WAR file.
Alfresco 4.0 provides a new way to change the javascript controllers of a webscript. You can add additional Javascript code that will run after the original code. This is preferable because you don't need to change original code and you can upgrade more easily later. To use it you need to get familiar with the new Share extension modules concept. See David Draper's Blog for more info on that.

How to extract labels from Symfony forms I18n Extract Task

I am quite aware that the extract task accepts application as a parameter, and thus one can't expect it too look into the forms folder.
However, I referred the link (below) and tried a couple of ways:
1. defining my proxy __() method
2. including the I18n helper in App Configuration
However, both aren't working.
Can anyone tell me how to extract these from the form classes?
Thanks
http://groups.google.com/group/symfony-devs/browse_thread/thread/1d034f5f7367fe0c
You need to use the i18n helper and add the translated strings manually to your XML/XLIFF files. The translations themselves work, it's just the i18n:extract task that doesn't look inside form classes so it has to be done manually. I hope they add this feature in Symfony 2.0.
See the first few paragraphs here: http://www.symfony-project.org/forms/1_4/en/08-Internationalisation-and-Localisation
There's a way to extract it altough it's not recommended by the developers:
In lib/i18n/extract/sfI18nApplicationExtract.class.php add:
$this->extractFromPhpFiles(sfConfig::get('sf_lib_dir').'/form');
to function extract()
In your form class's configure method add:
sfLoader::loadHelpers('I18N');
This way you can use the __() function in your form class.
I'm currently testing it. Will share my findings.

Joomla chronoform insert into existing content

I dont know much about joomla but I have a problem.
I started reading for the chromoform and it is a very nice pugin.
I created a form which I can see in the form manager and also I can view in the url.
but I want ot integrate it to an existing content.
I have a content which contains text, photos etc..
The content is editable with tinymce plugin.
And I want to integrate this form also.
One way to integrate would be to copy the html code and paste in the conent but then if I change the form component the changes would not be also in the conent.
is there a way to include the created form in the content?
Or which is the best one?
Anybody any idea?
Thanx,
Granit
If you also have the chrono plugin installed & published, you can add a form into content (such as an article) using the following syntax:
{chronocontact}form_name{/chronocontact}
This allows you to place the form anywhere within the article - you can preface the form with content (such as a heading) ....
You probably want to use the Chronocontact module (mod_chronocontact), which is provided with ChronoForms. This allows you to insert any ChronoForms form into any module location. The Joomla 1.5 download for this module is here.
Then you just need to define a module location in your template, and create a mod_chronocontact module in that location, with your forms name set up. You'll find having a couple of module locations defined immediately before and after your main content in the template is normally handy, like so:
<jdoc:include type="modules" name="beforecontent"/>
<jdoc:include type="component" />
<jdoc:include type="modules" name="aftercontent"/>