introduction to elgg. php based applications development at mobicules

Post on 29-Nov-2014

17 Views

Category:

Documents

1 Downloads

Preview:

Click to see full reader

DESCRIPTION

Mobicules is a web and mobile applications development company in Noida, India with extensive capabilities at conceptualizing, developing, enhancing and maintaining web applications, mobile applications and social applications including Facebook application development. Mobicules’ domain expertise spans developing travel/trip planning sites, Social Networks, Facebook/OpenSocial applications, Mobile apps including android development and iphone application development. With a team comprising people drawn from the best engineering schools in the country, Mobicules has built many interesting and sophisticated products for a range of clients. From some of the biggest brands to many interesting technology start-ups and new ventures, Mobicules has been able to form really successful partnerships across the globe – US, Europe and Asia.With a team that is very agile with technology, Mobicules has, in a short span of time, built very deep cross-technology and cross-platform expertise. Engineers at Mobicules are adept at mobile technologies and web technologies, helping them design and develop better, more scalable and maintainable applications. Combining this web development expertise with excellent in-house QA and design teams, Mobicules provides end-to-end solutions to develop applications of any scale and sophistication.

TRANSCRIPT

An Introduction to

www.mobicules.com nitesh@mobicules.com

What is Elgg ?

• Elgg built on LAMP and is open source

• Roll out your own social network• Bundles social networking

components• Building on Elgg is easy

Components

Pages

RSS

Files

Tags

Comment

Blog

Messages

Widgets

Friends/Groups

Forum

Features

• Advanced user management and administration

• Cross-site tagging• Powerful access control list• Internationalization support• Multiple view support (eg. cell phone,

iPhone)• Advanced templating engine• Widget framework• Opensocial support

Customize Page

Elgg Data Model

Events

• Events triggered when certain things happen– User Action– Callbacks– Special Events (Boot, Init)

• Hook has to be registered to handle the specific events

register_elgg_event_handler('init','system','entities_init');

Views

• Elgg site can support different interface pages – Standard HTML – HTML optimised for accessibility – Mobile Internet – iPhone – Embeddable widget

Plugins

• Most of the end user functionality in Elgg comes from plugins

• Plugins reside under /mod folder– start.php: control hub of a plugin– Register plugin inside Elgg init event

register_elgg_event_handler('init','system','entities_init');

Creating a Simple Blog Plugin

• Create Object View<h1><?php echo $vars['entity']->title; ?></h1>  

<p><?php echo $vars['entity']->body; ?></p>  

<?php echo elgg_view('output/tags', array('tags' => $vars['entity']->tags)); ?>

• Create Form<form action="<?php echo $vars['url']; ?>action/blog/save" method="post">  

<?php echo elgg_echo("title"); ?><br />

<?php echo elgg_view('input/text',array('internalname' => 'title')); ?>

<?php echo elgg_echo("body"); ?><br /> <?php echo elgg_view('input/longtext',array('internalname' => 'body')); ?>

<p><?php echo elgg_echo("tags"); ?><br /> <?php echo elgg_view('input/tags',array('internalname' => 'tags')); ?></p>  

<p><input type="submit" value="<?php echo elgg_echo('save'); ?>" /></p>   </form>

Contd…

• Create Save File$blogpost = new ElggObject();  

$blogpost->title = get_input('title');   $blogpost->description = $description;

$blogpost->access_id = ACCESS_PUBLIC;

$blogpost->owner_guid = $_SESSION['user']->getGUID();

$blogpost->save();  

$blogpost->tags = string_to_tag_array(get_input('tags'));

forward($blogpost->getURL());

• Display Blogrequire_once(dirname(dirname(dirname(__FILE__))).engine/start.php");

$body = list_entities('object','blog',0,10,false);

$body = elgg_view_layout('one_column', $body);

page_draw("Our Blog",$body);

Business Opportunities in Elgg

• Education (Social E-learning)– Universities– Schools

• Social Intranet for organizations– Employee activities– Knowledge base– Company events

• Custom Social Networks

Profile

Groups

Dashboard

Files

Thanks

top related