Wednesday, May 11, 2011

Security Release com_google

We are announcing the immediate install of new com_google release.

com_google_1_5_1 for joomla 1.5 and com_google_1_6_1 for joomla 1.6

On Tuesday, May 09th, 2011 the vel team of joomla team  contacted us regarding a potential security issue in the com_google. An attacker exploiting this attack vector could potentially launch a Denial of Service attack on your site or gain information about your site's folder structure. above release fixes this issue.

Thursday, April 28, 2011

release com_google 1.6

We Are Proud To Announce The Release Of  com_google 1.6 which compile with joomla 1.6.

Now u can download it from http://freejoomlacomponent.appspot.com/

Sunday, April 24, 2011

free google hosting - google app

Google app engine support to host ur own domain without any fees. Sub domain [ http://test.wapa.inetlanka.com/ ] or any naked domains can map to google host. NS is the ghs.google.com.

How to map sub domain to google host
1.login to cPanel
2.visit page - Simple DNS Zone Editor
3.select ur domain from top drop down menu and set as Name [test] and cName as [ ghs.google.com ] under Add a CNAME Record
4. save the setting. It will take at least 1 Hour for map to google host

how to make google app
Java and python are the main language which use in google host.
1.Login to ur own gmail
2.browse https://appengine.google.com
3.create your own sub domin by using  create application [ http://wapnishantha.appspot.com/  ]


join with 'Create first application' - next lesson

Wednesday, January 12, 2011

Congratulations joomla 1.6 and issues

Congratulations to the Joomla team for making 1.6 happen!

Today I found following issue on the admin section. some time this not be a issue, but I am stuck on that point

In joomla 1.5,when u install any component and once u add it as menu item, there is option to setup "Parameters (Basic)" but not like that on joomla 1.6.


And we confirm com_google is work fine with joomla 1.6

Sunday, August 29, 2010

add custom field to com_google

Suppose that u need to add extra field call "Phone number" on your contact us page. Follow the steps bellow.

1.Open
components ->com_google->views->google->tmpl->default.php - on the front end

see the line no 302 and add






code to default.php file

2. Java Script validation
see function comGoogleFrmValidate(comfrm) on default.php file

and add to following code



user_tp_val= document.comGoogleForm.user_tp;
if(my_name.value == '')
{
errorStr += "Add Tp no\n";
user_tp_val.style.borderColor = "#FF0000";

}




3. Open controller.php file
components->com_google->controller.php

4.see the line 29
and modify the 'function sendMail() '

$user_tp= JRequest::getVar( 'user_tp', 0, '', 'text' );

And aslo update

$body = "From ".$friendEmail."\n".$messText."\n".$user_tp."\n";


if not clear ple comment

Saturday, August 28, 2010

joomla add edit delete record lesson 5

Ok today i am going to explain three tasks. Add / edit or delete records from joomla admin panel. we discussed about 'form' on last lesson. To do the management of above three task, use following files

1.com_lanka1->views->lanka1->tmpl->form.php
2.com_lanka1->views->lanka1->view.html.php
3.com_lanka1->controllers->lanka.php
4.com_lanka1->models->lanka1.php
5.com_lanka1->tables->lanka1.php



let's review on by one

1.com_lanka1->views->lanka1->tmpl->form.php



<?php defined('_JEXEC') or die('Restricted access'); ?>
<?php
/**
* Lanka Map default controller
*
* @package Joomla.component
* @subpackage Components
* @link http://inetlanka.com
* @license GNU/GPL
* @auth inetlanka web team - [ info@inetlanka.com / wapnishantha@gmail.com ]
*/
?>

<form action="index.php" method="post" name="adminForm" id="adminForm">
<div class="col100">
<fieldset class="adminform">
<legend><?php echo JText::_( 'Details' ); ?></legend>

<table class="admintable">

<tr>
<td width="100" align="right" class="key">
<label for="greeting">
<?php echo JText::_( 'Your name'); ?>:
</label>
</td>
<td>
<input class="text_area" type="text" name="your_name" id="your_name" size="32" maxlength="250" value="<?php echo $this->Lanka->your_name;?>" />
</td>
</tr>
<tr>
<td width="100" align="right" class="key">
<label for="greeting">
<?php echo JText::_( 'Your email'); ?>:
</label>
</td>
<td>
<input class="text_area" type="text" name="your_email" id="your_email" size="32" maxlength="250" value="<?php echo $this->Lanka->your_email;?>" />
</td>
</tr>
<tr>
<td width="100" align="right" class="key">
<label for="greeting">
<?php echo JText::_( 'Your TP'); ?>:
</label>
</td>
<td>
<input class="text_area" type="text" name="your_tp" id="your_tp" size="32" maxlength="250" value="<?php echo $this->Lanka->your_tp;?>" />
</td>
</tr>
</table>
</fieldset>
</div>
<div class="clr"></div>

<input type="hidden" name="option" value="com_lanka1" />
<input type="hidden" name="id" value="<?php echo $this->Lanka->id; ?>" />
<input type="hidden" name="task" value="" />
<input type="hidden" name="controller" value="lanka" />
</form>







2.com_lanka1->views->lanka1->view.html.php



<?php
/**
* Lanka1 default controller
*
* @package Joomla.component
* @subpackage Components
* @link http://inetlanka.com
* @license GNU/GPL
* @auth inetlanka web team - [ info@inetlanka.com / wapnishantha@gmail.com ]
*/

// No direct access
defined( '_JEXEC' ) or die( 'Restricted access' );

jimport( 'joomla.application.component.view' );

/**
* tp View
*
* @package Joomla.Tutorials
* @subpackage Components
*/

class Lanka1sViewLanka1 extends JView
{
/**
* display method of Hello view
* @return void
**/
function display($tpl = null)
{
//get the tp
$Lanka =& $this->get('Data');

$isNew = ($Lanka->id < 1);

$text = $isNew ? JText::_( 'New' ) : JText::_( 'Edit' );
JToolBarHelper::title( JText::_( 'Lanka1 ' ).': <small><small>[ ' . $text.' ]</small></small>' );
JToolBarHelper::save();
if ($isNew) {
JToolBarHelper::cancel();
} else {
// for existing items the button is renamed `close`
JToolBarHelper::cancel( 'cancel', 'Close' );
}

$this->assignRef('Lanka', $Lanka);

parent::display($tpl);
}
}





3.com_lanka1->controllers->lanka.php




<?php
/**
* Lanka1 default controller
*
* @package Joomla.component
* @subpackage Components
* @link http://inetlanka.com
* @license GNU/GPL
* @auth inetlanka web team - [ info@inetlanka.com / wapnishantha@gmail.com ]
*/


// No direct access
defined( '_JEXEC' ) or die( 'Restricted access' );

/**
* Lanka1 Controller
*
* @package Joomla.component
* @subpackage Components
*/
class Lanka1sControllerLanka extends Lanka1sController
{
/**
* constructor (registers additional tasks to methods)
* @return void
*/
function __construct()
{
parent::__construct();

// Register Extra tasks
$this->registerTask( 'add' , 'edit' );
}

/**
* display the edit form
* @return void
*/
function edit()
{

JRequest::setVar( 'view', 'Lanka1' );
JRequest::setVar( 'layout', 'form' );
JRequest::setVar('hidemainmenu', 1);

parent::display();
}

/**
* save a record (and redirect to main page)
* @return void
*/
function save()
{
$model = $this->getModel('Lanka1');

if ($model->store($post)) {
$msg = JText::_( 'Lanka1 Saved!' );
} else {
$msg = JText::_( 'Error Saving Lanka1 ' );
}

// Check the table in so it can be edited.... we are done with it anyway
$link = 'index.php?option=com_Lanka1';
$this->setRedirect($link, $msg);
}

/**
* remove record(s)
* @return void
*/
function remove()
{
$model = $this->getModel('Lanka1');
if(!$model->delete()) {
$msg = JText::_( 'Error: One or More Lanka1 map Could not be Deleted' );
} else {
$msg = JText::_( ' Lanka1 Deleted' );
}

$this->setRedirect( 'index.php?option=com_Lanka1', $msg );
}

/**
* cancel editing a record
* @return void
*/
function cancel()
{
$msg = JText::_( 'Operation Cancelled' );
$this->setRedirect( 'index.php?option=com_Lanka1', $msg );
}
}




4.com_lanka1->models->lanka1.php



<?php
/**
* Lanka1 Map default controller
*
* @package Joomla.component
* @subpackage Components
* @link http://inetlanka.com
* @license GNU/GPL
* @auth inetlanka web team - [ info@inetlanka.com / wapnishantha@gmail.com ]
*/

// No direct access
defined( '_JEXEC' ) or die( 'Restricted access' );

jimport('joomla.application.component.model');


class Lanka1sModelLanka1 extends JModel
{
/**
* Constructor that retrieves the ID from the request
*
* @access public
* @return void
*/
function __construct()
{
parent::__construct();

$array = JRequest::getVar('cid', 0, '', 'array');
$this->setId((int)$array[0]);
}

/**
* Method to set the hello identifier
*
* @access public
* @param int Hello identifier
* @return void
*/
function setId($id)
{
// Set id and wipe data
$this->_id = $id;
$this->_data = null;
}

/**
* Method to get a hello
* @return object with data
*/
function &getData()
{


// Load the data
if (empty( $this->_data )) {
$query = ' SELECT * FROM #__contactus '.
' WHERE id = '.$this->_id;
$this->_db->setQuery( $query );
$this->_data = $this->_db->loadObject();
}

if (!$this->_data) {
$this->_data = new stdClass();
$this->_data->id = 0;
$this->_data->your_name = null;
$this->_data->your_email = null;
$this->_data->your_tp = null;


}

return $this->_data;
}

/**
* Method to store a record
*
* @access public
* @return boolean True on success
*/
function store()
{



$row =& $this->getTable();

$data = JRequest::get( 'post' );


// Bind the form fields to the hello table
if (!$row->bind($data)) {
$this->setError($this->_db->getErrorMsg());
return false;
}

// Make sure the hello record is valid
if (!$row->check()) {
$this->setError($this->_db->getErrorMsg());
return false;
}

// Store the web link table to the database
if (!$row->store()) {
$this->setError( $row->getErrorMsg() );
return false;
}

return true;
}

/**
* Method to delete record(s)
*
* @access public
* @return boolean True on success
*/
function delete()
{
$cids = JRequest::getVar( 'cid', array(0), 'post', 'array' );

$row =& $this->getTable();

if (count( $cids )) {
foreach($cids as $cid) {
if (!$row->delete( $cid )) {
$this->setError( $row->getErrorMsg() );
return false;
}
}
}
return true;
}

}





5.com_lanka1->tables->lanka1.php




<?php
/**
* Google Map default controller
*
* @package Joomla.component
* @subpackage Components
* @link http://inetlanka.com
* @license GNU/GPL
* @auth inetlanka web team - [ info@inetlanka.com / wapnishantha@gmail.com ]
*/


// No direct access
defined( '_JEXEC' ) or die( 'Restricted access' );


class TableLanka1 extends JTable
{
/**
* Primary Key
*
* @var int
*/
var $id = null;
var $your_name = null;
var $your_email = null;
var $your_tp = null;


/**
* Constructor
*
* @param object Database connector object
*/
function TableLanka1(& $db) {
parent::__construct('#__contactus', 'id', $db);
}
}

Tuesday, August 24, 2010

Easy to hack Joomla

Suppose your friends ask
Hi Machan [ = mate / buddy], Does it easy to hack Joomla? wt is your answer?. Actually your answer is yes. Today, I found hacking code of joomla web sites which can delete all the file and folder on joomla site. Do you know this hacking force to my web site and delete all the files and folders on today.

Normally I backup all the thing on daily basis. So The site has been successfully launch again within one hour. For the use of your awareness,  here is the link of that hanking code.



[ Machan = Mate/buddy ]


wAp