2016-04-25 13 views
1

ここでは、コントローラのビューファイルSuiteCRM /モジュール/連絡先/ビュー/ view.detail.phpSuitecrm/Sugarcrm ..テンプレートファイルに配列を割り当てる方法は?

<?php 
if(!defined('sugarEntry') || !sugarEntry) die('Not A Valid Entry Point'); 

require_once('include/MVC/View/views/view.detail.php'); 
require_once('api/soap_api.php'); 

class ContactsViewDetail extends ViewDetail 
{ 
    /** 
    * @see SugarView::display() 
    * 
    * We are overridding the display method to manipulate the portal information. 
    * If portal is not enabled then don't show the portal fields. 
    */ 
    public function display(){ 
     global $sugar_config; 

     $aop_portal_enabled = !empty($sugar_config['aop']['enable_portal']) && !empty($sugar_config['aop']['enable_aop']); 
     //echo '<pre>===='; print_r($aop_portal_enabled); exit; 
     $this->ss->assign("AOP_PORTAL_ENABLED", $aop_portal_enabled); 

     require_once('modules/AOS_PDF_Templates/formLetter.php'); 
     formLetter::DVPopupHtml('Contacts'); 

     $admin = new Administration(); 
     $obj   = new AirtelUserInfo(); 
     $res   = $obj->test(); 

     $sql = 'select * from contacts'; 

     //$result = $this->db->query($sql,true," Error filling in additional detail fields: "); 

     // Get the id and the name. 
     //$row = $this->db->fetchByAssoc($result); 

     //echo '<pre>'; print_r($sql); exit; 


     $this->ss->assign("res", $res); 

     $admin->retrieveSettings(); 
     if(isset($admin->settings['portal_on']) && $admin->settings['portal_on']) { 
      $this->ss->assign("PORTAL_ENABLED", true); 
     } 
     parent::display(); 
    } 
} 

ここTPLファイルパス SuiteCRM /キャッシュ/モジュール/連絡先/ DetailView.tpl

<script language="javascript"> 
{literal} 
SUGAR.util.doWhen(function(){ 
    return $("#contentTable").length == 0; 
}, SUGAR.themes.actionMenu); 
{/literal} 
</script> 
<table cellpadding="0" cellspacing="0" border="0" width="100%" id=""> 
<tr> 
<td class="buttons" align="left" NOWRAP width="80%"> 
<div class="actionsContainer"> 
<form action="index.php" method="post" name="DetailView" id="formDetailView"> 
<input type="hidden" name="module" value="{$module}"> 
<input type="hidden" name="record" value="{$fields.id.value}"> 
<input type="hidden" name="return_action"> 
<input type="hidden" name="return_module"> 
<input type="hidden" name="return_id"> 
<input type="hidden" name="module_tab"> 
<input type="hidden" name="isDuplicate" value="false"> 
<input type="hidden" name="offset" value="{$offset}"> 
<input type="hidden" name="action" value="EditView"> 
<input type="hidden" name="sugar_body_only"> 
</form> 
<ul id="detail_header_action_menu" class="clickMenu fancymenu" ><li class="sugar_action_button" >{if $bean->aclAccess("edit")}<input title="{$APP.LBL_EDIT_BUTTON_TITLE}" accessKey="{$APP.LBL_EDIT_BUTTON_KEY}" class="button primary" onclick="var _form = document.getElementById('formDetailView'); _form.return_module.value='Contacts'; _form.return_action.value='DetailView'; _form.return_id.value='{$id}'; _form.action.value='EditView';SUGAR.ajaxUI.submitForm(_form);" type="button" name="Edit" id="edit_button" value="{$APP.LBL_EDIT_BUTTON_LABEL}">{/if} <ul id class="subnav" ><li>{if $bean->aclAccess("edit")}<input title="{$APP.LBL_DUPLICATE_BUTTON_TITLE}" accessKey="{$APP.LBL_DUPLICATE_BUTTON_KEY}" class="button" onclick="var _form = document.getElementById('formDetailView'); _form.return_module.value='Contacts'; _form.return_action.value='DetailView'; _form.isDuplicate.value=true; _form.action.value='EditView'; _form.return_id.value='{$id}';SUGAR.ajaxUI.submitForm(_form);" type="button" name="Duplicate" value="{$APP.LBL_DUPLICATE_BUTTON_LABEL}" id="duplicate_button">{/if} </li><li>{if $bean->aclAccess("delete")}<input title="{$APP.LBL_DELETE_BUTTON_TITLE}" accessKey="{$APP.LBL_DELETE_BUTTON_KEY}" class="button" onclick="var _form = document.getElementById('formDetailView'); _form.return_module.value='Contacts'; _form.return_action.value='ListView'; _form.action.value='Delete'; if(confirm('{$APP.NTC_DELETE_CONFIRMATION}')) SUGAR.ajaxUI.submitForm(_form);" type="submit" name="Delete" value="{$APP.LBL_DELETE_BUTTON_LABEL}" id="delete_button">{/if} </li><li>{if $bean->aclAccess("edit") && $bean->aclAccess("delete")}<input title="{$APP.LBL_DUP_MERGE}" class="button" onclick="var _form = document.getElementById('formDetailView'); _form.return_module.value='Contacts'; _form.return_action.value='DetailView'; _form.return_id.value='{$id}'; _form.action.value='Step1'; _form.module.value='MergeRecords';SUGAR.ajaxUI.submitForm(_form);" type="button" name="Merge" value="{$APP.LBL_DUP_MERGE}" id="merge_duplicate_button">{/if} </li><li><input class="button" id="manage_subscriptions_button" title="{$APP.LBL_MANAGE_SUBSCRIPTIONS}" onclick="var _form = document.getElementById('formDetailView');_form.return_module.value='Contacts'; _form.return_action.value='DetailView'; _form.return_id.value='{$fields.id.value}'; _form.action.value='Subscriptions'; _form.module.value='Campaigns'; _form.module_tab.value='Contacts';_form.submit();" name="Manage Subscriptions" type="button" value="{$APP.LBL_MANAGE_SUBSCRIPTIONS}"/></li><li><input type="button" class="button" onClick="showPopup();" value="{$APP.LBL_GENERATE_LETTER}"/></li><li>{if !$fields.joomla_account_id.value && $AOP_PORTAL_ENABLED}<input title="{$MOD.LBL_CREATE_PORTAL_USER}" class="button" onclick="var _form = document.getElementById('formDetailView');_form.action.value='createPortalUser';_form.submit();" name="buttonCreatePortalUser" id="createPortalUser_button" type="button" value="{$MOD.LBL_CREATE_PORTAL_USER}"/>{/if}</li><li>{if $fields.joomla_account_id.value && !$fields.portal_account_disabled.value && $AOP_PORTAL_ENABLED}<input title="{$MOD.LBL_DISABLE_PORTAL_USER}" class="button" onclick="var _form = document.getElementById('formDetailView');_form.action.value='disablePortalUser';_form.submit();" name="buttonDisablePortalUser" id="disablePortalUser_button" type="button" value="{$MOD.LBL_DISABLE_PORTAL_USER}"/>{/if}</li><li>{if $fields.joomla_account_id.value && $fields.portal_account_disabled.value && $AOP_PORTAL_ENABLED}<input title="{$MOD.LBL_ENABLE_PORTAL_USER}" class="button" onclick="var _form = document.getElementById('formDetailView');_form.action.value='enablePortalUser';_form.submit();" name="buttonENablePortalUser" id="enablePortalUser_button" type="button" value="{$MOD.LBL_ENABLE_PORTAL_USER}"/>{/if}</li><li>{if $bean->aclAccess("detail")}{if !empty($fields.id.value) && $isAuditEnabled}<input id="btn_view_change_log" title="{$APP.LNK_VIEW_CHANGE_LOG}" class="button" onclick='open_popup("Audit", "600", "400", "&record={$fields.id.value}&module_name=Contacts", true, false, {ldelim} "call_back_function":"set_return","form_name":"EditView","field_to_name_array":[] {rdelim}); return false;' type="button" value="{$APP.LNK_VIEW_CHANGE_LOG}">{/if}{/if}</li></ul></li></ul> 
</div> 
</td> 
+0

これで何を達成したいですか? – sAcH

+0

データベースからtplファイルにデータを割り当てる方法を知りたい –

+1

Danielによって投稿された回答が得られたら幸いです。あなたはキャッシュのtplファイルのパスを指定しています。そして、tplファイルにHTMLコードを追加しようとしているなら、それは良い解決策ではありません。パフォーマンスに影響します。代わりに、表示機能の中でcustom/modules/contact/view.detail.phpファイルにカスタムコードを記述します。 – sAcH

答えて

2

あなたのビューでは、表示方法であなたの変数を割り当てる必要があります:

$myArray = array(1000, 1001, 1002); $this->ss->assign("myArray", $myArray);

スマートテンプレートを編集する必要があります:

<ul> 
{foreach from=$myArray item=foo} 
    <li>{$foo}</li> 
{/foreach} 
</ul> 
関連する問題