stepOperateur.php 11.6 KB
Newer Older
Tibor Katelbach's avatar
Tibor Katelbach committed
1 2 3
<?php 
//check show btn use cases 
// role is financer or operater
Raph El's avatar
Raph El committed
4
if( $mode != "pdf" ){
Clément Damiens's avatar
 
Clément Damiens committed
5

6
	if(Form::canFormAccess(['roles'=>["Financeur","Opérateur"] ])){ 
Clément Damiens's avatar
 
Clément Damiens committed
7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23
		$isFinanceur=false;
		if(Authorisation::isInterfaceAdmin())
			$isFinanceur=true;
		if(isset(Yii::app()->session["costum"][$this->costum["slug"]]["financorOf"])){
			$isFinanceur=true;
			$financorOf=Yii::app()->session["costum"][$this->costum["slug"]]["financorOf"];
			$financorOf["thumbImg"]=(isset($financorOf["profilThumbImageUrl"])) ? Yii::app()->createUrl($financorOf["profilThumbImageUrl"]) :  Yii::app()->getModule( Yii::app()->params["module"]["parent"] )->getAssetsUrl()."/images/thumb/default_organizations.jpg"; 
		} 
		$isOperator = false;
		if(isset(Yii::app()->session["costum"][$this->costum["slug"]]["operatorOf"])){
			$isOperator= true;
			$operatorOf=Yii::app()->session["costum"][$this->costum["slug"]]["operatorOf"];
			$operatorOf["thumbImg"]=(isset($operatorOf["profilThumbImageUrl"])) ? Yii::app()->createUrl($operatorOf["profilThumbImageUrl"]) :  Yii::app()->getModule( Yii::app()->params["module"]["parent"] )->getAssetsUrl()."/images/thumb/default_organizations.jpg"; 
				
		}
		$selectedOperator = false;
		$alreadyCandidate=false; ?>
Raph El's avatar
Raph El committed
24 25 26
		<table class="table table-bordered table-hover  directoryTable" >
			<tbody class="directoryLines">	
				<tr>
27

Clément Damiens's avatar
 
Clément Damiens committed
28
					<?php $label=(@$answer["step"]=="deal12") ? "Opérateur sélectionner par le ménage" : "Intention opérateur"; ?>
Clément Damiens's avatar
 
Clément Damiens committed
29
					<td colspan='2' ><h4 style="color:<?php echo ($titleColor) ? $titleColor : "black"; ?>"><?php echo $label ?></h4></td>
Raph El's avatar
Raph El committed
30 31
				</tr>
				<?php 
Clément Damiens's avatar
 
Clément Damiens committed
32
				$str = ""; 
Raph El's avatar
Raph El committed
33 34 35
				if(isset($answer["links"]["operators"]))
				{
					foreach ($answer["links"]["operators"] as $oid => $state) {
Clément Damiens's avatar
 
Clément Damiens committed
36 37 38 39
						$elt=Element::getElementById($oid, Organization::COLLECTION, null, array("name","slug", "profilThumbImageUrl"));
						$thumb=$elt["thumbImg"]=(isset($elt["profilThumbImageUrl"])) ? Yii::app()->createUrl($elt["profilThumbImageUrl"]) :  Yii::app()->getModule( Yii::app()->params["module"]["parent"] )->getAssetsUrl()."/images/thumb/default_organizations.jpg"; 
						if($isOperator && $oid==(string)$operatorOf["_id"])
							$alreadyCandidate=true;
Raph El's avatar
Raph El committed
40 41 42 43
						if($state != "0")
						{
							$selectedOperator = true;
							$str = '<tr>'.
Clément Damiens's avatar
 
Clément Damiens committed
44
								'<td class="padding-top-15">Opérateur</td>'.
45
								'<td><a href="#page.type.organizations.id.'.$oid.'" class="lbh-preview-element"><img src="'.$thumb.'" width=50 height=50/> '.$elt["name"].'</a></td>'.
Clément Damiens's avatar
 
Clément Damiens committed
46
								'<td class="padding-top-15"><span class="label label-success">Validé</span></td>'.
Raph El's avatar
Raph El committed
47 48 49 50 51 52
							'</tr>'; 
						} 
						else if( !$selectedOperator )
						{
							//if role financeurs
							$str .= '<tr>'.
Clément Damiens's avatar
 
Clément Damiens committed
53 54 55
								'<td class="padding-top-15">Opérateur candidat</td>'.
								'<td>'.
									'<a href="#page.type.organizations.id.'.$oid.'" class="lbh-preview-element">'.
56
										'<img src="'.$thumb.'" width=40 height=40/> '.$elt["name"].
Clément Damiens's avatar
 
Clément Damiens committed
57 58 59 60 61 62 63 64
									'</a>'.
								'</td>'.
								'<td class="padding-top-15">';
								if($isFinanceur)
									$str.='<span class="label label-success"><a href="javascript:;" class="validateOperator text-white" data-id="'.$oid.'"> Valider l\'opérateur</a></span>';
								else
									$str.='<span class="label italic text-dark">En attente de traitement</span>';
							$str.='</td>'.
Raph El's avatar
Raph El committed
65 66
							'</tr>'; 
						}
Tibor Katelbach's avatar
Tibor Katelbach committed
67
					}
Raph El's avatar
Raph El committed
68 69 70 71 72 73
				} 
				echo $str;
				
				
				//if role operateurs
				if(!$selectedOperator){
Clément Damiens's avatar
 
Clément Damiens committed
74
					if($isOperator && !$alreadyCandidate && $answer["step"]!="deal12"){
Clément Damiens's avatar
 
Clément Damiens committed
75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90
					?>
						<tr>
							<td colspan='2' class="text-center" >
								<a href="javascript:;" data-oid="<?php echo (string)$operatorOf["_id"] ?>" class="intentOperator btn btn-primary">Demander de prise en charge en tant qu'opérateur <?php echo $operatorOf["name"] ?></a>		
							</td>
						</tr>
					<?php 
					}else{ ?>
						<tr>
							<td colspan='3' class="text-center" >
								Vous avez déjà inscrit <?php echo @$operatorOf["name"] ?> sur la liste des opérateurs
							</td>
						</tr>
						
					<?php }
				}  ?>
Raph El's avatar
Raph El committed
91 92
			</tbody>
		</table>	
Clément Damiens's avatar
 
Clément Damiens committed
93
		<?php if($isFinanceur){ ?>
Raph El's avatar
Raph El committed
94 95
		<div class="col-xs-12 text-center margin-top-50 well">
			<?php if(@$answer["step"] && $answer["step"]=="deal1"){ ?> 
Clément Damiens's avatar
 
Clément Damiens committed
96
				<span style="font-size: 22px;font-weight: 800;">Ce dossier n'a pas encore d'opérateur rattaché. En tant que financeurs ou administrateur de la DEAL, veuillez valider un opérateur afin de passer ce dossier à l'étape suivant d'instruction.</span>
Raph El's avatar
Raph El committed
97
			<?php } ?>
Clément Damiens's avatar
 
Clément Damiens committed
98 99
		</div> 
		<?php }
100
	} else { ?>
Clément Damiens's avatar
 
Clément Damiens committed
101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165
			<?php 
				if(@$answer["step"]){
					if($answer["step"]=="deal1"){ ?>
						<div class="col-xs-12 text-center margin-top-50 well">
		
						<span style="font-size: 22px;font-weight: 800;">Vous avez soumis votre dossier.<br/>Votre candidature est en attente d'opérateur<br/> Une fois positionné, l'opérateur prendra en charge la suite de la canditature afin d'établir les financenements et le suivi des travaux.</span>
						</div>
			<?php	}else{
						foreach ($answer["links"]["operators"] as $oid => $state) {
							$opId=$oid;
							$operator=Element::getElementById($oid, Organization::COLLECTION, null, array("name","slug", "profilThumbImageUrl"));
							$thumbOp=(isset($operator["profilThumbImageUrl"])) ? Yii::app()->createUrl($operator["profilThumbImageUrl"]) :  Yii::app()->getModule( Yii::app()->params["module"]["parent"] )->getAssetsUrl()."/images/thumb/default_organizations.png"; 
						} ?>
						<div class="col-xs-12 well margin-top-50">	
						<?php if($answer["step"]=="deal12"){ ?>
							<span style="font-size: 22px;font-weight: 800;">Votre dossier est en attente de validation d'un administrateur<br/>L'opérateur que vous avez sélectionné pour la prise en charge du dossier est </span>
							<?php }else{ ?>
								<?php $labelStep=array(
									"deal2"=> "en cours de construction par l'opérateur", 
									"deal3"=> "en cours d'attribution des financements", "deal4"=>"est en phase d'échelonnage du planning", "deal5"=>"finalisé. Vous pouvez réaliser le suivi des travaux"); ?>
								<span style="font-size: 22px;font-weight: 800;"> Votre dossier est <?php echo $label[$answer["step"]] ?>.<br/><br> L'opérateur en charge du dossier est  </span>
						
						<?php } ?>			
						<a href="#page.type.organizations.id.<?php echo $opId ?>" class="lbh-preview-element"><img src="<?php echo $thumbOp ?>" width=40 height=40 style="margin-right: 5px;border-radius: 20px"/><?php echo $operator["name"] ?></a>
						</div>
						
				<?php }
				}else{ ?>
					<div class="form-operator col-xs-12 no-padding">
						<label for="<?php echo $kunik ?>">
							<h4 style="color:<?php echo ($titleColor) ? $titleColor : "black"; ?>">
								Avez-vous une préférences sur le choix du maître d'ouvrage ?</h4>
						</label>
						<select id="operators-selections" path="links.operators" style="width:100%;">
							<?php if(isset($answer["links"]) && isset($answer["links"]["operators"])){
								foreach($answer["links"]["operators"] as $k => $v){
									$operator=Element::getElementById($k, Organization::COLLECTION, null, array("name", "profilThumbImageUrl"));
									echo "<option class='optoper' value='".$k."'>".$elt["name"]."</option>";
									$selectedOps=$k;
								}


							} ?> 
							<option value="<?php echo @$selectedOps ?>" data-action="unset" class='optoperunset' <?php echo (!isset($selectedOps)) ? "selected" : "" ?>>Pas de préférences sur le maitre d'oeuvre</option>
							<?php 

							foreach ($parentForm["communityLinks"] as $v => $f) {
								if($f["type"]==Organization::COLLECTION 
									&& isset($f["roles"]) && in_array("Opérateur", $f["roles"])){
									$elt=Element::getElementById($v, $f["type"], null, array("name", "profilThumbImageUrl"));

									//$thumb=$elt["thumbImg"]=(isset($elt["profilThumbImageUrl"])) ? Yii::app()->createUrl($elt["profilThumbImageUrl"]) :  Yii::app()->getModule( Yii::app()->params["module"]["parent"] )->getAssetsUrl()."/images/thumb/default_organizations.jpg"; 
									echo "<option class='optoper' value='".$v."' ".((isset($selectedOps) && $selectedOps==$v) ? "selected" : "").">".$elt["name"]."</option>";
								}
							} ?>
						</select>
					</div>
					<div class="col-xs-12 text-center margin-top-50 well">
						<span class="text-center" style="font-size: 22px;font-weight: 800;"> 
							Une fois votre dossier estimé rempli, vous pouvez le valider afin qu'il soit mis sous étude des opérateurs et des financeurs<br/><br/> 
							<a href="javascript:;" class="validateForSubmit btn btn-success" data-step="<?php echo (isset($selectedOps)) ? "deal12" : "deal1" ?>">
								Soumettre votre dossier
							</a>
						</span>
					</div>
166 167 168
			<?php } ?>
		</div>
<?php } 
169

Clément Damiens's avatar
 
Clément Damiens committed
170
?>
Raph El's avatar
Raph El committed
171

Clément Damiens's avatar
 
Clément Damiens committed
172
<script type="text/javascript">
Raph El's avatar
Raph El committed
173

Clément Damiens's avatar
 
Clément Damiens committed
174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192
	$(document).ready(function() { 

	    mylog.log("render","modules/survey/views/tpls/forms/costum/deal/stepOperateur.php");
	    var today = new Date();
		today = today.getDate() + '/' + (today.getMonth()+1) + '/' + today.getFullYear();
		
	    $('.validateOperator').off().on("click", function() {
	    	var oid = $(this).data("id");
	    	ctxTpl = {
				id : "<?php echo $answer['_id'] ?>",
				collection : "answers",
				path : "links.operators."+oid,
				value : {
					date : today, 
					user : userId
				}
			};
			$(this).fadeOut();
			mylog.log("save step save",ctxTpl);
Clément Damiens's avatar
 
Clément Damiens committed
193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220
			validateForStep3();
				
	    	
		});
		$("#operators-selections").off().on("change", function(){
			var oid = $(this).val();
			if(notNull(oid)){
			var valOp= 0;
			submitVal="deal12";
			$(".optoperunset").val(oid);
			if(notNull($(this).find(":selected").data("action"))){
				valOp=null;
				submitVal="deal1";
			}
			$(".validateForSubmit").attr("data-step",submitVal);
	    	ctxTpl = {
				id : "<?php echo $answer['_id'] ?>",
				collection : "answers",
				path : "links.operators."+oid,
				value : valOp
			};
		//	if(notNull($(this).data("action"))
		//		ctxTpl.action=$(this).data("action");
			dataHelper.path2Value( ctxTpl, function(params) {
				toastr.success("Votre préférence opérateur a bien été prise en compte");
				//urlCtrl.loadByHash(location.hash);	
			});
			}
Clément Damiens's avatar
 
Clément Damiens committed
221 222 223 224 225 226
		});
	    $('.validateForSubmit').off().on("click", function() {
	    	ctxTpl = {
				id : "<?php echo $answer['_id'] ?>",
				collection : "answers",
				path : "step",
Clément Damiens's avatar
 
Clément Damiens committed
227
				value : $(this).data("step")
Clément Damiens's avatar
 
Clément Damiens committed
228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244
			};
			dataHelper.path2Value( ctxTpl, function(params) {
				urlCtrl.loadByHash(location.hash);	
			});
		} );
		$('.intentOperator').off().on("click", function() {
	    	var oid = $(this).data("oid");
	    	ctxTpl = {
				id : "<?php echo $answer['_id'] ?>",
				collection : "answers",
				path : "links.operators."+oid,
				value : "0"
			};
	    	dataHelper.path2Value( ctxTpl, function(params) { 
	  	 		urlCtrl.loadByHash(location.hash);
	  	 	} );
		});
Clément Damiens's avatar
 
Clément Damiens committed
245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266
		$('.selectOperator').off().on("click", function() {
	    	var oid = $(this).data("oid");
	    	ctxTpl = {
				id : "<?php echo $answer['_id'] ?>",
				collection : "answers",
				path : "links.operators."+oid,
				value : "0"
			};
	    	dataHelper.path2Value( ctxTpl, function(params) { 
	  	 		/*ctxTpl = {
					id : "<?php echo $answer['_id'] ?>",
					collection : "answers",
					path : "step",
					value : "deal12"
				};
				dataHelper.path2Value( ctxTpl, function(params) {
					urlCtrl.loadByHash(location.hash);	
				});*/
				urlCtrl.loadByHash(location.hash);
	  	 	} );
		});

Clément Damiens's avatar
 
Clément Damiens committed
267 268 269 270

		
	    
	});
Clément Damiens's avatar
 
Clément Damiens committed
271 272 273 274 275 276 277 278 279 280 281 282 283 284
	function validateForStep3(){
		dataHelper.path2Value( ctxTpl, function(params) { 
  	 		ctxTpl = {
	    		id    : "<?php echo $answer['_id'] ?>",
	    		collection : "answers",
	    		path  : "step",
	    		value : "deal3" //pourrait etre un parametre element.costum.form.stepOperateur : deal3
	    	};
	    	mylog.log("save step save",ctxTpl);
  	 		dataHelper.path2Value( ctxTpl, function(params) { 
	  	 		urlCtrl.loadByHash(location.hash);
	  	 	} );
  	 	} );
	}
Clément Damiens's avatar
 
Clément Damiens committed
285
	</script>
Raph El's avatar
Raph El committed
286

Tibor Katelbach's avatar
Tibor Katelbach committed
287

288 289 290
<?php
}
?>