<apex:component controller="CreateRelationListPagingCmpCtrl" allowDML="true" id="cmpinnerid" >
|
|
<!-- <apex:stylesheet value="{!URLFOR($Resource.blockUIcss)}"/>
|
<apex:includeScript value="{!URLFOR($Resource.jquery183minjs)}"/>
|
<apex:includeScript value="{!URLFOR($Resource.PleaseWaitDialog)}"/> -->
|
<apex:stylesheet value="{!URLFOR($Resource.RelationListPagingCmpCss)}"/>
|
<apex:includeScript value="{!URLFOR($Resource.RelationListPagingCmpJS)}"/>
|
<apex:includeScript value="{!URLFOR($Resource.CommonUtilJs)}"/>
|
|
<style>
|
/*URLFOR($Resource なのでRelationListPagingCmpCssに入れません*/
|
body .pbBody table.list tr.headerRow td.colViewing {
|
/* デフォルト値、最小化アイコンを表示 */
|
background-image:url('{!URLFOR($Resource.IconResizeMinus_5)}') ;
|
background-repeat:no-repeat;
|
}
|
body .pbBody table.list tr.headerRow td.colUnHideIcon {
|
/* 最大化アイコンを表示 */
|
background-image:url('{!URLFOR($Resource.IconResizePlus_5)}');
|
background-repeat:no-repeat;
|
}
|
</style>
|
|
<apex:attribute name="pgController"
|
type="CreateRelationListPagingCtrlBase"
|
assignTo="{!pageController}"
|
required="true"
|
description="The controller for the page." />
|
<apex:attribute name="hasCheckbox"
|
type="Boolean"
|
assignTo="{!hasChkBox}"
|
required="true"
|
description="Set If List Row able to be checked." />
|
<apex:attribute name="noSort"
|
type="Boolean"
|
assignTo="{!noSortHeader}"
|
required="false"
|
default="true"
|
description="Set If Dont need Sort" />
|
<apex:attribute name="isRadio"
|
type="Boolean"
|
assignTo="{!isRadioBox}"
|
required="false"
|
description="Set if need selectRadio not inputCheckbox" />
|
<apex:attribute name="bottomSpace"
|
type="Integer"
|
assignTo="{!bottomSp}"
|
required="false"
|
description="Set if need more bottomSpace" />
|
<apex:attribute name="tabStyle"
|
type="String"
|
assignTo="{!tabS}"
|
required="false"
|
description="Set if need Set dataBlock's tabStyle" />
|
<apex:attribute name="userCPaging"
|
type="Boolean"
|
assignTo="{!userCustomPaging}"
|
required="false"
|
default="false"
|
description="Set if need Set Use CustomPaging" />
|
|
<!-- <apex:form id="allForm"> -->
|
<apex:actionFunction action="{!init}" name="init" rerender="allPanel, message, checEventFrame, canGoPage" oncomplete="unblockUI();windowResize();runSFDCAddRemote({!MetadataConnectionWarning});"/>
|
<apex:actionFunction action="{!searchPrevious}" name="searchPrevious" rerender="allPanel, message, checEventFrame" status="statusPreload" oncomplete="unblockUI();windowResize();"/>
|
<apex:actionFunction action="{!searchNext}" name="searchNext" rerender="allPanel, message, checEventFrame" status="statusPreload" oncomplete="unblockUI();windowResize();"/>
|
<apex:actionFunction action="{!searchGoPage}" name="searchGoPage" rerender="allPanel, message, checEventFrame" status="statusPreload" oncomplete="unblockUI();windowResize();"/>
|
<!-- ToDoエラー表示確認message -->
|
<apex:actionFunction name="sortTablefunc" action="{!sortTable}" rerender="allPanel, message, checEventFrame" status="statusPreload" onComplete="unblockUI();windowResize();">
|
<apex:param name="sortKey" value="" />
|
</apex:actionFunction>
|
|
<apex:outputPanel id="allPanel">
|
<apex:pageBlock id="dataBlock" tabStyle="{!IF(tabS<>null,tabS,'Report')}">
|
<apex:outputPanel >
|
<!-- 総件数 -->
|
<apex:inputHidden id="recordAllCount" value="{!recordAllCount}"/> <!-- recordAllCount画面上で設定します?しなければinputHiddenを使わないでください -->
|
<apex:inputHidden id="currentPageRecordCnt" value="{!currentPageRecordCnt}"/>
|
<!-- 左 ヘッダ -->
|
<div id="out_Div_L">
|
<table class="list" style="border-bottom-width: 0px; font-size:11px; border-spacing:0;" border="" id="tableHeader_L">
|
<tr class="dataRow" height="1px">
|
<apex:outputPanel layout="none" rendered="{!hasChkBox}">
|
<td class="col_chk"></td>
|
</apex:outputPanel>
|
<apex:outputPanel layout="none" rendered="{!Not(hasChkBox)}">
|
<td class="col_noChk"></td>
|
</apex:outputPanel>
|
<apex:variable value="{!0}" var="cnt" />
|
<apex:repeat value="{!titleLeft}" var="t">
|
<td class="col_{!columnLeftCss[cnt]}"></td>
|
<apex:variable value="{!cnt + 1}" var="cnt" />
|
</apex:repeat>
|
</tr>
|
<tr class="headerRow" height="30px">
|
<apex:outputPanel layout="none" rendered="{!hasChkBox}">
|
<apex:outputPanel layout="none" rendered="{!Not(isRadioBox)}">
|
<td style="width:20px" class="col_chk" align="center">
|
<input type='checkbox' onClick='checkAll()' id='checker'/>
|
</td>
|
</apex:outputPanel>
|
</apex:outputPanel>
|
|
<apex:outputPanel layout="none" rendered="{!isRadioBox}">
|
<td class="col_chk"></td>
|
</apex:outputPanel>
|
|
<apex:outputPanel layout="none" rendered="{!Not(hasChkBox)}">
|
<td class="col_noChk"></td>
|
</apex:outputPanel>
|
<apex:variable value="{!0}" var="cnt" />
|
<apex:repeat value="{!titleLeft}" var="t">
|
<td class="col_{!columnLeftCss[cnt]}">
|
<apex:outputPanel layout="none" rendered="{!Not(noSortHeader)}">
|
<a href="#" name="out_Div_a" onclick="sortTableJs('{!cnt}');return false;" style="text-decoration: underline;">
|
<!-- 20220107 ljh update start -->
|
<!-- <apex:outputText value="{!SUBSTITUTE(t,'(Sys)','')}"/> -->
|
<apex:outputText value="{!IF(t=='批准时间(申请提交时间)', '批准时间', IF(t=='排队时间F', '排队时间', SUBSTITUTE(t,'(Sys)','')))}"/>
|
<!-- 20220107 ljh update end -->
|
</a>{!sortOrder[cnt]}
|
</apex:outputPanel>
|
<apex:outputPanel layout="none" rendered="{!noSortHeader}">
|
<!-- 20220107 ljh update start -->
|
<!-- <apex:outputText value="{!SUBSTITUTE(t,'(Sys)','')}"/> -->
|
<apex:outputText value="{!IF(t=='批准时间(申请提交时间)', '批准时间', IF(t=='排队时间F', '排队时间', SUBSTITUTE(t,'(Sys)','')))}"/>
|
<!-- 20220107 ljh update end -->
|
</apex:outputPanel>
|
</td>
|
<apex:variable value="{!cnt + 1}" var="cnt" />
|
</apex:repeat>
|
</tr>
|
</table>
|
</div>
|
<!-- 右 ヘッダ -->
|
<div id="out_Div">
|
<table class="list" style="border-bottom-width: 0px; font-size:11px; border-spacing:0;" border="" id="tableHeader">
|
<tr class="dataRow" height="1px">
|
<apex:variable value="{!0}" var="cnt" />
|
<apex:repeat value="{!titleRight}" var="t">
|
<td class="col_{!columnRightCss[cnt]}"></td>
|
<apex:variable value="{!cnt + 1}" var="cnt" />
|
</apex:repeat>
|
<td class="col_Scroll"></td>
|
</tr>
|
<tr class="headerRow" height="30px">
|
<apex:variable value="{!0}" var="cnt" />
|
<apex:repeat value="{!titleRight}" var="t">
|
<td class="col_{!columnRightCss[cnt]}">
|
<apex:outputPanel layout="none" rendered="{!Not(noSortHeader)}">
|
<a href="#" name="out_Div_a" onclick="sortTableJs('{!cnt + titleLeft.size}');return false;" style="text-decoration: underline;">
|
<!-- 20220107 ljh update start -->
|
<!-- <apex:outputText value="{!SUBSTITUTE(t,'(Sys)','')}"/> -->
|
<apex:outputText value="{!IF(t=='批准时间(申请提交时间)', '批准时间', IF(t=='排队时间F', '排队时间', SUBSTITUTE(t,'(Sys)','')))}"/>
|
<!-- 20220107 ljh update end -->
|
</a>{!sortOrder[cnt + titleLeft.size]}
|
</apex:outputPanel>
|
<apex:outputPanel layout="none" rendered="{!noSortHeader}">
|
<!-- 20220107 ljh update start -->
|
<!-- <apex:outputText value="{!SUBSTITUTE(t,'(Sys)','')}"/> -->
|
<apex:outputText value="{!IF(t=='批准时间(申请提交时间)', '批准时间', IF(t=='排队时间F', '排队时间', SUBSTITUTE(t,'(Sys)','')))}"/>
|
<!-- 20220107 ljh update end -->
|
</apex:outputPanel>
|
</td>
|
<apex:variable value="{!cnt + 1}" var="cnt" />
|
</apex:repeat>
|
<td class="col_Scroll"></td>
|
</tr>
|
</table>
|
</div> <!-- out_Div -->
|
<div style="clear:both;height:0px;"></div>
|
<!-- 左 データリスト -->
|
<div id="in_Div_L">
|
<table class="list" style="border-bottom-width: 0px; font-size:11px; border-spacing:0;" border="" id="tableData_L">
|
<apex:variable value="{!1}" var="cnt" />
|
<apex:repeat value="{!pageController.viewList}" var="or" id="oppTable_L">
|
<tr class="dataRow {!IF(MOD(cnt, 2)==0, 'odd', 'even')} {!IF(cnt==1, 'first', '')}" onmouseover="if (window.hiOn){hiOn(this);} " onmouseout="if (window.hiOff){hiOff(this);} " onblur="if (window.hiOff){hiOff(this);}" onfocus="if (window.hiOn){hiOn(this);}">
|
|
<apex:outputPanel layout="none" rendered="{!hasChkBox}">
|
<td class="dataCellBorder1" style="" align="center">
|
<apex:outputPanel layout="none" rendered="{!Not(isRadioBox)}">
|
<apex:inputCheckbox value="{!or.check}" id="rowCheck" styleClass="rowchkcls" disabled="{!!or.canEdit}" onchange="setChangeFlg('{!or.lineNo}')"/>
|
</apex:outputPanel>
|
<apex:outputPanel layout="none" rendered="{!isRadioBox}">
|
<apex:inputCheckbox value="{!or.check}" id="rowRadioCheck" styleClass="rowchkcls" disabled="{!!or.canEdit}" onchange="setRadioChangeFlg(this, '{!or.lineNo}', '{!isNeedCheckEvent}')"/>
|
</apex:outputPanel>
|
<apex:inputCheckbox value="{!or.oldCheck}" id="rowOldCheck" style="display:none"/>
|
<apex:inputText value="{!or.orderNo}" styleClass="ordernocls" style="display:none"/>
|
</td>
|
</apex:outputPanel>
|
<apex:outputPanel layout="none" rendered="{!Not(hasChkBox)}">
|
<td class="col_noChk">
|
<apex:inputCheckbox value="{!or.check}" styleClass="rowchkcls" style="display:none"/>
|
<apex:inputText value="{!or.orderNo}" styleClass="ordernocls" style="display:none"/>
|
</td>
|
</apex:outputPanel>
|
|
<apex:variable value="{!0}" var="cnt_2" />
|
<apex:repeat value="{!columnsLeftApi}" var="c">
|
<td class="dataCellBorder1 col_{!columnLeftCss[cnt_2]}">
|
<apex:outputPanel rendered="{!(c.size==1 && columnLeftRW[c[0]]=='r')}" layout="none">
|
<!-- in_Div_LのAccount名は特殊対応、リンクにする -->
|
<apex:outputPanel rendered="{!c[0]=='Name'}" layout="none">
|
<apex:outputLink value="/{!or.sobj.Id}" target="LINK_{!or.sobj.Id}"><apex:outputField value="{!or.sobj[c[0]]}" /></apex:outputLink>
|
</apex:outputPanel>
|
<apex:outputPanel rendered="{!c[0]<>'Name'}" layout="none">
|
<apex:outputField value="{!or.sobj[c[0]]}"/>
|
</apex:outputPanel>
|
</apex:outputPanel>
|
<apex:outputPanel rendered="{!(c.size==2 && or.sobj[c[0]] != null)}" layout="none">
|
<apex:outputField value="{!or.sobj[c[0]][c[1]]}"/>
|
</apex:outputPanel>
|
<apex:outputPanel rendered="{!(c.size==1 && columnLeftRW[c[0]]=='w')}" layout="none">
|
<apex:inputField value="{!or.sobj[c[0]]}" onchange="setChangeFlg('{!or.lineNo}');if(typeof onFieldChanged == 'function') {onFieldChanged(this, {!or.lineNo});}"/>
|
</apex:outputPanel>
|
<apex:outputPanel rendered="{!(c.size==1 && columnLeftRW[c[0]]=='wm')}" layout="none">
|
<div class="requiredInput"><div class="requiredBlock"></div><apex:inputField value="{!or.sobj[c[0]]}" onchange="setChangeFlg('{!or.lineNo}');if(typeof onFieldChanged == 'function') {onFieldChanged(this, {!or.lineNo});}"/></div>
|
</apex:outputPanel>
|
</td>
|
<apex:variable value="{!cnt_2 + 1}" var="cnt_2" />
|
</apex:repeat>
|
</tr>
|
<apex:variable value="{!cnt + 1}" var="cnt" />
|
</apex:repeat>
|
</table>
|
</div>
|
<!-- 右 データリスト -->
|
<div id="in_Div">
|
<table class="list" style="border-bottom-width: 0px; font-size:11px; border-spacing:0;" border="" id="tableData">
|
<apex:variable value="{!1}" var="cnt" />
|
<apex:repeat value="{!pageController.viewList}" var="or" id="oppTable">
|
<tr class="dataRow {!IF(MOD(cnt, 2)==0, 'odd', 'even')} {!IF(cnt==1, 'first', '')}" onmouseover="if (window.hiOn){hiOn(this);} " onmouseout="if (window.hiOff){hiOff(this);} " onblur="if (window.hiOff){hiOff(this);}" onfocus="if (window.hiOn){hiOn(this);}">
|
<apex:variable value="{!0}" var="cnt_3" />
|
<apex:repeat value="{!columnsRightApi}" var="c">
|
<td class="dataCellBorder1 col_{!columnRightCss[cnt_3]}">
|
<apex:outputPanel rendered="{!(c.size==1 && columnRightRW[c[0]]=='r')}" layout="none">
|
<apex:outputField value="{!or.sobj[c[0]]}"/>
|
</apex:outputPanel>
|
<apex:outputPanel rendered="{!(c.size==2 && or.sobj[c[0]] != null)}" layout="none" >
|
<apex:outputField value="{!or.sobj[c[0]][c[1]]}"/>
|
</apex:outputPanel>
|
<apex:outputPanel rendered="{!(c.size==1 && columnRightRW[c[0]]=='w')}" layout="none">
|
<apex:inputField value="{!or.sobj[c[0]]}" onchange="setChangeFlg('{!or.lineNo}');if(typeof onFieldChanged == 'function') {onFieldChanged(this, {!or.lineNo});}"/>
|
</apex:outputPanel>
|
<apex:outputPanel rendered="{!(c.size==1 && columnRightRW[c[0]]=='wm')}" layout="none">
|
<div class="requiredInput"><div class="requiredBlock"></div><apex:inputField value="{!or.sobj[c[0]]}" onchange="setChangeFlg('{!or.lineNo}');if(typeof onFieldChanged == 'function') {onFieldChanged(this, {!or.lineNo});}"/></div>
|
</apex:outputPanel>
|
<apex:variable value="{!cnt_3 + 1}" var="cnt_3" />
|
</td>
|
</apex:repeat>
|
<td class="dataRow col_Scroll">
|
<apex:repeat value="{!columnsHiddenApi}" var="c">
|
<input name="{!c}" value="{!or.additionalInfoMap[c]}" type="hidden" />
|
</apex:repeat>
|
<apex:inputHidden value="{!or.changeFlg}" id="changeFlg"/>
|
|
<script type="text/javascript">
|
if ("{!or.canEdit}" == "false") {
|
var right = j$("#tableData").find("tr").eq({!cnt-1});
|
var rightline = j$(right).find("td");
|
for (var i=0; i<rightline.length; i++) {
|
j$(rightline[i]).find("input").each(function(){
|
j$(this).attr("disabled",true);
|
});
|
j$(rightline[i]).find("select").each(function(){
|
j$(this).attr("disabled",true);
|
});
|
j$(rightline[i]).find("a").each(function(){
|
j$(this).attr("href","#");
|
});
|
}
|
}
|
if ("{!or.hasError}" == "true") {
|
var left = j$("#tableData_L").find("tr").eq({!cnt-1});
|
var leftFirst = j$(left).find("td").eq(1);
|
j$(leftFirst).css("background-color", "gray");
|
}
|
if ("{!or.hasFieldError}" == "true") {
|
var left = j$("#tableData_L").find("tr").eq({!cnt-1});
|
var leftFirst = j$(left).find("td").eq(1);
|
j$(leftFirst).css("background-color", "red");
|
}
|
|
</script>
|
</td>
|
</tr>
|
<apex:variable value="{!cnt + 1}" var="cnt" />
|
</apex:repeat>
|
</table>
|
</div><!-- /in_Div -->
|
</apex:outputPanel>
|
<apex:outputPanel layout="none" rendered="{!isDisplayPaging}">
|
|
<apex:outputPanel layout="none" rendered="{!hasPrevious}">
|
<button onclick="if('{!userCustomPaging}' == 'true') {searchPreviousCustom();} else {searchPreviousJs();}return false;" class="btn">前へ</button>
|
</apex:outputPanel>
|
<apex:outputPanel layout="none" rendered="{!!hasPrevious}">
|
<button class="btn" disabled="disabled"
|
style="cursor: default;border-color: #e5e5e5; background: #f0f0f0;color: #a8a8a8;">前へ</button>
|
</apex:outputPanel>
|
|
<span class="count">{!page}</span><span>|</span>
|
<span class="count">{!maxPage}</span>
|
<apex:outputPanel layout="none" rendered="{!hasNext}">
|
<button onclick="if('{!userCustomPaging}' == 'true') {searchNextCustom();} else {searchNextJs();}return false;" class="btn" >次へ</button>
|
</apex:outputPanel>
|
<apex:outputPanel layout="none" rendered="{!!hasNext}">
|
<button class="btn" disabled="disabled"
|
style="cursor: default;border-color: #e5e5e5; background: #f0f0f0;color: #a8a8a8;">次へ</button>
|
</apex:outputPanel>
|
|
<apex:outputPanel id="canGoPage" layout="none" rendered="{!canGoPage}">
|
<apex:selectList value="{!goPageInt}" size="1" style="width:50px" id="goPageInt"><apex:selectOptions value="{!pageNumList}" id="pageNumList"/></apex:selectList>
|
<button onclick="if('{!userCustomPaging}' == 'true') {searchGoPageCustom();} else {searchGoPageJs();}return false;" class="btn">go</button>
|
</apex:outputPanel>
|
</apex:outputPanel>
|
</apex:pageBlock>
|
<script type="text/javascript">
|
var heightAjustment = 120;
|
var widthAjustment = 30;
|
var bottomspace = '{!bottomSp}';
|
j$(document).ready(function(){
|
if({!isFirstRefresh}){
|
blockme();
|
init();
|
}
|
});
|
|
function runSFDCAddRemote(MetadataConnectionWarning) {
|
if (MetadataConnectionWarning) SFDCAddRemote('{!$Api.Session_ID}');
|
}
|
function sortTableJs(key) {
|
// blockme();
|
sortTablefunc(key);
|
}
|
|
j$(function() {
|
var tableWidth = 0;
|
j$('body .pbBody table#tableHeader tr.headerRow td').each(function() {
|
var colClass = getColClassName(this);
|
if (colClass != 'col_Scroll') {
|
var headerCol = j$('body .pbBody table.list tr.headerRow td.' + colClass);
|
tableWidth += headerCol.width();
|
}
|
});
|
j$('table#tableData').css('width', (tableWidth + 2) + 'px');
|
j$('table#tableHeader').css('width', (tableWidth + 2) + 'px');
|
|
// list の headerRow の tdに toggleWidth() を追加
|
bindTdToggleWidth();
|
});
|
var elements = document.getElementsByTagName("select");
|
for (i = 0; i < elements.length; i++) {
|
var id = elements[i].id;
|
if (id.length > 5 && id.substring(id.length - 5, id.length) == 'mlktp') {
|
elements[i].style.display = "none";
|
}
|
}
|
var tbl_l = document.getElementById("tableData_L");
|
var input_l = tbl_l.getElementsByTagName("input");
|
for (i = 0; i < input_l.length; i++) {
|
var id = input_l[i].id + '_lkid';
|
if (document.getElementById(id) != null) {
|
input_l[i].style.width = "75%";
|
}
|
}
|
var tbl = document.getElementById("tableData");
|
var input = tbl.getElementsByTagName("input");
|
for (i = 0; i < input.length; i++) {
|
var id = input[i].id + '_lkid';
|
if (document.getElementById(id) != null) {
|
input[i].style.width = "75%";
|
}
|
}
|
//aをクリックする際に、tdイベントを実装しない
|
j$("a[name='out_Div_a']").bind("click",function(event){
|
event.stopPropagation();
|
});
|
windowResize();
|
</script>
|
</apex:outputPanel>
|
<!-- </apex:form> -->
|
</apex:component>
|