Archive for the ‘Web Applications’ Category

OpenSource Task list managers

home-portal-web

A typical workgroup and/or CRM applications comes with  full featured applications : sugarcrm, tine2.0 come with much more than contact management, task tracking, customer relation ship, and are conceived to integrate third party developments (plugins). But if you only need to track work to do, might have a look at simpler web based php applications :

  • myTinyTodo is so small and simple – yet ajax powered-  you’d love it at first sight
  • TaskFreak is the free version of a much more advanced applicatin, can be enough for a lot of small freelance  projects.
  • PlanCake is a nice hosted  job tracking application that can also be downloaded and installed on your server. Nice for testing before adopting.
  • todoyu (picture above) is the most advanced of our selection, with advanced features : manage multiple projects with team members but also clients online, overview your customer’s data, assign tasks to team member and external staff, share files within your work group, schedule events in a shared calendar, check and meet the deadlines

Carrington for Wordpress makes CMS easier

Sounds too good to be true : the Carrington wordpress theme framework, developped by Colorado based CrowdFavorite, implements what we’ve all been waiting  for :  AJAX/ drag & drop  wysiywg page structure management. It builds on the existing core WordPress theme structure and functionality and uses core WordPress theme functions for easy adoption by experienced theme authors.

Announcement : http://crowdfavorite.com/wordpress/carrington/

Magento : find out which xml fails

If you’ve been working with Magento extensions or layout, you might have encountered the frustration of trying to find out which XML generates the following error, potentially harming the whole magento installation :

Warning: simplexml_load_string() [function.simplexml-load-string]: Entity: line 61: parser error : StartTag: invalid element name  in C:\aa_work\RueDeSiam\www\lib\Varien\Simplexml\Config.php on line 502

#0 C:\aa_work\RueDeSiam\www\lib\Varien\Simplexml\Config.php(502): mageCoreErrorHandler(2, 'simplexml_load_...', 'C:\aa_work\RueD...', 502, Array)
#1 C:\aa_work\RueDeSiam\www\lib\Varien\Simplexml\Config.php(489): Varien_Simplexml_Config->loadString('?????? ...', 'Mage_Core_Model...')
#2 C:\aa_work\RueDeSiam\www\app\code\core\Mage\Adminhtml\Model\Config.php(102): Varien_Simplexml_Config->loadFile('?????? ...', 'Mage_Core_Model...')
#3 C:\aa_work\RueDeSiam\www\app\code\core\Mage\Adminhtml\Model\Config.php(63): Mage_Adminhtml_Model_Config->_initSectionsAndTabs('C:\aa_work\RueD...')
#4 C:\aa_work\RueDeSiam\www\app\code\core\Mage\Adminhtml\controllers\System\ConfigController.php(70): Mage_Adminhtml_Model_Config->getSections()
#5 C:\aa_work\RueDeSiam\www\app\code\core\Mage\Core\Controller\Varien\Action.php(367): Mage_Adminhtml_System_ConfigController->editAction(NULL)
#6 C:\aa_work\RueDeSiam\www\app\code\core\Mage\Core\Controller\Varien\Router\Admin.php(143): Mage_Core_Controller_Varien_Action->dispatch()
#7 C:\aa_work\RueDeSiam\www\app\code\core\Mage\Core\Controller\Varien\Front.php(158): Mage_Core_Controller_Varien_Router_Admin->match('edit')
#8 C:\aa_work\RueDeSiam\www\app\Mage.php(457): Mage_Core_Controller_Varien_Front->dispatch(Object(Mage_Core_Controller_Request_Http))
#9 C:\aa_work\RueDeSiam\www\index.php(66): Mage::run()
#10 {main}

the problem with this kind of error is that it doesn’t tell you which file is causing the error. To find out, work with your local installation

  • set the developer mode in index.php : Mage::setIsDeveloperMode(true);
  • open the app/code/core/Mage/Adminhtml/Model/Config.php and let the _initSectionsAndTabs tell you which xml is being loaded in the modules loop, just after $configFile is defined : echo $configFile;
  • the last file that pops before the error is thrown out is likely to cause the breakout !!

PHP development framework comparison : symfony, Zend Framework, Code Igniter

Before starting development on a new project, I need to investigate 3 popular PHP development frameworks. I would say if you need to choose, stick to the one you know already. I you don’t know a framework already then you’re in trouble and you need advice. Here a few things I would look for.

Beyond the code and standarts : what’s available

MVC is a nice idea but it’s only an idea and even if it’s useful to structure the code the power of frameworks are in their community.

  • Look for application samples.
    • Zend framework used to have a good application sample, distributed free as DodoApp. Unfortunately it’s not available any more but other applications are out there to get you started if you need code samples, check out our article. In general I have been looking a lot and it’s hard to find a starter application for Zend Framework
    • Symfony has a lot of opensource applications, the list is here
    • Code Igniter is simpler to learn apparently but you’ll find it hard to find good sample applications .We ‘ve listed two of them in a previous article
  • Look for available code snippets
    • Zend framework code snippets can be found all over the web but you have to know the framework really well to integrate them in your application
    • Code igniter snippets are displayed on the forum but not categorized
    • symfony snippets are organized and tagged in the plugin repository, easily available from Symfony’s official web site,  and I have to say that’s a real sign of good community work

The conclusion is make your life and your own choice. I was using Zend framework but a few minutes investigation convince me I should look into symfony.

Publish wordpress posts to social networks

Header_Share

Worpdress is great for quick publishing and a variety of plugins are available that let users publish to various platforms. The image above, extracted from the gigya website, illustrates the versatily of social networks. Gigya itself provides a plugin for Wordpress. The technique is commonly described as cross posting, meaning one post on wordpress notifyes various social networks. Cross post plugins include:

  • WordBook : cross-post your blog posts to your Facebook Wall.
  • Same for wordbooker
  • Wordpress to myspace publishes  posts to myspace
  • Ping FM is a free  service that publishes posts to social networks. Wordpress has a few plugins that integrate with ping.fm, check this out

Statistics are an important part of social networking : no point developping web presence without knowing where you go

  • Facebook Share Stats : provides charts and numbers  on your posts shared on Facebook, with statistics and charts about the number of “like“, comments and clicks received.

Interesting links

Jquery wysiwyg editing

image.axd

Out of smart combination of powerful jquery plugins and functions comes the Minibar, contextual editing menu that pops up in windows Office 2007 fashion. The demo provided works with standard textarea editor but we’d like to see it implemented within tinymce or fckeditor, for instance : no doubt this is coming in the next few hours !!

CloudZoom : Jquery zoom enhanced

cloud-zoomCloudZoom, A new jquery zoom is here on the market, with features such as image blur, zooming inside the image. It works a bit like jqZoom, which is now a de facto standard for image zooming, but CloudZoom claims to be lighter and certainly is nicer to view.

http://www.professorcloud.com/mainsite/cloud-zoom.htm

Wordpress : Upload images in post meta

verve-meta-boxes

Word press image upload is nice and perfectly integrated in the wysiwyg editor. If you need to specify clearly where the image will appear, you can use the post thumnbail feature that attaches a specific image to a post. But if you need to duisplay more than image per post, then you’re better off using custom fields, and a few plugins are available to let you upload image directly to a custom field

Bonus : Custom Field Template Hack  displays full size image on custom image thumbnail in post / page edit in backend and additional function to automate image display in templates

Read the rest of this entry »

SEO Toaster CMS

SEO Toaster was introduced last week and it comes with a set of features that puts that solution right in place for competing with other famous systems. It’s also nice to note that the technology behind it is the Zend Framework.

add-edit-page

Inline editing : all administration is performed within the actual site, the admin area does not exist. This is a particularly challenging choice of development but tends to please users when correctly designed. Visually the green & blue theme for the sidebar admin is not the best but is functionnal.

I particularly like the page creation form (image above) which allows the content manager to specify all page information, including SEO related, page title and header image, in one shot.

File Management uses the famous swfupload which is now a minimum requirement for CMS practise. Images are automatically resized and the upload process allows uploading and editing within the same screen which is a recipe for content efficiency. Jquery lightbox is provided in the distribution and resized images link to the original image automatically.

Form maker is integrated in the distribution too but only with the email sender feature, no database integration yet

http://www.seotoaster.com/

Multilingual wordpress with wpml plugin

wpml is a wonderful plugin that has so many  it takes a while to get used to its power.

A new beta version of the multilingual plugin has been published for early adopters who have already switched to 3.0

What I’ve tested is interesting and allows quick setting of multilingual website

  • Flag displaying is almost instant thanks to dedicated functions or specific coding as documented here. Urls paths are well preserved and extended with the 2 letter language prefix.
  • Post translation is well implemented in the admin, each language displays a + button on the columns of the post / page
  • Posts can share common custom values or images, technique described here
  • all strings thath use the _e function in templates are translatable in the admin or in a mo file
  • as of today the wordpress 3.0 menu and custom post types do not work well with wpml but work is ongoing