<!doctype html>
<html class="no-js" lang="">
    <head>
        <meta charset="utf-8">
        <meta http-equiv="x-ua-compatible" content="ie=edge">
        <title>framadate-funky-frontend documentation</title>
        <meta name="description" content="">
        <meta name="viewport" content="width=device-width, initial-scale=1">

        <link rel="icon" type="image/x-icon" href="../images/favicon.ico">
	      <link rel="stylesheet" href="../styles/style.css">
    </head>
    <body>

        <div class="navbar navbar-default navbar-fixed-top visible-xs">
            <a href="../" class="navbar-brand">framadate-funky-frontend documentation</a>
            <button type="button" class="btn btn-default btn-menu ion-ios-menu" id="btn-menu"></button>
        </div>

        <div class="xs-menu menu" id="mobile-menu">
                <div id="book-search-input" role="search"><input type="text" placeholder="Type to search"></div>            <compodoc-menu></compodoc-menu>
        </div>

        <div class="container-fluid main">
           <div class="row main">
               <div class="hidden-xs menu">
                   <compodoc-menu mode="normal"></compodoc-menu>
               </div>
               <!-- START CONTENT -->
               <div class="content interface">
                   <div class="content-data">












<ol class="breadcrumb">
  <li>Interfaces</li>
  <li>VoteChoice</li>
</ol>

<ul class="nav nav-tabs" role="tablist">
        <li class="active">
            <a href="#info" role="tab" id="info-tab" data-toggle="tab" data-link="info">Info</a>
        </li>
        <li >
            <a href="#source" role="tab" id="source-tab" data-toggle="tab" data-link="source">Source</a>
        </li>
</ul>

<div class="tab-content">
    <div class="tab-pane fade active in" id="c-info">
        <p class="comment">
            <h3>File</h3>
        </p>
        <p class="comment">
            <code>src/app/pages/voting/voting-choice/voting-choice.component.ts</code>
        </p>



        <section>
            <h3 id="index">Index</h3>
            <table class="table table-sm table-bordered index-table">
                <tbody>
                    <tr>
                        <td class="col-md-4">
                            <h6><b>Properties</b></h6>
                        </td>
                    </tr>
                    <tr>
                        <td class="col-md-4">
                            <ul class="index-list">
                                <li>
                                        <a href="#answer">answer</a>
                                </li>
                                <li>
                                            <span class="modifier">Optional</span>
                                        <a href="#date">date</a>
                                </li>
                                <li>
                                        <a href="#false">false</a>
                                </li>
                                <li>
                                            <span class="modifier">Optional</span>
                                        <a href="#name">name</a>
                                </li>
                                <li>
                                            <span class="modifier">Optional</span>
                                        <a href="#simpleAnswer">simpleAnswer</a>
                                </li>
                                <li>
                                            <span class="modifier">Optional</span>
                                        <a href="#votes">votes</a>
                                </li>
                            </ul>
                        </td>
                    </tr>
                </tbody>
            </table>
        </section>



            <section>
                <h3 id="inputs">Properties</h3>
                    <table class="table table-sm table-bordered">
                        <tbody>
                                <tr>
                                    <td class="col-md-4">
                                        <a name="answer"></a>
                                        <span class="name"><b>answer</b><a href="#answer"><span class="icon ion-ios-link"></span></a></span>
                                    </td>
                                </tr>
                                <tr>
                                    <td class="col-md-4">
                                        <code>answer:     <code>&quot;yes&quot; | &quot;no&quot; | &quot;maybe&quot; | null</code>
</code>
                                    </td>
                                </tr>


                                    <tr>
                                        <td class="col-md-4">
                                            <i>Type : </i>    <code>&quot;yes&quot; | &quot;no&quot; | &quot;maybe&quot; | null</code>

                                        </td>
                                    </tr>





                        </tbody>
                    </table>
                    <table class="table table-sm table-bordered">
                        <tbody>
                                <tr>
                                    <td class="col-md-4">
                                        <a name="date"></a>
                                        <span class="name"><b>date</b><a href="#date"><span class="icon ion-ios-link"></span></a></span>
                                    </td>
                                </tr>
                                <tr>
                                    <td class="col-md-4">
                                        <code>date:         <code><a href="https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Date" target="_blank" >Date</a></code>
</code>
                                    </td>
                                </tr>


                                    <tr>
                                        <td class="col-md-4">
                                            <i>Type : </i>        <code><a href="https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Date" target="_blank" >Date</a></code>

                                        </td>
                                    </tr>

                                    <tr>
                                        <td class="col-md-4">
                                            <i>Optional</i>
                                        </td>
                                    </tr>




                        </tbody>
                    </table>
                    <table class="table table-sm table-bordered">
                        <tbody>
                                <tr>
                                    <td class="col-md-4">
                                        <a name="false"></a>
                                        <span class="name"><b>false</b><a href="#false"><span class="icon ion-ios-link"></span></a></span>
                                    </td>
                                </tr>
                                <tr>
                                    <td class="col-md-4">
                                        <code>false:     <code></code>
</code>
                                    </td>
                                </tr>







                        </tbody>
                    </table>
                    <table class="table table-sm table-bordered">
                        <tbody>
                                <tr>
                                    <td class="col-md-4">
                                        <a name="name"></a>
                                        <span class="name"><b>name</b><a href="#name"><span class="icon ion-ios-link"></span></a></span>
                                    </td>
                                </tr>
                                <tr>
                                    <td class="col-md-4">
                                        <code>name:         <code><a href="https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/string" target="_blank" >string</a></code>
</code>
                                    </td>
                                </tr>


                                    <tr>
                                        <td class="col-md-4">
                                            <i>Type : </i>        <code><a href="https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/string" target="_blank" >string</a></code>

                                        </td>
                                    </tr>

                                    <tr>
                                        <td class="col-md-4">
                                            <i>Optional</i>
                                        </td>
                                    </tr>




                        </tbody>
                    </table>
                    <table class="table table-sm table-bordered">
                        <tbody>
                                <tr>
                                    <td class="col-md-4">
                                        <a name="simpleAnswer"></a>
                                        <span class="name"><b>simpleAnswer</b><a href="#simpleAnswer"><span class="icon ion-ios-link"></span></a></span>
                                    </td>
                                </tr>
                                <tr>
                                    <td class="col-md-4">
                                        <code>simpleAnswer:         <code><a href="https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/boolean" target="_blank" >boolean</a></code>
</code>
                                    </td>
                                </tr>


                                    <tr>
                                        <td class="col-md-4">
                                            <i>Type : </i>        <code><a href="https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/boolean" target="_blank" >boolean</a></code>

                                        </td>
                                    </tr>

                                    <tr>
                                        <td class="col-md-4">
                                            <i>Optional</i>
                                        </td>
                                    </tr>




                        </tbody>
                    </table>
                    <table class="table table-sm table-bordered">
                        <tbody>
                                <tr>
                                    <td class="col-md-4">
                                        <a name="votes"></a>
                                        <span class="name"><b>votes</b><a href="#votes"><span class="icon ion-ios-link"></span></a></span>
                                    </td>
                                </tr>
                                <tr>
                                    <td class="col-md-4">
                                        <code>votes:     <code>literal type</code>
</code>
                                    </td>
                                </tr>


                                    <tr>
                                        <td class="col-md-4">
                                            <i>Type : </i>    <code>literal type</code>

                                        </td>
                                    </tr>

                                    <tr>
                                        <td class="col-md-4">
                                            <i>Optional</i>
                                        </td>
                                    </tr>




                        </tbody>
                    </table>
            </section>
    </div>


    <div class="tab-pane fade  tab-source-code" id="c-source">
        <pre class="line-numbers compodoc-sourcecode"><code class="language-typescript">import {Component, ElementRef, Input} from &#x27;@angular/core&#x27;;
import {ConfigService} from &quot;../../../services/config.service&quot;;

interface VoteChoice {
    votes?: {
        yes: number
        no: number
        maybe: number
        notAnswered: number
    };
    name?: string;
    date?: Date;
    answer: &#x27;yes&#x27; | &#x27;no&#x27; | &#x27;maybe&#x27; | null;
    simpleAnswer?: boolean
    false; // enable if we display only a togglable &quot;yes&quot;
}

/**
 * each vote choice takes a configuration from the container of all choices.
 * this component is used to select a date choice, or a name answer
 */
@Component({
    selector: &#x27;framadate-voting-choice&#x27;,
    templateUrl: &#x27;./voting-choice.component.html&#x27;,
    styleUrls: [&#x27;./voting-choice.component.scss&#x27;]
})
export class VotingChoiceComponent {

    public showChangeChoicebutton &#x3D; false;
    @Input() public choice: any;
    @Input() public choices_count: any;
    @Input() public choice_id: any;
    @Input() public poll: any;
    @Input() public simpleAnswer: boolean &#x3D; true;
    @Input() public pollIsSpecialDate: boolean &#x3D; false;

    constructor(private el: ElementRef,
                private config: ConfigService) {

        if (this.poll &amp;&amp; this.poll.allowedAnswers) {
            this.simpleAnswer &#x3D; this.poll.allowedAnswers.length &#x3D;&#x3D; 1
        }
    }

    setAnswserTo(newAnswer: &#x27;yes&#x27; | &#x27;no&#x27; | &#x27;maybe&#x27; | null) {
        if (this.simpleAnswer) {
            // only toggle yes to no
            if (this.choice.answer &amp;&amp; this.choice.answer &#x3D;&#x3D;&#x3D; &#x27;yes&#x27;) {
                this.choice.answer &#x3D; &#x27;no&#x27;;
                this.config.myTempVoteStack--;
            } else {
                this.choice.answer &#x3D; newAnswer;
                this.config.myTempVoteStack++;
            }

        } else {
            this.choice.answer &#x3D; newAnswer;
            if (this.choice.answer !&#x3D;&#x3D; newAnswer) {
                if (newAnswer &#x3D;&#x3D; &#x27;maybe&#x27; || newAnswer &#x3D;&#x3D; &#x27;yes&#x27;) {
                    this.config.myTempVoteStack++;
                }
            } else {
                console.info(&#x27;same answer as before&#x27;)
            }

        }
        this.el.nativeElement.blur();
    }

}
</code></pre>
    </div>
</div>


                   




                   </div><div class="search-results">
    <div class="has-results">
        <h1 class="search-results-title"><span class='search-results-count'></span> result-matching "<span class='search-query'></span>"</h1>
        <ul class="search-results-list"></ul>
    </div>
    <div class="no-results">
        <h1 class="search-results-title">No results matching "<span class='search-query'></span>"</h1>
    </div>
</div>
</div>
               <!-- END CONTENT -->
           </div>
       </div>

       <script>
            var COMPODOC_CURRENT_PAGE_DEPTH = 1;
            var COMPODOC_CURRENT_PAGE_CONTEXT = 'interface';
            var COMPODOC_CURRENT_PAGE_URL = 'VoteChoice.html';
       </script>

       <script src="../js/libs/custom-elements.min.js"></script>
       <script src="../js/libs/lit-html.js"></script>
       <!-- Required to polyfill modern browsers as code is ES5 for IE... -->
       <script src="../js/libs/custom-elements-es5-adapter.js" charset="utf-8" defer></script>
       <script src="../js/menu-wc.js" defer></script>

       <script src="../js/libs/bootstrap-native.js"></script>

       <script src="../js/libs/es6-shim.min.js"></script>
       <script src="../js/libs/EventDispatcher.js"></script>
       <script src="../js/libs/promise.min.js"></script>
       <script src="../js/libs/zepto.min.js"></script>

       <script src="../js/compodoc.js"></script>

       <script src="../js/tabs.js"></script>
       <script src="../js/menu.js"></script>
       <script src="../js/libs/clipboard.min.js"></script>
       <script src="../js/libs/prism.js"></script>
       <script src="../js/sourceCode.js"></script>
          <script src="../js/search/search.js"></script>
          <script src="../js/search/lunr.min.js"></script>
          <script src="../js/search/search-lunr.js"></script>
          <script src="../js/search/search_index.js"></script>
       <script src="../js/lazy-load-graphs.js"></script>


    </body>
</html>