summaryrefslogtreecommitdiff
path: root/public/app/views/js/submit/penalty-form.php
blob: f2d57c73dd784ed2060a42517aaea1220257d1a0 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
<script>
    $(document).ready(function() {

        // penalty details
        ////////////////////////////////////////////////////////////////////////

        function postObject() {
            let deps = selected_multitexts($('select[name="of_department[]"]'));
            console.log(deps);
            return {        // select content data
                type_id: 2,     // 1 = penalty document
                subject: [
                    'Πειθαρχική υπόθεση',
                    selected_text($('select[name=of_article]')),
                    $('textarea[name=student_names]').val() + ',',
                    ((deps.length > 1) ? 'των τμημάτων' : 'του τμήματος'),
                    deps.join(', ')
                ].join(' '),
                of_article: selected_text($('select[name=of_article]')),
                student_names: $('textarea[name=student_names]').val(),
                of_department: deps.join(', '),
                date: $('input[name=date]').val(),
                time: $('input[name=time]').val(),
                place: selected_text($('select[name=place]')),
                rapporteur: selected_text($('select[name=rapporteur]')),
                charge: $('textarea[name=charge]').val(),
                apology: $('textarea[name=apology]').val(),
                decision_reasoning: $('textarea[name=decision_reasoning]').val(),
                decision: selected_text($('select[name=decision]')),
                decision_more: $('input[name=decision_more]').val(),
                president: selected_text($('select[name=president]')),
                now: Math.floor(Date.now() / 1000),     // client timestamp
                members: selected_multitexts($('select[name="members[]"]')),
                ticket: ref.ticket,
                ref: ref
            };
        }



        // When form is submited
        ////////////////////////////////////////////////////////////////////////

        $('.content-form form').submit( event => {
            event.preventDefault();

            // select action url (add or update)
            var request = '/petition/new';

            // send POST request
            $.post(request, postObject())
            .done(function( data ) {
                console.log(data);

                if (data.success) {   // ok ? redirect to panel
                    window.location.href = '/panel';

                } else {    // error ? alert!
                    alert(data.error);
                }

            });

        });



        // preview event
        ////////////////////////////////////////////////////////////////////////

        $('.btn-preview').click( event => {
            event.preventDefault();
            console.log('preview', postObject());

            pdfMake.fonts = {
                FiraSans: {
                    normal: '<?=SITE_URL?>/assets/fonts/FiraSans-Light.ttf',
                    bold: '<?=SITE_URL?>/assets/fonts/FiraSans-Medium.ttf'
                    // italics: 'https://example.com/fonts/fontFile3.ttf',
                    // bolditalics: 'https://example.com/fonts/fontFile4.ttf'
                },
                FiraMono: {
                    normal: '<?=SITE_URL?>/assets/fonts/FiraMono-Regular.ttf',
                }
            }

            pdfMake.createPdf(designer( postObject(), ref )).open();
        });



        // go-back event
        ////////////////////////////////////////////////////////////////////////
        
        $('.btn-back2panel').click( event => {
            event.preventDefault();

            let confirm_exit = confirm('<?=CONFIRM_EXIT?>');
            if (confirm_exit) {
                window.location.href = '/panel';
            }
        });


    });
</script>