2016-09-27 1 views
-2

2つのアイコンが必要
電子メールを確認するには、hyberlinkなしでアイコンを表示し、緑のスタイルの「アクティブ化」CSSクラスを設定してチェックします。
電子メールを確認しない場合、アイコンは確認ページにリンクされており、デフォルトはグレーの色のスタイルです。
以下のうち、どちらが優れていますか?2つのアイコンを有効または無効にするための最良のソリューション

溶液#1:

<a href="<?php echo ($modelStatic->isVerifiedEmail) ? 'javascript:void(0)' : 
    Yii::app()->createUrl('/user/reActivate'); ?>" 
    class="item<?php if($modelStatic->isVerifiedEmail) echo ' activated'; ?>"> 
    <div class="confirm-icon"> 
     <i class="fa fa-envelope-o"></i> 
    </div> 
    <div class="text"> 
     <?php echo Yii::t('app', 'Verify Email'); ?> 
    </div> 
</a> 
<style> 
.activated { 
    cursor: default; 
} 
</style> 

溶液#2:

if($modelStatic->isVerifiedEmail) : ?> 
    <div class="item activated"> 
     <div class="confirm-icon"> 
      <i class="fa fa-envelope-o"></i> 
     </div> 
     <div class="text"> 
      <?php echo Yii::t('app', 'Verify Email'); ?> 
     </div> 
    </div> 
<?php else: ?> 
    <a href="<?php echo Yii::app()->createUrl('/user/reActivate'); ?>" 
     class="item"> 
     <div class="confirm-icon"> 
      <i class="fa fa-envelope-o"></i> 
     </div> 
     <div class="text"> 
      <?php echo Yii::t('app', 'Verify Email'); ?> 
     </div> 
    </a> 
<?php endif; ?> 

溶液#3:

<?php if($modelStatic->isVerifiedEmail) : ?> 
    <div class="item activated"> 
<?php else: ?> 
    <a href="<?php echo Yii::app()->createUrl('/user/reActivate'); ?>" class="item"> 
<?php endif; ?> 
     <div class="confirm-icon"> 
      <i class="fa fa-envelope-o"></i> 
     </div> 
     <div class="text"> 
      <?php echo Yii::t('app', 'Verify Email'); ?> 
     </div> 
<?php if($modelStatic->isVerifiedEmail) : ?> 
    </div> 
<?php else: ?> 
    </a> 
<?php endif; ?> 
+1

これは、トピック以外の意見に基づく質問のようです。 – Lexi

+1

#3 .............. – Drone

+2

これはコードのレビュー* –

答えて

1

私見、第二の溶液は、ビューの可読性の観点から優れています。他のソリューションはあまりにも混乱しています。私はあなたがテンプレートエンジンを使うことができれば、よりクリーンなコードベースになると思います。

+0

私は可読性について話していない、私は解決策#3は、開発のために良いと思うです。また、ブロックタグの中間は解#2で重複しています。そうではありませんか? –

関連する問題