<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/4.0.0/css/bootstrap.min.css" integrity="sha384-Gn5384xqQ1aoWXA+058RXPxPg6fy4IWvTNh0E263XmFcJlSAwiGgFAW/dAiS6JXm" crossorigin="anonymous">
<script src="https://cdn.bootcdn.net/ajax/libs/jquery/3.4.1/jquery.js"></script>
<script src="https://stackpath.bootstrapcdn.com/bootstrap/4.3.1/js/bootstrap.min.js"></script>
<style type="text/css">
body {  
background-color: rgb(248, 243, 243);
  height: 100vh;
  width: 100vw;
  display: flex;
  flex-direction:column;
	 justify-content: flex-start;
     align-items:center;
  	margin: 0;
}

#sidearea{  
background-color: rgb(213, 218, 210);
  height:720px;
  display: flex;
  flex-direction:column;
	 justify-content: flex-start;
     align-items:center;
  	margin: 0;
}
.sidepart{
    height:240px;
    padding: 10px;
    border-radius:10px
}
#bellcall{
    background:#f5f5d6   
}
#messageboard{
    background:#d6f5de
}
#loginarea{
    background:#f8f8a6
}
#contactpart{
    background:#d6f5de ;
    width:100vw;
    height:100px;
    
}
.contactinfo {
    margin-left:100px
}
#bulletin {
    background:#def3f8;
    height:720px;
    }
#sharezone {
    background:#f8e8c5;
    height:720px;
    }
#tablefy{
    display: inline-block;
  flex-direction:row;
	 justify-content: flex-start;
     align-items:left;
     margin:10px
}
.navbar{background:#d6eff5;}
.nav-link, .navbar-brand{color: #f4f4f4;cursor:pointer;}
.nav-link{margin-right:1em !important;}
.nav-link:hover{background: #f4f4f4;color:#f97300;}
.navbar-collapse{justify-content:flex-end;}
.navbar-toggler{background:#fff !important;}

</style>

  <title>著作類別頁</title>
  </head>
  <body>
    <div id="show_div">
        <div class="row">
            <bander></bander>
        </div>
        <div class="row" align="justify">
            <div class="col-lg-3 col-md-6 col-sm-12" id="sidearea">
                <sidebar></sidebar> </div>
            <div class="col-lg-9 col-md-6 col-sm-12">
              <content0></content0>
              <!--
                <div class="row" align="justify">
                    <div class="col-lg-6 col-md-6 col-sm-12" id="bulletin">
                        <content2></content2>
                    </div>
                    <div class="col-lg-6 col-md-6 col-sm-12" id="sharezone">
                        <content1></content1>
                    </div>
                </div>
                -->
            </div>
        </div>
        <!--
        <div class="row" align="justify">
            <contacter></contacter>
        </div>
        --> 
    </div>
 
    <template id="banderUI">
      <nav class="navbar navbar-expand-lg navbar-light">
        <a class="navbar-brand" href="/">{{brand}}</a>
        <button class="navbar-toggler" type="button" data-toggle="collapse" data-target="#navbarText" aria-controls="navbarText" aria-expanded="false" aria-label="Toggle navigation">
          <span class="navbar-toggler-icon"></span>
        </button>
        <div class="collapse navbar-collapse" id="navbarText">
          <ul class="navbar-nav mr-auto">
            <li class="nav-item">
              <a class="nav-link" ::href="paperurl">{{paper}}</a>
            </li>
            <li class="nav-item">
                <a class="nav-link" :href="homepageurl">{{profile}}</a>
              </li>
              <li class="nav-item">
                <a class="nav-link" :href="resumeurl">{{resume}}</a>
              </li>
              <li class="nav-item">
                <a class="nav-link active" href="#">{{typelabel}}<span class="sr-only">(current)</span></a>
              </li>
              <li class="nav-item">
                <a class="nav-link" :href="downloadurl">{{download}}</a>
              </li>
              
          </ul>
          <span class="navbar-text">
            <font size="1">{{statusreport}}</font>
          </span>
        </div>
      </nav>
    </template>
    <template id="content0UI">
        <nav aria-label="...">
          <h2>{{typename}}</h2>
          <table>
            <tr class="pagination">
              <td class="page-item" v-show="firstPage" @click="goFirstPage()">回第1頁</td>
              <td class="page-item" v-show="previousRound" @click="goPreviousRound()">上{{perRound}}頁</td>
              <div class="page index"  >
                  <!--  未來可精進的寫法
                      <li class="page-item" v-for="page in 10">
                          <a class="page-link" href>{{page}}></a>
                      </li>
                  -->
              <td class="page-item" :active="activeIndex[0]" v-show="showIndex[0]" @click="getShowData(0)">{{pageIndex[0]}}</td>
              <td class="page-item" :active="activeIndex[1]" v-show="showIndex[1]" @click="getShowData(1)">{{pageIndex[1]}}</td>
              <td class="page-item" :active="activeIndex[2]" v-show="showIndex[2]" @click="getShowData(2)">{{pageIndex[2]}}</td>
              <td class="page-item" :active="activeIndex[3]" v-show="showIndex[3]" @click="getShowData(3)">{{pageIndex[3]}}</td>
              <td class="page-item" :active="activeIndex[4]" v-show="showIndex[4]" @click="getShowData(4)">{{pageIndex[4]}}</td>
              <td class="page-item" :active="activeIndex[5]" v-show="showIndex[5]" @click="getShowData(5)">{{pageIndex[5]}}</td>
              <td class="page-item" :active="activeIndex[6]" v-show="showIndex[6]" @click="getShowData(6)">{{pageIndex[6]}}</td>
              <td class="page-item" :active="activeIndex[7]" v-show="showIndex[7]" @click="getShowData(7)">{{pageIndex[7]}}</td>
              <td class="page-item" :active="activeIndex[8]" v-show="showIndex[8]" @click="getShowData(8)">{{pageIndex[8]}}</td>
              <td class="page-item" :active="activeIndex[9]" v-show="showIndex[9]" @click="getShowData(9)">{{pageIndex[9]}}</td>
          </div>
              <td class="page-item" v-show="nextRound" @click="goNextRound()">下{{perRound}}頁</td>
              <td class="page-item" v-show="endPage" @click="goEndPage()">到最末頁</td>
            </tr>
            </table>            
          <table border="1" class="table table-striped">
              <thead>
              <tr>
                  <th>{{items.item0}}</th>
                  <th>{{items.item1}}</th>
                  <th>{{items.item8}}</th>
                   <!--<th>{{items.item5}}</th>
                <th>特別註記</th> -->
              </tr>
              </thead>
              <tbody id="knowledgelist">
                <!-- <tr v-for="knowledge of knowledgeshow" :key="knowledge._id"> -->
                  <tr v-for="knowledge of knowledgeShow" :key="knowledge._id">
                  <td>{{knowledge.a05domain}}</td>
                  <td>{{knowledge.a15describe}}</td>
                  <td>{{knowledge.a50date}}</td>
                  <!--   
                    <td>
                      <input type="submit" value="檢視" @click="lookone(knowledge._id)">
                    </td>
                    -->
                  </tr>
              </tbody>
          </table>
          <table>
              <tr class="pagination">
                <td class="page-item" v-show="firstPage" @click="goFirstPage()">回第1頁</td>
                <td class="page-item" v-show="previousRound" @click="goPreviousRound()">上{{perRound}}頁</td>
                <div class="page index"  >
                <td class="page-item" :active="activeIndex[0]" v-show="showIndex[0]" @click="getShowData(0)">{{pageIndex[0]}}</td>
                <td class="page-item" :active="activeIndex[1]" v-show="showIndex[1]" @click="getShowData(1)">{{pageIndex[1]}}</td>
                <td class="page-item" :active="activeIndex[2]" v-show="showIndex[2]" @click="getShowData(2)">{{pageIndex[2]}}</td>
                <td class="page-item" :active="activeIndex[3]" v-show="showIndex[3]" @click="getShowData(3)">{{pageIndex[3]}}</td>
                <td class="page-item" :active="activeIndex[4]" v-show="showIndex[4]" @click="getShowData(4)">{{pageIndex[4]}}</td>
                <td class="page-item" :active="activeIndex[5]" v-show="showIndex[5]" @click="getShowData(5)">{{pageIndex[5]}}</td>
                <td class="page-item" :active="activeIndex[6]" v-show="showIndex[6]" @click="getShowData(6)">{{pageIndex[6]}}</td>
                <td class="page-item" :active="activeIndex[7]" v-show="showIndex[7]" @click="getShowData(7)">{{pageIndex[7]}}</td>
                <td class="page-item" :active="activeIndex[8]" v-show="showIndex[8]" @click="getShowData(8)">{{pageIndex[8]}}</td>
                <td class="page-item" :active="activeIndex[9]" v-show="showIndex[9]" @click="getShowData(9)">{{pageIndex[9]}}</td>
            </div>
                <td class="page-item" v-show="nextRound" @click="goNextRound()">下{{perRound}}頁</td>
                <td class="page-item" v-show="endPage" @click="goEndPage()">到最末頁</td>
              </tr>
              </table>         
        </nav>
    </template>

    <template id="sidebarUI">
        <nav aria-label="...">
          <!--  
          <div class="sidepart" id="callbell">
                {{statusreport}}<br>
                {{promote}}
                <form action="/career/request/bellcall" method="get">
                <input type="submit" id="bell" value="服務鈴" class="btn btn-info">
            </form>
            </div> 
            -->    
            <div class="sidepart" id="messageboard">
                <table>
                <tr>
                <form :action="addbyguesturl" method="post">
                <label>{{promote}}</label>
                <td>
                <textarea name="a25message" placeholder="請輸入您的指教或提問..."></textarea>
                </td>
                <tr>
                <td>
                <label>如何回復您：</label>
                <input type="text" name="a10writer" placeholder="請留連絡電話或email或稱呼...">
                <input type="hidden" name="a05ipofvisitor" class="form-control" id="ipofvisitor" :value="ipofvisitor">
                </td>
                </tr>
                <tr>
                <td>
                <input type="submit" value="送出" style="float:right" >
                </td>
                </form>
                </tr>
                </table>
            </div>
            
        </nav>
    </template>
<!-- Vue CDN-->
<script src="https://unpkg.com/vue@2.6.14/dist/vue.js"></script>
<script src="https://maps.googleapis.com/maps/api/js?key=AIzaSyDnUK0WDGT2ba1GiTWXv910l5e0Hza7y-U&callback=initMap" async defer></script>
<script src="https://unpkg.com/axios/dist/axios.min.js"></script>
<script>
Vue.component("bander",{
    props:{},
    data(){
      return {
        brand:"Career",
        profile:"基本資料",
        resume:"學經歷專長",
        paper:"著作類別",
        download:"免費下載",
        papertype:'<%- papertype %>',
        typelabel:'<%- typelabel %>',
        homepageurl:"",
        resumeurl:"",
        paperurl:"",
       downloadurl:"",
        statusreport:'<%- statusreport %>',
        personID:'<%- personID %>'
      }
    },
    mounted: function(){
      querytxt="?statusreport=由"+this.typelabel+"清單頁進到本頁";
      this.homepageurl="/career/branch/goouterweb/"+this.personID+querytxt;
       this.resumeurl="/career/outerweb/resumetype/"+this.personID+querytxt;
       this.resumeurl="/career/outerweb/papertype/"+this.personID+querytxt;       
       this.downloadurl="/career/outerweb/freefiletype/"+this.personID+querytxt
      
    },
    methods:{

    },
    template:"#banderUI"
  });
  Vue.component("sidebar",{
    props:{},
    data(){
      return{
        //statusreport:'<%- statusreport %>',
        promote:"歡迎批評指教及連絡！",
        addbyguesturl:"",
        personID:'<%- personID %>',
        ipofvisitor:{},
      inputerUIkey:0
      } 
    },
    mounted: function(){
      this.addbyguesturl="/career/message/addbyguest/"+this.personID;
    
      const API_URL = 'https://api.ipify.org?format=json';
        // 取得 IP 位址
        const response =axios.get(API_URL);
        this.ipofvisitor= response.data

    },
    methods:{
      
    },
    template:"#sidebarUI"
  });

  Vue.component("content0",{
    props:{},
    data(){
      return{
        perPage:8,
          perRound:10,
          maxRow:1,
          maxPage:1,
          maxRound:1,
          modRow:1,
          modPage:1,
          currentIndex:0,
          currentPage:1,
          currentRound:1,
          indexLength:1,
          previousRound:false,
          firstPage:false,
          nextRound:false,
          endPage:false,
          fullPage:false,
          pageIndex:[],
          showIndex:[],
          activeIndex:[],
          knowledgeShow:[],
        //statusreport:'<%- statusreport %>',
          knowledgelist:JSON.parse(decodeURIComponent('<%=knowledgelist%>')),
          typename:'<%- typename %>',
          personID:'<%- personID %>',
          items:{
            item0:"知識領域(staff expertize)",
            item1:"材料標題",
            item2:"檔案主檔名",
            item3:"檔案附檔名",
            item4:"外顯形式",
            item5:"企管類別",
            item6:"課程別",
            item7:"出版資訊ID",
            item8:"上傳日期",
            item9:"揭露等級(user group)",
            item10:"是否提供下載",
            item99:"特別註記"
            }
        }   
    },
    mounted:function(){
      this.maxRow=this.knowledgelist.length;
        this.modRow=this.maxRow%this.perPage;
        this.maxPage=this.modRow==0?this.maxRow/this.perPage:Math.floor(this.maxRow/this.perPage)+1;
        this.modPage=this.maxPage%this.perRound;
        this.maxRound=this.modPage==0?this.maxPage/this.perRound:Math.floor(this.maxPage/this.perRound)+1;
        this.goFirstPage()
      },
    methods:{
      getShowData:function(index){
          this.currentIndex=index;
          this.activeIndex.splice(0);
          this.pageIndex.splice(0);
          this.showIndex.splice(0);
          for(let i=0;i<this.indexLength;i++){
              this.pageIndex.push(((this.currentRound-1)*this.perRound)+i+1);
              this.showIndex.push(true);
              this.activeIndex.push(false)
          }
          this.activeIndex[index]=true;
          for(let i=this.indexlength;i<this.perRound;i++){
              this.showIndex.push(false)
          };
          this.currentPage=this.pageIndex[index]
          console.log("currentPage is:"+this.currentPage)
          this.fullPage=(this.maxRow>=(this.currentPage*this.perPage))?true:false;
          this.knowledgeShow.splice(0);
          let startRow=(this.currentPage-1)*this.perPage;
            console.log("startRow is:"+startRow)
          let rowNo=this.fullPage?this.perPage:this.modRow;
          console.log("rowNo is:"+rowNo);
          //this.knowledgeShow=[];
          this.knowledgeShow=this.knowledgelist.slice(startRow,startRow+rowNo)
          //this.knowledgeShow=this.knowledgelist.slice(8,3)
          console.log("11st knowledgelist:"+this.knowledgelist[10])
          console.log("1st knowledgeShow:"+this.knowledgeShow[0])

        },
        goFirstPage:function(){
          this.currentRound=1;
          this.indexLength=(this.maxPage>this.perRound)?this.perRound:this.modPage;
          this.previousRound=false;
          this.firstPage=false;
          this.nextRound=(this.maxPage<(this.perRound+1))?false:true;
          this.endPage=(this.maxPage<(this.perRound+1))?false:true;
          this.currentIndex=0;
          this.getShowData(this.currentIndex)
          },
        goEndPage:function(){
          this.currentRound=this.maxRound;
          this.indexLength=(this.modPage==0)?this.perRound:this.modPage;
          this.previousRound=true;
          this.firstPage=true;
          this.nextRound=false;
          this.endPage=false;
          this.currentIndex=this.indexLength-1;
          this.getShowData(this.currentIndex)
          },
        goPreviousRound:function(){
          if(this.currentRound>1){
          this.currentRound--;
          this.currentIndex=0;
          this.indexLength=this.perRound;
          this.previousRound=this.currentRound>1?true:false;
          this.firstPage=this.currentRound>1?true:false;
          this.nextRound=true;
          this.endPage=true;
          this.getShowData(this.currentIndex)
          }else{
              console.log("There is no previous round!!")
              this.goFirstpage()
          }
          },
        goNextRound:function(){
          if(this.currentRound<this.maxRound){
          this.currentRound++;
          this.currentIndex=0;
          this.indexLength=(this.maxPage>this.currentRound*this.perRound)?this.perRound:this.modPage;
          this.previousRound=true;
          this.firstPage=true;
          this.nextRound=(this.maxPage>this.currentRound*this.perRound)?true:false;
          this.endPage=(this.maxPage>this.currentRound*this.perRound)?true:false;
          this.getShowData(this.currentIndex)
          }else{
            console.log("There is no next round!!")
            this.goEndPage()
          }
        }       
    },
    template:"#content0UI"
  });
    new Vue({
        el:'#show_div',
        data:{
          testdata:'有執行到此。。。。'
        },
        /* computed:{

        },
        watch:{

        },
        filters:{

        },
        mixins:[

        ],
        template:" ",
        
        components:{
          "bander":bander,
          "outputer":outputer,
          "inputer":inputer
        },*/
        beforeCreate:function(){
          console.log("before create...")
        },created:function(){
          console.log("created...")
        },
        beforeMount:function(){
          console.log("before mount...")
        },
        mounted:function(){
          console.log("mounted...")
        },
        beforeUpdate:function(){
          console.log("before update...")
        },
        updated:function(){
          console.log("updated...")
        },
        beforeDestroy:function(){

        } 
    })
</script>


  </body>
</html>