Code Monkey home page Code Monkey logo

bluetape's People

Contributors

adrianreynaldi avatar chez14 avatar dependabot[bot] avatar fikrizzaki avatar ivantedja avatar pascalalfadian avatar stephenhadi avatar

Stargazers

 avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar

bluetape's Issues

File Excel Error dan Tab Bu Mariskha tidak muncul

Halo Adrian,

Kalau saya buka XLSX hasil export, itu ada 2 masalah:

  1. Ada warning "We found some problems... Do you want to try to recover?"
  2. Ada laporan dari Bu Mariskha, sheet beliau tidak muncul.

Tolong dilihat dan diperbaiki ya. Mungkin ada hubungannya juga dengan #16

2017-09-08 1
2017-09-08 2

Implement "Remove All"

Di bagian manajemen jadwal dosen, buat tombol "Hapus semua". Jika di klik, ada konfirmasi dulu "Yakin ingin menghapus semua jadwal? (Ya/Tidak)". Jika ya maka akan menghapus semua.

getting started documentation

Rasanya butuh doc untuk instalasi, dll supaya memudahkan untuk berkontribusi

  • setting folder untuk session? -> waktu pertama buka saya kena suatu error, sepertinya ini perlu di define di config?
  • settingan untuk config.php
  • setup environment dan hubungannya dengan [database.php / database-dev.php, auth.php / auth-dev.php]
  • run migration
  • dummy data untuk database
  • setup untuk Google APIs Client di dev environment
  • English version? untuk doc dan code -> seandainya para mahasiswa ikut berkontribusi, ini bisa jadi nilai plus banget bagi merek untuk dunia kerja. mungkin perlu versi bahasa Inggris nya supaya semua orang bisa melihat kontribusi mereka

Link ke SIA salah

Maunya masuk ke semester sebelumnya, bukan semester aktif.

Kalau:

  • bisa: diupdate
  • tidak bisa: ke URL SIA halaman di mana admin input NPM.

Penyesuaian Tahun Ajaran 2018/2019

Perubahan akibat tahun ajaran baru:

  • Kode mata kuliah dari ABC123 menjadi ABC123456
  • Email NPM angkatan 2018 adalah [email protected]:
    • 6 melambangkan sarjana
    • 18 kode program studi:
      • 16 Matematika
      • 17 Fisika
      • 18 Informatika
    • 18 angkatan
    • 01 (unofficial) kelas reguler (siang)
    • 123 nomor urut mahasiswa

Quicklink ke Daftar Nilai Mahasiswa

Using the following form:

Form HTML Code
<form action="https://siakad.unpar.ac.id/cetak_daftar_nilai_mahasiswa" class="form-horizontal" id="create-form" target="_blank" method="post" accept-charset="utf-8">
    <div class="form-body">
        <div class="form-group">
            <label class="col-md-2 col-xs-2 control-label">Fakultas</label>
            <label class="col-md-3 col-xs-3">
                <select id="fakultas_view_2" class="form-control">
                    <option value='07' >Teknologi Informasi dan Sains</option>        </select>
                </label>
                <label class="col-md-11 col-xs-11">
                </label>
            </div>
            <div class="form-group">
                <label class="col-md-2 col-xs-2 control-label">Program Studi</label>
                <label class="col-md-3 col-xs-3">
                    <select class="form-control" id="kodeKeilmuan_view_2" name="kodeKeilmuan_view_2">
                        <option value=''>-Pilih-</option>
                    </select>
                    <div id="error-kodeProdi" class="text-danger error">
                    </div>
                </label>
                <label class="col-md-11 col-xs-11">
                </label>
            </div>
            <div class="form-group">
                <label class="col-md-2 col-xs-2 control-label">Jenjang</label>
                <label class="col-md-3 col-xs-3">
                    <select class="form-control" id="jenjang_view_2" name="jenjang_view_2">
                        <option value=''>-Pilih-</option>
                    </select>
                </label>
                <label class="col-md-6 col-xs-6">
                    <input type="text" style="visibility: hidden" disabled class="form-control"/>
                </label>
            </div>
            <script type="text/javascript">
                var fakultasProdiArr = {"07":{"16":[{"kodeProdi":"616","kodeJenjang":"6","kodeJurusan":"15","kodeKeilmuan":"16","kodeFakultas":"07","namaFakultas":"Teknologi Informasi dan Sains","namaFakultasInggris":"Information Technology and Sciences","namaProdi":"Matematika","namaProdiSingkat":null,"namaProdiInggris":"Mathematics","namaJenjang":"Sarjana","namaJenjangSingkat":"S1","namaJenjangInggris":"Bachelor","batasStudiJenjang":8,"minSksLulusJenjang":144,"batasStudiMaxJenjang":14,"ipkLulusJenjang":2,"sksWajibJenjang":120,"akreditasiProdi":"Unggul"}],"17":[{"kodeProdi":"617","kodeJenjang":"6","kodeJurusan":"16","kodeKeilmuan":"17","kodeFakultas":"07","namaFakultas":"Teknologi Informasi dan Sains","namaFakultasInggris":"Information Technology and Sciences","namaProdi":"Fisika","namaProdiSingkat":null,"namaProdiInggris":"Physics","namaJenjang":"Sarjana","namaJenjangSingkat":"S1","namaJenjangInggris":"Bachelor","batasStudiJenjang":8,"minSksLulusJenjang":144,"batasStudiMaxJenjang":14,"ipkLulusJenjang":2,"sksWajibJenjang":120,"akreditasiProdi":"Unggul"}],"18":[{"kodeProdi":"618","kodeJenjang":"6","kodeJurusan":"17","kodeKeilmuan":"18","kodeFakultas":"07","namaFakultas":"Teknologi Informasi dan Sains","namaFakultasInggris":"Information Technology and Sciences","namaProdi":"Informatika","namaProdiSingkat":null,"namaProdiInggris":"Informatics","namaJenjang":"Sarjana","namaJenjangSingkat":"S1","namaJenjangInggris":"Bachelor","batasStudiJenjang":8,"minSksLulusJenjang":144,"batasStudiMaxJenjang":14,"ipkLulusJenjang":2,"sksWajibJenjang":120,"akreditasiProdi":"Baik Sekali"}]}};
                $(document).ready(function () {
                    reloadKeilmuan_view_2();
                    $("#fakultas_view_2").change(function () {
                        reloadKeilmuan_view_2();
                    });
                    $("#kodeKeilmuan_view_2").change(function () {
                        reloadjenjang_view_2();
                    });
                });

                function reloadKeilmuan_view_2() {
                    var kodeFakultas = $("#fakultas_view_2").val();
                    if (kodeFakultas !== '00') {
                        var keilmuanArr = fakultasProdiArr[kodeFakultas];
                        var kodeKeilmuan_get = '';
                        var prodiHtml = '';
                        for (var kodeKeilmuan in keilmuanArr) {
                            selected = "";
                            var prodi = keilmuanArr[kodeKeilmuan][0];
                            if (kodeKeilmuan_get === prodi.kodeKeilmuan) {
                                selected = 'selected';
                            }
                            prodiHtml += '<option value="' + prodi.kodeKeilmuan + '" data-fakultas="' + prodi.kodeFakultas + '"' +
                            ' data-keilmuan="' + prodi.kodeKeilmuan + '" ' + selected + '>' + prodi.namaProdi + '</option>';
                        }
                        $("#kodeKeilmuan_view_2").html(prodiHtml);
                        reloadjenjang_view_2();
                    }

                    else {
                        var allProdi = fakultasProdiArr;

                        var prodiHtml = '<option value="00" data-fakultas="00"' + ' data-keilmuan="00">Semua</option>';
                        jQuery.each(allProdi, function (i, val) {
                            var keilmuanArr = fakultasProdiArr[i];
                            for (var kodeKeilmuan in keilmuanArr) {
                                var prodi = keilmuanArr[kodeKeilmuan][0];
                                prodiHtml += '<option value="' + prodi.kodeKeilmuan + '" data-fakultas="' + prodi.kodeFakultas + '"' +
                                ' data-keilmuan="' + prodi.kodeKeilmuan + '">' + prodi.namaProdi + '</option>';
                            }
                        });
                        $("#kodeKeilmuan_view_2").html(prodiHtml);
                        reloadjenjang_view_2();
                    }

                }

                function reloadjenjang_view_2() {
                    var selectedKeilmuan = $("#kodeKeilmuan_view_2").find(":selected");
                    var kodeFakultas = selectedKeilmuan.data("fakultas");
                    var kodeKeilmuan = selectedKeilmuan.data("keilmuan");
                    var kodeProdi_get = '';
                    var jenjangHtml = '';
                    if (kodeKeilmuan !== '00') {
                        var jenjangArr = fakultasProdiArr[kodeFakultas][kodeKeilmuan];
                        jenjangArr.forEach(function (jenjang) {
                            var selected = '';
                            if (kodeProdi_get === jenjang.kodeProdi) {
                                selected = 'selected';
                            }
                            jenjangHtml += '<option value="' + jenjang.kodeProdi + '" ' + selected + '>' + jenjang.namaJenjang + '</option>';
                        });
                    } else {
                        jenjangHtml = "<option value='00'>Semua</option>";

                    }
                    $("#jenjang_view_2").html(jenjangHtml);
                }
            </script>
            <div class="form-group">
                <label class="col-md-2 col-xs-2 control-label">NPM</label>
                <label class="col-md-7 col-xs-7">
                    <input type="text" name="npm" id="npm"
                    class="form-control noMahasiswa"
                    placeholder="autocomplete"/>
                </label>
            </div>
        </div>
        <div class="form-actions">
            <div class="block-section text-center">
                <button type="submit" class="btn btn-sm btn-primary"><i
                    class="fa fa-search"></i> Cetak
                </button>
            </div>
        </div>
    </form>
JSON data for convenience
{
  "07": {
    "16": [
      {
        "kodeProdi": "616",
        "kodeJenjang": "6",
        "kodeJurusan": "15",
        "kodeKeilmuan": "16",
        "kodeFakultas": "07",
        "namaFakultas": "Teknologi Informasi dan Sains",
        "namaFakultasInggris": "Information Technology and Sciences",
        "namaProdi": "Matematika",
        "namaProdiSingkat": null,
        "namaProdiInggris": "Mathematics",
        "namaJenjang": "Sarjana",
        "namaJenjangSingkat": "S1",
        "namaJenjangInggris": "Bachelor",
        "batasStudiJenjang": 8,
        "minSksLulusJenjang": 144,
        "batasStudiMaxJenjang": 14,
        "ipkLulusJenjang": 2,
        "sksWajibJenjang": 120,
        "akreditasiProdi": "Unggul"
      }
    ],
    "17": [
      {
        "kodeProdi": "617",
        "kodeJenjang": "6",
        "kodeJurusan": "16",
        "kodeKeilmuan": "17",
        "kodeFakultas": "07",
        "namaFakultas": "Teknologi Informasi dan Sains",
        "namaFakultasInggris": "Information Technology and Sciences",
        "namaProdi": "Fisika",
        "namaProdiSingkat": null,
        "namaProdiInggris": "Physics",
        "namaJenjang": "Sarjana",
        "namaJenjangSingkat": "S1",
        "namaJenjangInggris": "Bachelor",
        "batasStudiJenjang": 8,
        "minSksLulusJenjang": 144,
        "batasStudiMaxJenjang": 14,
        "ipkLulusJenjang": 2,
        "sksWajibJenjang": 120,
        "akreditasiProdi": "Unggul"
      }
    ],
    "18": [
      {
        "kodeProdi": "618",
        "kodeJenjang": "6",
        "kodeJurusan": "17",
        "kodeKeilmuan": "18",
        "kodeFakultas": "07",
        "namaFakultas": "Teknologi Informasi dan Sains",
        "namaFakultasInggris": "Information Technology and Sciences",
        "namaProdi": "Informatika",
        "namaProdiSingkat": null,
        "namaProdiInggris": "Informatics",
        "namaJenjang": "Sarjana",
        "namaJenjangSingkat": "S1",
        "namaJenjangInggris": "Bachelor",
        "batasStudiJenjang": 8,
        "minSksLulusJenjang": 144,
        "batasStudiMaxJenjang": 14,
        "ipkLulusJenjang": 2,
        "sksWajibJenjang": 120,
        "akreditasiProdi": "Baik Sekali"
      }
    ]
  }
}

UX Improvement in Time Selection in Perubahan Jadwal Kuliah

From Joanna:

Pas, ada feedback nih utk aplikasi perubahan jadwal kuliah. Field yg untuk ngisi "hari & jam", kan pertama diklik keluar tanggalan, setelah klik tanggal dia keluar pilihan jam (9:00, 10:00, dst). Pas gw klik jam 9:00, keluar lg pilihan jam (9:05, 9:10, dst). Gw kira dia nanya jam akhirnya, jd gw masukin 11:00. Ternyata itu nanya menit yah ๐Ÿ˜‚. Jd kemaren tuh mo daftarin jam 9-11, kemasukinnya jam 11

Need investigation and potentially parameter adjustment in time selector plugin.

Implement "Conlict Checker"

Menambahkan fitur untuk mengecek konflik. Misalkan user memasukan jadwal pada pukul 7 dengan durasi 3 jam, berarti sistem harus memeriksa apakah ada jadwal lain diantara jam 7 sampai jam 10. Jika ada jadwal lain munculkan pop-up peringatan "jadwal tidak dapat dimasukan karena sudah ada jadwal lain".

Input from Mariskha

Halo @AdrianReynaldi

Apa kabar? Bisa bantuin sedikit, ada request dari kajur nih:

  1. Di tab Lihat Jadwal Dosen, itu kan sudah ada Export ke XLS, yang mengekspor jadwal seluruh dosen. Bisa ga ditambahkan di tab Entri Jadwal Dosen, tambahkan juga Export XLS, tetapi bedanya yang di ekspor jadwal dosen yang lagi login saja.
  2. Sekalian kamu nanti testing-testing, kalau sudah selesai mohon entri kamu punya di bluetape dihapus ya? Ini berarti kayaknya kamu mesti masukin akses kamu lagi.

Trims;
Pascal

Wishlist

  • Send mail once with multiple recipients instead of multiple mails (should be just pass an array) Can't do since each message has different greeting
  • Extra date and time
  • Extra table for ticking targets. Perhaps something like this but transposed (see here for page break):

Untuk:
โ˜‘๏ธ Dosen ybs
โ˜‘๏ธ Ruang asal
โ˜‘๏ธ Ruang tujuan
โ˜‘๏ธ Dapur
โ˜‘๏ธ KTU

Disable TranskripRequest and PerubahanKuliahRequest

From Rikie:

[17:25, 4/17/2020] Rikie Setiawan: Sore Pascal, bisa minta tolong kah... Bluetape sementara di disable dulu
[17:26, 4/17/2020] Rikie Setiawan: Di kasi tulisan notice : transkrip akademik sementara dapat diakses via student portal masing-masing

[08:46, 4/20/2020] Pascal: Btw kalau fitur ubah jadwal kuliah mau di disable juga?
[09:05, 4/20/2020] Rikie Setiawan: Disable aja semua Cal
[09:05, 4/20/2020] Rikie Setiawan: Perubahan jadwal itu kan kepake nya klo di lapangan
[09:06, 4/20/2020] Rikie Setiawan: Ini online semua asumsi klo ada perubahan dosen lsg buat pengumuman sendiri

Strategy:

  • Disable submit button but nothing else
  • Show alert:
    • "Transkrip akademik sementara dapat diakses via student portal masing-masing"
    • "Untuk perubahan jadwal kuliah, silakan berkoordinasi langsung dengan peserta kuliah"

Fitur "Expor ke XLS" pada menu EntriJadwalDosen menghasilkan file corrupt

Pada BlueTape menu EntriJadwalDosen, ada fitur untuk "Ekspor ke XLS" menghasilkan XLS yang corrupted. Perlu ditelusuri kenapa, dan perbaikannya.

Catatan:

  • Bisa jadi yang menyebabkan error adalah datanya. Kabari saya jika tidak bisa reproduksi error ini, nanti akan saya coba eksporkan datanya.
  • Bagaimanapun juga, BlueTape harus bisa bekerja dengan baik dengan data apapun.
  • Kirimkan perbaikan dalam bentuk pull request
  • Ada laporan bahwa pada menu "Lihat Jadwal Dosen" ekspor XLS menghasilkan corrupted juga, tetapi saya belum mencoba reproduksi.

Trims.

Screenshot_2019-08-30 Entri Jadwal Dosen

Penamaan Tab pada Excel hasil Ekspor

Dari XLS hasil ekspor, terutama pada saat "Lihat Jadwal Dosen", mohon:

  1. Menghapus kata Jadwal (Jadwal Pascal Alfadian) dari sheets
  2. Menghapus sheet kosong "Worksheet"
  3. Nama file diubah menjadi JadwalDosen-YYYYMMDD.xls di mana YYYY adalah tahun, MM bulan (selalu 2 dijit), DD tanggal (selalu 2 dijit)

Assign balik issue ini ke saya kalau sudah (saya yang close)

Trims.

Support for DPS Softcopy

As mentioned on BKA Site (Pg. 4, Gambar 5), the scholarship submission are now done in a site (currently can be accessed only at UNPAR's network). So there's a redundant work to ask for DPS print-out, scan the paper, then submit the pdf/image to the site (oh actually they can access the GPA anyway, and doing this doesn't make any sense).

So is there a way we could support sending out the DPS paper just the PDF/Image to... let's say, our email?

Current datetimepicker is quite confusing

A person have reported that the time part of current datetimepicker is confusing. I've asked him several alternative, and suggested to use xdsoft's picker.

What do you think? I'm currently implementing it on my local copy, if you think it's ok to go, i'll submit a PR.

Update: Sorry, i got miss-com.

Implement "Last Updated"

Saat menampilkan Jadwal seorang dosen, tampilkan pula kapan dosen tersebut mengupdate entri di Jadwal Kuliah miliknya. Ini supaya terlihat apakah jadwal seorang dosen adalah yang terbaru, atau semester lalu punya.

Diusulkan dengan cara menambah kolom "last update" di tabel jadwal kuliah, yang diupdate saat entri tersebut ditambahkan atau diedit. Saat ingin ditampilkan, select dari sql, last update terakhir dari seluruh jadwal kuliah dosen tersebut.

Cara ini tidak menangkap kapan terakhir dihapus, tetapi sudah cukup.

Di ekspor XLS juga mohon ditambahkan.

screen shot 2017-10-13 at 13 57 35

Load Google APIs Client Library via composer

Saya rasa akan lebih baik untuk meload Google APIs Client via composer karena merupakan preferred method dari Google dan mengurangi hardcode

cd www
composer require google/apiclient:^2.0

require di application/models/Auth_model.php dapat dibuang:

    public function __construct() {
        parent::__construct();

        // require_once 'application/libraries/ext/google-api-php-client/src/Google/autoload.php'; // buang
        $this->load->config('auth-dev');
        $this->load->config('modules');
        $this->client = new Google_Client();
        $this->client->setClientId($this->config->item('google-clientid'));
        $this->client->setClientSecret($this->config->item('google-clientsecret'));
        $this->client->setRedirectUri($this->config->item('google-redirecturi'));
        $this->client->addScope('https://www.googleapis.com/auth/userinfo.email');
        $this->client->addScope('https://www.googleapis.com/auth/userinfo.profile');
    }

Lalu di application/config/config.php nyalakan opsi untuk load library via composer

$config['composer_autoload'] = FALSE;

diganti menjadi

$config['composer_autoload'] = 'vendor/autoload.php'; // or FCPATH . 'vendor/autoload.php'

Saya tidak familiar dengan Code Igniter tapi kurang lebih begitu

Salam,
ivantedja 2006730039

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.