Exemplo n.º 1
0
	public static function getNames() {
		$arr=SaleChild::model()->findAll();
		$names=array(0=>"None");
		foreach($arr as $sale){
			$names[$sale->id]=$sale->name;
		}
		return $names;
	}
Exemplo n.º 2
0
	/**
	 * Returns an array of names of database entries for a given type.
	 * @param String $type The type of record to return
	 * @return Array An array with id=>name of records for the type provided
	 */
	protected function parseType($type) {
		switch($type) {
			case 'contacts':
				return ContactChild::getAllNames(); 
			case 'projects':
				return ProjectChild::getNames();
			case 'accounts':
				return AccountChild::getNames();
			case 'cases':
				return CaseChild::getNames();
			case 'sales':
				return SaleChild::getNames();
			default:
				return array('0'=>'None');
		}
	}
Exemplo n.º 3
0
	private function globalExport() {
		
		$file='file.csv';
		$fp = fopen($file, 'w+');
		
		$users=UserChild::model()->findAll();
		$contacts=ContactChild::model()->findAll();
		$actions=ActionChild::model()->findAll();
		$sales=SaleChild::model()->findAll();
		$accounts=AccountChild::model()->findAll();
		$docs=Docs::model()->findAll();
		$profiles=Profile::model()->findAll();
		
		fputcsv($fp,array("0.9.1"));
		
		$userList=array();
		foreach($users as $user) {
			$userList[]=$user->attributes;
		}
		foreach ($userList as $fields) {
			unset($fields['id']);
			unset($fields['updatePassword']);
			$fields[]='user';
			fputcsv($fp, $fields);
			
		}
		
	
		$contactList=array();
		foreach($contacts as $contact) {
			$contactList[]=$contact->attributes;
		}
		foreach ($contactList as $fields) {
			unset($fields['id']);
			$fields[]='contact';
			fputcsv($fp, $fields);
			
		}
		
		$actionList=array();
		foreach($actions as $action) {
			$actionList[]=$action->attributes;
		}
		foreach ($actionList as $fields) {
			unset($fields['id']);
			$fields[]='action';
			fputcsv($fp, $fields);
			
		}
		
		$saleList=array();
		foreach($sales as $sale) {
			$saleList[]=$sale->attributes;
		}
		foreach ($saleList as $fields) {
			unset($fields['id']);
			$fields[]='sale';
			fputcsv($fp, $fields);
			
		}
		
		$accountList=array();
		foreach($accounts as $account) {
			$accountList[]=$account->attributes;
		}
		foreach ($accountList as $fields) {
			unset($fields['id']);
			$fields[]='account';
			fputcsv($fp, $fields);
			
		}
		
		$docList=array();
		foreach($docs as $doc) {
			$docList[]=$doc->attributes;
		}
		foreach ($docList as $fields) {
			unset($fields['id']);
			$fields[]='doc';
			fputcsv($fp, $fields);
			
		}
		
		$profileList=array();
		foreach($profiles as $profile) {
			if($profile->username!='admin')
				$profileList[]=$profile->attributes;
		}
		foreach ($profileList as $fields) {
			unset($fields['id']);
			unset($fields['avatar']);
			$fields[]='profile';
			fputcsv($fp, $fields);
			
		}


		fclose($fp);

	}
Exemplo n.º 4
0
 * 
 * You can contact X2Engine, Inc. at P.O. Box 66752,
 * Scotts Valley, CA 95067, USA. or at email address contact@X2Engine.com.
 * 
 * The interactive user interfaces in modified source and object code versions
 * of this program must display Appropriate Legal Notices, as required under
 * Section 5 of the GNU General Public License version 3.
 * 
 * In accordance with Section 7(b) of the GNU General Public License version 3,
 * these Appropriate Legal Notices must retain the display of the "Powered by
 * X2Engine" logo. If the display of the logo is not reasonably feasible for
 * technical reasons, the Appropriate Legal Notices must display the words
 * "Powered by X2Engine".
 ********************************************************************************/

$attributeLabels = SaleChild::attributeLabels();

Yii::app()->clientScript->registerScript('detailVewFields', "
function toggleField(field){
	$('#'+field.id+' .detail-field').hide();
	$('#'+field.id+' .detail-form').show();
	highlightSave();
}
function highlightSave() {
	$('#save-changes').css('background','yellow');
}
",CClientScript::POS_HEAD);
Yii::app()->clientScript->registerScript('stopEdit','
	$(document).ready(function(){
		$("td#description a").click(function(e){
			e.stopPropagation();
Exemplo n.º 5
0
	public function actionWhatsNew(){
		
		if(!Yii::app()->user->isGuest){
		
			$user=UserChild::model()->findByPk(Yii::app()->user->getId());
			$lastLogin=$user->lastLogin;

			$contacts=ContactChild::model()->findAll("lastUpdated > $lastLogin");
			$actions=ActionChild::model()->findAll("lastUpdated > $lastLogin AND (assignedTo='".Yii::app()->user->getName()."' OR assignedTo='Anyone')");
			$sales=SaleChild::model()->findAll("lastUpdated > $lastLogin");
			$accounts=AccountChild::model()->findAll("lastUpdated > $lastLogin");

			$arr=array_merge($contacts,$actions,$sales,$accounts);
			//$arr=array_merge($arr,$sales);
			//$arr=array_merge($arr,$accounts);

			$records=Record::convert($arr);

			$dataProvider=new CArrayDataProvider($records,array(
				'id'=>'id',
				'pagination'=>array(
					'pageSize'=>10,
				),
			));

			$this->render('whatsNew',array(
				'records'=>$records,
				'dataProvider'=>$dataProvider,
			));
		}
		else{
			$this->redirect('login');
		}
	}
Exemplo n.º 6
0
	public function actionSearch(){
		
		$term=$_GET['term'];
		
		$contacts=ContactChild::model()->findAllBySql('SELECT * FROM x2_contacts WHERE CONCAT(firstName," ",lastName) LIKE "%'.$term.'%" OR backgroundInfo LIKE "%'.$term.'%"
			OR email LIKE "%'.$term.'%" OR firstName LIKE "%'.$term.'%" OR lastName LIKE "%'.$term.'%" OR phone LIKE "%'.$term.'%" OR address LIKE "%'.$term.'%"');
		$actions=ActionChild::model()->findAllBySql('SELECT * FROM x2_actions WHERE actionDescription LIKE "%'.$term.'%" LIMIT 10000');
		$sales=SaleChild::model()->findAllBySql('SELECT * FROM x2_sales WHERE name LIKE "%'.$term.'%" OR description LIKE "%'.$term.'%"');
		$accounts=AccountChild::model()->findAllBySql('SELECT * FROM x2_accounts WHERE name LIKE "%'.$term.'%" OR description LIKE "%'.$term.'%" 
			OR tickerSymbol LIKE "%'.$term.'%"');
		$projects=ProjectChild::model()->findAll();
		$cases=CaseChild::model()->findAll();
		$marketing=MarketingChild::model()->findAll();

		$names=array();
		$descriptions=array();
		$notes=array();
		
		$records=array();

		$regEx="/$term/i";

		foreach($contacts as $contact){
			if(preg_match($regEx,$contact->firstName." ".$contact->lastName)>0){
				$names[]=$contact;
			}elseif(preg_match($regEx,$contact->firstName)>0 || preg_match($regEx,$contact->lastName)>0){
				$notes[]=$contact;
			}elseif(preg_match($regEx,$contact->backgroundInfo)>0){
				$descriptions[]=$contact;
			}elseif(preg_match($regEx,$contact->email)>0){
				$names[]=$contact;
			}elseif(preg_match($regEx,$contact->phone)>0){
				$names[]=$contact;
			}elseif(preg_match($regEx,$contact->address)>0){
				$names[]=$contact;
			}
		}

		foreach($actions as $action){
			if(preg_match($regEx,$action->actionDescription)>0){
				$names[]=$action;
			}
		}

		foreach($sales as $sale){
			if(preg_match($regEx,$sale->name)>0){
				$names[]=$sale;
			}elseif(preg_match($regEx,$sale->description)>0){
				$descriptions[]=$sale;
			}
		}

		foreach($accounts as $account){
			if(preg_match($regEx,$account->name)>0){
				$names[]=$account;
			}elseif(preg_match($regEx,$account->tickerSymbol)>0){
				$names[]=$account;
			}elseif(preg_match($regEx,$account->description)>0){
				$descriptions[]=$account;
			}elseif(preg_match($regEx,$account->website)>0){
				$names[]=$account;
			}
		}

		foreach($projects as $project){
			if(preg_match($regEx,$project->name)>0){
				$names[]=$project;
			}elseif(preg_match($regEx,$project->description)>0){
				$descriptions[]=$project;
			}
		}

		foreach($cases as $case){
			if(preg_match($regEx,$case->name)>0){
				$names[]=$case;
			}elseif(preg_match($regEx,$case->description)>0){
				$descriptions[]=$case;
			}
		}

		foreach($marketing as $item){
			if(preg_match($regEx,$item->name)>0){
				$names[]=$item;
			}elseif(preg_match($regEx,$item->description)>0){
				$descriptions[]=$item;
			}
		}
		
		
		$records=array_merge($names,$descriptions);
		
		$records=array_merge($records,$notes);

		asort($records);
		
		$records=Record::convert($records);
		
		$dataProvider=new CArrayDataProvider($records,array(
			'id'=>'id',
			'pagination'=>array(
				'pageSize'=>10,
			),
		));
		
		$this->render('search',array(
			'records'=>$records,
			'dataProvider'=>$dataProvider,
			'term'=>$term,
		));
	}
Exemplo n.º 7
0
		</td>
	</tr>
	<tr>
		<td class="label">
			<?php echo $attributeLabels['description']; ?>
		</td>
		<td colspan="5" class="text-field" id="description" onclick="toggleField(this);"><div class="spacer"></div>
			<div class="detail-field"><?php echo $this->convertLineBreaks($info); ?></div>
			<div class="detail-form"><?php echo $form->textArea($model,'description',array('rows'=>4, 'cols'=>50)); ?></div>
		</td>
	</tr>
	<tr>
		<td class="label"><?php echo $attributeLabels['assignedTo']; ?></td>
		<td><?php echo $model->assignedTo; ?></td>
		<td class="label"><?php echo Yii::t('sales','Sales'); ?></td>
		<td colspan="3"><?php echo SaleChild::getSalesLinks($model->id); ?></td>
	</tr>
	<tr>
		<td class="label"><?php echo $attributeLabels['associatedContacts']; ?></td>
		<td><?php echo $model->associatedContacts; ?></td>

		<td class="label"><?php echo $attributeLabels['annualRevenue']; ?></td>
		<td colspan="3" id="annualRevenue" onclick="toggleField(this);">
			<div class="detail-field"><b><?php echo Yii::app()->locale->numberFormatter->formatCurrency($model->annualRevenue,Yii::app()->params->currency); ?></b></div>
			<div class="detail-form"><?php echo $form->textField($model,'annualRevenue',array('size'=>13,'maxlength'=>10)); ?></div>
		</td>
	</tr>
	<tr>
		<td class="label"><?php echo $attributeLabels['phone']; ?>
		<td id="phone" onclick="toggleField(this);">
			<div class="detail-field"><b><?php echo $model->phone; ?></b></div>
Exemplo n.º 8
0
	/**
	 * Returns the data model based on the primary key given in the GET variable.
	 * If the data model is not found, an HTTP exception will be raised.
	 * @param integer the ID of the model to be loaded
	 */
	public function loadModel($id)
	{
		$model=SaleChild::model()->findByPk((int)$id);
		if($model===null)
			throw new CHttpException(404,Yii::t('app','The requested page does not exist.'));
		return $model;
	}