Skip to content

Commit

Permalink
Merge branch 'master' of github.com:LimeSurvey/LimeSurvey
Browse files Browse the repository at this point in the history
  • Loading branch information
SamMousa committed Mar 29, 2014
2 parents e1a580b + fa2f02c commit efa7334
Show file tree
Hide file tree
Showing 2 changed files with 17 additions and 7 deletions.
2 changes: 1 addition & 1 deletion application/helpers/database_helper.php
Expand Up @@ -221,7 +221,7 @@ function createTable($sTableName, $aColumns, $sOptions=null)
if (Yii::app()->db->driverName == 'mysql' || Yii::app()->db->driverName == 'mysqli')
{
if (is_null($sOptions))
$sOptions='ENGINE=MyISAM';
$sOptions='ENGINE=MyISAM DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci';
}
Yii::app()->db->createCommand()->createTable($sTableName,$aColumns,$sOptions);
}
22 changes: 16 additions & 6 deletions application/models/ParticipantShare.php
Expand Up @@ -109,20 +109,30 @@ public function search()
public function storeParticipantShare($data)
{
$ownerid = Yii::app()->db->createCommand()->select('*')->from('{{participants}}')->where('participant_id = :participant_id')->bindParam(":participant_id", $data['participant_id'], PDO::PARAM_STR)->queryRow();
if($ownerid['owner_uid'] != $data['share_uid'])// A check to ensure that the participant is not added to it's owner
// CHeck if share already exists
$arShare=self::findByPk(array('participant_id'=>$data['participant_id'],'share_uid'=>$data['share_uid']));
if ($ownerid['owner_uid'] == $data['share_uid']) return;
if(is_null($arShare ))// A check to ensure that the participant is not added to it's owner
{
Yii::app()->db->createCommand()->insert('{{participant_shares}}',$data);
}
else
{
self::updateShare($data);
}
}

function updateShare($data)
{
list($participantId, $shareuid)=explode("--", $data['participant_id']);
$updatedata=array("participant_id"=>$participantId, "share_uid"=>$data['share_uid'], "can_edit"=>$data['can_edit']);
if (strpos( $data['participant_id'],'--' )!==false)
{
list($participantId, $shareuid)=explode("--", $data['participant_id']);
$data=array("participant_id"=>$participantId, "share_uid"=>$shareuid, "can_edit"=>$data['can_edit']);
}
$criteria = new CDbCriteria;
$criteria->addCondition("participant_id = '$participantId'");
$criteria->addCondition("share_uid = '$shareuid' ");
ParticipantShare::model()->updateAll($updatedata,$criteria);
$criteria->addCondition("participant_id = '{$data['participant_id']}'");
$criteria->addCondition("share_uid = '{$data['share_uid']}' ");
ParticipantShare::model()->updateAll($data,$criteria);
}

function deleteRow($rows)
Expand Down

0 comments on commit efa7334

Please sign in to comment.