Compare commits
No commits in common. "ffae8a685ff5fa91ec5ba2999d554c7abdb9388c" and "e5582d255085916a7a6d9d2977d103b1b59564c3" have entirely different histories.
ffae8a685f
...
e5582d2550
|
@ -1,140 +0,0 @@
|
||||||
<?php
|
|
||||||
|
|
||||||
namespace App\Http\Controllers\AdminBackend;
|
|
||||||
|
|
||||||
use App\Http\Controllers\Controller;
|
|
||||||
use Illuminate\Http\Request;
|
|
||||||
use Illuminate\Support\Facades\DB;
|
|
||||||
use Illuminate\Support\Facades\Storage;
|
|
||||||
use App\Models\Materi;
|
|
||||||
|
|
||||||
class AdminMateriController extends Controller
|
|
||||||
{
|
|
||||||
public function index()
|
|
||||||
{
|
|
||||||
$materi = DB::table('materi')->get();
|
|
||||||
return view('admin_backend.admin_materi', compact('materi'));
|
|
||||||
}
|
|
||||||
|
|
||||||
public function store(Request $request)
|
|
||||||
{
|
|
||||||
$request->validate([
|
|
||||||
'id_style' => 'required|integer',
|
|
||||||
'konten' => 'nullable|file|mimes:jpeg,jpg,png,mp4,mov|max:10240',
|
|
||||||
'audio' => 'nullable|file|mimes:mp3,wav|max:10240',
|
|
||||||
'teks' => 'nullable|string',
|
|
||||||
'kodesoal' => 'nullable|string',
|
|
||||||
'outputkode' => 'nullable|string',
|
|
||||||
]);
|
|
||||||
|
|
||||||
// Data dasar
|
|
||||||
$data = $request->only(['id_style', 'teks', 'kodesoal', 'outputkode']);
|
|
||||||
|
|
||||||
// Upload konten (gambar/video) ke storage/app/public/materi
|
|
||||||
if ($request->hasFile('konten')) {
|
|
||||||
$data['konten'] = $request->file('konten')->store('materi', 'public');
|
|
||||||
}
|
|
||||||
|
|
||||||
// Upload audio ke storage/app/public/audio
|
|
||||||
if ($request->hasFile('audio')) {
|
|
||||||
$data['audio'] = $request->file('audio')->store('audio', 'public');
|
|
||||||
}
|
|
||||||
|
|
||||||
// Auto-increment manual id_materi per id_style
|
|
||||||
$maxId = \App\Models\Materi::where('id_style', $data['id_style'])->max('id_materi');
|
|
||||||
$data['id_materi'] = $maxId ? $maxId + 1 : 1;
|
|
||||||
|
|
||||||
\App\Models\Materi::create($data);
|
|
||||||
|
|
||||||
return redirect()->route('adminmateri.index')->with('success', 'Materi berhasil ditambah');
|
|
||||||
}
|
|
||||||
|
|
||||||
public function edit($id_style, $id_materi)
|
|
||||||
{
|
|
||||||
$item = DB::table('materi')
|
|
||||||
->where('id_style', $id_style)
|
|
||||||
->where('id_materi', $id_materi)
|
|
||||||
->first();
|
|
||||||
|
|
||||||
return response()->json($item);
|
|
||||||
}
|
|
||||||
|
|
||||||
public function update(Request $request, $id_style, $id_materi)
|
|
||||||
{
|
|
||||||
$request->validate([
|
|
||||||
'konten' => 'nullable|file|mimes:jpg,jpeg,png,mp4,mov|max:10240',
|
|
||||||
'audio' => 'nullable|file|mimes:mp3,wav,mpeg|max:10240',
|
|
||||||
'teks' => 'nullable|string',
|
|
||||||
'kodesoal' => 'nullable|string',
|
|
||||||
'outputkode' => 'nullable|string',
|
|
||||||
]);
|
|
||||||
|
|
||||||
if (!$request->hasFile('konten') && !$request->hasFile('audio') && empty($request->teks) && empty($request->kodesoal) && empty($request->outputkode)) {
|
|
||||||
return back()->withErrors(['konten' => 'Minimal salah satu konten, audio, teks, kodesoal, atau outputkode harus diisi.'])->withInput();
|
|
||||||
}
|
|
||||||
|
|
||||||
$materi = DB::table('materi')
|
|
||||||
->where('id_style', $id_style)
|
|
||||||
->where('id_materi', $id_materi)
|
|
||||||
->first();
|
|
||||||
|
|
||||||
if (!$materi) {
|
|
||||||
return back()->with('error', 'Data tidak ditemukan.');
|
|
||||||
}
|
|
||||||
|
|
||||||
$data = [
|
|
||||||
'teks' => $request->teks,
|
|
||||||
'kodesoal' => $request->kodesoal,
|
|
||||||
'outputkode' => $request->outputkode,
|
|
||||||
];
|
|
||||||
|
|
||||||
if ($request->hasFile('konten')) {
|
|
||||||
if ($materi->konten && Storage::disk('public')->exists($materi->konten)) {
|
|
||||||
Storage::disk('public')->delete($materi->konten);
|
|
||||||
}
|
|
||||||
$data['konten'] = $request->file('konten')->store('materi', 'public');
|
|
||||||
}
|
|
||||||
|
|
||||||
if ($request->hasFile('audio')) {
|
|
||||||
if ($materi->audio && Storage::disk('public')->exists($materi->audio)) {
|
|
||||||
Storage::disk('public')->delete($materi->audio);
|
|
||||||
}
|
|
||||||
$data['audio'] = $request->file('audio')->store('audio', 'public');
|
|
||||||
}
|
|
||||||
|
|
||||||
DB::table('materi')
|
|
||||||
->where('id_style', $id_style)
|
|
||||||
->where('id_materi', $id_materi)
|
|
||||||
->update($data);
|
|
||||||
|
|
||||||
return redirect()->route('adminmateri.index')->with('success', 'Materi berhasil diperbarui.');
|
|
||||||
}
|
|
||||||
|
|
||||||
public function destroy($id_style, $id_materi)
|
|
||||||
{
|
|
||||||
$materi = DB::table('materi')
|
|
||||||
->where('id_style', $id_style)
|
|
||||||
->where('id_materi', $id_materi)
|
|
||||||
->first();
|
|
||||||
|
|
||||||
if ($materi) {
|
|
||||||
if ($materi->konten && Storage::disk('public')->exists($materi->konten)) {
|
|
||||||
Storage::disk('public')->delete($materi->konten);
|
|
||||||
}
|
|
||||||
|
|
||||||
if ($materi->audio && Storage::disk('public')->exists($materi->audio)) {
|
|
||||||
Storage::disk('public')->delete($materi->audio);
|
|
||||||
}
|
|
||||||
|
|
||||||
DB::table('materi')
|
|
||||||
->where('id_style', $id_style)
|
|
||||||
->where('id_materi', $id_materi)
|
|
||||||
->delete();
|
|
||||||
|
|
||||||
return redirect()->route('adminmateri.index')->with('success', 'Materi berhasil dihapus.');
|
|
||||||
}
|
|
||||||
|
|
||||||
return redirect()->route('adminmateri.index')->with('error', 'Materi tidak ditemukan.');
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
|
|
@ -3,7 +3,6 @@
|
||||||
namespace App\Http\Controllers\AdminBackend;
|
namespace App\Http\Controllers\AdminBackend;
|
||||||
|
|
||||||
use App\Http\Controllers\Controller;
|
use App\Http\Controllers\Controller;
|
||||||
use App\Models\Hasil;
|
|
||||||
use App\Models\Periode;
|
use App\Models\Periode;
|
||||||
use App\Models\PilihPeriode;
|
use App\Models\PilihPeriode;
|
||||||
use Illuminate\Http\Request;
|
use Illuminate\Http\Request;
|
||||||
|
@ -76,11 +75,7 @@ public function update(Request $request, $id)
|
||||||
public function destroy($id)
|
public function destroy($id)
|
||||||
{
|
{
|
||||||
$period = Periode::findOrFail($id);
|
$period = Periode::findOrFail($id);
|
||||||
$result = Hasil::where('id_periode', $id)->first();
|
|
||||||
if (empty($result)) {
|
|
||||||
$period->delete();
|
$period->delete();
|
||||||
return redirect()->route('adminPeriod.index')->with('success', 'Periode tersebut telah dihapus');
|
return redirect()->route('adminPeriod.index')->with('success', 'Periode tersebut telah dihapus');
|
||||||
}
|
}
|
||||||
return redirect()->route('adminPeriod.index')->with('error', 'Gagal, periode tersebut memiliki hasil kuesioner');
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
|
@ -48,8 +48,7 @@ public function store(Request $request)
|
||||||
'nim' => $request->nim,
|
'nim' => $request->nim,
|
||||||
'email' => $request->email,
|
'email' => $request->email,
|
||||||
'password' => Hash::make($request->password),
|
'password' => Hash::make($request->password),
|
||||||
'foto' => 'images/2xUcdtkygOf0aM2EvXuKFLXLOBlEuXNPT21Oeo15.png',
|
'kelas_user' => '2',
|
||||||
'kelas_user' => '2'
|
|
||||||
]);
|
]);
|
||||||
return redirect()->route('adminListAdmin.index')->with('success', 'Admin baru berhasil dibuat');
|
return redirect()->route('adminListAdmin.index')->with('success', 'Admin baru berhasil dibuat');
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,105 +0,0 @@
|
||||||
<?php
|
|
||||||
|
|
||||||
namespace App\Http\Controllers\Auth;
|
|
||||||
|
|
||||||
use App\Http\Controllers\Controller;
|
|
||||||
use Illuminate\Support\Facades\Auth;
|
|
||||||
use Illuminate\Support\Facades\Log;
|
|
||||||
use Laravel\Socialite\Facades\Socialite;
|
|
||||||
use App\Models\User;
|
|
||||||
use Illuminate\Support\Str;
|
|
||||||
use Illuminate\Http\Request;
|
|
||||||
use GuzzleHttp\Client;
|
|
||||||
|
|
||||||
class GoogleController extends Controller
|
|
||||||
{
|
|
||||||
public function redirectToGoogle(Request $request)
|
|
||||||
{
|
|
||||||
$clientId = config('services.google.client_id');
|
|
||||||
$redirectUri = config('services.google.redirect');
|
|
||||||
$scopes = [
|
|
||||||
'https://www.googleapis.com/auth/userinfo.email',
|
|
||||||
'https://www.googleapis.com/auth/userinfo.profile',
|
|
||||||
'openid',
|
|
||||||
];
|
|
||||||
|
|
||||||
$query = http_build_query([
|
|
||||||
'client_id' => $clientId,
|
|
||||||
'redirect_uri' => $redirectUri,
|
|
||||||
'response_type' => 'code',
|
|
||||||
'scope' => implode(' ', $scopes),
|
|
||||||
'access_type' => 'offline',
|
|
||||||
'prompt' => 'select_account',
|
|
||||||
]);
|
|
||||||
|
|
||||||
$authUrl = 'https://accounts.google.com/o/oauth2/v2/auth?' . $query;
|
|
||||||
|
|
||||||
Log::info('Redirecting to Google', ['url' => $authUrl]);
|
|
||||||
|
|
||||||
return redirect($authUrl);
|
|
||||||
}
|
|
||||||
|
|
||||||
public function handleGoogleCallback(Request $request)
|
|
||||||
{
|
|
||||||
try {
|
|
||||||
if (!$request->has('code')) {
|
|
||||||
throw new \Exception('Kode otorisasi tidak ditemukan');
|
|
||||||
}
|
|
||||||
|
|
||||||
$code = $request->input('code');
|
|
||||||
Log::info('Google Callback Reached', ['code' => $code]);
|
|
||||||
|
|
||||||
$client = new Client();
|
|
||||||
$response = $client->post('https://oauth2.googleapis.com/token', [
|
|
||||||
'form_params' => [
|
|
||||||
'code' => $code,
|
|
||||||
'client_id' => config('services.google.client_id'),
|
|
||||||
'client_secret' => config('services.google.client_secret'),
|
|
||||||
'redirect_uri' => config('services.google.redirect'),
|
|
||||||
'grant_type' => 'authorization_code',
|
|
||||||
],
|
|
||||||
'verify' => false, // Hanya untuk pengujian, sebaiknya dihapus di produksi
|
|
||||||
]);
|
|
||||||
|
|
||||||
$tokenData = json_decode($response->getBody()->getContents(), true);
|
|
||||||
Log::info('Google Access Token Response', ['response' => $tokenData]);
|
|
||||||
|
|
||||||
$response = $client->get('https://www.googleapis.com/oauth2/v2/userinfo', [
|
|
||||||
'headers' => [
|
|
||||||
'Authorization' => 'Bearer ' . $tokenData['access_token'],
|
|
||||||
],
|
|
||||||
'verify' => false, // Hanya untuk pengujian, sebaiknya dihapus di produksi
|
|
||||||
]);
|
|
||||||
|
|
||||||
$userData = json_decode($response->getBody()->getContents(), true);
|
|
||||||
Log::info('Google User Data', ['user_data' => $userData]);
|
|
||||||
|
|
||||||
$user = User::updateOrCreate(
|
|
||||||
['email' => $userData['email']],
|
|
||||||
[
|
|
||||||
'nama_lengkap' => $userData['name'],
|
|
||||||
'foto_profil' => $userData['picture'] ?? null
|
|
||||||
]
|
|
||||||
);
|
|
||||||
|
|
||||||
Auth::login($user, true);
|
|
||||||
Log::info('User Authenticated', [
|
|
||||||
'user_id' => $user->id_user,
|
|
||||||
'email' => $user->email,
|
|
||||||
]);
|
|
||||||
|
|
||||||
$kuesionerls = KuesionerLearningStyle::where('email', $user->email)->first();
|
|
||||||
$kuesionermeta = KuesionerMetakognitif::where('category', $user->category_meta)->first();
|
|
||||||
return view('main.page.beranda.beranda', compact('kuesionerls', 'kuesionermeta'));
|
|
||||||
|
|
||||||
} catch (\Exception $e) {
|
|
||||||
Log::error('Google Login Failed', [
|
|
||||||
'error' => $e->getMessage(),
|
|
||||||
'trace' => $e->getTraceAsString(),
|
|
||||||
'request' => $request->all(),
|
|
||||||
]);
|
|
||||||
|
|
||||||
return redirect()->route('login')->with('error', 'Login dengan Google gagal: ' . $e->getMessage());
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
|
@ -2,61 +2,85 @@
|
||||||
|
|
||||||
namespace App\Http\Controllers\Auth;
|
namespace App\Http\Controllers\Auth;
|
||||||
|
|
||||||
use Illuminate\Support\Facades\Auth;
|
|
||||||
use App\Http\Controllers\Controller;
|
use App\Http\Controllers\Controller;
|
||||||
|
use App\Providers\RouteServiceProvider;
|
||||||
use App\Models\User;
|
use App\Models\User;
|
||||||
use Illuminate\Http\Request;
|
use Illuminate\Foundation\Auth\RegistersUsers;
|
||||||
use Illuminate\Support\Facades\Hash;
|
use Illuminate\Support\Facades\Hash;
|
||||||
use Illuminate\Support\Facades\DB;
|
use Illuminate\Support\Facades\Validator;
|
||||||
|
|
||||||
class RegisterController extends Controller
|
class RegisterController extends Controller
|
||||||
{
|
{
|
||||||
public function register(Request $request)
|
/*
|
||||||
|
|--------------------------------------------------------------------------
|
||||||
|
| Register Controller
|
||||||
|
|--------------------------------------------------------------------------
|
||||||
|
|
|
||||||
|
| This controller handles the registration of new users as well as their
|
||||||
|
| validation and creation. By default this controller uses a trait to
|
||||||
|
| provide this functionality without requiring any additional code.
|
||||||
|
|
|
||||||
|
*/
|
||||||
|
|
||||||
|
use RegistersUsers;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Where to redirect users after registration.
|
||||||
|
*
|
||||||
|
* @var string
|
||||||
|
*/
|
||||||
|
protected $redirectTo = RouteServiceProvider::HOME;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Create a new controller instance.
|
||||||
|
*
|
||||||
|
* @return void
|
||||||
|
*/
|
||||||
|
public function __construct()
|
||||||
{
|
{
|
||||||
// Validasi data
|
$this->middleware('guest');
|
||||||
$validated = $request->validate([
|
|
||||||
'nama_lengkap' => 'required|string|max:255|unique:users,nama_lengkap',
|
|
||||||
'nim' => 'required|string|max:50|unique:users,nim',
|
|
||||||
'semester' => 'required|numeric|min:1',
|
|
||||||
'angkatan' => 'required|numeric|min:2000|max:' . date('Y'),
|
|
||||||
'email' => [
|
|
||||||
'required',
|
|
||||||
'email',
|
|
||||||
'max:255',
|
|
||||||
'unique:users,email',
|
|
||||||
// Validasi regex domain email
|
|
||||||
'regex:/^[a-zA-Z0-9._%+-]+@(polije\.ac\.id|student\.polije\.ac\.id)$/'
|
|
||||||
],
|
|
||||||
'password' => 'required|string|min:8|confirmed',
|
|
||||||
], [
|
|
||||||
'email.regex' => 'Email harus menggunakan domain @polije.ac.id atau @student.polije.ac.id.',
|
|
||||||
'nama_lengkap.unique' => 'Nama lengkap sudah digunakan.',
|
|
||||||
]);
|
|
||||||
|
|
||||||
// Simpan ke database
|
|
||||||
$user = User::create([
|
|
||||||
'nama_lengkap' => $validated['nama_lengkap'],
|
|
||||||
'nim' => $validated['nim'],
|
|
||||||
'semester' => $validated['semester'],
|
|
||||||
'angkatan' => $validated['angkatan'],
|
|
||||||
'email' => $validated['email'],
|
|
||||||
'password' => Hash::make($validated['password']),
|
|
||||||
'kelas_user' => 3,
|
|
||||||
'foto' => 'images/defaultProfile.jpg',
|
|
||||||
]);
|
|
||||||
DB::table('hasil')->insert([
|
|
||||||
'id_user' => $user->id,
|
|
||||||
'id_periode' => 1,
|
|
||||||
'created_at' => now(),
|
|
||||||
]);
|
|
||||||
Auth::login($user);
|
|
||||||
|
|
||||||
// Redirect ke login dengan notif sukses
|
|
||||||
return redirect()->route('dashboard.index')->with('success', 'Pendaftaran berhasil! Selamat datang.');
|
|
||||||
}
|
}
|
||||||
|
|
||||||
public function showRegistrationForm()
|
/**
|
||||||
|
* Get a validator for an incoming registration request.
|
||||||
|
*
|
||||||
|
* @param array $data
|
||||||
|
* @return \Illuminate\Contracts\Validation\Validator
|
||||||
|
*/
|
||||||
|
protected function validator(array $data)
|
||||||
{
|
{
|
||||||
return view('auth.register');
|
return Validator::make($data, [
|
||||||
|
'nama_lengkap' => ['required', 'string', 'max:255', 'regex:/^[A-Za-z\s]+$/'],
|
||||||
|
'nim' => ['required', 'string', 'max:20'],
|
||||||
|
'semester' => ['required', 'integer', 'max:12'],
|
||||||
|
'angkatan' => ['required', 'integer', 'min:2021', 'max:2023'],
|
||||||
|
'email' => ['required', 'string', 'email', 'max:255', 'unique:users', function ($attribute, $value, $fail) {
|
||||||
|
if (!in_array(substr(strrchr($value, "@"), 1), ['polije.ac.id', 'student.polije.ac.id'])) {
|
||||||
|
$fail('Atribut ' . $attribute . ' harus berdomain @polije.ac.id atau @student.polije.ac.id');
|
||||||
|
}
|
||||||
|
}],
|
||||||
|
'password' => ['required', 'string', 'min:8', 'confirmed'],
|
||||||
|
]);
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Create a new user instance after a valid registration.
|
||||||
|
*
|
||||||
|
* @param array $data
|
||||||
|
* @return \App\Models\User
|
||||||
|
*/
|
||||||
|
protected function create(array $data)
|
||||||
|
{
|
||||||
|
return User::create([
|
||||||
|
'nama_lengkap' => $data['nama_lengkap'],
|
||||||
|
'nim' => $data['nim'],
|
||||||
|
'semester' => $data['semester'],
|
||||||
|
'angkatan' => $data['angkatan'],
|
||||||
|
'email' => $data['email'],
|
||||||
|
'password' => Hash::make($data['password']),
|
||||||
|
'kelas_user' => '3',
|
||||||
|
'foto' => 'images/BoeaT0jCWccM0FW9FxE1HS1ej5J61n99JbEBzWlS.jpg',
|
||||||
|
|
||||||
|
]);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,23 +0,0 @@
|
||||||
<?php
|
|
||||||
|
|
||||||
namespace App\Http\Controllers\Backend;
|
|
||||||
|
|
||||||
use App\Http\Controllers\Controller;
|
|
||||||
use Illuminate\Http\Request;
|
|
||||||
use Illuminate\Support\Facades\DB;
|
|
||||||
|
|
||||||
class AuditoryController extends Controller
|
|
||||||
{
|
|
||||||
public function index()
|
|
||||||
{
|
|
||||||
// Ambil data materi berdasarkan id_style = 2 (Auditory)
|
|
||||||
$materi = DB::table('materi')
|
|
||||||
->where('id_style', 2)
|
|
||||||
->orderBy('id_materi')
|
|
||||||
->select('id_materi', 'konten', 'audio', 'teks')
|
|
||||||
->get();
|
|
||||||
|
|
||||||
return view('backend.materi.' . $bladeMap[$style]);
|
|
||||||
|
|
||||||
}
|
|
||||||
}
|
|
|
@ -8,7 +8,9 @@
|
||||||
use App\Models\User;
|
use App\Models\User;
|
||||||
use App\Models\PilihPeriode;
|
use App\Models\PilihPeriode;
|
||||||
use Barryvdh\DomPDF\Facade\Pdf as FacadePdf;
|
use Barryvdh\DomPDF\Facade\Pdf as FacadePdf;
|
||||||
|
use Barryvdh\DomPDF\PDF as DomPDFPDF;
|
||||||
use Carbon\Carbon;
|
use Carbon\Carbon;
|
||||||
|
|
||||||
use Illuminate\Support\Facades\DB;
|
use Illuminate\Support\Facades\DB;
|
||||||
|
|
||||||
class DashboardController extends Controller
|
class DashboardController extends Controller
|
||||||
|
@ -19,7 +21,6 @@ public function index()
|
||||||
->groupBy('km_class')
|
->groupBy('km_class')
|
||||||
->orderByRaw("FIELD(km_class, 'High', 'Medium', 'Low')")
|
->orderByRaw("FIELD(km_class, 'High', 'Medium', 'Low')")
|
||||||
->get();
|
->get();
|
||||||
|
|
||||||
$rmCounts = Hasil::select('rm_class', DB::raw('count(*) as total'))
|
$rmCounts = Hasil::select('rm_class', DB::raw('count(*) as total'))
|
||||||
->groupBy('rm_class')
|
->groupBy('rm_class')
|
||||||
->orderByRaw("FIELD(rm_class, 'High', 'Medium', 'Low')")
|
->orderByRaw("FIELD(rm_class, 'High', 'Medium', 'Low')")
|
||||||
|
@ -27,73 +28,28 @@ public function index()
|
||||||
|
|
||||||
$checkPeriod = PilihPeriode::first();
|
$checkPeriod = PilihPeriode::first();
|
||||||
$idUser = auth()->user()->id;
|
$idUser = auth()->user()->id;
|
||||||
|
$historiPengisian = Hasil::where('id_user', $idUser)->where('id_periode', $checkPeriod->id_periode)->get();
|
||||||
|
|
||||||
$historiPengisian = Hasil::where('id_user', $idUser)
|
$results = Hasil::with('user')->with('periode')->where('id_user', $idUser)->get();
|
||||||
->where('id_periode', $checkPeriod->id_periode)
|
$results = $results->map(function ($result) {
|
||||||
->get();
|
|
||||||
|
|
||||||
$results = Hasil::with('user')->with('periode')
|
|
||||||
->where('id_user', $idUser)
|
|
||||||
->get()
|
|
||||||
->map(function ($result) {
|
|
||||||
$result->formatted_created_at = Carbon::parse($result->created_at)->format('d M Y');
|
$result->formatted_created_at = Carbon::parse($result->created_at)->format('d M Y');
|
||||||
$result->periode->semester = $result->periode->semester == 1 ? 'Ganjil' : 'Genap';
|
if ($result->periode->semester == 1) {
|
||||||
|
$result->periode->semester = 'Ganjil';
|
||||||
|
} else {
|
||||||
|
$result->periode->semester = 'Genap';
|
||||||
|
}
|
||||||
return $result;
|
return $result;
|
||||||
});
|
});
|
||||||
|
return view('backend.dashboard', compact('kmCounts', 'rmCounts', 'historiPengisian', 'results'));
|
||||||
// Ambil hasil terakhir dari user untuk gaya belajar
|
|
||||||
$hasilGayaBelajar = Hasil::where('id_user', $idUser)
|
|
||||||
->where('id_periode', $checkPeriod->id_periode)
|
|
||||||
->latest()
|
|
||||||
->first();
|
|
||||||
|
|
||||||
$learningStyleMap = [
|
|
||||||
1 => 'Visual',
|
|
||||||
2 => 'Auditory',
|
|
||||||
3 => 'Read / Write',
|
|
||||||
4 => 'Kinesthetic',
|
|
||||||
5 => 'Multimodal'
|
|
||||||
];
|
|
||||||
|
|
||||||
$learningStyle = $hasilGayaBelajar
|
|
||||||
? ($learningStyleMap[$hasilGayaBelajar->id_style] ?? 'Tidak diketahui')
|
|
||||||
: 'Belum tersedia';
|
|
||||||
|
|
||||||
// ===== LOGIKA UNTUK POPUP KUESIONER =====
|
|
||||||
$data = DB::table('hasil')
|
|
||||||
->where('id_user', $idUser)
|
|
||||||
->where('id_periode', $checkPeriod->id_periode)
|
|
||||||
->latest()
|
|
||||||
->first();
|
|
||||||
|
|
||||||
$styles = [
|
|
||||||
'Visual' => $data->visual ?? 0,
|
|
||||||
'Auditory' => $data->auditory ?? 0,
|
|
||||||
'Read/Write' => $data->readwrite ?? 0,
|
|
||||||
'Kinesthetic' => $data->kinesthetic ?? 0,
|
|
||||||
];
|
|
||||||
|
|
||||||
$perluIsiKuesioner = empty(array_filter($styles)); // semua 0 → true
|
|
||||||
|
|
||||||
return view('backend.dashboard', compact(
|
|
||||||
'kmCounts',
|
|
||||||
'rmCounts',
|
|
||||||
'historiPengisian',
|
|
||||||
'results',
|
|
||||||
'learningStyle',
|
|
||||||
'perluIsiKuesioner'
|
|
||||||
));
|
|
||||||
}
|
}
|
||||||
|
|
||||||
public function show($id)
|
public function show($id)
|
||||||
{
|
{
|
||||||
$result = Hasil::with('user')->findOrFail($id);
|
$result = Hasil::with('user')->findOrFail($id);
|
||||||
$result->formatted_updated_at = Carbon::parse($result->updated_at)->format('d M Y');
|
$result->formatted_created_at = Carbon::parse($result->created_at)->format('d M Y');
|
||||||
return view('backend.user_pdf_result', compact('result'));
|
return view('backend.user_pdf_result', compact('result'));
|
||||||
}
|
}
|
||||||
|
|
||||||
public function cetak_pdf($id)
|
public function cetak_pdf($id)
|
||||||
{
|
{
|
||||||
// Kosong / belum diimplementasikan
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,46 +0,0 @@
|
||||||
<?php
|
|
||||||
|
|
||||||
namespace App\Http\Controllers\Backend;
|
|
||||||
|
|
||||||
use App\Http\Controllers\Controller;
|
|
||||||
use Illuminate\Http\Request;
|
|
||||||
use App\Models\Hasil;
|
|
||||||
use Illuminate\Support\Facades\Auth;
|
|
||||||
|
|
||||||
class HistoryController extends Controller
|
|
||||||
{
|
|
||||||
public function index()
|
|
||||||
{
|
|
||||||
$userId = Auth::id();
|
|
||||||
$hasilTerbaru = Hasil::where('id_user', $userId)
|
|
||||||
->orderBy('created_at', 'desc')
|
|
||||||
->first();
|
|
||||||
|
|
||||||
$TOTAL_SOAL = 16;
|
|
||||||
|
|
||||||
if ($hasilTerbaru) {
|
|
||||||
$vark = [
|
|
||||||
'Visual' => $hasilTerbaru->visual ?? 0,
|
|
||||||
'Auditory' => $hasilTerbaru->auditory ?? 0,
|
|
||||||
'Read/Write' => $hasilTerbaru->readwrite ?? 0,
|
|
||||||
'Kinesthetic' => $hasilTerbaru->kinesthetic ?? 0,
|
|
||||||
];
|
|
||||||
|
|
||||||
$jumlahJawaban = array_sum($vark);
|
|
||||||
$persen = round(($jumlahJawaban / $TOTAL_SOAL) * 100);
|
|
||||||
|
|
||||||
$max = max($vark);
|
|
||||||
$tertinggi = array_keys($vark, $max);
|
|
||||||
$gayaBelajar = count($tertinggi) > 1 ? 'Multimodal' : $tertinggi[0];
|
|
||||||
} else {
|
|
||||||
$hasilTerbaru = null;
|
|
||||||
$persen = 0;
|
|
||||||
$gayaBelajar = '-';
|
|
||||||
$jumlahJawaban = 0;
|
|
||||||
}
|
|
||||||
|
|
||||||
return view('backend.history_quis', compact('hasilTerbaru', 'persen', 'gayaBelajar', 'TOTAL_SOAL', 'jumlahJawaban'));
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
|
@ -1,34 +0,0 @@
|
||||||
<?php
|
|
||||||
|
|
||||||
namespace App\Http\Controllers\Backend;
|
|
||||||
|
|
||||||
use App\Http\Controllers\Controller;
|
|
||||||
use Illuminate\Support\Facades\DB;
|
|
||||||
|
|
||||||
class InstruksiController extends Controller
|
|
||||||
{
|
|
||||||
public function tampilkanInstruksiByStyle($style, $id_materi)
|
|
||||||
{
|
|
||||||
$styleMap = [
|
|
||||||
'visual' => 1,
|
|
||||||
'auditory' => 2,
|
|
||||||
'readwrite' => 3,
|
|
||||||
'kinesthetic' => 4,
|
|
||||||
];
|
|
||||||
|
|
||||||
if (!isset($styleMap[$style])) {
|
|
||||||
abort(404, 'Style tidak valid');
|
|
||||||
}
|
|
||||||
|
|
||||||
$id_style = $styleMap[$style];
|
|
||||||
|
|
||||||
// Ambil semua instruksi berdasarkan id_style SAJA
|
|
||||||
$instruksi = DB::table('instruksi')
|
|
||||||
->where('id_style', $id_style)
|
|
||||||
->orderBy('id_instruksi')
|
|
||||||
->pluck('instruksi');
|
|
||||||
|
|
||||||
// Kirim juga id_materi jika diperlukan di tampilan
|
|
||||||
return view("backend.materi.$style", compact('instruksi', 'id_materi'));
|
|
||||||
}
|
|
||||||
}
|
|
|
@ -1,168 +0,0 @@
|
||||||
<?php
|
|
||||||
|
|
||||||
namespace App\Http\Controllers\Backend;
|
|
||||||
|
|
||||||
use App\Models\Hasil;
|
|
||||||
use App\Http\Controllers\Controller;
|
|
||||||
use Illuminate\Http\Request;
|
|
||||||
use Illuminate\Support\Facades\Auth;
|
|
||||||
use Illuminate\Support\Facades\DB;
|
|
||||||
use Symfony\Component\Process\Process;
|
|
||||||
use Symfony\Component\Process\Exception\ProcessFailedException;
|
|
||||||
|
|
||||||
class KuesionerLSController extends Controller
|
|
||||||
{
|
|
||||||
public function store(Request $request)
|
|
||||||
{
|
|
||||||
$mappings = [
|
|
||||||
1 => [
|
|
||||||
"Mencari tahu tokonya apakah ada di suatu tempat yang saya ketahui" => 'K',
|
|
||||||
"Tanya arah jalan kepada teman" => 'A',
|
|
||||||
"Menulis petunjuk jalan" => 'R',
|
|
||||||
"Menggunakan Peta atau Layanan Maps" => 'V'
|
|
||||||
],
|
|
||||||
2 => [
|
|
||||||
"Melihat diagramnya" => 'V',
|
|
||||||
"Mendengarkan penjelasan orang tersebut" => 'A',
|
|
||||||
"Membaca kata-kata yang tampil di video" => 'R',
|
|
||||||
"Melakukan tindakan apa yang dilakukan oleh orang dalam video" => 'K'
|
|
||||||
],
|
|
||||||
3 => [
|
|
||||||
"Melihat hal-hal menarik pada tur tersebut" => 'K',
|
|
||||||
"Menggunakan peta atau layanan maps dan melihat lokasi yang akan dituju" => 'V',
|
|
||||||
"Membaca detail tur pada dokumen atau rencana tur" => 'R',
|
|
||||||
"Berdiskusi dengan teman atau penyelenggara tur yang merencanakan tur tersebut" => 'A'
|
|
||||||
],
|
|
||||||
4 => [
|
|
||||||
"Saya akan menerapkan ilmu yang saya punya pada dunia kerja nanti" => 'K',
|
|
||||||
"Saya akan bercakap dengan rekan kerja saat berdiskusi" => 'A',
|
|
||||||
"Saya akan menggunakan gambar atau video untuk menunjukkan pekerjaan saya kepada rekan kerja" => 'V',
|
|
||||||
"Saya akan menerapkan kata-kata yang baik saat mengirimkan pesan kepada rekan kerja" => 'R'
|
|
||||||
],
|
|
||||||
5 => [
|
|
||||||
"Saya suka berdiskusi" => 'A',
|
|
||||||
"Saya suka melihat pola dari apa yang saya pelajari" => 'V',
|
|
||||||
"Saya suka mencari contoh dari apa yang saya pelajari" => 'K',
|
|
||||||
"Saya suka membaca buku atau artikel" => 'R'
|
|
||||||
],
|
|
||||||
6 => [
|
|
||||||
"Melakukan riset dan perbandingan langsung di lokasi" => 'K',
|
|
||||||
"Membaca brosur yang berisi daftar barang yang saya cari" => 'R',
|
|
||||||
"Melihat ulasan di YouTube atau Media Sosial" => 'V',
|
|
||||||
"Berdiskusi dengan pakar" => 'A'
|
|
||||||
],
|
|
||||||
7 => [
|
|
||||||
"Melihat teman saya bermain catur dan memperhatikannya" => 'K',
|
|
||||||
"Mendengarkan penjelasan ahli tentang bagaimana aturan permainan" => 'A',
|
|
||||||
"Melihat tutorial di YouTube" => 'V',
|
|
||||||
"Membaca instruksi tertulis dari permainan catur" => 'R'
|
|
||||||
],
|
|
||||||
8 => [
|
|
||||||
"Memberi saya buku atau data tentang penyakit jantung yang saya alami" => 'R',
|
|
||||||
"Menggunakan alat peraga guna menjelaskan apa masalah jantung yang saya alami" => 'K',
|
|
||||||
"Saya ingin dokter menjelaskan tentang penyakit saya" => 'A',
|
|
||||||
"Menunjukkan grafik dan statistik dari penyakit jantung yang saya alami" => 'V'
|
|
||||||
],
|
|
||||||
9 => [
|
|
||||||
"Membaca instruksi yang muncul saat saya menjalankan aplikasi tersebut" => 'R',
|
|
||||||
"Berdiskusi dengan seseorang yang paham fungsi dan kegunaan dari aplikasi tersebut" => 'A',
|
|
||||||
"Saya langsung mencoba berbagai tombol pada aplikasi tersebut" => 'K',
|
|
||||||
"Saya melihat gambar atau video yang menjelaskan tentang aplikasi tersebut" => 'V'
|
|
||||||
],
|
|
||||||
10 => [
|
|
||||||
"Video pendek atau video panjang" => 'K',
|
|
||||||
"Interaksi pada desain yang menarik" => 'V',
|
|
||||||
"Artikel atau buku digital" => 'R',
|
|
||||||
"Radio atau Podcast" => 'A'
|
|
||||||
],
|
|
||||||
11 => [
|
|
||||||
"Diagram tahapan proyek" => 'V',
|
|
||||||
"Laporan proyek yang sedang dikerjakan" => 'R',
|
|
||||||
"Kesempatan untuk membahas proyek dengan manajer proyek" => 'A',
|
|
||||||
"Contoh nyata terhadap proyek sejenis yang sukses" => 'K'
|
|
||||||
],
|
|
||||||
12 => [
|
|
||||||
"Bertanya kepada seseorang mengenai fitur dan apa yang bisa kamera tersebut lakukan" => 'A',
|
|
||||||
"Membaca buku instruksi pada kotak kamera tentang bagaimana penggunaan yang benar" => 'R',
|
|
||||||
"Melihat ulasan dari seseorang yang membahas mengenai kamera tersebut" => 'V',
|
|
||||||
"Mengambil langsung beberapa foto dan membandingkannya untuk mendapat hasil terbaik" => 'K'
|
|
||||||
],
|
|
||||||
13 => [
|
|
||||||
"Demonstrasi, model atau praktek langsung" => 'K',
|
|
||||||
"Tanya jawab dan berdiskusi" => 'A',
|
|
||||||
"Buku, artikel, novel atau bahan bacaan" => 'R',
|
|
||||||
"Grafik, diagram, peta atau video" => 'V'
|
|
||||||
],
|
|
||||||
14 => [
|
|
||||||
"Mencontohkan dari apa yang saya lakukan" => 'K',
|
|
||||||
"Mencatat hasil yang saya peroleh" => 'R',
|
|
||||||
"Seseorang yang mengatakan umpan balik langsung kepada saya" => 'A',
|
|
||||||
"Menggunakan diagram atau video hasil dari apa yang saya lakukan" => 'V'
|
|
||||||
],
|
|
||||||
15 => [
|
|
||||||
"Menonton video atau rekaman ulasan dari seseorang yang mengunggahnya" => 'K',
|
|
||||||
"Berdiskusi dengan pemilik langsung di lokasi" => 'A',
|
|
||||||
"Membaca deskripsi mengenai fitur dan fasilitas yang diberikan" => 'R',
|
|
||||||
"Menggunakan layanan maps untuk mencari lokasi" => 'V'
|
|
||||||
],
|
|
||||||
16 => [
|
|
||||||
"Video tutorial yang menunjukkan setiap tahapan perakitan" => 'V',
|
|
||||||
"Saran dari seseorang yang berhasil melakukannya" => 'A',
|
|
||||||
"Petunjuk tertulis yang disertakan dalam paket pembelian" => 'R',
|
|
||||||
"Mencoba merakitnya langsung secara perlahan" => 'K'
|
|
||||||
]
|
|
||||||
];
|
|
||||||
|
|
||||||
$visual = $auditory = $readwrite = $kinesthetic = 0;
|
|
||||||
|
|
||||||
for ($i = 1; $i <= 16; $i++) {
|
|
||||||
$answer = $request->input("soal{$i}");
|
|
||||||
if ($answer && isset($mappings[$i]) && in_array($answer, $mappings[$i])) {
|
|
||||||
switch ($answer) {
|
|
||||||
case 'V': $visual++; break;
|
|
||||||
case 'A': $auditory++; break;
|
|
||||||
case 'R': $readwrite++; break;
|
|
||||||
case 'K': $kinesthetic++; break;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
$percentages = [
|
|
||||||
'Visual' => $visual / 16 * 100,
|
|
||||||
'Auditory' => $auditory / 16 * 100,
|
|
||||||
'Read/Write' => $readwrite / 16 * 100,
|
|
||||||
'Kinesthetic' => $kinesthetic / 16 * 100,
|
|
||||||
];
|
|
||||||
|
|
||||||
arsort($percentages);
|
|
||||||
$values = array_values($percentages);
|
|
||||||
$keys = array_keys($percentages);
|
|
||||||
|
|
||||||
$result = 'Multimodal';
|
|
||||||
if ($values[0] - $values[1] >= 10) {
|
|
||||||
$result = $keys[0];
|
|
||||||
}
|
|
||||||
|
|
||||||
$id_style = match ($result) {
|
|
||||||
'Visual' => 1,
|
|
||||||
'Auditory' => 2,
|
|
||||||
'Read/Write' => 3,
|
|
||||||
'Kinesthetic' => 4,
|
|
||||||
default => 5, // Multimodal
|
|
||||||
};
|
|
||||||
|
|
||||||
Hasil::updateOrCreate(
|
|
||||||
['id_user' => Auth::id()],
|
|
||||||
[
|
|
||||||
'visual' => $visual,
|
|
||||||
'auditory' => $auditory,
|
|
||||||
'readwrite' => $readwrite,
|
|
||||||
'kinesthetic' => $kinesthetic,
|
|
||||||
'id_style' => $id_style,
|
|
||||||
'result' => $result,
|
|
||||||
]
|
|
||||||
);
|
|
||||||
|
|
||||||
return redirect()->route('kuesioner-mai')->with('success', 'Jawaban kuesioner berhasil disimpan!');
|
|
||||||
}
|
|
||||||
}
|
|
|
@ -1,150 +0,0 @@
|
||||||
<?php
|
|
||||||
|
|
||||||
namespace App\Http\Controllers\Backend;
|
|
||||||
|
|
||||||
use App\Http\Controllers\Controller;
|
|
||||||
use App\Models\User;
|
|
||||||
use App\Models\Hasil;
|
|
||||||
use App\Models\KuesionerLearningStyle;
|
|
||||||
use App\Models\KuesionerMetakognitif;
|
|
||||||
use Illuminate\Http\Request;
|
|
||||||
use Illuminate\Support\Facades\Auth;
|
|
||||||
use Illuminate\Support\Facades\DB;
|
|
||||||
use Illuminate\Support\Facades\Log;
|
|
||||||
|
|
||||||
class KuesionerMetaController extends Controller
|
|
||||||
{
|
|
||||||
public function showquestion()
|
|
||||||
{
|
|
||||||
$questions = [
|
|
||||||
"Saya bertanya kepada diri sendiri, “Apakah saya sudah mencapai tujuan saya?” ketika sedang berupaya mencapai tujuan secara intensif.",
|
|
||||||
"Saya mempertimbangkan berbagai pilihan sebelum saya menyelesaikan sebuah permasalahan.",
|
|
||||||
"Saya coba menggunakan cara-cara yang pernah saya pakai sebelumnya.",
|
|
||||||
"Saya terus menerus mengatur diri selama belajar agar memiliki waktu yang cukup.",
|
|
||||||
"Saya memahami kekuatan dan kelemahan kecerdasan saya.",
|
|
||||||
"Saya berpikir tentang apa yang sebenarnya perlu saya pelajari sebelum mengerjakan tugas.",
|
|
||||||
"Saya menyadari bagaimana baiknya saya menyelesaikan suatu tes.",
|
|
||||||
"Saya menyusun tujuan-tujuan khusus sebelum saya mengerjakan tugas.",
|
|
||||||
"Saya bertindak perlahan-lahan dan hati-hati bila mana menjumpai informasi penting.",
|
|
||||||
"Saya mengetahui macam informasi apa yang paling penting untuk dipelajari.",
|
|
||||||
"Saya bertanya kepada diri sendiri ketika mempertimbangkan seluruh pilihan untuk memecahkan suatu masalah.",
|
|
||||||
"Saya terampil/mahir menyusun dan merangkai suatu informasi.",
|
|
||||||
"Saya secara sadar memusatkan perhatian kepada informasi yang penting.",
|
|
||||||
"Untuk tiap cara yang saya gunakan, saya mempunyai maksud tertentu.",
|
|
||||||
"Saya belajar paling baik ketika saya mengetahui topik pembelajaran itu.",
|
|
||||||
"Saya mengetahui apa yang diharapkan guru untuk saya pelajari.",
|
|
||||||
"Saya mudah mengingat informasi.",
|
|
||||||
"Saya menggunakan cara belajar yang berbeda-beda tergantung pada situasi dan kondisi.",
|
|
||||||
"Setelah saya menyelesaikan suatu tugas, saya bertanya kepada diri sendiri apakah ada cara yang lebih mudah.",
|
|
||||||
"Saya mengendalikan sendiri kualitas belajar saya.",
|
|
||||||
"Secara teratur saya melakukan peninjauan kemampuan untuk menolong saya memahami hubungan-hubungan penting.",
|
|
||||||
"Sebelum memulai sesuatu, saya bertanya kepada diri sendiri tentang hal-hal terkait.",
|
|
||||||
"Saya mempertimbangkan berbagai cara untuk memecahkan sesuatu masalah sebelum akhirnya memutuskan salah satu diantaranya.",
|
|
||||||
"Setiap kali selesai belajar, saya membuat rangkuman.",
|
|
||||||
"Saya menanyakan orang lain bilamana saya tidak memahami sesuatu.",
|
|
||||||
"Saya dapat memotivasi diri untuk belajar bilamana diperlukan.",
|
|
||||||
"Saya menyadari cara apa yang digunakan ketika saya belajar.",
|
|
||||||
"Saya biasa memikirkan manfaat cara-cara belajar yang saya pakai.",
|
|
||||||
"Saya memanfaatkan kekuatan kecerdasan saya untuk menutupi kekurangan saya.",
|
|
||||||
"Saya memusatkan perhatian terhadap arti dan manfaat dari informasi yang baru.",
|
|
||||||
"Saya menemukan contoh-contoh sendiri sehingga informasi menjadi lebih bermakna atau jelas.",
|
|
||||||
"Saya tergolong adil menilai diri sendiri tentang seberapa baiknya saya memahami sesuatu.",
|
|
||||||
"Secara otomatis saya sadar menggunakan cara belajar yang berguna.",
|
|
||||||
"Secara teratur saya istirahat sebentar untuk mengatur pemahaman saya.",
|
|
||||||
"Saya menyadari/mengetahui bahwa setiap cara yang saya gunakan adalah yang paling efektif atau tepat.",
|
|
||||||
"Saya bertanya kepada diri sendiri tentang seberapa baik saya mencapai tujuan setelah menyelesaikan tugas.",
|
|
||||||
"Saya membuat gambar atau bagan untuk menolong saya selama belajar.",
|
|
||||||
"Saya bertanya kepada diri sendiri apakah saya telah mempertimbangkan semua pilihan, setiap kali saya memecahkan suatu masalah.",
|
|
||||||
"Saya berupaya memahami informasi baru dengan kata-kata saya sendiri.",
|
|
||||||
"Saya mengubah cara jika saya gagal memahami.",
|
|
||||||
"Saya menggunakan urutan topik/materi dari buku/teks untuk membantu saya belajar.",
|
|
||||||
"Saya membaca petunjuk secara teliti sebelum memulai melakukan suatu tugas.",
|
|
||||||
"Saya bertanya kepada diri sendiri apakah hal yang sedang dibaca berhubungan dengan apa yang telah saya ketahui.",
|
|
||||||
"Saya memikirkan kembali anggapan saya ketika saya bingung.",
|
|
||||||
"Saya mengatur waktu saya untuk mencapai tujuan sebaik-baiknya.",
|
|
||||||
"Saya lebih banyak belajar jika saya tertarik/senang dengan topik.",
|
|
||||||
"Saya berupaya membagi kegiatan belajar saya menjadi langkah-langkah yang lebih kecil.",
|
|
||||||
"Saya lebih memperhatikan makna umum dari pada makna khusus.",
|
|
||||||
"Saya bertanya kepada diri sendiri tentang seberapa baik saya bekerja, pada waktu mempelajari sesuatu yang baru.",
|
|
||||||
"Saya bertanya kepada diri sendiri apakah saya belajar sebanyak yang saya mampu, setiap kali saya menyelesaikan tugas.",
|
|
||||||
"Saya melupakan informasi baru yang tidak jelas.",
|
|
||||||
"Saya berhenti dan selanjutnya membaca kembali jika saya bingung."
|
|
||||||
];
|
|
||||||
|
|
||||||
return view('backend.main.kuesioner.kuesioner_metacognitive', compact('questions'));
|
|
||||||
}
|
|
||||||
|
|
||||||
public function store(Request $request)
|
|
||||||
{
|
|
||||||
if (!Auth::check()) {
|
|
||||||
return redirect()->route('login')->with('error', 'Silakan login terlebih dahulu.');
|
|
||||||
}
|
|
||||||
|
|
||||||
$user = Auth::user();
|
|
||||||
|
|
||||||
$answers = [];
|
|
||||||
for ($i = 1; $i <= 52; $i++) {
|
|
||||||
$answers["soal{$i}"] = $request->input("soal{$i}", 0);
|
|
||||||
}
|
|
||||||
|
|
||||||
// Hitung skor indikator
|
|
||||||
$indicator_scores = [
|
|
||||||
'declarative_knowledge' => array_sum(array_intersect_key($answers, array_flip(['soal5', 'soal10', 'soal12', 'soal16', 'soal17', 'soal20', 'soal32', 'soal46']))),
|
|
||||||
'procedural_knowledge' => array_sum(array_intersect_key($answers, array_flip(['soal3', 'soal14', 'soal27', 'soal33']))),
|
|
||||||
'conditional_knowledge' => array_sum(array_intersect_key($answers, array_flip(['soal15', 'soal18', 'soal26', 'soal29', 'soal35']))),
|
|
||||||
'planning' => array_sum(array_intersect_key($answers, array_flip(['soal4', 'soal6', 'soal8', 'soal22', 'soal23', 'soal42', 'soal45']))),
|
|
||||||
'information_management' => array_sum(array_intersect_key($answers, array_flip(['soal9', 'soal13', 'soal30', 'soal31', 'soal37', 'soal39', 'soal41', 'soal43', 'soal47', 'soal48']))),
|
|
||||||
'monitoring' => array_sum(array_intersect_key($answers, array_flip(['soal1', 'soal2', 'soal11', 'soal21', 'soal28', 'soal34', 'soal49']))),
|
|
||||||
'debugging' => array_sum(array_intersect_key($answers, array_flip(['soal25', 'soal40', 'soal44', 'soal51', 'soal52']))),
|
|
||||||
'evaluation' => array_sum(array_intersect_key($answers, array_flip(['soal7', 'soal19', 'soal24', 'soal36', 'soal38', 'soal50']))),
|
|
||||||
];
|
|
||||||
|
|
||||||
// Hitung total dan klasifikasi
|
|
||||||
$km_total = $indicator_scores['declarative_knowledge'] + $indicator_scores['procedural_knowledge'] + $indicator_scores['conditional_knowledge'];
|
|
||||||
$rm_total = $indicator_scores['planning'] + $indicator_scores['information_management'] + $indicator_scores['monitoring'] + $indicator_scores['debugging'] + $indicator_scores['evaluation'];
|
|
||||||
|
|
||||||
$km_class = ($km_total >= 63) ? 'high' : (($km_total >= 42) ? 'med' : 'low');
|
|
||||||
$rm_class = ($rm_total >= 132) ? 'high' : (($rm_total >= 88) ? 'med' : 'low');
|
|
||||||
|
|
||||||
$lv_meta = (($rm_class == 'high' && ($km_class == 'high' || $km_class == 'med')) ||
|
|
||||||
($rm_class == 'med' && ($km_class == 'high' || $km_class == 'med'))) ? 2 : 1;
|
|
||||||
|
|
||||||
// Tentukan kategori
|
|
||||||
$category = 4;
|
|
||||||
switch (true) {
|
|
||||||
case ($lv_meta == 1 && $km_class == 'low' && $rm_class == 'low'): $category = 1; break;
|
|
||||||
case ($lv_meta == 1 && $km_class == 'low' && $rm_class == 'med'): $category = 2; break;
|
|
||||||
case ($lv_meta == 1 && $km_class == 'low' && $rm_class == 'high'): $category = 3; break;
|
|
||||||
case ($lv_meta == 1 && $km_class == 'med' && $rm_class == 'low'): $category = 4; break;
|
|
||||||
case ($lv_meta == 2 && $km_class == 'med' && $rm_class == 'med'): $category = 5; break;
|
|
||||||
case ($lv_meta == 2 && $km_class == 'med' && $rm_class == 'high'): $category = 6; break;
|
|
||||||
case ($lv_meta == 2 && $km_class == 'high' && $rm_class == 'med'): $category = 7; break;
|
|
||||||
case ($lv_meta == 2 && $km_class == 'high' && $rm_class == 'high'): $category = 8; break;
|
|
||||||
}
|
|
||||||
|
|
||||||
// Simpan ke tabel hasil (update sebagian kolom saja)
|
|
||||||
Hasil::where('id_user', $user->id)->update([
|
|
||||||
'declarative_knowledge' => $indicator_scores['declarative_knowledge'],
|
|
||||||
'procedural_knowledge' => $indicator_scores['procedural_knowledge'],
|
|
||||||
'conditional_knowledge' => $indicator_scores['conditional_knowledge'],
|
|
||||||
'planning' => $indicator_scores['planning'],
|
|
||||||
'information_management' => $indicator_scores['information_management'],
|
|
||||||
'monitoring' => $indicator_scores['monitoring'],
|
|
||||||
'debugging' => $indicator_scores['debugging'],
|
|
||||||
'evaluation' => $indicator_scores['evaluation'],
|
|
||||||
'km_total' => $km_total,
|
|
||||||
'rm_total' => $rm_total,
|
|
||||||
'km_class' => $km_class,
|
|
||||||
'rm_class' => $rm_class,
|
|
||||||
'category' => $category,
|
|
||||||
]);
|
|
||||||
|
|
||||||
// Ambil hasil untuk ditampilkan
|
|
||||||
$kuesionerls = Hasil::where('id_user', $user->id)->first();
|
|
||||||
$kuesionermeta = Hasil::where('id_user', $user->id)->where('category', $category)->first();
|
|
||||||
|
|
||||||
// return view('backend.main.kuesioner.kuesioner_hasil', compact('kuesionerls', 'kuesionermeta'));
|
|
||||||
return redirect()->route('history_quis.index')->with('success', 'Kuesioner berhasil disimpan.');
|
|
||||||
|
|
||||||
}
|
|
||||||
}
|
|
|
@ -1,256 +0,0 @@
|
||||||
<?php
|
|
||||||
|
|
||||||
namespace App\Http\Controllers\Backend;
|
|
||||||
use App\Http\Controllers\Controller;
|
|
||||||
use Illuminate\Http\Request;
|
|
||||||
use Illuminate\Support\Facades\DB;
|
|
||||||
use Illuminate\Support\Facades\Auth;
|
|
||||||
use App\Models\Materi;
|
|
||||||
use Illuminate\Support\Facades\Http;
|
|
||||||
use Illuminate\Support\Facades\Log;
|
|
||||||
|
|
||||||
class MateriController extends Controller
|
|
||||||
{
|
|
||||||
public function index()
|
|
||||||
{
|
|
||||||
$userId = Auth::id();
|
|
||||||
|
|
||||||
$data = DB::table('hasil')->where('id_user', $userId)->first();
|
|
||||||
|
|
||||||
if (!$data) {
|
|
||||||
return view('backend.materipembelajaran', [
|
|
||||||
'topStyles' => [],
|
|
||||||
'isMultimodal' => false,
|
|
||||||
'alternativeStyles' => [],
|
|
||||||
'isEmpty' => true
|
|
||||||
]);
|
|
||||||
}
|
|
||||||
|
|
||||||
$styles = [
|
|
||||||
'Visual' => $data->visual ?? 0,
|
|
||||||
'Auditory' => $data->auditory ?? 0,
|
|
||||||
'Read/ Write' => $data->readwrite ?? 0,
|
|
||||||
'Kinesthetic' => $data->kinesthetic ?? 0,
|
|
||||||
];
|
|
||||||
|
|
||||||
$maxValue = max($styles);
|
|
||||||
$topStyles = array_keys($styles, $maxValue);
|
|
||||||
$isMultimodal = count($topStyles) > 1;
|
|
||||||
$alternativeStyles = array_diff(array_keys($styles), $topStyles);
|
|
||||||
$isEmpty = empty(array_filter($styles));
|
|
||||||
|
|
||||||
return view('backend.materipembelajaran', compact('topStyles', 'isMultimodal', 'alternativeStyles', 'isEmpty'));
|
|
||||||
}
|
|
||||||
|
|
||||||
public function showByStyle($style)
|
|
||||||
{
|
|
||||||
$userId = Auth::id();
|
|
||||||
|
|
||||||
$hasil = DB::table('hasil')->where('id_user', $userId)->first();
|
|
||||||
|
|
||||||
if (!$hasil) {
|
|
||||||
return redirect()->route('user.questionnaire.check')->with('error', 'Silakan isi kuesioner terlebih dahulu untuk mengakses materi.');
|
|
||||||
}
|
|
||||||
|
|
||||||
$bladeMap = [
|
|
||||||
'visual' => 'visual',
|
|
||||||
'auditory' => 'auditory',
|
|
||||||
'read-write' => 'readwrite',
|
|
||||||
'kinesthetic' => 'kinesthetic',
|
|
||||||
];
|
|
||||||
|
|
||||||
$style = strtolower($style);
|
|
||||||
|
|
||||||
if (!array_key_exists($style, $bladeMap)) {
|
|
||||||
abort(404);
|
|
||||||
}
|
|
||||||
|
|
||||||
$id_style_map = [
|
|
||||||
'visual' => 1,
|
|
||||||
'auditory' => 2,
|
|
||||||
'read-write' => 3,
|
|
||||||
'kinesthetic' => 4,
|
|
||||||
];
|
|
||||||
|
|
||||||
$id_style = $id_style_map[$style];
|
|
||||||
|
|
||||||
$materi = DB::table('materi')
|
|
||||||
->where('id_style', $id_style)
|
|
||||||
->orderBy('id_materi')
|
|
||||||
->select('id_materi', 'konten', 'audio', 'teks', 'rangkuman')
|
|
||||||
->get();
|
|
||||||
|
|
||||||
return view('backend.materi.' . $bladeMap[$style], compact('materi'));
|
|
||||||
}
|
|
||||||
|
|
||||||
public function visual($id_materi)
|
|
||||||
{
|
|
||||||
$userId = Auth::id();
|
|
||||||
$hasil = DB::table('hasil')->where('id_user', $userId)->first();
|
|
||||||
if (!$hasil || ($hasil->visual == 0 && $hasil->auditory == 0 && $hasil->readwrite == 0 && $hasil->kinesthetic == 0)) {
|
|
||||||
return redirect('/materi')->with('error', 'Silakan isi kuesioner terlebih dahulu.');
|
|
||||||
}
|
|
||||||
|
|
||||||
$id_style = 1;
|
|
||||||
|
|
||||||
$materi = DB::table('materi')
|
|
||||||
->where('id_style', $id_style)
|
|
||||||
->where('id_materi', $id_materi)
|
|
||||||
->first();
|
|
||||||
|
|
||||||
if (!$materi) {
|
|
||||||
abort(404, 'Materi tidak ditemukan');
|
|
||||||
}
|
|
||||||
|
|
||||||
$next = DB::table('materi')->where('id_style', $id_style)->where('id_materi', '>', $id_materi)->orderBy('id_materi')->first();
|
|
||||||
$prev = DB::table('materi')->where('id_style', $id_style)->where('id_materi', '<', $id_materi)->orderByDesc('id_materi')->first();
|
|
||||||
|
|
||||||
$instruksi = DB::table('instruksi')->where('id_style', $id_style)->orderBy('id_instruksi')->pluck('instruksi');
|
|
||||||
|
|
||||||
return view('backend.materi.visual', compact('materi', 'next', 'prev', 'instruksi'));
|
|
||||||
}
|
|
||||||
|
|
||||||
public function auditory($id_materi)
|
|
||||||
{
|
|
||||||
$userId = Auth::id();
|
|
||||||
$hasil = DB::table('hasil')->where('id_user', $userId)->first();
|
|
||||||
if (!$hasil || ($hasil->visual == 0 && $hasil->auditory == 0 && $hasil->readwrite == 0 && $hasil->kinesthetic == 0)) {
|
|
||||||
return redirect('/materi')->with('error', 'Silakan isi kuesioner terlebih dahulu.');
|
|
||||||
}
|
|
||||||
|
|
||||||
$id_style = 2;
|
|
||||||
|
|
||||||
$materi = DB::table('materi')
|
|
||||||
->where('id_style', $id_style)
|
|
||||||
->where('id_materi', $id_materi)
|
|
||||||
->first();
|
|
||||||
|
|
||||||
if (!$materi) {
|
|
||||||
abort(404, 'Materi tidak ditemukan');
|
|
||||||
}
|
|
||||||
|
|
||||||
$next = DB::table('materi')->where('id_style', $id_style)->where('id_materi', '>', $id_materi)->orderBy('id_materi')->first();
|
|
||||||
$prev = DB::table('materi')->where('id_style', $id_style)->where('id_materi', '<', $id_materi)->orderByDesc('id_materi')->first();
|
|
||||||
|
|
||||||
$instruksi = DB::table('instruksi')->where('id_style', $id_style)->orderBy('id_instruksi')->pluck('instruksi');
|
|
||||||
|
|
||||||
return view('backend.materi.auditory', compact('materi', 'next', 'prev', 'instruksi'));
|
|
||||||
}
|
|
||||||
|
|
||||||
public function readwrite($id_materi)
|
|
||||||
{
|
|
||||||
$userId = Auth::id();
|
|
||||||
$hasil = DB::table('hasil')->where('id_user', $userId)->first();
|
|
||||||
if (!$hasil || ($hasil->visual == 0 && $hasil->auditory == 0 && $hasil->readwrite == 0 && $hasil->kinesthetic == 0)) {
|
|
||||||
return redirect('/materi')->with('error', 'Silakan isi kuesioner terlebih dahulu.');
|
|
||||||
}
|
|
||||||
|
|
||||||
$id_style = 3;
|
|
||||||
|
|
||||||
$materi = DB::table('materi')
|
|
||||||
->where('id_style', $id_style)
|
|
||||||
->where('id_materi', $id_materi)
|
|
||||||
->first();
|
|
||||||
|
|
||||||
if (!$materi) {
|
|
||||||
abort(404, 'Materi tidak ditemukan');
|
|
||||||
}
|
|
||||||
|
|
||||||
$next = DB::table('materi')->where('id_style', $id_style)->where('id_materi', '>', $id_materi)->orderBy('id_materi')->first();
|
|
||||||
$prev = DB::table('materi')->where('id_style', $id_style)->where('id_materi', '<', $id_materi)->orderByDesc('id_materi')->first();
|
|
||||||
|
|
||||||
$rangkuman = $hasil->rangkuman;
|
|
||||||
$instruksi = DB::table('instruksi')->where('id_style', $id_style)->orderBy('id_instruksi')->pluck('instruksi');
|
|
||||||
|
|
||||||
return view('backend.materi.readwrite', compact('materi', 'next', 'prev', 'rangkuman', 'instruksi'));
|
|
||||||
}
|
|
||||||
|
|
||||||
public function kinesthetic($id_materi)
|
|
||||||
{
|
|
||||||
$userId = Auth::id();
|
|
||||||
$hasil = DB::table('hasil')->where('id_user', $userId)->first();
|
|
||||||
if (!$hasil || ($hasil->visual == 0 && $hasil->auditory == 0 && $hasil->readwrite == 0 && $hasil->kinesthetic == 0)) {
|
|
||||||
return redirect('/materi')->with('error', 'Silakan isi kuesioner terlebih dahulu.');
|
|
||||||
}
|
|
||||||
|
|
||||||
$id_style = 4;
|
|
||||||
|
|
||||||
$materi = DB::table('materi')
|
|
||||||
->where('id_style', $id_style)
|
|
||||||
->where('id_materi', $id_materi)
|
|
||||||
->first();
|
|
||||||
|
|
||||||
if (!$materi) {
|
|
||||||
abort(404, 'Materi tidak ditemukan');
|
|
||||||
}
|
|
||||||
|
|
||||||
$instruksi = DB::table('instruksi')->where('id_style', $id_style)->orderBy('id_instruksi')->pluck('instruksi');
|
|
||||||
|
|
||||||
return view('backend.materi.kinesthetic', compact('materi', 'instruksi'));
|
|
||||||
}
|
|
||||||
|
|
||||||
public function submitRangkuman(Request $request)
|
|
||||||
{
|
|
||||||
$request->validate([
|
|
||||||
'rangkuman' => 'required|string|max:10000',
|
|
||||||
]);
|
|
||||||
|
|
||||||
$id_user = auth()->id();
|
|
||||||
|
|
||||||
DB::table('hasil')->updateOrInsert(
|
|
||||||
['id_user' => $id_user],
|
|
||||||
['rangkuman' => $request->rangkuman, 'updated_at' => now()]
|
|
||||||
);
|
|
||||||
|
|
||||||
return redirect()->back()->with('success', 'Rangkuman berhasil dikirim!');
|
|
||||||
}
|
|
||||||
|
|
||||||
public function submitKinesthetic(Request $request, $id_materi)
|
|
||||||
{
|
|
||||||
$id_style = 4;
|
|
||||||
|
|
||||||
$materi = DB::table('materi')
|
|
||||||
->where('id_style', $id_style)
|
|
||||||
->where('id_materi', $id_materi)
|
|
||||||
->first();
|
|
||||||
|
|
||||||
if (!$materi) {
|
|
||||||
return response()->json(['status' => 'error', 'output' => 'Materi tidak ditemukan.']);
|
|
||||||
}
|
|
||||||
|
|
||||||
$code = $request->input('code');
|
|
||||||
|
|
||||||
$response = Http::post('https://emkc.org/api/v2/piston/execute', [
|
|
||||||
'language' => 'java',
|
|
||||||
'version' => '15.0.2',
|
|
||||||
'files' => [
|
|
||||||
['name' => 'Main.java', 'content' => $code],
|
|
||||||
],
|
|
||||||
]);
|
|
||||||
|
|
||||||
if (!$response->ok()) {
|
|
||||||
return response()->json(['status' => 'error', 'output' => 'Gagal memanggil API Piston']);
|
|
||||||
}
|
|
||||||
|
|
||||||
$result = $response->json();
|
|
||||||
|
|
||||||
function normalizeOutput($text) {
|
|
||||||
$text = str_replace(["\r\n", "\r"], "\n", $text);
|
|
||||||
$text = preg_replace("/[ \t]+/", " ", $text);
|
|
||||||
$text = preg_replace("/ +\n/", "\n", $text);
|
|
||||||
$text = preg_replace('/[\x00-\x1F\x7F\xA0\xAD\x{200B}-\x{200D}\x{FEFF}]/u', '', $text);
|
|
||||||
return trim($text);
|
|
||||||
}
|
|
||||||
|
|
||||||
$output = normalizeOutput($result['run']['stdout'] ?? '');
|
|
||||||
$expected = normalizeOutput($materi->outputkode);
|
|
||||||
|
|
||||||
$isCorrect = $output === $expected;
|
|
||||||
|
|
||||||
return response()->json([
|
|
||||||
'status' => $isCorrect ? 'correct' : 'incorrect',
|
|
||||||
'output' => $output,
|
|
||||||
'expected' => $expected,
|
|
||||||
]);
|
|
||||||
}
|
|
||||||
}
|
|
|
@ -17,6 +17,7 @@ public function index()
|
||||||
|
|
||||||
public function update(Request $request)
|
public function update(Request $request)
|
||||||
{
|
{
|
||||||
|
// Validate the request data (you can add more validation rules)
|
||||||
$validatedData = $request->validate([
|
$validatedData = $request->validate([
|
||||||
'nama_lengkap' => 'required',
|
'nama_lengkap' => 'required',
|
||||||
'nim' => 'required',
|
'nim' => 'required',
|
||||||
|
@ -24,23 +25,23 @@ public function update(Request $request)
|
||||||
'angkatan' => 'required',
|
'angkatan' => 'required',
|
||||||
'profile_image' => 'image|mimes:jpeg,png,jpg,gif|max:2048',
|
'profile_image' => 'image|mimes:jpeg,png,jpg,gif|max:2048',
|
||||||
]);
|
]);
|
||||||
|
$imagePath = null;
|
||||||
$user = User::findOrFail(auth()->user()->id); // <-- Pindahkan ke atas
|
|
||||||
|
|
||||||
if ($request->hasFile('profile_image')) {
|
if ($request->hasFile('profile_image')) {
|
||||||
$image = $request->file('profile_image');
|
$image = $request->file('profile_image');
|
||||||
$imagePath = $image->store('images', 'public');
|
$imagePath = $image->store('images', 'public');
|
||||||
$user->foto = $imagePath;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
$user = User::findOrFail(auth()->user()->id);
|
||||||
$user->nama_lengkap = $request->input('nama_lengkap');
|
$user->nama_lengkap = $request->input('nama_lengkap');
|
||||||
$user->nim = $request->input('nim');
|
$user->nim = $request->input('nim');
|
||||||
$user->semester = $request->input('semester');
|
$user->semester = $request->input('semester');
|
||||||
$user->angkatan = $request->input('angkatan');
|
$user->angkatan = $request->input('angkatan');
|
||||||
|
if ($imagePath != null) {
|
||||||
|
$user->foto = $imagePath;
|
||||||
|
}
|
||||||
|
$user->update();
|
||||||
|
|
||||||
$user->save();
|
return redirect('/dashboard')->with('success', 'Profile updated successfully');
|
||||||
|
|
||||||
return redirect('/profile')->with('success', 'Profile updated successfully');
|
|
||||||
}
|
}
|
||||||
|
|
||||||
public function changePassword(Request $request)
|
public function changePassword(Request $request)
|
||||||
|
|
|
@ -1,24 +0,0 @@
|
||||||
<?php
|
|
||||||
|
|
||||||
namespace App\Http\Controllers\Backend;
|
|
||||||
|
|
||||||
use App\Http\Controllers\Controller;
|
|
||||||
use Illuminate\Support\Facades\Auth;
|
|
||||||
use Illuminate\Support\Facades\DB;
|
|
||||||
|
|
||||||
class ResumeController extends Controller
|
|
||||||
{
|
|
||||||
public function index()
|
|
||||||
{
|
|
||||||
$userId = Auth::id();
|
|
||||||
|
|
||||||
$rangkumanList = DB::table('hasil')
|
|
||||||
->where('id_user', $userId)
|
|
||||||
->pluck('rangkuman')
|
|
||||||
->filter(function ($item) {
|
|
||||||
return !is_null($item) && trim($item) !== '';
|
|
||||||
});
|
|
||||||
|
|
||||||
return view('backend.resumepembelajaran', compact('rangkumanList'));
|
|
||||||
}
|
|
||||||
}
|
|
|
@ -64,6 +64,5 @@ class Kernel extends HttpKernel
|
||||||
'throttle' => \Illuminate\Routing\Middleware\ThrottleRequests::class,
|
'throttle' => \Illuminate\Routing\Middleware\ThrottleRequests::class,
|
||||||
'verified' => \Illuminate\Auth\Middleware\EnsureEmailIsVerified::class,
|
'verified' => \Illuminate\Auth\Middleware\EnsureEmailIsVerified::class,
|
||||||
'class' => \App\Http\Middleware\CheckUserClass::class,
|
'class' => \App\Http\Middleware\CheckUserClass::class,
|
||||||
'check.questionnaire' => \App\Http\Middleware\CheckQuestionnaire::class,
|
|
||||||
];
|
];
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,41 +0,0 @@
|
||||||
<?php
|
|
||||||
|
|
||||||
namespace App\Http\Middleware;
|
|
||||||
|
|
||||||
use Closure;
|
|
||||||
use Illuminate\Http\Request;
|
|
||||||
use Illuminate\Support\Facades\Auth;
|
|
||||||
use Illuminate\Support\Facades\DB;
|
|
||||||
|
|
||||||
class CheckQuestionnaire
|
|
||||||
{
|
|
||||||
public function handle(Request $request, Closure $next)
|
|
||||||
{
|
|
||||||
$userId = Auth::id();
|
|
||||||
|
|
||||||
if (!$userId) {
|
|
||||||
// Jika belum login, redirect ke login
|
|
||||||
return redirect()->route('login');
|
|
||||||
}
|
|
||||||
|
|
||||||
// Ambil hasil VARK user
|
|
||||||
$hasil = DB::table('hasil')->where('id_user', $userId)->first();
|
|
||||||
|
|
||||||
// Jika data hasil tidak ada, atau semua nilai VARK kosong/0
|
|
||||||
if (
|
|
||||||
!$hasil ||
|
|
||||||
(
|
|
||||||
($hasil->visual ?? 0) == 0 &&
|
|
||||||
($hasil->auditory ?? 0) == 0 &&
|
|
||||||
($hasil->readwrite ?? 0) == 0 &&
|
|
||||||
($hasil->kinesthetic ?? 0) == 0
|
|
||||||
)
|
|
||||||
) {
|
|
||||||
// Redirect ke halaman cek kuesioner
|
|
||||||
// return redirect()->route('user.questionnaire.check')->with('error', 'Silakan isi kuesioner terlebih dahulu.');
|
|
||||||
return redirect()->route('materi.index')->with('error', 'Silakan isi kuesioner terlebih dahulu.');
|
|
||||||
}
|
|
||||||
|
|
||||||
return $next($request);
|
|
||||||
}
|
|
||||||
}
|
|
|
@ -23,17 +23,7 @@ class Hasil extends Model
|
||||||
'debugging',
|
'debugging',
|
||||||
'evaluation',
|
'evaluation',
|
||||||
'rm_total',
|
'rm_total',
|
||||||
'rm_class',
|
'rm_class'
|
||||||
'visual',
|
|
||||||
'auditory',
|
|
||||||
'readwrite',
|
|
||||||
'kinesthetic',
|
|
||||||
'id_style',
|
|
||||||
'id_lstyle',
|
|
||||||
'rangkuman',
|
|
||||||
'result',
|
|
||||||
'created_at',
|
|
||||||
'updated_at'
|
|
||||||
];
|
];
|
||||||
|
|
||||||
public function user()
|
public function user()
|
||||||
|
|
|
@ -1,18 +0,0 @@
|
||||||
<?php
|
|
||||||
|
|
||||||
namespace App\Models;
|
|
||||||
|
|
||||||
use Illuminate\Database\Eloquent\Factories\HasFactory;
|
|
||||||
use Illuminate\Database\Eloquent\Model;
|
|
||||||
|
|
||||||
class Instruksi extends Model
|
|
||||||
{
|
|
||||||
use HasFactory;
|
|
||||||
protected $table = 'instruksi';
|
|
||||||
protected $primaryKey = 'id_instruksi ';
|
|
||||||
protected $guarded = [
|
|
||||||
'id_lstyle',
|
|
||||||
'lv_meta',
|
|
||||||
'instruksi',
|
|
||||||
];
|
|
||||||
}
|
|
|
@ -1,27 +0,0 @@
|
||||||
<?php
|
|
||||||
|
|
||||||
namespace App\Models;
|
|
||||||
|
|
||||||
use Illuminate\Database\Eloquent\Factories\HasFactory;
|
|
||||||
use Illuminate\Database\Eloquent\Model;
|
|
||||||
|
|
||||||
class KuesionerLearningStyle extends Model
|
|
||||||
{
|
|
||||||
use HasFactory;
|
|
||||||
protected $table = 'kuesioner_learning_style';
|
|
||||||
protected $primaryKey = 'id_ls';
|
|
||||||
protected $fillable = [
|
|
||||||
'email',
|
|
||||||
'visual',
|
|
||||||
'auditory',
|
|
||||||
'readwrite',
|
|
||||||
'kinesthetic',
|
|
||||||
'id_lstyle',
|
|
||||||
'result',
|
|
||||||
];
|
|
||||||
|
|
||||||
public function user()
|
|
||||||
{
|
|
||||||
return $this->belongsTo(User::class, 'email', 'email');
|
|
||||||
}
|
|
||||||
}
|
|
|
@ -1,18 +0,0 @@
|
||||||
<?php
|
|
||||||
|
|
||||||
namespace App\Models;
|
|
||||||
|
|
||||||
use Illuminate\Database\Eloquent\Factories\HasFactory;
|
|
||||||
use Illuminate\Database\Eloquent\Model;
|
|
||||||
|
|
||||||
class KuesionerMetakognitif extends Model
|
|
||||||
{
|
|
||||||
use HasFactory;
|
|
||||||
protected $table = 'kuesioner_metakognitif';
|
|
||||||
protected $primaryKey = 'category ';
|
|
||||||
protected $guarded = [
|
|
||||||
'lv_meta',
|
|
||||||
'km_class',
|
|
||||||
'rm_class',
|
|
||||||
];
|
|
||||||
}
|
|
|
@ -1,29 +0,0 @@
|
||||||
<?php
|
|
||||||
|
|
||||||
namespace App\Models;
|
|
||||||
|
|
||||||
use Illuminate\Database\Eloquent\Model;
|
|
||||||
|
|
||||||
class Materi extends Model
|
|
||||||
{
|
|
||||||
protected $table = 'materi';
|
|
||||||
public $timestamps = false;
|
|
||||||
|
|
||||||
protected $fillable = [
|
|
||||||
'id_style',
|
|
||||||
'id_materi',
|
|
||||||
'konten',
|
|
||||||
'audio',
|
|
||||||
'teks',
|
|
||||||
'kodesoal',
|
|
||||||
'outputkode',
|
|
||||||
'rangkuman',
|
|
||||||
];
|
|
||||||
|
|
||||||
// HAPUS baris ini:
|
|
||||||
// protected $primaryKey = ['id_style', 'id_materi'];
|
|
||||||
|
|
||||||
public $incrementing = false;
|
|
||||||
|
|
||||||
// Jika kamu ingin menggunakan find(), override method getKey() secara manual (opsional lanjutan)
|
|
||||||
}
|
|
|
@ -24,7 +24,6 @@ class User extends Authenticatable
|
||||||
'angkatan',
|
'angkatan',
|
||||||
'email',
|
'email',
|
||||||
'password',
|
'password',
|
||||||
'foto',
|
|
||||||
'kelas_user',
|
'kelas_user',
|
||||||
'foto',
|
'foto',
|
||||||
];
|
];
|
||||||
|
|
|
@ -10,7 +10,6 @@
|
||||||
"guzzlehttp/guzzle": "^7.0.1",
|
"guzzlehttp/guzzle": "^7.0.1",
|
||||||
"laravel/framework": "^8.75",
|
"laravel/framework": "^8.75",
|
||||||
"laravel/sanctum": "^2.11",
|
"laravel/sanctum": "^2.11",
|
||||||
"laravel/socialite": "^5.21",
|
|
||||||
"laravel/tinker": "^2.5",
|
"laravel/tinker": "^2.5",
|
||||||
"laravel/ui": "^3.4"
|
"laravel/ui": "^3.4"
|
||||||
},
|
},
|
||||||
|
|
|
@ -4,7 +4,7 @@
|
||||||
"Read more about it at https://getcomposer.org/doc/01-basic-usage.md#installing-dependencies",
|
"Read more about it at https://getcomposer.org/doc/01-basic-usage.md#installing-dependencies",
|
||||||
"This file is @generated automatically"
|
"This file is @generated automatically"
|
||||||
],
|
],
|
||||||
"content-hash": "d82e066ef0fb7ea9b85ecf8bff584e3a",
|
"content-hash": "cf14086919a839fe740e00554e4baff6",
|
||||||
"packages": [
|
"packages": [
|
||||||
{
|
{
|
||||||
"name": "asm89/stack-cors",
|
"name": "asm89/stack-cors",
|
||||||
|
@ -493,69 +493,6 @@
|
||||||
],
|
],
|
||||||
"time": "2020-12-29T14:50:06+00:00"
|
"time": "2020-12-29T14:50:06+00:00"
|
||||||
},
|
},
|
||||||
{
|
|
||||||
"name": "firebase/php-jwt",
|
|
||||||
"version": "v6.11.1",
|
|
||||||
"source": {
|
|
||||||
"type": "git",
|
|
||||||
"url": "https://github.com/firebase/php-jwt.git",
|
|
||||||
"reference": "d1e91ecf8c598d073d0995afa8cd5c75c6e19e66"
|
|
||||||
},
|
|
||||||
"dist": {
|
|
||||||
"type": "zip",
|
|
||||||
"url": "https://api.github.com/repos/firebase/php-jwt/zipball/d1e91ecf8c598d073d0995afa8cd5c75c6e19e66",
|
|
||||||
"reference": "d1e91ecf8c598d073d0995afa8cd5c75c6e19e66",
|
|
||||||
"shasum": ""
|
|
||||||
},
|
|
||||||
"require": {
|
|
||||||
"php": "^8.0"
|
|
||||||
},
|
|
||||||
"require-dev": {
|
|
||||||
"guzzlehttp/guzzle": "^7.4",
|
|
||||||
"phpspec/prophecy-phpunit": "^2.0",
|
|
||||||
"phpunit/phpunit": "^9.5",
|
|
||||||
"psr/cache": "^2.0||^3.0",
|
|
||||||
"psr/http-client": "^1.0",
|
|
||||||
"psr/http-factory": "^1.0"
|
|
||||||
},
|
|
||||||
"suggest": {
|
|
||||||
"ext-sodium": "Support EdDSA (Ed25519) signatures",
|
|
||||||
"paragonie/sodium_compat": "Support EdDSA (Ed25519) signatures when libsodium is not present"
|
|
||||||
},
|
|
||||||
"type": "library",
|
|
||||||
"autoload": {
|
|
||||||
"psr-4": {
|
|
||||||
"Firebase\\JWT\\": "src"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"notification-url": "https://packagist.org/downloads/",
|
|
||||||
"license": [
|
|
||||||
"BSD-3-Clause"
|
|
||||||
],
|
|
||||||
"authors": [
|
|
||||||
{
|
|
||||||
"name": "Neuman Vong",
|
|
||||||
"email": "neuman+pear@twilio.com",
|
|
||||||
"role": "Developer"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"name": "Anant Narayanan",
|
|
||||||
"email": "anant@php.net",
|
|
||||||
"role": "Developer"
|
|
||||||
}
|
|
||||||
],
|
|
||||||
"description": "A simple library to encode and decode JSON Web Tokens (JWT) in PHP. Should conform to the current spec.",
|
|
||||||
"homepage": "https://github.com/firebase/php-jwt",
|
|
||||||
"keywords": [
|
|
||||||
"jwt",
|
|
||||||
"php"
|
|
||||||
],
|
|
||||||
"support": {
|
|
||||||
"issues": "https://github.com/firebase/php-jwt/issues",
|
|
||||||
"source": "https://github.com/firebase/php-jwt/tree/v6.11.1"
|
|
||||||
},
|
|
||||||
"time": "2025-04-09T20:32:01+00:00"
|
|
||||||
},
|
|
||||||
{
|
{
|
||||||
"name": "fruitcake/laravel-cors",
|
"name": "fruitcake/laravel-cors",
|
||||||
"version": "v2.2.0",
|
"version": "v2.2.0",
|
||||||
|
@ -1321,78 +1258,6 @@
|
||||||
},
|
},
|
||||||
"time": "2023-07-14T13:56:28+00:00"
|
"time": "2023-07-14T13:56:28+00:00"
|
||||||
},
|
},
|
||||||
{
|
|
||||||
"name": "laravel/socialite",
|
|
||||||
"version": "v5.21.0",
|
|
||||||
"source": {
|
|
||||||
"type": "git",
|
|
||||||
"url": "https://github.com/laravel/socialite.git",
|
|
||||||
"reference": "d83639499ad14985c9a6a9713b70073300ce998d"
|
|
||||||
},
|
|
||||||
"dist": {
|
|
||||||
"type": "zip",
|
|
||||||
"url": "https://api.github.com/repos/laravel/socialite/zipball/d83639499ad14985c9a6a9713b70073300ce998d",
|
|
||||||
"reference": "d83639499ad14985c9a6a9713b70073300ce998d",
|
|
||||||
"shasum": ""
|
|
||||||
},
|
|
||||||
"require": {
|
|
||||||
"ext-json": "*",
|
|
||||||
"firebase/php-jwt": "^6.4",
|
|
||||||
"guzzlehttp/guzzle": "^6.0|^7.0",
|
|
||||||
"illuminate/contracts": "^6.0|^7.0|^8.0|^9.0|^10.0|^11.0|^12.0",
|
|
||||||
"illuminate/http": "^6.0|^7.0|^8.0|^9.0|^10.0|^11.0|^12.0",
|
|
||||||
"illuminate/support": "^6.0|^7.0|^8.0|^9.0|^10.0|^11.0|^12.0",
|
|
||||||
"league/oauth1-client": "^1.11",
|
|
||||||
"php": "^7.2|^8.0",
|
|
||||||
"phpseclib/phpseclib": "^3.0"
|
|
||||||
},
|
|
||||||
"require-dev": {
|
|
||||||
"mockery/mockery": "^1.0",
|
|
||||||
"orchestra/testbench": "^4.0|^5.0|^6.0|^7.0|^8.0|^9.0|^10.0",
|
|
||||||
"phpstan/phpstan": "^1.12.23",
|
|
||||||
"phpunit/phpunit": "^8.0|^9.3|^10.4|^11.5"
|
|
||||||
},
|
|
||||||
"type": "library",
|
|
||||||
"extra": {
|
|
||||||
"laravel": {
|
|
||||||
"aliases": {
|
|
||||||
"Socialite": "Laravel\\Socialite\\Facades\\Socialite"
|
|
||||||
},
|
|
||||||
"providers": [
|
|
||||||
"Laravel\\Socialite\\SocialiteServiceProvider"
|
|
||||||
]
|
|
||||||
},
|
|
||||||
"branch-alias": {
|
|
||||||
"dev-master": "5.x-dev"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"autoload": {
|
|
||||||
"psr-4": {
|
|
||||||
"Laravel\\Socialite\\": "src/"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"notification-url": "https://packagist.org/downloads/",
|
|
||||||
"license": [
|
|
||||||
"MIT"
|
|
||||||
],
|
|
||||||
"authors": [
|
|
||||||
{
|
|
||||||
"name": "Taylor Otwell",
|
|
||||||
"email": "taylor@laravel.com"
|
|
||||||
}
|
|
||||||
],
|
|
||||||
"description": "Laravel wrapper around OAuth 1 & OAuth 2 libraries.",
|
|
||||||
"homepage": "https://laravel.com",
|
|
||||||
"keywords": [
|
|
||||||
"laravel",
|
|
||||||
"oauth"
|
|
||||||
],
|
|
||||||
"support": {
|
|
||||||
"issues": "https://github.com/laravel/socialite/issues",
|
|
||||||
"source": "https://github.com/laravel/socialite"
|
|
||||||
},
|
|
||||||
"time": "2025-05-19T12:56:37+00:00"
|
|
||||||
},
|
|
||||||
{
|
{
|
||||||
"name": "laravel/tinker",
|
"name": "laravel/tinker",
|
||||||
"version": "v2.8.2",
|
"version": "v2.8.2",
|
||||||
|
@ -1861,82 +1726,6 @@
|
||||||
],
|
],
|
||||||
"time": "2023-08-05T12:09:49+00:00"
|
"time": "2023-08-05T12:09:49+00:00"
|
||||||
},
|
},
|
||||||
{
|
|
||||||
"name": "league/oauth1-client",
|
|
||||||
"version": "v1.11.0",
|
|
||||||
"source": {
|
|
||||||
"type": "git",
|
|
||||||
"url": "https://github.com/thephpleague/oauth1-client.git",
|
|
||||||
"reference": "f9c94b088837eb1aae1ad7c4f23eb65cc6993055"
|
|
||||||
},
|
|
||||||
"dist": {
|
|
||||||
"type": "zip",
|
|
||||||
"url": "https://api.github.com/repos/thephpleague/oauth1-client/zipball/f9c94b088837eb1aae1ad7c4f23eb65cc6993055",
|
|
||||||
"reference": "f9c94b088837eb1aae1ad7c4f23eb65cc6993055",
|
|
||||||
"shasum": ""
|
|
||||||
},
|
|
||||||
"require": {
|
|
||||||
"ext-json": "*",
|
|
||||||
"ext-openssl": "*",
|
|
||||||
"guzzlehttp/guzzle": "^6.0|^7.0",
|
|
||||||
"guzzlehttp/psr7": "^1.7|^2.0",
|
|
||||||
"php": ">=7.1||>=8.0"
|
|
||||||
},
|
|
||||||
"require-dev": {
|
|
||||||
"ext-simplexml": "*",
|
|
||||||
"friendsofphp/php-cs-fixer": "^2.17",
|
|
||||||
"mockery/mockery": "^1.3.3",
|
|
||||||
"phpstan/phpstan": "^0.12.42",
|
|
||||||
"phpunit/phpunit": "^7.5||9.5"
|
|
||||||
},
|
|
||||||
"suggest": {
|
|
||||||
"ext-simplexml": "For decoding XML-based responses."
|
|
||||||
},
|
|
||||||
"type": "library",
|
|
||||||
"extra": {
|
|
||||||
"branch-alias": {
|
|
||||||
"dev-master": "1.0-dev",
|
|
||||||
"dev-develop": "2.0-dev"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"autoload": {
|
|
||||||
"psr-4": {
|
|
||||||
"League\\OAuth1\\Client\\": "src/"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"notification-url": "https://packagist.org/downloads/",
|
|
||||||
"license": [
|
|
||||||
"MIT"
|
|
||||||
],
|
|
||||||
"authors": [
|
|
||||||
{
|
|
||||||
"name": "Ben Corlett",
|
|
||||||
"email": "bencorlett@me.com",
|
|
||||||
"homepage": "http://www.webcomm.com.au",
|
|
||||||
"role": "Developer"
|
|
||||||
}
|
|
||||||
],
|
|
||||||
"description": "OAuth 1.0 Client Library",
|
|
||||||
"keywords": [
|
|
||||||
"Authentication",
|
|
||||||
"SSO",
|
|
||||||
"authorization",
|
|
||||||
"bitbucket",
|
|
||||||
"identity",
|
|
||||||
"idp",
|
|
||||||
"oauth",
|
|
||||||
"oauth1",
|
|
||||||
"single sign on",
|
|
||||||
"trello",
|
|
||||||
"tumblr",
|
|
||||||
"twitter"
|
|
||||||
],
|
|
||||||
"support": {
|
|
||||||
"issues": "https://github.com/thephpleague/oauth1-client/issues",
|
|
||||||
"source": "https://github.com/thephpleague/oauth1-client/tree/v1.11.0"
|
|
||||||
},
|
|
||||||
"time": "2024-12-10T19:59:05+00:00"
|
|
||||||
},
|
|
||||||
{
|
{
|
||||||
"name": "monolog/monolog",
|
"name": "monolog/monolog",
|
||||||
"version": "2.9.1",
|
"version": "2.9.1",
|
||||||
|
@ -2414,123 +2203,6 @@
|
||||||
},
|
},
|
||||||
"time": "2022-01-27T09:35:39+00:00"
|
"time": "2022-01-27T09:35:39+00:00"
|
||||||
},
|
},
|
||||||
{
|
|
||||||
"name": "paragonie/constant_time_encoding",
|
|
||||||
"version": "v3.0.0",
|
|
||||||
"source": {
|
|
||||||
"type": "git",
|
|
||||||
"url": "https://github.com/paragonie/constant_time_encoding.git",
|
|
||||||
"reference": "df1e7fde177501eee2037dd159cf04f5f301a512"
|
|
||||||
},
|
|
||||||
"dist": {
|
|
||||||
"type": "zip",
|
|
||||||
"url": "https://api.github.com/repos/paragonie/constant_time_encoding/zipball/df1e7fde177501eee2037dd159cf04f5f301a512",
|
|
||||||
"reference": "df1e7fde177501eee2037dd159cf04f5f301a512",
|
|
||||||
"shasum": ""
|
|
||||||
},
|
|
||||||
"require": {
|
|
||||||
"php": "^8"
|
|
||||||
},
|
|
||||||
"require-dev": {
|
|
||||||
"phpunit/phpunit": "^9",
|
|
||||||
"vimeo/psalm": "^4|^5"
|
|
||||||
},
|
|
||||||
"type": "library",
|
|
||||||
"autoload": {
|
|
||||||
"psr-4": {
|
|
||||||
"ParagonIE\\ConstantTime\\": "src/"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"notification-url": "https://packagist.org/downloads/",
|
|
||||||
"license": [
|
|
||||||
"MIT"
|
|
||||||
],
|
|
||||||
"authors": [
|
|
||||||
{
|
|
||||||
"name": "Paragon Initiative Enterprises",
|
|
||||||
"email": "security@paragonie.com",
|
|
||||||
"homepage": "https://paragonie.com",
|
|
||||||
"role": "Maintainer"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"name": "Steve 'Sc00bz' Thomas",
|
|
||||||
"email": "steve@tobtu.com",
|
|
||||||
"homepage": "https://www.tobtu.com",
|
|
||||||
"role": "Original Developer"
|
|
||||||
}
|
|
||||||
],
|
|
||||||
"description": "Constant-time Implementations of RFC 4648 Encoding (Base-64, Base-32, Base-16)",
|
|
||||||
"keywords": [
|
|
||||||
"base16",
|
|
||||||
"base32",
|
|
||||||
"base32_decode",
|
|
||||||
"base32_encode",
|
|
||||||
"base64",
|
|
||||||
"base64_decode",
|
|
||||||
"base64_encode",
|
|
||||||
"bin2hex",
|
|
||||||
"encoding",
|
|
||||||
"hex",
|
|
||||||
"hex2bin",
|
|
||||||
"rfc4648"
|
|
||||||
],
|
|
||||||
"support": {
|
|
||||||
"email": "info@paragonie.com",
|
|
||||||
"issues": "https://github.com/paragonie/constant_time_encoding/issues",
|
|
||||||
"source": "https://github.com/paragonie/constant_time_encoding"
|
|
||||||
},
|
|
||||||
"time": "2024-05-08T12:36:18+00:00"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"name": "paragonie/random_compat",
|
|
||||||
"version": "v9.99.100",
|
|
||||||
"source": {
|
|
||||||
"type": "git",
|
|
||||||
"url": "https://github.com/paragonie/random_compat.git",
|
|
||||||
"reference": "996434e5492cb4c3edcb9168db6fbb1359ef965a"
|
|
||||||
},
|
|
||||||
"dist": {
|
|
||||||
"type": "zip",
|
|
||||||
"url": "https://api.github.com/repos/paragonie/random_compat/zipball/996434e5492cb4c3edcb9168db6fbb1359ef965a",
|
|
||||||
"reference": "996434e5492cb4c3edcb9168db6fbb1359ef965a",
|
|
||||||
"shasum": ""
|
|
||||||
},
|
|
||||||
"require": {
|
|
||||||
"php": ">= 7"
|
|
||||||
},
|
|
||||||
"require-dev": {
|
|
||||||
"phpunit/phpunit": "4.*|5.*",
|
|
||||||
"vimeo/psalm": "^1"
|
|
||||||
},
|
|
||||||
"suggest": {
|
|
||||||
"ext-libsodium": "Provides a modern crypto API that can be used to generate random bytes."
|
|
||||||
},
|
|
||||||
"type": "library",
|
|
||||||
"notification-url": "https://packagist.org/downloads/",
|
|
||||||
"license": [
|
|
||||||
"MIT"
|
|
||||||
],
|
|
||||||
"authors": [
|
|
||||||
{
|
|
||||||
"name": "Paragon Initiative Enterprises",
|
|
||||||
"email": "security@paragonie.com",
|
|
||||||
"homepage": "https://paragonie.com"
|
|
||||||
}
|
|
||||||
],
|
|
||||||
"description": "PHP 5.x polyfill for random_bytes() and random_int() from PHP 7",
|
|
||||||
"keywords": [
|
|
||||||
"csprng",
|
|
||||||
"polyfill",
|
|
||||||
"pseudorandom",
|
|
||||||
"random"
|
|
||||||
],
|
|
||||||
"support": {
|
|
||||||
"email": "info@paragonie.com",
|
|
||||||
"issues": "https://github.com/paragonie/random_compat/issues",
|
|
||||||
"source": "https://github.com/paragonie/random_compat"
|
|
||||||
},
|
|
||||||
"time": "2020-10-15T08:29:30+00:00"
|
|
||||||
},
|
|
||||||
{
|
{
|
||||||
"name": "phpoption/phpoption",
|
"name": "phpoption/phpoption",
|
||||||
"version": "1.9.1",
|
"version": "1.9.1",
|
||||||
|
@ -2606,116 +2278,6 @@
|
||||||
],
|
],
|
||||||
"time": "2023-02-25T19:38:58+00:00"
|
"time": "2023-02-25T19:38:58+00:00"
|
||||||
},
|
},
|
||||||
{
|
|
||||||
"name": "phpseclib/phpseclib",
|
|
||||||
"version": "3.0.45",
|
|
||||||
"source": {
|
|
||||||
"type": "git",
|
|
||||||
"url": "https://github.com/phpseclib/phpseclib.git",
|
|
||||||
"reference": "bd81b90d5963c6b9d87de50357585375223f4dd8"
|
|
||||||
},
|
|
||||||
"dist": {
|
|
||||||
"type": "zip",
|
|
||||||
"url": "https://api.github.com/repos/phpseclib/phpseclib/zipball/bd81b90d5963c6b9d87de50357585375223f4dd8",
|
|
||||||
"reference": "bd81b90d5963c6b9d87de50357585375223f4dd8",
|
|
||||||
"shasum": ""
|
|
||||||
},
|
|
||||||
"require": {
|
|
||||||
"paragonie/constant_time_encoding": "^1|^2|^3",
|
|
||||||
"paragonie/random_compat": "^1.4|^2.0|^9.99.99",
|
|
||||||
"php": ">=5.6.1"
|
|
||||||
},
|
|
||||||
"require-dev": {
|
|
||||||
"phpunit/phpunit": "*"
|
|
||||||
},
|
|
||||||
"suggest": {
|
|
||||||
"ext-dom": "Install the DOM extension to load XML formatted public keys.",
|
|
||||||
"ext-gmp": "Install the GMP (GNU Multiple Precision) extension in order to speed up arbitrary precision integer arithmetic operations.",
|
|
||||||
"ext-libsodium": "SSH2/SFTP can make use of some algorithms provided by the libsodium-php extension.",
|
|
||||||
"ext-mcrypt": "Install the Mcrypt extension in order to speed up a few other cryptographic operations.",
|
|
||||||
"ext-openssl": "Install the OpenSSL extension in order to speed up a wide variety of cryptographic operations."
|
|
||||||
},
|
|
||||||
"type": "library",
|
|
||||||
"autoload": {
|
|
||||||
"files": [
|
|
||||||
"phpseclib/bootstrap.php"
|
|
||||||
],
|
|
||||||
"psr-4": {
|
|
||||||
"phpseclib3\\": "phpseclib/"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"notification-url": "https://packagist.org/downloads/",
|
|
||||||
"license": [
|
|
||||||
"MIT"
|
|
||||||
],
|
|
||||||
"authors": [
|
|
||||||
{
|
|
||||||
"name": "Jim Wigginton",
|
|
||||||
"email": "terrafrost@php.net",
|
|
||||||
"role": "Lead Developer"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"name": "Patrick Monnerat",
|
|
||||||
"email": "pm@datasphere.ch",
|
|
||||||
"role": "Developer"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"name": "Andreas Fischer",
|
|
||||||
"email": "bantu@phpbb.com",
|
|
||||||
"role": "Developer"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"name": "Hans-Jürgen Petrich",
|
|
||||||
"email": "petrich@tronic-media.com",
|
|
||||||
"role": "Developer"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"name": "Graham Campbell",
|
|
||||||
"email": "graham@alt-three.com",
|
|
||||||
"role": "Developer"
|
|
||||||
}
|
|
||||||
],
|
|
||||||
"description": "PHP Secure Communications Library - Pure-PHP implementations of RSA, AES, SSH2, SFTP, X.509 etc.",
|
|
||||||
"homepage": "http://phpseclib.sourceforge.net",
|
|
||||||
"keywords": [
|
|
||||||
"BigInteger",
|
|
||||||
"aes",
|
|
||||||
"asn.1",
|
|
||||||
"asn1",
|
|
||||||
"blowfish",
|
|
||||||
"crypto",
|
|
||||||
"cryptography",
|
|
||||||
"encryption",
|
|
||||||
"rsa",
|
|
||||||
"security",
|
|
||||||
"sftp",
|
|
||||||
"signature",
|
|
||||||
"signing",
|
|
||||||
"ssh",
|
|
||||||
"twofish",
|
|
||||||
"x.509",
|
|
||||||
"x509"
|
|
||||||
],
|
|
||||||
"support": {
|
|
||||||
"issues": "https://github.com/phpseclib/phpseclib/issues",
|
|
||||||
"source": "https://github.com/phpseclib/phpseclib/tree/3.0.45"
|
|
||||||
},
|
|
||||||
"funding": [
|
|
||||||
{
|
|
||||||
"url": "https://github.com/terrafrost",
|
|
||||||
"type": "github"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"url": "https://www.patreon.com/phpseclib",
|
|
||||||
"type": "patreon"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"url": "https://tidelift.com/funding/github/packagist/phpseclib/phpseclib",
|
|
||||||
"type": "tidelift"
|
|
||||||
}
|
|
||||||
],
|
|
||||||
"time": "2025-06-22T22:54:43+00:00"
|
|
||||||
},
|
|
||||||
{
|
{
|
||||||
"name": "psr/clock",
|
"name": "psr/clock",
|
||||||
"version": "1.0.0",
|
"version": "1.0.0",
|
||||||
|
@ -8279,12 +7841,12 @@
|
||||||
],
|
],
|
||||||
"aliases": [],
|
"aliases": [],
|
||||||
"minimum-stability": "dev",
|
"minimum-stability": "dev",
|
||||||
"stability-flags": {},
|
"stability-flags": [],
|
||||||
"prefer-stable": true,
|
"prefer-stable": true,
|
||||||
"prefer-lowest": false,
|
"prefer-lowest": false,
|
||||||
"platform": {
|
"platform": {
|
||||||
"php": "^7.3|^8.0"
|
"php": "^7.3|^8.0"
|
||||||
},
|
},
|
||||||
"platform-dev": {},
|
"platform-dev": [],
|
||||||
"plugin-api-version": "2.6.0"
|
"plugin-api-version": "2.3.0"
|
||||||
}
|
}
|
||||||
|
|
|
@ -36,9 +36,9 @@
|
||||||
'mailers' => [
|
'mailers' => [
|
||||||
'smtp' => [
|
'smtp' => [
|
||||||
'transport' => 'smtp',
|
'transport' => 'smtp',
|
||||||
'host' => env('MAIL_HOST', 'mail.hypermedialearning.com'),
|
'host' => env('MAIL_HOST', 'smtp.mailgun.org'),
|
||||||
'port' => env('MAIL_PORT', 465),
|
'port' => env('MAIL_PORT', 587),
|
||||||
'encryption' => env('MAIL_ENCRYPTION', 'ssl'),
|
'encryption' => env('MAIL_ENCRYPTION', 'tls'),
|
||||||
'username' => env('MAIL_USERNAME'),
|
'username' => env('MAIL_USERNAME'),
|
||||||
'password' => env('MAIL_PASSWORD'),
|
'password' => env('MAIL_PASSWORD'),
|
||||||
'timeout' => null,
|
'timeout' => null,
|
||||||
|
@ -92,8 +92,8 @@
|
||||||
*/
|
*/
|
||||||
|
|
||||||
'from' => [
|
'from' => [
|
||||||
'address' => env('MAIL_FROM_ADDRESS', 'admin@hypermedialearning.com'),
|
'address' => env('MAIL_FROM_ADDRESS', 'hello@example.com'),
|
||||||
'name' => env('MAIL_FROM_NAME', 'Admin Hypermedialearning'),
|
'name' => env('MAIL_FROM_NAME', 'Example'),
|
||||||
],
|
],
|
||||||
|
|
||||||
/*
|
/*
|
||||||
|
|
|
@ -30,19 +30,4 @@
|
||||||
'region' => env('AWS_DEFAULT_REGION', 'us-east-1'),
|
'region' => env('AWS_DEFAULT_REGION', 'us-east-1'),
|
||||||
],
|
],
|
||||||
|
|
||||||
'jdoodle' => [
|
|
||||||
'client_id' => env('JDOODLE_CLIENT_ID'),
|
|
||||||
'client_secret' => env('JDOODLE_CLIENT_SECRET'),
|
|
||||||
],
|
|
||||||
|
|
||||||
'google' => [
|
|
||||||
'client_id' => env('GOOGLE_CLIENT_ID'),
|
|
||||||
'client_secret' => env('GOOGLE_CLIENT_SECRET'),
|
|
||||||
'redirect' => env('GOOGLE_REDIRECT_URI'),
|
|
||||||
'guzzle' => [
|
|
||||||
'verify' => false, // Hanya untuk pengembangan
|
|
||||||
],
|
|
||||||
],
|
|
||||||
|
|
||||||
|
|
||||||
];
|
];
|
||||||
|
|
|
@ -1,30 +0,0 @@
|
||||||
<?php
|
|
||||||
|
|
||||||
use Illuminate\Database\Migrations\Migration;
|
|
||||||
use Illuminate\Database\Schema\Blueprint;
|
|
||||||
use Illuminate\Support\Facades\Schema;
|
|
||||||
|
|
||||||
return new class extends Migration {
|
|
||||||
public function up()
|
|
||||||
{
|
|
||||||
Schema::table('materi', function (Blueprint $table) {
|
|
||||||
// Tambah primary key gabungan jika belum ada
|
|
||||||
$table->dropPrimary(); // Buang primary key lama jika ada
|
|
||||||
$table->primary(['id_style', 'id_materi']);
|
|
||||||
|
|
||||||
// Tambah foreign key ke tabel hasil
|
|
||||||
$table->foreign('id_style')
|
|
||||||
->references('id_style')
|
|
||||||
->on('hasil')
|
|
||||||
->onDelete('cascade');
|
|
||||||
});
|
|
||||||
}
|
|
||||||
|
|
||||||
public function down()
|
|
||||||
{
|
|
||||||
Schema::table('materi', function (Blueprint $table) {
|
|
||||||
$table->dropForeign(['id_style']);
|
|
||||||
$table->dropPrimary();
|
|
||||||
});
|
|
||||||
}
|
|
||||||
};
|
|
|
@ -1,32 +0,0 @@
|
||||||
<?php
|
|
||||||
|
|
||||||
use Illuminate\Database\Migrations\Migration;
|
|
||||||
use Illuminate\Database\Schema\Blueprint;
|
|
||||||
use Illuminate\Support\Facades\Schema;
|
|
||||||
|
|
||||||
class AddIdMateriToInstruksiTable extends Migration
|
|
||||||
{
|
|
||||||
/**
|
|
||||||
* Run the migrations.
|
|
||||||
*
|
|
||||||
* @return void
|
|
||||||
*/
|
|
||||||
public function up()
|
|
||||||
{
|
|
||||||
Schema::table('instruksi', function (Blueprint $table) {
|
|
||||||
//
|
|
||||||
});
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Reverse the migrations.
|
|
||||||
*
|
|
||||||
* @return void
|
|
||||||
*/
|
|
||||||
public function down()
|
|
||||||
{
|
|
||||||
Schema::table('instruksi', function (Blueprint $table) {
|
|
||||||
//
|
|
||||||
});
|
|
||||||
}
|
|
||||||
}
|
|
|
@ -0,0 +1,324 @@
|
||||||
|
-- phpMyAdmin SQL Dump
|
||||||
|
-- version 5.0.2
|
||||||
|
-- https://www.phpmyadmin.net/
|
||||||
|
--
|
||||||
|
-- Host: 127.0.0.1
|
||||||
|
-- Generation Time: Aug 25, 2023 at 04:14 PM
|
||||||
|
-- Server version: 10.4.13-MariaDB
|
||||||
|
-- PHP Version: 7.4.8
|
||||||
|
|
||||||
|
SET SQL_MODE = "NO_AUTO_VALUE_ON_ZERO";
|
||||||
|
START TRANSACTION;
|
||||||
|
SET time_zone = "+00:00";
|
||||||
|
|
||||||
|
|
||||||
|
/*!40101 SET @OLD_CHARACTER_SET_CLIENT=@@CHARACTER_SET_CLIENT */;
|
||||||
|
/*!40101 SET @OLD_CHARACTER_SET_RESULTS=@@CHARACTER_SET_RESULTS */;
|
||||||
|
/*!40101 SET @OLD_COLLATION_CONNECTION=@@COLLATION_CONNECTION */;
|
||||||
|
/*!40101 SET NAMES utf8mb4 */;
|
||||||
|
|
||||||
|
--
|
||||||
|
-- Database: `metacognitif`
|
||||||
|
--
|
||||||
|
|
||||||
|
-- --------------------------------------------------------
|
||||||
|
|
||||||
|
--
|
||||||
|
-- Table structure for table `admin`
|
||||||
|
--
|
||||||
|
|
||||||
|
CREATE TABLE `admin` (
|
||||||
|
`id` bigint(20) UNSIGNED NOT NULL,
|
||||||
|
`nama_lengkap` varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL,
|
||||||
|
`nip` varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL,
|
||||||
|
`email` varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL,
|
||||||
|
`email_verified_at` timestamp NULL DEFAULT NULL,
|
||||||
|
`password` varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL,
|
||||||
|
`kelas_user` enum('1','2','3') COLLATE utf8mb4_unicode_ci NOT NULL,
|
||||||
|
`remember_token` varchar(100) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
|
||||||
|
`created_at` timestamp NULL DEFAULT NULL,
|
||||||
|
`updated_at` timestamp NULL DEFAULT NULL
|
||||||
|
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;
|
||||||
|
|
||||||
|
-- --------------------------------------------------------
|
||||||
|
|
||||||
|
--
|
||||||
|
-- Table structure for table `agent`
|
||||||
|
--
|
||||||
|
|
||||||
|
CREATE TABLE `agent` (
|
||||||
|
`id` bigint(20) UNSIGNED NOT NULL,
|
||||||
|
`text` varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL,
|
||||||
|
`created_at` timestamp NULL DEFAULT NULL,
|
||||||
|
`updated_at` timestamp NULL DEFAULT NULL
|
||||||
|
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;
|
||||||
|
|
||||||
|
-- --------------------------------------------------------
|
||||||
|
|
||||||
|
--
|
||||||
|
-- Table structure for table `failed_jobs`
|
||||||
|
--
|
||||||
|
|
||||||
|
CREATE TABLE `failed_jobs` (
|
||||||
|
`id` bigint(20) UNSIGNED NOT NULL,
|
||||||
|
`uuid` varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL,
|
||||||
|
`connection` text COLLATE utf8mb4_unicode_ci NOT NULL,
|
||||||
|
`queue` text COLLATE utf8mb4_unicode_ci NOT NULL,
|
||||||
|
`payload` longtext COLLATE utf8mb4_unicode_ci NOT NULL,
|
||||||
|
`exception` longtext COLLATE utf8mb4_unicode_ci NOT NULL,
|
||||||
|
`failed_at` timestamp NOT NULL DEFAULT current_timestamp()
|
||||||
|
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;
|
||||||
|
|
||||||
|
-- --------------------------------------------------------
|
||||||
|
|
||||||
|
--
|
||||||
|
-- Table structure for table `hasil`
|
||||||
|
--
|
||||||
|
|
||||||
|
CREATE TABLE `hasil` (
|
||||||
|
`id` bigint(20) UNSIGNED NOT NULL,
|
||||||
|
`id_user` int(11) NOT NULL,
|
||||||
|
`declarative_knowledge` int(11) NOT NULL,
|
||||||
|
`procedural_knowledge` int(11) NOT NULL,
|
||||||
|
`conditional_knowledge` int(11) NOT NULL,
|
||||||
|
`km_total` int(11) NOT NULL,
|
||||||
|
`km_class` varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL,
|
||||||
|
`planning` int(11) NOT NULL,
|
||||||
|
`information_management` int(11) NOT NULL,
|
||||||
|
`monitoring` int(11) NOT NULL,
|
||||||
|
`debugging` int(11) NOT NULL,
|
||||||
|
`evaluation` int(11) NOT NULL,
|
||||||
|
`rm_total` int(11) NOT NULL,
|
||||||
|
`rm_class` varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL,
|
||||||
|
`created_at` timestamp NULL DEFAULT NULL,
|
||||||
|
`updated_at` timestamp NULL DEFAULT NULL
|
||||||
|
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;
|
||||||
|
|
||||||
|
-- --------------------------------------------------------
|
||||||
|
|
||||||
|
--
|
||||||
|
-- Table structure for table `kuesioner`
|
||||||
|
--
|
||||||
|
|
||||||
|
CREATE TABLE `kuesioner` (
|
||||||
|
`id` bigint(20) UNSIGNED NOT NULL,
|
||||||
|
`soal` varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL,
|
||||||
|
`kategori_soal` enum('1','2','3','4','5','6','7','8') COLLATE utf8mb4_unicode_ci NOT NULL,
|
||||||
|
`created_at` timestamp NULL DEFAULT NULL,
|
||||||
|
`updated_at` timestamp NULL DEFAULT NULL
|
||||||
|
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;
|
||||||
|
|
||||||
|
-- --------------------------------------------------------
|
||||||
|
|
||||||
|
--
|
||||||
|
-- Table structure for table `migrations`
|
||||||
|
--
|
||||||
|
|
||||||
|
CREATE TABLE `migrations` (
|
||||||
|
`id` int(10) UNSIGNED NOT NULL,
|
||||||
|
`migration` varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL,
|
||||||
|
`batch` int(11) NOT NULL
|
||||||
|
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;
|
||||||
|
|
||||||
|
--
|
||||||
|
-- Dumping data for table `migrations`
|
||||||
|
--
|
||||||
|
|
||||||
|
INSERT INTO `migrations` (`id`, `migration`, `batch`) VALUES
|
||||||
|
(8, '2014_10_12_000000_create_users_table', 1),
|
||||||
|
(9, '2014_10_12_100000_create_password_resets_table', 1),
|
||||||
|
(10, '2019_08_19_000000_create_failed_jobs_table', 1),
|
||||||
|
(11, '2019_12_14_000001_create_personal_access_tokens_table', 1),
|
||||||
|
(12, '2023_07_20_193208_create_hasil', 1),
|
||||||
|
(13, '2023_07_20_193230_create_kuesioner', 1),
|
||||||
|
(14, '2023_07_20_193244_create_agent', 1),
|
||||||
|
(15, '2023_08_18_132019_create_admin', 2);
|
||||||
|
|
||||||
|
-- --------------------------------------------------------
|
||||||
|
|
||||||
|
--
|
||||||
|
-- Table structure for table `password_resets`
|
||||||
|
--
|
||||||
|
|
||||||
|
CREATE TABLE `password_resets` (
|
||||||
|
`email` varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL,
|
||||||
|
`token` varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL,
|
||||||
|
`created_at` timestamp NULL DEFAULT NULL
|
||||||
|
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;
|
||||||
|
|
||||||
|
--
|
||||||
|
-- Dumping data for table `password_resets`
|
||||||
|
--
|
||||||
|
|
||||||
|
INSERT INTO `password_resets` (`email`, `token`, `created_at`) VALUES
|
||||||
|
('radityaariefp@polije.ac.id', '$2y$10$4V7lbUU9a3hDAV3DXV5H.uY6CfqIYrHUB/VLsI8/Wg8HXTj4EIBEu', '2023-07-20 13:41:33');
|
||||||
|
|
||||||
|
-- --------------------------------------------------------
|
||||||
|
|
||||||
|
--
|
||||||
|
-- Table structure for table `personal_access_tokens`
|
||||||
|
--
|
||||||
|
|
||||||
|
CREATE TABLE `personal_access_tokens` (
|
||||||
|
`id` bigint(20) UNSIGNED NOT NULL,
|
||||||
|
`tokenable_type` varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL,
|
||||||
|
`tokenable_id` bigint(20) UNSIGNED NOT NULL,
|
||||||
|
`name` varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL,
|
||||||
|
`token` varchar(64) COLLATE utf8mb4_unicode_ci NOT NULL,
|
||||||
|
`abilities` text COLLATE utf8mb4_unicode_ci DEFAULT NULL,
|
||||||
|
`last_used_at` timestamp NULL DEFAULT NULL,
|
||||||
|
`created_at` timestamp NULL DEFAULT NULL,
|
||||||
|
`updated_at` timestamp NULL DEFAULT NULL
|
||||||
|
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;
|
||||||
|
|
||||||
|
-- --------------------------------------------------------
|
||||||
|
|
||||||
|
--
|
||||||
|
-- Table structure for table `users`
|
||||||
|
--
|
||||||
|
|
||||||
|
CREATE TABLE `users` (
|
||||||
|
`id` bigint(20) UNSIGNED NOT NULL,
|
||||||
|
`nama_lengkap` varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL,
|
||||||
|
`nim` varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL,
|
||||||
|
`semester` int(11) NOT NULL,
|
||||||
|
`angkatan` int(11) NOT NULL,
|
||||||
|
`email` varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL,
|
||||||
|
`email_verified_at` timestamp NULL DEFAULT NULL,
|
||||||
|
`password` varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL,
|
||||||
|
`foto` varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
|
||||||
|
`kelas_user` enum('1','2','3') COLLATE utf8mb4_unicode_ci NOT NULL,
|
||||||
|
`remember_token` varchar(100) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
|
||||||
|
`created_at` timestamp NULL DEFAULT NULL,
|
||||||
|
`updated_at` timestamp NULL DEFAULT NULL
|
||||||
|
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;
|
||||||
|
|
||||||
|
--
|
||||||
|
-- Dumping data for table `users`
|
||||||
|
--
|
||||||
|
|
||||||
|
INSERT INTO `users` (`id`, `nama_lengkap`, `nim`, `semester`, `angkatan`, `email`, `email_verified_at`, `password`, `foto`, `kelas_user`, `remember_token`, `created_at`, `updated_at`) VALUES
|
||||||
|
(1, 'Raditya Arief Pratama', 'E4212423', 5, 2021, 'radityaariefp@polije.ac.id', NULL, '$2y$10$BiKA1.FSwf5dasvCOFJT1.xk7xcBeo8/e3xnVJvMN5vB/sMtciTPG', NULL, '3', 'TrWqo6l5DZ7wwcM1Hu0LBxmE9L8wU1eERg63Su40TsNGGY0zs0NoBTrPA2g5', '2023-07-20 13:13:22', '2023-07-20 13:13:22'),
|
||||||
|
(2, 'Admin', 'E4213214', 5, 2021, 'tifnganjuk@polije.ac.id', NULL, '$2y$10$bQ5ApEyhZ.bVSVy3oH1cv.DB/aijWrkinTGN4AEj7LBoWdb8e2/L.', NULL, '1', NULL, NULL, NULL);
|
||||||
|
|
||||||
|
--
|
||||||
|
-- Indexes for dumped tables
|
||||||
|
--
|
||||||
|
|
||||||
|
--
|
||||||
|
-- Indexes for table `admin`
|
||||||
|
--
|
||||||
|
ALTER TABLE `admin`
|
||||||
|
ADD PRIMARY KEY (`id`),
|
||||||
|
ADD UNIQUE KEY `admin_nama_lengkap_unique` (`nama_lengkap`),
|
||||||
|
ADD UNIQUE KEY `admin_email_unique` (`email`);
|
||||||
|
|
||||||
|
--
|
||||||
|
-- Indexes for table `agent`
|
||||||
|
--
|
||||||
|
ALTER TABLE `agent`
|
||||||
|
ADD PRIMARY KEY (`id`);
|
||||||
|
|
||||||
|
--
|
||||||
|
-- Indexes for table `failed_jobs`
|
||||||
|
--
|
||||||
|
ALTER TABLE `failed_jobs`
|
||||||
|
ADD PRIMARY KEY (`id`),
|
||||||
|
ADD UNIQUE KEY `failed_jobs_uuid_unique` (`uuid`);
|
||||||
|
|
||||||
|
--
|
||||||
|
-- Indexes for table `hasil`
|
||||||
|
--
|
||||||
|
ALTER TABLE `hasil`
|
||||||
|
ADD PRIMARY KEY (`id`);
|
||||||
|
|
||||||
|
--
|
||||||
|
-- Indexes for table `kuesioner`
|
||||||
|
--
|
||||||
|
ALTER TABLE `kuesioner`
|
||||||
|
ADD PRIMARY KEY (`id`);
|
||||||
|
|
||||||
|
--
|
||||||
|
-- Indexes for table `migrations`
|
||||||
|
--
|
||||||
|
ALTER TABLE `migrations`
|
||||||
|
ADD PRIMARY KEY (`id`);
|
||||||
|
|
||||||
|
--
|
||||||
|
-- Indexes for table `password_resets`
|
||||||
|
--
|
||||||
|
ALTER TABLE `password_resets`
|
||||||
|
ADD KEY `password_resets_email_index` (`email`);
|
||||||
|
|
||||||
|
--
|
||||||
|
-- Indexes for table `personal_access_tokens`
|
||||||
|
--
|
||||||
|
ALTER TABLE `personal_access_tokens`
|
||||||
|
ADD PRIMARY KEY (`id`),
|
||||||
|
ADD UNIQUE KEY `personal_access_tokens_token_unique` (`token`),
|
||||||
|
ADD KEY `personal_access_tokens_tokenable_type_tokenable_id_index` (`tokenable_type`,`tokenable_id`);
|
||||||
|
|
||||||
|
--
|
||||||
|
-- Indexes for table `users`
|
||||||
|
--
|
||||||
|
ALTER TABLE `users`
|
||||||
|
ADD PRIMARY KEY (`id`),
|
||||||
|
ADD UNIQUE KEY `users_nama_lengkap_unique` (`nama_lengkap`),
|
||||||
|
ADD UNIQUE KEY `users_email_unique` (`email`);
|
||||||
|
|
||||||
|
--
|
||||||
|
-- AUTO_INCREMENT for dumped tables
|
||||||
|
--
|
||||||
|
|
||||||
|
--
|
||||||
|
-- AUTO_INCREMENT for table `admin`
|
||||||
|
--
|
||||||
|
ALTER TABLE `admin`
|
||||||
|
MODIFY `id` bigint(20) UNSIGNED NOT NULL AUTO_INCREMENT;
|
||||||
|
|
||||||
|
--
|
||||||
|
-- AUTO_INCREMENT for table `agent`
|
||||||
|
--
|
||||||
|
ALTER TABLE `agent`
|
||||||
|
MODIFY `id` bigint(20) UNSIGNED NOT NULL AUTO_INCREMENT;
|
||||||
|
|
||||||
|
--
|
||||||
|
-- AUTO_INCREMENT for table `failed_jobs`
|
||||||
|
--
|
||||||
|
ALTER TABLE `failed_jobs`
|
||||||
|
MODIFY `id` bigint(20) UNSIGNED NOT NULL AUTO_INCREMENT;
|
||||||
|
|
||||||
|
--
|
||||||
|
-- AUTO_INCREMENT for table `hasil`
|
||||||
|
--
|
||||||
|
ALTER TABLE `hasil`
|
||||||
|
MODIFY `id` bigint(20) UNSIGNED NOT NULL AUTO_INCREMENT;
|
||||||
|
|
||||||
|
--
|
||||||
|
-- AUTO_INCREMENT for table `kuesioner`
|
||||||
|
--
|
||||||
|
ALTER TABLE `kuesioner`
|
||||||
|
MODIFY `id` bigint(20) UNSIGNED NOT NULL AUTO_INCREMENT;
|
||||||
|
|
||||||
|
--
|
||||||
|
-- AUTO_INCREMENT for table `migrations`
|
||||||
|
--
|
||||||
|
ALTER TABLE `migrations`
|
||||||
|
MODIFY `id` int(10) UNSIGNED NOT NULL AUTO_INCREMENT, AUTO_INCREMENT=16;
|
||||||
|
|
||||||
|
--
|
||||||
|
-- AUTO_INCREMENT for table `personal_access_tokens`
|
||||||
|
--
|
||||||
|
ALTER TABLE `personal_access_tokens`
|
||||||
|
MODIFY `id` bigint(20) UNSIGNED NOT NULL AUTO_INCREMENT;
|
||||||
|
|
||||||
|
--
|
||||||
|
-- AUTO_INCREMENT for table `users`
|
||||||
|
--
|
||||||
|
ALTER TABLE `users`
|
||||||
|
MODIFY `id` bigint(20) UNSIGNED NOT NULL AUTO_INCREMENT, AUTO_INCREMENT=3;
|
||||||
|
COMMIT;
|
||||||
|
|
||||||
|
/*!40101 SET CHARACTER_SET_CLIENT=@OLD_CHARACTER_SET_CLIENT */;
|
||||||
|
/*!40101 SET CHARACTER_SET_RESULTS=@OLD_CHARACTER_SET_RESULTS */;
|
||||||
|
/*!40101 SET COLLATION_CONNECTION=@OLD_COLLATION_CONNECTION */;
|
|
@ -0,0 +1,451 @@
|
||||||
|
-- phpMyAdmin SQL Dump
|
||||||
|
-- version 5.2.0
|
||||||
|
-- https://www.phpmyadmin.net/
|
||||||
|
--
|
||||||
|
-- Host: 127.0.0.1
|
||||||
|
-- Generation Time: Oct 04, 2023 at 01:58 PM
|
||||||
|
-- Server version: 10.4.25-MariaDB
|
||||||
|
-- PHP Version: 8.1.10
|
||||||
|
|
||||||
|
SET SQL_MODE = "NO_AUTO_VALUE_ON_ZERO";
|
||||||
|
START TRANSACTION;
|
||||||
|
SET time_zone = "+00:00";
|
||||||
|
|
||||||
|
|
||||||
|
/*!40101 SET @OLD_CHARACTER_SET_CLIENT=@@CHARACTER_SET_CLIENT */;
|
||||||
|
/*!40101 SET @OLD_CHARACTER_SET_RESULTS=@@CHARACTER_SET_RESULTS */;
|
||||||
|
/*!40101 SET @OLD_COLLATION_CONNECTION=@@COLLATION_CONNECTION */;
|
||||||
|
/*!40101 SET NAMES utf8mb4 */;
|
||||||
|
|
||||||
|
--
|
||||||
|
-- Database: `metacognitif`
|
||||||
|
--
|
||||||
|
|
||||||
|
-- --------------------------------------------------------
|
||||||
|
|
||||||
|
--
|
||||||
|
-- Table structure for table `admin`
|
||||||
|
--
|
||||||
|
|
||||||
|
CREATE TABLE `admin` (
|
||||||
|
`id` bigint(20) UNSIGNED NOT NULL,
|
||||||
|
`nama_lengkap` varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL,
|
||||||
|
`nip` varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL,
|
||||||
|
`email` varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL,
|
||||||
|
`email_verified_at` timestamp NULL DEFAULT NULL,
|
||||||
|
`password` varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL,
|
||||||
|
`kelas_user` enum('1','2','3') COLLATE utf8mb4_unicode_ci NOT NULL,
|
||||||
|
`remember_token` varchar(100) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
|
||||||
|
`created_at` timestamp NULL DEFAULT NULL,
|
||||||
|
`updated_at` timestamp NULL DEFAULT NULL
|
||||||
|
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;
|
||||||
|
|
||||||
|
-- --------------------------------------------------------
|
||||||
|
|
||||||
|
--
|
||||||
|
-- Table structure for table `agent`
|
||||||
|
--
|
||||||
|
|
||||||
|
CREATE TABLE `agent` (
|
||||||
|
`id` bigint(20) UNSIGNED NOT NULL,
|
||||||
|
`text` varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL,
|
||||||
|
`created_at` timestamp NULL DEFAULT NULL,
|
||||||
|
`updated_at` timestamp NULL DEFAULT NULL
|
||||||
|
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;
|
||||||
|
|
||||||
|
-- --------------------------------------------------------
|
||||||
|
|
||||||
|
--
|
||||||
|
-- Table structure for table `failed_jobs`
|
||||||
|
--
|
||||||
|
|
||||||
|
CREATE TABLE `failed_jobs` (
|
||||||
|
`id` bigint(20) UNSIGNED NOT NULL,
|
||||||
|
`uuid` varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL,
|
||||||
|
`connection` text COLLATE utf8mb4_unicode_ci NOT NULL,
|
||||||
|
`queue` text COLLATE utf8mb4_unicode_ci NOT NULL,
|
||||||
|
`payload` longtext COLLATE utf8mb4_unicode_ci NOT NULL,
|
||||||
|
`exception` longtext COLLATE utf8mb4_unicode_ci NOT NULL,
|
||||||
|
`failed_at` timestamp NOT NULL DEFAULT current_timestamp()
|
||||||
|
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;
|
||||||
|
|
||||||
|
-- --------------------------------------------------------
|
||||||
|
|
||||||
|
--
|
||||||
|
-- Table structure for table `hasil`
|
||||||
|
--
|
||||||
|
|
||||||
|
CREATE TABLE `hasil` (
|
||||||
|
`id` bigint(20) UNSIGNED NOT NULL,
|
||||||
|
`id_user` int(11) NOT NULL,
|
||||||
|
`id_periode` int(11) NOT NULL,
|
||||||
|
`declarative_knowledge` int(11) NOT NULL,
|
||||||
|
`procedural_knowledge` int(11) NOT NULL,
|
||||||
|
`conditional_knowledge` int(11) NOT NULL,
|
||||||
|
`km_total` int(11) NOT NULL,
|
||||||
|
`km_class` varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL,
|
||||||
|
`planning` int(11) NOT NULL,
|
||||||
|
`information_management` int(11) NOT NULL,
|
||||||
|
`monitoring` int(11) NOT NULL,
|
||||||
|
`debugging` int(11) NOT NULL,
|
||||||
|
`evaluation` int(11) NOT NULL,
|
||||||
|
`rm_total` int(11) NOT NULL,
|
||||||
|
`rm_class` varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL,
|
||||||
|
`created_at` timestamp NULL DEFAULT NULL,
|
||||||
|
`updated_at` timestamp NULL DEFAULT NULL
|
||||||
|
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;
|
||||||
|
|
||||||
|
-- --------------------------------------------------------
|
||||||
|
|
||||||
|
--
|
||||||
|
-- Table structure for table `kuesioner`
|
||||||
|
--
|
||||||
|
|
||||||
|
CREATE TABLE `kuesioner` (
|
||||||
|
`id` bigint(20) UNSIGNED NOT NULL,
|
||||||
|
`soal` varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL,
|
||||||
|
`kategori_soal` enum('1','2','3','4','5','6','7','8') COLLATE utf8mb4_unicode_ci NOT NULL,
|
||||||
|
`created_at` timestamp NULL DEFAULT NULL,
|
||||||
|
`updated_at` timestamp NULL DEFAULT NULL
|
||||||
|
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;
|
||||||
|
|
||||||
|
--
|
||||||
|
-- Dumping data for table `kuesioner`
|
||||||
|
--
|
||||||
|
|
||||||
|
INSERT INTO `kuesioner` (`id`, `soal`, `kategori_soal`, `created_at`, `updated_at`) VALUES
|
||||||
|
(1, 'Saya bertanya kepada diri sendiri, ”Apakah saya sudah mencapai tujuan saya?”, ketika sedang berupaya mencapai tujuan secara intensif.', '6', '2023-10-04 11:49:51', '2023-10-04 11:49:51'),
|
||||||
|
(2, 'Saya mempertimbangkan berbagai pilihan sebelum saya menyelesaikan sebuah permasalahan.', '6', '2023-10-04 11:49:51', '2023-10-04 11:49:51'),
|
||||||
|
(3, 'Saya coba menggunakan cara-cara yang pernah saya pakai sebelumnya', '2', '2023-10-04 11:49:51', '2023-10-04 11:49:51'),
|
||||||
|
(4, 'Saya terus menerus mengatur diri selama belajar agar memiliki waktu yang cukup.', '4', '2023-10-04 11:49:51', '2023-10-04 11:49:51'),
|
||||||
|
(5, 'Saya memahami kekuatan dan kelemahan kecerdasan saya.', '1', '2023-10-04 11:49:51', '2023-10-04 11:49:51'),
|
||||||
|
(6, 'Saya berpikir tentang apa yang sebenarnya perlu saya pelajari sebelum mengerjakan tugas.', '4', '2023-10-04 11:49:51', '2023-10-04 11:49:51'),
|
||||||
|
(7, 'Saya menyadari bagaimana baiknya saya menyelesaikan suatu tes.', '8', '2023-10-04 11:49:51', '2023-10-04 11:49:51'),
|
||||||
|
(8, 'Saya menyusun tujuan-tujuan khusus sebelum saya mengerjakan tugas.', '4', '2023-10-04 11:49:51', '2023-10-04 11:49:51'),
|
||||||
|
(9, 'Saya bertindak perlahan-lahan dan hati-hati bila mana menjumpai informasi penting.', '5', '2023-10-04 11:49:51', '2023-10-04 11:49:51'),
|
||||||
|
(10, 'Saya mengetahui macam informasi apa yang paling penting untuk dipelajari.', '1', '2023-10-04 11:49:51', '2023-10-04 11:49:51'),
|
||||||
|
(11, 'Saya bertanya kepada diri sendiri ketika mempertimbangkan seluruh pilihan untuk memecahkan suatu masalah.', '6', '2023-10-04 11:49:51', '2023-10-04 11:49:51'),
|
||||||
|
(12, 'Saya terampil/mahir menyusun dan merangkai suatu informasi.', '1', '2023-10-04 11:49:51', '2023-10-04 11:49:51'),
|
||||||
|
(13, 'Saya secara sadar memusatkan perhatian kepada informasi yang penting.', '5', '2023-10-04 11:49:51', '2023-10-04 11:49:51'),
|
||||||
|
(14, 'Untuk tiap cara yang saya gunakan, saya mempunyai maksud tertentu.', '2', '2023-10-04 11:49:51', '2023-10-04 11:49:51'),
|
||||||
|
(15, 'Saya belajar paling baik ketika saya mengetahui topik pembelajaran itu.', '3', '2023-10-04 11:49:51', '2023-10-04 11:49:51'),
|
||||||
|
(16, 'Saya mengetahui apa yang diharapkan guru untuk saya pelajari.', '1', '2023-10-04 11:49:51', '2023-10-04 11:49:51'),
|
||||||
|
(17, 'Saya mudah mengingat informasi.', '1', '2023-10-04 11:49:51', '2023-10-04 11:49:51'),
|
||||||
|
(18, 'Saya menggunakan cara belajar yang berbeda-beda tergantung pada situasi dan kondisi.', '3', '2023-10-04 11:49:51', '2023-10-04 11:49:51'),
|
||||||
|
(19, 'Setelah saya menyelesaikan suatu tugas, saya bertanya kepada diri sendiri apakah ada cara yang lebih mudah.', '8', '2023-10-04 11:49:51', '2023-10-04 11:49:51'),
|
||||||
|
(20, 'Saya mengendalikan sendiri kualitas belajar saya.', '1', '2023-10-04 11:49:51', '2023-10-04 11:49:51'),
|
||||||
|
(21, 'Secara teratur saya melakukan peninjauan kemampuan untuk menolong saya memahami hubungan-hubungan penting.', '6', '2023-10-04 11:49:51', '2023-10-04 11:49:51'),
|
||||||
|
(22, 'Sebelum memulai sesuatu, saya bertanya kepada diri sendiri tentang hal-hal terkait.', '4', '2023-10-04 11:49:51', '2023-10-04 11:49:51'),
|
||||||
|
(23, 'Saya mempertimbangkan berbagai cara untuk memecahkan sesuatu masalah sebelum akhirnya memutuskan salah satu diantaranya.', '4', '2023-10-04 11:49:51', '2023-10-04 11:49:51'),
|
||||||
|
(24, 'Setiap kali selesai belajar, saya membuat rangkuman.', '8', '2023-10-04 11:49:51', '2023-10-04 11:49:51'),
|
||||||
|
(25, 'Saya menanyakan orang lain bilamana saya tidak memahami sesuatu.', '7', '2023-10-04 11:49:51', '2023-10-04 11:49:51'),
|
||||||
|
(26, 'Saya dapat memotivasi diri untuk belajar bilamana diperlukan.', '3', '2023-10-04 11:49:51', '2023-10-04 11:49:51'),
|
||||||
|
(27, 'Saya menyadari cara apa yang digunakan ketika saya belajar.', '2', '2023-10-04 11:49:51', '2023-10-04 11:49:51'),
|
||||||
|
(28, 'Saya biasa memikirkan manfaat cara-cara belajar yang saya pakai.', '6', '2023-10-04 11:49:51', '2023-10-04 11:49:51'),
|
||||||
|
(29, 'Saya memanfaatkan kekuatan kecerdasan saya untuk menutupi kekurangan saya.', '3', '2023-10-04 11:49:51', '2023-10-04 11:49:51'),
|
||||||
|
(30, 'Saya memusatkan perhatian terhadap arti dan manfaat dari informasi yang baru.', '5', '2023-10-04 11:49:51', '2023-10-04 11:49:51'),
|
||||||
|
(31, 'Saya menemukan contoh-contoh sendiri sehingga informasi menjadi lebih bermakna atau jelas.', '5', '2023-10-04 11:49:51', '2023-10-04 11:49:51'),
|
||||||
|
(32, 'Saya tergolong adil menilai diri sendiri tentang seberapa baiknya saya memahami sesuatu.', '1', '2023-10-04 11:49:51', '2023-10-04 11:49:51'),
|
||||||
|
(33, 'Secara otomatis saya sadar menggunakan cara belajar yang berguna.', '2', '2023-10-04 11:49:51', '2023-10-04 11:49:51'),
|
||||||
|
(34, 'Secara teratur saya istirahat sebentar untuk mengatur pemahaman saya.', '6', '2023-10-04 11:49:51', '2023-10-04 11:49:51'),
|
||||||
|
(35, 'Saya menyadari/mengetahui bahwa setiap cara yang saya gunakan adalah yang paling efektif atau tepat.', '3', '2023-10-04 11:49:51', '2023-10-04 11:49:51'),
|
||||||
|
(36, 'Saya bertanya kepada diri sendiri tentang seberapa baik saya mencapai tujuan setelah menyelesaikan tugas.', '8', '2023-10-04 11:49:51', '2023-10-04 11:49:51'),
|
||||||
|
(37, 'Saya membuat gambar atau bagan untuk menolong saya selama saya belajar.', '5', '2023-10-04 11:49:51', '2023-10-04 11:49:51'),
|
||||||
|
(38, 'Saya bertanya kepada diri sendiri apakah saya telah mempertimbangkan semua pilihan, setiap kali saya memecahkan suatu masalah.', '8', '2023-10-04 11:49:51', '2023-10-04 11:49:51'),
|
||||||
|
(39, 'Saya berupaya memahami informasi baru dengan kata-kata saya sendiri.', '5', '2023-10-04 11:49:51', '2023-10-04 11:49:51'),
|
||||||
|
(40, 'Saya mengubah cara jika saya gagal memahami.', '7', '2023-10-04 11:49:51', '2023-10-04 11:49:51'),
|
||||||
|
(41, 'Saya menggunakan urutan topik/materi dari buku/teks untuk membantu saya belajar.', '5', '2023-10-04 11:49:51', '2023-10-04 11:49:51'),
|
||||||
|
(42, 'Saya membaca petunjuk secara teliti sebelum memulai melakukan suatu tugas.', '4', '2023-10-04 11:49:51', '2023-10-04 11:49:51'),
|
||||||
|
(43, 'Saya bertanya kepada diri sendiri apakah hal yang sedang dibaca berhubungan dengan apa yang telah saya ketahui.', '5', '2023-10-04 11:49:51', '2023-10-04 11:49:51'),
|
||||||
|
(44, 'Saya memikirkan kembali anggapan saya ketika saya bingung.', '7', '2023-10-04 11:49:51', '2023-10-04 11:49:51'),
|
||||||
|
(45, 'Saya mengatur waktu saya untuk mencapai tujuan sebaik-baiknya.', '4', '2023-10-04 11:49:51', '2023-10-04 11:49:51'),
|
||||||
|
(46, 'Saya lebih banyak belajar jika saya tertarik/senang dengan topik.', '1', '2023-10-04 11:49:51', '2023-10-04 11:49:51'),
|
||||||
|
(47, 'Saya berupaya membagi kegiatan belajar saya menjadi langkah-langkah yang lebih kecil.', '5', '2023-10-04 11:49:51', '2023-10-04 11:49:51'),
|
||||||
|
(48, 'Saya lebih memperhatikan makna umum dari pada makna khusus.', '5', '2023-10-04 11:49:51', '2023-10-04 11:49:51'),
|
||||||
|
(49, 'Saya bertanya kepada diri sendiri tentang seberapa baik saya bekerja, pada waktu mempelajari sesuatu hal yang baru.', '6', '2023-10-04 11:49:51', '2023-10-04 11:49:51'),
|
||||||
|
(50, 'Saya bertanya kepada diri sendiri apakah saya belajar sebanyak yang saya mampu, setiap kali saya menyelesaikan tugas.', '8', '2023-10-04 11:49:51', '2023-10-04 11:49:51'),
|
||||||
|
(51, 'Saya melupakan informasi baru yang tidak jelas.', '7', '2023-10-04 11:49:51', '2023-10-04 11:49:51'),
|
||||||
|
(52, 'Saya berhenti dan selanjutnya membaca kembali jika saya bingung.', '7', '2023-10-04 11:49:51', '2023-10-04 11:49:51');
|
||||||
|
|
||||||
|
-- --------------------------------------------------------
|
||||||
|
|
||||||
|
--
|
||||||
|
-- Table structure for table `migrations`
|
||||||
|
--
|
||||||
|
|
||||||
|
CREATE TABLE `migrations` (
|
||||||
|
`id` int(10) UNSIGNED NOT NULL,
|
||||||
|
`migration` varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL,
|
||||||
|
`batch` int(11) NOT NULL
|
||||||
|
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;
|
||||||
|
|
||||||
|
--
|
||||||
|
-- Dumping data for table `migrations`
|
||||||
|
--
|
||||||
|
|
||||||
|
INSERT INTO `migrations` (`id`, `migration`, `batch`) VALUES
|
||||||
|
(8, '2014_10_12_000000_create_users_table', 1),
|
||||||
|
(9, '2014_10_12_100000_create_password_resets_table', 1),
|
||||||
|
(10, '2019_08_19_000000_create_failed_jobs_table', 1),
|
||||||
|
(11, '2019_12_14_000001_create_personal_access_tokens_table', 1),
|
||||||
|
(12, '2023_07_20_193208_create_hasil', 1),
|
||||||
|
(13, '2023_07_20_193230_create_kuesioner', 1),
|
||||||
|
(14, '2023_07_20_193244_create_agent', 1),
|
||||||
|
(15, '2023_08_18_132019_create_admin', 2);
|
||||||
|
|
||||||
|
-- --------------------------------------------------------
|
||||||
|
|
||||||
|
--
|
||||||
|
-- Table structure for table `password_resets`
|
||||||
|
--
|
||||||
|
|
||||||
|
CREATE TABLE `password_resets` (
|
||||||
|
`email` varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL,
|
||||||
|
`token` varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL,
|
||||||
|
`created_at` timestamp NULL DEFAULT NULL
|
||||||
|
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;
|
||||||
|
|
||||||
|
--
|
||||||
|
-- Dumping data for table `password_resets`
|
||||||
|
--
|
||||||
|
|
||||||
|
INSERT INTO `password_resets` (`email`, `token`, `created_at`) VALUES
|
||||||
|
('radityaariefp@polije.ac.id', '$2y$10$4V7lbUU9a3hDAV3DXV5H.uY6CfqIYrHUB/VLsI8/Wg8HXTj4EIBEu', '2023-07-20 13:41:33');
|
||||||
|
|
||||||
|
-- --------------------------------------------------------
|
||||||
|
|
||||||
|
--
|
||||||
|
-- Table structure for table `periode`
|
||||||
|
--
|
||||||
|
|
||||||
|
CREATE TABLE `periode` (
|
||||||
|
`id` int(11) NOT NULL,
|
||||||
|
`semester` enum('1','2') NOT NULL,
|
||||||
|
`tahun` char(9) NOT NULL,
|
||||||
|
`created_at` timestamp NULL DEFAULT NULL,
|
||||||
|
`updated_at` timestamp NULL DEFAULT NULL
|
||||||
|
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;
|
||||||
|
|
||||||
|
-- --------------------------------------------------------
|
||||||
|
|
||||||
|
--
|
||||||
|
-- Table structure for table `personal_access_tokens`
|
||||||
|
--
|
||||||
|
|
||||||
|
CREATE TABLE `personal_access_tokens` (
|
||||||
|
`id` bigint(20) UNSIGNED NOT NULL,
|
||||||
|
`tokenable_type` varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL,
|
||||||
|
`tokenable_id` bigint(20) UNSIGNED NOT NULL,
|
||||||
|
`name` varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL,
|
||||||
|
`token` varchar(64) COLLATE utf8mb4_unicode_ci NOT NULL,
|
||||||
|
`abilities` text COLLATE utf8mb4_unicode_ci DEFAULT NULL,
|
||||||
|
`last_used_at` timestamp NULL DEFAULT NULL,
|
||||||
|
`created_at` timestamp NULL DEFAULT NULL,
|
||||||
|
`updated_at` timestamp NULL DEFAULT NULL
|
||||||
|
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;
|
||||||
|
|
||||||
|
-- --------------------------------------------------------
|
||||||
|
|
||||||
|
--
|
||||||
|
-- Table structure for table `pilih_periode`
|
||||||
|
--
|
||||||
|
|
||||||
|
CREATE TABLE `pilih_periode` (
|
||||||
|
`id` int(11) NOT NULL,
|
||||||
|
`id_periode` int(11) DEFAULT NULL,
|
||||||
|
`aktif` enum('0','1') NOT NULL
|
||||||
|
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;
|
||||||
|
|
||||||
|
--
|
||||||
|
-- Dumping data for table `pilih_periode`
|
||||||
|
--
|
||||||
|
|
||||||
|
INSERT INTO `pilih_periode` (`id`, `id_periode`, `aktif`) VALUES
|
||||||
|
(1, NULL, '1');
|
||||||
|
|
||||||
|
-- --------------------------------------------------------
|
||||||
|
|
||||||
|
--
|
||||||
|
-- Table structure for table `users`
|
||||||
|
--
|
||||||
|
|
||||||
|
CREATE TABLE `users` (
|
||||||
|
`id` bigint(20) UNSIGNED NOT NULL,
|
||||||
|
`nama_lengkap` varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL,
|
||||||
|
`nim` varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL,
|
||||||
|
`semester` int(11) NOT NULL,
|
||||||
|
`angkatan` int(11) NOT NULL,
|
||||||
|
`email` varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL,
|
||||||
|
`email_verified_at` timestamp NULL DEFAULT NULL,
|
||||||
|
`password` varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL,
|
||||||
|
`foto` varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
|
||||||
|
`kelas_user` enum('1','2','3') COLLATE utf8mb4_unicode_ci NOT NULL,
|
||||||
|
`remember_token` varchar(100) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
|
||||||
|
`created_at` timestamp NULL DEFAULT NULL,
|
||||||
|
`updated_at` timestamp NULL DEFAULT NULL
|
||||||
|
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;
|
||||||
|
|
||||||
|
--
|
||||||
|
-- Dumping data for table `users`
|
||||||
|
--
|
||||||
|
|
||||||
|
INSERT INTO `users` (`id`, `nama_lengkap`, `nim`, `semester`, `angkatan`, `email`, `email_verified_at`, `password`, `foto`, `kelas_user`, `remember_token`, `created_at`, `updated_at`) VALUES
|
||||||
|
(1, 'Raditya Arief Pratama', 'E4212423', 5, 2021, 'radityaariefp@polije.ac.id', NULL, '$2y$10$BiKA1.FSwf5dasvCOFJT1.xk7xcBeo8/e3xnVJvMN5vB/sMtciTPG', NULL, '3', 'PB96bDJ1I1CSIJLiTqLTdIHmyTj2aOZQORYlx7j2pPLhhbYmcll7bVcZRwkb', '2023-07-20 13:13:22', '2023-07-20 13:13:22'),
|
||||||
|
(2, 'Admin', 'E4213214', 5, 2021, 'tifnganjuk@polije.ac.id', NULL, '$2y$10$bQ5ApEyhZ.bVSVy3oH1cv.DB/aijWrkinTGN4AEj7LBoWdb8e2/L.', NULL, '1', NULL, NULL, NULL);
|
||||||
|
|
||||||
|
--
|
||||||
|
-- Indexes for dumped tables
|
||||||
|
--
|
||||||
|
|
||||||
|
--
|
||||||
|
-- Indexes for table `admin`
|
||||||
|
--
|
||||||
|
ALTER TABLE `admin`
|
||||||
|
ADD PRIMARY KEY (`id`),
|
||||||
|
ADD UNIQUE KEY `admin_nama_lengkap_unique` (`nama_lengkap`),
|
||||||
|
ADD UNIQUE KEY `admin_email_unique` (`email`);
|
||||||
|
|
||||||
|
--
|
||||||
|
-- Indexes for table `agent`
|
||||||
|
--
|
||||||
|
ALTER TABLE `agent`
|
||||||
|
ADD PRIMARY KEY (`id`);
|
||||||
|
|
||||||
|
--
|
||||||
|
-- Indexes for table `failed_jobs`
|
||||||
|
--
|
||||||
|
ALTER TABLE `failed_jobs`
|
||||||
|
ADD PRIMARY KEY (`id`),
|
||||||
|
ADD UNIQUE KEY `failed_jobs_uuid_unique` (`uuid`);
|
||||||
|
|
||||||
|
--
|
||||||
|
-- Indexes for table `hasil`
|
||||||
|
--
|
||||||
|
ALTER TABLE `hasil`
|
||||||
|
ADD PRIMARY KEY (`id`);
|
||||||
|
|
||||||
|
--
|
||||||
|
-- Indexes for table `kuesioner`
|
||||||
|
--
|
||||||
|
ALTER TABLE `kuesioner`
|
||||||
|
ADD PRIMARY KEY (`id`);
|
||||||
|
|
||||||
|
--
|
||||||
|
-- Indexes for table `migrations`
|
||||||
|
--
|
||||||
|
ALTER TABLE `migrations`
|
||||||
|
ADD PRIMARY KEY (`id`);
|
||||||
|
|
||||||
|
--
|
||||||
|
-- Indexes for table `password_resets`
|
||||||
|
--
|
||||||
|
ALTER TABLE `password_resets`
|
||||||
|
ADD KEY `password_resets_email_index` (`email`);
|
||||||
|
|
||||||
|
--
|
||||||
|
-- Indexes for table `periode`
|
||||||
|
--
|
||||||
|
ALTER TABLE `periode`
|
||||||
|
ADD PRIMARY KEY (`id`);
|
||||||
|
|
||||||
|
--
|
||||||
|
-- Indexes for table `personal_access_tokens`
|
||||||
|
--
|
||||||
|
ALTER TABLE `personal_access_tokens`
|
||||||
|
ADD PRIMARY KEY (`id`),
|
||||||
|
ADD UNIQUE KEY `personal_access_tokens_token_unique` (`token`),
|
||||||
|
ADD KEY `personal_access_tokens_tokenable_type_tokenable_id_index` (`tokenable_type`,`tokenable_id`);
|
||||||
|
|
||||||
|
--
|
||||||
|
-- Indexes for table `pilih_periode`
|
||||||
|
--
|
||||||
|
ALTER TABLE `pilih_periode`
|
||||||
|
ADD PRIMARY KEY (`id`),
|
||||||
|
ADD KEY `id_periode` (`id_periode`);
|
||||||
|
|
||||||
|
--
|
||||||
|
-- Indexes for table `users`
|
||||||
|
--
|
||||||
|
ALTER TABLE `users`
|
||||||
|
ADD PRIMARY KEY (`id`),
|
||||||
|
ADD UNIQUE KEY `users_nama_lengkap_unique` (`nama_lengkap`),
|
||||||
|
ADD UNIQUE KEY `users_email_unique` (`email`);
|
||||||
|
|
||||||
|
--
|
||||||
|
-- AUTO_INCREMENT for dumped tables
|
||||||
|
--
|
||||||
|
|
||||||
|
--
|
||||||
|
-- AUTO_INCREMENT for table `admin`
|
||||||
|
--
|
||||||
|
ALTER TABLE `admin`
|
||||||
|
MODIFY `id` bigint(20) UNSIGNED NOT NULL AUTO_INCREMENT;
|
||||||
|
|
||||||
|
--
|
||||||
|
-- AUTO_INCREMENT for table `agent`
|
||||||
|
--
|
||||||
|
ALTER TABLE `agent`
|
||||||
|
MODIFY `id` bigint(20) UNSIGNED NOT NULL AUTO_INCREMENT;
|
||||||
|
|
||||||
|
--
|
||||||
|
-- AUTO_INCREMENT for table `failed_jobs`
|
||||||
|
--
|
||||||
|
ALTER TABLE `failed_jobs`
|
||||||
|
MODIFY `id` bigint(20) UNSIGNED NOT NULL AUTO_INCREMENT;
|
||||||
|
|
||||||
|
--
|
||||||
|
-- AUTO_INCREMENT for table `hasil`
|
||||||
|
--
|
||||||
|
ALTER TABLE `hasil`
|
||||||
|
MODIFY `id` bigint(20) UNSIGNED NOT NULL AUTO_INCREMENT;
|
||||||
|
|
||||||
|
--
|
||||||
|
-- AUTO_INCREMENT for table `kuesioner`
|
||||||
|
--
|
||||||
|
ALTER TABLE `kuesioner`
|
||||||
|
MODIFY `id` bigint(20) UNSIGNED NOT NULL AUTO_INCREMENT, AUTO_INCREMENT=53;
|
||||||
|
|
||||||
|
--
|
||||||
|
-- AUTO_INCREMENT for table `migrations`
|
||||||
|
--
|
||||||
|
ALTER TABLE `migrations`
|
||||||
|
MODIFY `id` int(10) UNSIGNED NOT NULL AUTO_INCREMENT, AUTO_INCREMENT=16;
|
||||||
|
|
||||||
|
--
|
||||||
|
-- AUTO_INCREMENT for table `periode`
|
||||||
|
--
|
||||||
|
ALTER TABLE `periode`
|
||||||
|
MODIFY `id` int(11) NOT NULL AUTO_INCREMENT;
|
||||||
|
|
||||||
|
--
|
||||||
|
-- AUTO_INCREMENT for table `personal_access_tokens`
|
||||||
|
--
|
||||||
|
ALTER TABLE `personal_access_tokens`
|
||||||
|
MODIFY `id` bigint(20) UNSIGNED NOT NULL AUTO_INCREMENT;
|
||||||
|
|
||||||
|
--
|
||||||
|
-- AUTO_INCREMENT for table `pilih_periode`
|
||||||
|
--
|
||||||
|
ALTER TABLE `pilih_periode`
|
||||||
|
MODIFY `id` int(11) NOT NULL AUTO_INCREMENT, AUTO_INCREMENT=2;
|
||||||
|
|
||||||
|
--
|
||||||
|
-- AUTO_INCREMENT for table `users`
|
||||||
|
--
|
||||||
|
ALTER TABLE `users`
|
||||||
|
MODIFY `id` bigint(20) UNSIGNED NOT NULL AUTO_INCREMENT, AUTO_INCREMENT=3;
|
||||||
|
|
||||||
|
--
|
||||||
|
-- Constraints for dumped tables
|
||||||
|
--
|
||||||
|
|
||||||
|
--
|
||||||
|
-- Constraints for table `pilih_periode`
|
||||||
|
--
|
||||||
|
ALTER TABLE `pilih_periode`
|
||||||
|
ADD CONSTRAINT `pilih_periode_ibfk_1` FOREIGN KEY (`id_periode`) REFERENCES `periode` (`id`) ON UPDATE CASCADE;
|
||||||
|
COMMIT;
|
||||||
|
|
||||||
|
/*!40101 SET CHARACTER_SET_CLIENT=@OLD_CHARACTER_SET_CLIENT */;
|
||||||
|
/*!40101 SET CHARACTER_SET_RESULTS=@OLD_CHARACTER_SET_RESULTS */;
|
||||||
|
/*!40101 SET COLLATION_CONNECTION=@OLD_COLLATION_CONNECTION */;
|
|
@ -0,0 +1,21 @@
|
||||||
|
<IfModule mod_rewrite.c>
|
||||||
|
<IfModule mod_negotiation.c>
|
||||||
|
Options -MultiViews -Indexes
|
||||||
|
</IfModule>
|
||||||
|
|
||||||
|
RewriteEngine On
|
||||||
|
|
||||||
|
# Handle Authorization Header
|
||||||
|
RewriteCond %{HTTP:Authorization} .
|
||||||
|
RewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization}]
|
||||||
|
|
||||||
|
# Redirect Trailing Slashes If Not A Folder...
|
||||||
|
RewriteCond %{REQUEST_FILENAME} !-d
|
||||||
|
RewriteCond %{REQUEST_URI} (.+)/$
|
||||||
|
RewriteRule ^ %1 [L,R=301]
|
||||||
|
|
||||||
|
# Send Requests To Front Controller...
|
||||||
|
RewriteCond %{REQUEST_FILENAME} !-d
|
||||||
|
RewriteCond %{REQUEST_FILENAME} !-f
|
||||||
|
RewriteRule ^ index.php [L]
|
||||||
|
</IfModule>
|
|
@ -0,0 +1,6 @@
|
||||||
|
Thanks for downloading this template!
|
||||||
|
|
||||||
|
Template Name: NiceAdmin
|
||||||
|
Template URL: https://bootstrapmade.com/nice-admin-bootstrap-admin-html-template/
|
||||||
|
Author: BootstrapMade.com
|
||||||
|
License: https://bootstrapmade.com/license/
|
After Width: | Height: | Size: 1.2 KiB |
After Width: | Height: | Size: 27 KiB |
After Width: | Height: | Size: 162 KiB |
After Width: | Height: | Size: 8.7 KiB |
After Width: | Height: | Size: 6.1 KiB |
After Width: | Height: | Size: 610 B |
After Width: | Height: | Size: 738 B |
After Width: | Height: | Size: 6.3 KiB |
After Width: | Height: | Size: 5.4 KiB |
After Width: | Height: | Size: 21 KiB |
Before Width: | Height: | Size: 82 KiB After Width: | Height: | Size: 82 KiB |
Before Width: | Height: | Size: 76 KiB After Width: | Height: | Size: 76 KiB |
Before Width: | Height: | Size: 69 KiB After Width: | Height: | Size: 69 KiB |
Before Width: | Height: | Size: 112 KiB After Width: | Height: | Size: 112 KiB |
Before Width: | Height: | Size: 91 KiB After Width: | Height: | Size: 91 KiB |
After Width: | Height: | Size: 6.8 KiB |
After Width: | Height: | Size: 59 KiB |
After Width: | Height: | Size: 17 KiB |
After Width: | Height: | Size: 28 KiB |
After Width: | Height: | Size: 14 KiB |
After Width: | Height: | Size: 9.0 KiB |
After Width: | Height: | Size: 12 KiB |
After Width: | Height: | Size: 4.8 KiB |
After Width: | Height: | Size: 86 KiB |
After Width: | Height: | Size: 69 KiB |
After Width: | Height: | Size: 96 KiB |
|
@ -0,0 +1,321 @@
|
||||||
|
/**
|
||||||
|
* Template Name: NiceAdmin
|
||||||
|
* Updated: May 30 2023 with Bootstrap v5.3.0
|
||||||
|
* Template URL: https://bootstrapmade.com/nice-admin-bootstrap-admin-html-template/
|
||||||
|
* Author: BootstrapMade.com
|
||||||
|
* License: https://bootstrapmade.com/license/
|
||||||
|
*/
|
||||||
|
(function() {
|
||||||
|
"use strict";
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Easy selector helper function
|
||||||
|
*/
|
||||||
|
const select = (el, all = false) => {
|
||||||
|
el = el.trim()
|
||||||
|
if (all) {
|
||||||
|
return [...document.querySelectorAll(el)]
|
||||||
|
} else {
|
||||||
|
return document.querySelector(el)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Easy event listener function
|
||||||
|
*/
|
||||||
|
const on = (type, el, listener, all = false) => {
|
||||||
|
if (all) {
|
||||||
|
select(el, all).forEach(e => e.addEventListener(type, listener))
|
||||||
|
} else {
|
||||||
|
select(el, all).addEventListener(type, listener)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Easy on scroll event listener
|
||||||
|
*/
|
||||||
|
const onscroll = (el, listener) => {
|
||||||
|
el.addEventListener('scroll', listener)
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Sidebar toggle
|
||||||
|
*/
|
||||||
|
if (select('.toggle-sidebar-btn')) {
|
||||||
|
on('click', '.toggle-sidebar-btn', function(e) {
|
||||||
|
select('body').classList.toggle('toggle-sidebar')
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Search bar toggle
|
||||||
|
*/
|
||||||
|
if (select('.search-bar-toggle')) {
|
||||||
|
on('click', '.search-bar-toggle', function(e) {
|
||||||
|
select('.search-bar').classList.toggle('search-bar-show')
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Navbar links active state on scroll
|
||||||
|
*/
|
||||||
|
let navbarlinks = select('#navbar .scrollto', true)
|
||||||
|
const navbarlinksActive = () => {
|
||||||
|
let position = window.scrollY + 200
|
||||||
|
navbarlinks.forEach(navbarlink => {
|
||||||
|
if (!navbarlink.hash) return
|
||||||
|
let section = select(navbarlink.hash)
|
||||||
|
if (!section) return
|
||||||
|
if (position >= section.offsetTop && position <= (section.offsetTop + section.offsetHeight)) {
|
||||||
|
navbarlink.classList.add('active')
|
||||||
|
} else {
|
||||||
|
navbarlink.classList.remove('active')
|
||||||
|
}
|
||||||
|
})
|
||||||
|
}
|
||||||
|
window.addEventListener('load', navbarlinksActive)
|
||||||
|
onscroll(document, navbarlinksActive)
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Toggle .header-scrolled class to #header when page is scrolled
|
||||||
|
*/
|
||||||
|
let selectHeader = select('#header')
|
||||||
|
if (selectHeader) {
|
||||||
|
const headerScrolled = () => {
|
||||||
|
if (window.scrollY > 100) {
|
||||||
|
selectHeader.classList.add('header-scrolled')
|
||||||
|
} else {
|
||||||
|
selectHeader.classList.remove('header-scrolled')
|
||||||
|
}
|
||||||
|
}
|
||||||
|
window.addEventListener('load', headerScrolled)
|
||||||
|
onscroll(document, headerScrolled)
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Back to top button
|
||||||
|
*/
|
||||||
|
let backtotop = select('.back-to-top')
|
||||||
|
if (backtotop) {
|
||||||
|
const toggleBacktotop = () => {
|
||||||
|
if (window.scrollY > 100) {
|
||||||
|
backtotop.classList.add('active')
|
||||||
|
} else {
|
||||||
|
backtotop.classList.remove('active')
|
||||||
|
}
|
||||||
|
}
|
||||||
|
window.addEventListener('load', toggleBacktotop)
|
||||||
|
onscroll(document, toggleBacktotop)
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Initiate tooltips
|
||||||
|
*/
|
||||||
|
var tooltipTriggerList = [].slice.call(document.querySelectorAll('[data-bs-toggle="tooltip"]'))
|
||||||
|
var tooltipList = tooltipTriggerList.map(function(tooltipTriggerEl) {
|
||||||
|
return new bootstrap.Tooltip(tooltipTriggerEl)
|
||||||
|
})
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Initiate quill editors
|
||||||
|
*/
|
||||||
|
if (select('.quill-editor-default')) {
|
||||||
|
new Quill('.quill-editor-default', {
|
||||||
|
theme: 'snow'
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
if (select('.quill-editor-bubble')) {
|
||||||
|
new Quill('.quill-editor-bubble', {
|
||||||
|
theme: 'bubble'
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
if (select('.quill-editor-full')) {
|
||||||
|
new Quill(".quill-editor-full", {
|
||||||
|
modules: {
|
||||||
|
toolbar: [
|
||||||
|
[{
|
||||||
|
font: []
|
||||||
|
}, {
|
||||||
|
size: []
|
||||||
|
}],
|
||||||
|
["bold", "italic", "underline", "strike"],
|
||||||
|
[{
|
||||||
|
color: []
|
||||||
|
},
|
||||||
|
{
|
||||||
|
background: []
|
||||||
|
}
|
||||||
|
],
|
||||||
|
[{
|
||||||
|
script: "super"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
script: "sub"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
[{
|
||||||
|
list: "ordered"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
list: "bullet"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
indent: "-1"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
indent: "+1"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
["direction", {
|
||||||
|
align: []
|
||||||
|
}],
|
||||||
|
["link", "image", "video"],
|
||||||
|
["clean"]
|
||||||
|
]
|
||||||
|
},
|
||||||
|
theme: "snow"
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Initiate TinyMCE Editor
|
||||||
|
*/
|
||||||
|
const useDarkMode = window.matchMedia('(prefers-color-scheme: dark)').matches;
|
||||||
|
const isSmallScreen = window.matchMedia('(max-width: 1023.5px)').matches;
|
||||||
|
|
||||||
|
tinymce.init({
|
||||||
|
selector: 'textarea.tinymce-editor',
|
||||||
|
plugins: 'preview importcss searchreplace autolink autosave save directionality code visualblocks visualchars fullscreen image link media template codesample table charmap pagebreak nonbreaking anchor insertdatetime advlist lists wordcount help charmap quickbars emoticons',
|
||||||
|
editimage_cors_hosts: ['picsum.photos'],
|
||||||
|
menubar: 'file edit view insert format tools table help',
|
||||||
|
toolbar: 'undo redo | bold italic underline strikethrough | fontfamily fontsize blocks | alignleft aligncenter alignright alignjustify | outdent indent | numlist bullist | forecolor backcolor removeformat | pagebreak | charmap emoticons | fullscreen preview save print | insertfile image media template link anchor codesample | ltr rtl',
|
||||||
|
toolbar_sticky: true,
|
||||||
|
toolbar_sticky_offset: isSmallScreen ? 102 : 108,
|
||||||
|
autosave_ask_before_unload: true,
|
||||||
|
autosave_interval: '30s',
|
||||||
|
autosave_prefix: '{path}{query}-{id}-',
|
||||||
|
autosave_restore_when_empty: false,
|
||||||
|
autosave_retention: '2m',
|
||||||
|
image_advtab: true,
|
||||||
|
link_list: [{
|
||||||
|
title: 'My page 1',
|
||||||
|
value: 'https://www.tiny.cloud'
|
||||||
|
},
|
||||||
|
{
|
||||||
|
title: 'My page 2',
|
||||||
|
value: 'http://www.moxiecode.com'
|
||||||
|
}
|
||||||
|
],
|
||||||
|
image_list: [{
|
||||||
|
title: 'My page 1',
|
||||||
|
value: 'https://www.tiny.cloud'
|
||||||
|
},
|
||||||
|
{
|
||||||
|
title: 'My page 2',
|
||||||
|
value: 'http://www.moxiecode.com'
|
||||||
|
}
|
||||||
|
],
|
||||||
|
image_class_list: [{
|
||||||
|
title: 'None',
|
||||||
|
value: ''
|
||||||
|
},
|
||||||
|
{
|
||||||
|
title: 'Some class',
|
||||||
|
value: 'class-name'
|
||||||
|
}
|
||||||
|
],
|
||||||
|
importcss_append: true,
|
||||||
|
file_picker_callback: (callback, value, meta) => {
|
||||||
|
/* Provide file and text for the link dialog */
|
||||||
|
if (meta.filetype === 'file') {
|
||||||
|
callback('https://www.google.com/logos/google.jpg', {
|
||||||
|
text: 'My text'
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Provide image and alt text for the image dialog */
|
||||||
|
if (meta.filetype === 'image') {
|
||||||
|
callback('https://www.google.com/logos/google.jpg', {
|
||||||
|
alt: 'My alt text'
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Provide alternative source and posted for the media dialog */
|
||||||
|
if (meta.filetype === 'media') {
|
||||||
|
callback('movie.mp4', {
|
||||||
|
source2: 'alt.ogg',
|
||||||
|
poster: 'https://www.google.com/logos/google.jpg'
|
||||||
|
});
|
||||||
|
}
|
||||||
|
},
|
||||||
|
templates: [{
|
||||||
|
title: 'New Table',
|
||||||
|
description: 'creates a new table',
|
||||||
|
content: '<div class="mceTmpl"><table width="98%%" border="0" cellspacing="0" cellpadding="0"><tr><th scope="col"> </th><th scope="col"> </th></tr><tr><td> </td><td> </td></tr></table></div>'
|
||||||
|
},
|
||||||
|
{
|
||||||
|
title: 'Starting my story',
|
||||||
|
description: 'A cure for writers block',
|
||||||
|
content: 'Once upon a time...'
|
||||||
|
},
|
||||||
|
{
|
||||||
|
title: 'New list with dates',
|
||||||
|
description: 'New List with dates',
|
||||||
|
content: '<div class="mceTmpl"><span class="cdate">cdate</span><br><span class="mdate">mdate</span><h2>My List</h2><ul><li></li><li></li></ul></div>'
|
||||||
|
}
|
||||||
|
],
|
||||||
|
template_cdate_format: '[Date Created (CDATE): %m/%d/%Y : %H:%M:%S]',
|
||||||
|
template_mdate_format: '[Date Modified (MDATE): %m/%d/%Y : %H:%M:%S]',
|
||||||
|
height: 600,
|
||||||
|
image_caption: true,
|
||||||
|
quickbars_selection_toolbar: 'bold italic | quicklink h2 h3 blockquote quickimage quicktable',
|
||||||
|
noneditable_class: 'mceNonEditable',
|
||||||
|
toolbar_mode: 'sliding',
|
||||||
|
contextmenu: 'link image table',
|
||||||
|
skin: useDarkMode ? 'oxide-dark' : 'oxide',
|
||||||
|
content_css: useDarkMode ? 'dark' : 'default',
|
||||||
|
content_style: 'body { font-family:Helvetica,Arial,sans-serif; font-size:16px }'
|
||||||
|
});
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Initiate Bootstrap validation check
|
||||||
|
*/
|
||||||
|
var needsValidation = document.querySelectorAll('.needs-validation')
|
||||||
|
|
||||||
|
Array.prototype.slice.call(needsValidation)
|
||||||
|
.forEach(function(form) {
|
||||||
|
form.addEventListener('submit', function(event) {
|
||||||
|
if (!form.checkValidity()) {
|
||||||
|
event.preventDefault()
|
||||||
|
event.stopPropagation()
|
||||||
|
}
|
||||||
|
|
||||||
|
form.classList.add('was-validated')
|
||||||
|
}, false)
|
||||||
|
})
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Initiate Datatables
|
||||||
|
*/
|
||||||
|
const datatables = select('.datatable', true)
|
||||||
|
datatables.forEach(datatable => {
|
||||||
|
new simpleDatatables.DataTable(datatable);
|
||||||
|
})
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Autoresize echart charts
|
||||||
|
*/
|
||||||
|
const mainContainer = select('#main');
|
||||||
|
if (mainContainer) {
|
||||||
|
setTimeout(() => {
|
||||||
|
new ResizeObserver(function() {
|
||||||
|
select('.echart', true).forEach(getEchart => {
|
||||||
|
echarts.getInstanceByDom(getEchart).resize();
|
||||||
|
})
|
||||||
|
}).observe(mainContainer);
|
||||||
|
}, 200);
|
||||||
|
}
|
||||||
|
|
||||||
|
})();
|
|
@ -0,0 +1,16 @@
|
||||||
|
const Toast = Swal.mixin({
|
||||||
|
toast: true,
|
||||||
|
position: "top-end",
|
||||||
|
showConfirmButton: false,
|
||||||
|
timer: 3000,
|
||||||
|
timerProgressBar: true,
|
||||||
|
didOpen: (toast) => {
|
||||||
|
toast.addEventListener("mouseenter", Swal.stopTimer);
|
||||||
|
toast.addEventListener("mouseleave", Swal.resumeTimer);
|
||||||
|
},
|
||||||
|
});
|
||||||
|
|
||||||
|
Toast.fire({
|
||||||
|
icon: "success",
|
||||||
|
title: "Berhasil disimpan",
|
||||||
|
});
|
|
@ -0,0 +1 @@
|
||||||
|
The .scss (Sass) files are only available in the pro version.
|
|
@ -0,0 +1,581 @@
|
||||||
|
@keyframes opaque {
|
||||||
|
0% {
|
||||||
|
opacity: 0
|
||||||
|
}
|
||||||
|
|
||||||
|
to {
|
||||||
|
opacity: 1
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
@keyframes resizeanim {
|
||||||
|
0%,to {
|
||||||
|
opacity: 0
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
.apexcharts-canvas {
|
||||||
|
position: relative;
|
||||||
|
user-select: none
|
||||||
|
}
|
||||||
|
|
||||||
|
.apexcharts-canvas ::-webkit-scrollbar {
|
||||||
|
-webkit-appearance: none;
|
||||||
|
width: 6px
|
||||||
|
}
|
||||||
|
|
||||||
|
.apexcharts-canvas ::-webkit-scrollbar-thumb {
|
||||||
|
border-radius: 4px;
|
||||||
|
background-color: rgba(0,0,0,.5);
|
||||||
|
box-shadow: 0 0 1px rgba(255,255,255,.5);
|
||||||
|
-webkit-box-shadow: 0 0 1px rgba(255,255,255,.5)
|
||||||
|
}
|
||||||
|
|
||||||
|
.apexcharts-inner {
|
||||||
|
position: relative
|
||||||
|
}
|
||||||
|
|
||||||
|
.apexcharts-text tspan {
|
||||||
|
font-family: inherit
|
||||||
|
}
|
||||||
|
|
||||||
|
.legend-mouseover-inactive {
|
||||||
|
transition: .15s ease all;
|
||||||
|
opacity: .2
|
||||||
|
}
|
||||||
|
|
||||||
|
.apexcharts-legend-text {
|
||||||
|
padding-left: 15px;
|
||||||
|
margin-left: -15px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.apexcharts-series-collapsed {
|
||||||
|
opacity: 0
|
||||||
|
}
|
||||||
|
|
||||||
|
.apexcharts-tooltip {
|
||||||
|
border-radius: 5px;
|
||||||
|
box-shadow: 2px 2px 6px -4px #999;
|
||||||
|
cursor: default;
|
||||||
|
font-size: 14px;
|
||||||
|
left: 62px;
|
||||||
|
opacity: 0;
|
||||||
|
pointer-events: none;
|
||||||
|
position: absolute;
|
||||||
|
top: 20px;
|
||||||
|
display: flex;
|
||||||
|
flex-direction: column;
|
||||||
|
overflow: hidden;
|
||||||
|
white-space: nowrap;
|
||||||
|
z-index: 12;
|
||||||
|
transition: .15s ease all
|
||||||
|
}
|
||||||
|
|
||||||
|
.apexcharts-tooltip.apexcharts-active {
|
||||||
|
opacity: 1;
|
||||||
|
transition: .15s ease all
|
||||||
|
}
|
||||||
|
|
||||||
|
.apexcharts-tooltip.apexcharts-theme-light {
|
||||||
|
border: 1px solid #e3e3e3;
|
||||||
|
background: rgba(255,255,255,.96)
|
||||||
|
}
|
||||||
|
|
||||||
|
.apexcharts-tooltip.apexcharts-theme-dark {
|
||||||
|
color: #fff;
|
||||||
|
background: rgba(30,30,30,.8)
|
||||||
|
}
|
||||||
|
|
||||||
|
.apexcharts-tooltip * {
|
||||||
|
font-family: inherit
|
||||||
|
}
|
||||||
|
|
||||||
|
.apexcharts-tooltip-title {
|
||||||
|
padding: 6px;
|
||||||
|
font-size: 15px;
|
||||||
|
margin-bottom: 4px
|
||||||
|
}
|
||||||
|
|
||||||
|
.apexcharts-tooltip.apexcharts-theme-light .apexcharts-tooltip-title {
|
||||||
|
background: #eceff1;
|
||||||
|
border-bottom: 1px solid #ddd
|
||||||
|
}
|
||||||
|
|
||||||
|
.apexcharts-tooltip.apexcharts-theme-dark .apexcharts-tooltip-title {
|
||||||
|
background: rgba(0,0,0,.7);
|
||||||
|
border-bottom: 1px solid #333
|
||||||
|
}
|
||||||
|
|
||||||
|
.apexcharts-tooltip-text-goals-value,.apexcharts-tooltip-text-y-value,.apexcharts-tooltip-text-z-value {
|
||||||
|
display: inline-block;
|
||||||
|
margin-left: 5px;
|
||||||
|
font-weight: 600
|
||||||
|
}
|
||||||
|
|
||||||
|
.apexcharts-tooltip-text-goals-label:empty,.apexcharts-tooltip-text-goals-value:empty,.apexcharts-tooltip-text-y-label:empty,.apexcharts-tooltip-text-y-value:empty,.apexcharts-tooltip-text-z-value:empty,.apexcharts-tooltip-title:empty {
|
||||||
|
display: none
|
||||||
|
}
|
||||||
|
|
||||||
|
.apexcharts-tooltip-text-goals-label,.apexcharts-tooltip-text-goals-value {
|
||||||
|
padding: 6px 0 5px
|
||||||
|
}
|
||||||
|
|
||||||
|
.apexcharts-tooltip-goals-group,.apexcharts-tooltip-text-goals-label,.apexcharts-tooltip-text-goals-value {
|
||||||
|
display: flex
|
||||||
|
}
|
||||||
|
|
||||||
|
.apexcharts-tooltip-text-goals-label:not(:empty),.apexcharts-tooltip-text-goals-value:not(:empty) {
|
||||||
|
margin-top: -6px
|
||||||
|
}
|
||||||
|
|
||||||
|
.apexcharts-tooltip-marker {
|
||||||
|
width: 12px;
|
||||||
|
height: 12px;
|
||||||
|
position: relative;
|
||||||
|
top: 0;
|
||||||
|
margin-right: 10px;
|
||||||
|
border-radius: 50%
|
||||||
|
}
|
||||||
|
|
||||||
|
.apexcharts-tooltip-series-group {
|
||||||
|
padding: 0 10px;
|
||||||
|
display: none;
|
||||||
|
text-align: left;
|
||||||
|
justify-content: left;
|
||||||
|
align-items: center
|
||||||
|
}
|
||||||
|
|
||||||
|
.apexcharts-tooltip-series-group.apexcharts-active .apexcharts-tooltip-marker {
|
||||||
|
opacity: 1
|
||||||
|
}
|
||||||
|
|
||||||
|
.apexcharts-tooltip-series-group.apexcharts-active,.apexcharts-tooltip-series-group:last-child {
|
||||||
|
padding-bottom: 4px
|
||||||
|
}
|
||||||
|
|
||||||
|
.apexcharts-tooltip-series-group-hidden {
|
||||||
|
opacity: 0;
|
||||||
|
height: 0;
|
||||||
|
line-height: 0;
|
||||||
|
padding: 0!important
|
||||||
|
}
|
||||||
|
|
||||||
|
.apexcharts-tooltip-y-group {
|
||||||
|
padding: 6px 0 5px
|
||||||
|
}
|
||||||
|
|
||||||
|
.apexcharts-custom-tooltip,.apexcharts-tooltip-box {
|
||||||
|
padding: 4px 8px
|
||||||
|
}
|
||||||
|
|
||||||
|
.apexcharts-tooltip-boxPlot {
|
||||||
|
display: flex;
|
||||||
|
flex-direction: column-reverse
|
||||||
|
}
|
||||||
|
|
||||||
|
.apexcharts-tooltip-box>div {
|
||||||
|
margin: 4px 0
|
||||||
|
}
|
||||||
|
|
||||||
|
.apexcharts-tooltip-box span.value {
|
||||||
|
font-weight: 700
|
||||||
|
}
|
||||||
|
|
||||||
|
.apexcharts-tooltip-rangebar {
|
||||||
|
padding: 5px 8px
|
||||||
|
}
|
||||||
|
|
||||||
|
.apexcharts-tooltip-rangebar .category {
|
||||||
|
font-weight: 600;
|
||||||
|
color: #777
|
||||||
|
}
|
||||||
|
|
||||||
|
.apexcharts-tooltip-rangebar .series-name {
|
||||||
|
font-weight: 700;
|
||||||
|
display: block;
|
||||||
|
margin-bottom: 5px
|
||||||
|
}
|
||||||
|
|
||||||
|
.apexcharts-xaxistooltip,.apexcharts-yaxistooltip {
|
||||||
|
opacity: 0;
|
||||||
|
pointer-events: none;
|
||||||
|
color: #373d3f;
|
||||||
|
font-size: 13px;
|
||||||
|
text-align: center;
|
||||||
|
border-radius: 2px;
|
||||||
|
position: absolute;
|
||||||
|
z-index: 10;
|
||||||
|
background: #eceff1;
|
||||||
|
border: 1px solid #90a4ae
|
||||||
|
}
|
||||||
|
|
||||||
|
.apexcharts-xaxistooltip {
|
||||||
|
padding: 9px 10px;
|
||||||
|
transition: .15s ease all
|
||||||
|
}
|
||||||
|
|
||||||
|
.apexcharts-xaxistooltip.apexcharts-theme-dark {
|
||||||
|
background: rgba(0,0,0,.7);
|
||||||
|
border: 1px solid rgba(0,0,0,.5);
|
||||||
|
color: #fff
|
||||||
|
}
|
||||||
|
|
||||||
|
.apexcharts-xaxistooltip:after,.apexcharts-xaxistooltip:before {
|
||||||
|
left: 50%;
|
||||||
|
border: solid transparent;
|
||||||
|
content: " ";
|
||||||
|
height: 0;
|
||||||
|
width: 0;
|
||||||
|
position: absolute;
|
||||||
|
pointer-events: none
|
||||||
|
}
|
||||||
|
|
||||||
|
.apexcharts-xaxistooltip:after {
|
||||||
|
border-color: transparent;
|
||||||
|
border-width: 6px;
|
||||||
|
margin-left: -6px
|
||||||
|
}
|
||||||
|
|
||||||
|
.apexcharts-xaxistooltip:before {
|
||||||
|
border-color: transparent;
|
||||||
|
border-width: 7px;
|
||||||
|
margin-left: -7px
|
||||||
|
}
|
||||||
|
|
||||||
|
.apexcharts-xaxistooltip-bottom:after,.apexcharts-xaxistooltip-bottom:before {
|
||||||
|
bottom: 100%
|
||||||
|
}
|
||||||
|
|
||||||
|
.apexcharts-xaxistooltip-top:after,.apexcharts-xaxistooltip-top:before {
|
||||||
|
top: 100%
|
||||||
|
}
|
||||||
|
|
||||||
|
.apexcharts-xaxistooltip-bottom:after {
|
||||||
|
border-bottom-color: #eceff1
|
||||||
|
}
|
||||||
|
|
||||||
|
.apexcharts-xaxistooltip-bottom:before {
|
||||||
|
border-bottom-color: #90a4ae
|
||||||
|
}
|
||||||
|
|
||||||
|
.apexcharts-xaxistooltip-bottom.apexcharts-theme-dark:after,.apexcharts-xaxistooltip-bottom.apexcharts-theme-dark:before {
|
||||||
|
border-bottom-color: rgba(0,0,0,.5)
|
||||||
|
}
|
||||||
|
|
||||||
|
.apexcharts-xaxistooltip-top:after {
|
||||||
|
border-top-color: #eceff1
|
||||||
|
}
|
||||||
|
|
||||||
|
.apexcharts-xaxistooltip-top:before {
|
||||||
|
border-top-color: #90a4ae
|
||||||
|
}
|
||||||
|
|
||||||
|
.apexcharts-xaxistooltip-top.apexcharts-theme-dark:after,.apexcharts-xaxistooltip-top.apexcharts-theme-dark:before {
|
||||||
|
border-top-color: rgba(0,0,0,.5)
|
||||||
|
}
|
||||||
|
|
||||||
|
.apexcharts-xaxistooltip.apexcharts-active {
|
||||||
|
opacity: 1;
|
||||||
|
transition: .15s ease all
|
||||||
|
}
|
||||||
|
|
||||||
|
.apexcharts-yaxistooltip {
|
||||||
|
padding: 4px 10px
|
||||||
|
}
|
||||||
|
|
||||||
|
.apexcharts-yaxistooltip.apexcharts-theme-dark {
|
||||||
|
background: rgba(0,0,0,.7);
|
||||||
|
border: 1px solid rgba(0,0,0,.5);
|
||||||
|
color: #fff
|
||||||
|
}
|
||||||
|
|
||||||
|
.apexcharts-yaxistooltip:after,.apexcharts-yaxistooltip:before {
|
||||||
|
top: 50%;
|
||||||
|
border: solid transparent;
|
||||||
|
content: " ";
|
||||||
|
height: 0;
|
||||||
|
width: 0;
|
||||||
|
position: absolute;
|
||||||
|
pointer-events: none
|
||||||
|
}
|
||||||
|
|
||||||
|
.apexcharts-yaxistooltip:after {
|
||||||
|
border-color: transparent;
|
||||||
|
border-width: 6px;
|
||||||
|
margin-top: -6px
|
||||||
|
}
|
||||||
|
|
||||||
|
.apexcharts-yaxistooltip:before {
|
||||||
|
border-color: transparent;
|
||||||
|
border-width: 7px;
|
||||||
|
margin-top: -7px
|
||||||
|
}
|
||||||
|
|
||||||
|
.apexcharts-yaxistooltip-left:after,.apexcharts-yaxistooltip-left:before {
|
||||||
|
left: 100%
|
||||||
|
}
|
||||||
|
|
||||||
|
.apexcharts-yaxistooltip-right:after,.apexcharts-yaxistooltip-right:before {
|
||||||
|
right: 100%
|
||||||
|
}
|
||||||
|
|
||||||
|
.apexcharts-yaxistooltip-left:after {
|
||||||
|
border-left-color: #eceff1
|
||||||
|
}
|
||||||
|
|
||||||
|
.apexcharts-yaxistooltip-left:before {
|
||||||
|
border-left-color: #90a4ae
|
||||||
|
}
|
||||||
|
|
||||||
|
.apexcharts-yaxistooltip-left.apexcharts-theme-dark:after,.apexcharts-yaxistooltip-left.apexcharts-theme-dark:before {
|
||||||
|
border-left-color: rgba(0,0,0,.5)
|
||||||
|
}
|
||||||
|
|
||||||
|
.apexcharts-yaxistooltip-right:after {
|
||||||
|
border-right-color: #eceff1
|
||||||
|
}
|
||||||
|
|
||||||
|
.apexcharts-yaxistooltip-right:before {
|
||||||
|
border-right-color: #90a4ae
|
||||||
|
}
|
||||||
|
|
||||||
|
.apexcharts-yaxistooltip-right.apexcharts-theme-dark:after,.apexcharts-yaxistooltip-right.apexcharts-theme-dark:before {
|
||||||
|
border-right-color: rgba(0,0,0,.5)
|
||||||
|
}
|
||||||
|
|
||||||
|
.apexcharts-yaxistooltip.apexcharts-active {
|
||||||
|
opacity: 1
|
||||||
|
}
|
||||||
|
|
||||||
|
.apexcharts-yaxistooltip-hidden {
|
||||||
|
display: none
|
||||||
|
}
|
||||||
|
|
||||||
|
.apexcharts-xcrosshairs,.apexcharts-ycrosshairs {
|
||||||
|
pointer-events: none;
|
||||||
|
opacity: 0;
|
||||||
|
transition: .15s ease all
|
||||||
|
}
|
||||||
|
|
||||||
|
.apexcharts-xcrosshairs.apexcharts-active,.apexcharts-ycrosshairs.apexcharts-active {
|
||||||
|
opacity: 1;
|
||||||
|
transition: .15s ease all
|
||||||
|
}
|
||||||
|
|
||||||
|
.apexcharts-ycrosshairs-hidden {
|
||||||
|
opacity: 0
|
||||||
|
}
|
||||||
|
|
||||||
|
.apexcharts-selection-rect {
|
||||||
|
cursor: move
|
||||||
|
}
|
||||||
|
|
||||||
|
.svg_select_boundingRect,.svg_select_points_rot {
|
||||||
|
pointer-events: none;
|
||||||
|
opacity: 0;
|
||||||
|
visibility: hidden
|
||||||
|
}
|
||||||
|
|
||||||
|
.apexcharts-selection-rect+g .svg_select_boundingRect,.apexcharts-selection-rect+g .svg_select_points_rot {
|
||||||
|
opacity: 0;
|
||||||
|
visibility: hidden
|
||||||
|
}
|
||||||
|
|
||||||
|
.apexcharts-selection-rect+g .svg_select_points_l,.apexcharts-selection-rect+g .svg_select_points_r {
|
||||||
|
cursor: ew-resize;
|
||||||
|
opacity: 1;
|
||||||
|
visibility: visible
|
||||||
|
}
|
||||||
|
|
||||||
|
.svg_select_points {
|
||||||
|
fill: #efefef;
|
||||||
|
stroke: #333;
|
||||||
|
rx: 2
|
||||||
|
}
|
||||||
|
|
||||||
|
.apexcharts-svg.apexcharts-zoomable.hovering-zoom {
|
||||||
|
cursor: crosshair
|
||||||
|
}
|
||||||
|
|
||||||
|
.apexcharts-svg.apexcharts-zoomable.hovering-pan {
|
||||||
|
cursor: move
|
||||||
|
}
|
||||||
|
|
||||||
|
.apexcharts-menu-icon,.apexcharts-pan-icon,.apexcharts-reset-icon,.apexcharts-selection-icon,.apexcharts-toolbar-custom-icon,.apexcharts-zoom-icon,.apexcharts-zoomin-icon,.apexcharts-zoomout-icon {
|
||||||
|
cursor: pointer;
|
||||||
|
width: 20px;
|
||||||
|
height: 20px;
|
||||||
|
line-height: 24px;
|
||||||
|
color: #6e8192;
|
||||||
|
text-align: center
|
||||||
|
}
|
||||||
|
|
||||||
|
.apexcharts-menu-icon svg,.apexcharts-reset-icon svg,.apexcharts-zoom-icon svg,.apexcharts-zoomin-icon svg,.apexcharts-zoomout-icon svg {
|
||||||
|
fill: #6e8192
|
||||||
|
}
|
||||||
|
|
||||||
|
.apexcharts-selection-icon svg {
|
||||||
|
fill: #444;
|
||||||
|
transform: scale(.76)
|
||||||
|
}
|
||||||
|
|
||||||
|
.apexcharts-theme-dark .apexcharts-menu-icon svg,.apexcharts-theme-dark .apexcharts-pan-icon svg,.apexcharts-theme-dark .apexcharts-reset-icon svg,.apexcharts-theme-dark .apexcharts-selection-icon svg,.apexcharts-theme-dark .apexcharts-toolbar-custom-icon svg,.apexcharts-theme-dark .apexcharts-zoom-icon svg,.apexcharts-theme-dark .apexcharts-zoomin-icon svg,.apexcharts-theme-dark .apexcharts-zoomout-icon svg {
|
||||||
|
fill: #f3f4f5
|
||||||
|
}
|
||||||
|
|
||||||
|
.apexcharts-canvas .apexcharts-reset-zoom-icon.apexcharts-selected svg,.apexcharts-canvas .apexcharts-selection-icon.apexcharts-selected svg,.apexcharts-canvas .apexcharts-zoom-icon.apexcharts-selected svg {
|
||||||
|
fill: #008ffb
|
||||||
|
}
|
||||||
|
|
||||||
|
.apexcharts-theme-light .apexcharts-menu-icon:hover svg,.apexcharts-theme-light .apexcharts-reset-icon:hover svg,.apexcharts-theme-light .apexcharts-selection-icon:not(.apexcharts-selected):hover svg,.apexcharts-theme-light .apexcharts-zoom-icon:not(.apexcharts-selected):hover svg,.apexcharts-theme-light .apexcharts-zoomin-icon:hover svg,.apexcharts-theme-light .apexcharts-zoomout-icon:hover svg {
|
||||||
|
fill: #333
|
||||||
|
}
|
||||||
|
|
||||||
|
.apexcharts-menu-icon,.apexcharts-selection-icon {
|
||||||
|
position: relative
|
||||||
|
}
|
||||||
|
|
||||||
|
.apexcharts-reset-icon {
|
||||||
|
margin-left: 5px
|
||||||
|
}
|
||||||
|
|
||||||
|
.apexcharts-menu-icon,.apexcharts-reset-icon,.apexcharts-zoom-icon {
|
||||||
|
transform: scale(.85)
|
||||||
|
}
|
||||||
|
|
||||||
|
.apexcharts-zoomin-icon,.apexcharts-zoomout-icon {
|
||||||
|
transform: scale(.7)
|
||||||
|
}
|
||||||
|
|
||||||
|
.apexcharts-zoomout-icon {
|
||||||
|
margin-right: 3px
|
||||||
|
}
|
||||||
|
|
||||||
|
.apexcharts-pan-icon {
|
||||||
|
transform: scale(.62);
|
||||||
|
position: relative;
|
||||||
|
left: 1px;
|
||||||
|
top: 0
|
||||||
|
}
|
||||||
|
|
||||||
|
.apexcharts-pan-icon svg {
|
||||||
|
fill: #fff;
|
||||||
|
stroke: #6e8192;
|
||||||
|
stroke-width: 2
|
||||||
|
}
|
||||||
|
|
||||||
|
.apexcharts-pan-icon.apexcharts-selected svg {
|
||||||
|
stroke: #008ffb
|
||||||
|
}
|
||||||
|
|
||||||
|
.apexcharts-pan-icon:not(.apexcharts-selected):hover svg {
|
||||||
|
stroke: #333
|
||||||
|
}
|
||||||
|
|
||||||
|
.apexcharts-toolbar {
|
||||||
|
position: absolute;
|
||||||
|
z-index: 11;
|
||||||
|
max-width: 176px;
|
||||||
|
text-align: right;
|
||||||
|
border-radius: 3px;
|
||||||
|
padding: 0 6px 2px;
|
||||||
|
display: flex;
|
||||||
|
justify-content: space-between;
|
||||||
|
align-items: center
|
||||||
|
}
|
||||||
|
|
||||||
|
.apexcharts-menu {
|
||||||
|
background: #fff;
|
||||||
|
position: absolute;
|
||||||
|
top: 100%;
|
||||||
|
border: 1px solid #ddd;
|
||||||
|
border-radius: 3px;
|
||||||
|
padding: 3px;
|
||||||
|
right: 10px;
|
||||||
|
opacity: 0;
|
||||||
|
min-width: 110px;
|
||||||
|
transition: .15s ease all;
|
||||||
|
pointer-events: none
|
||||||
|
}
|
||||||
|
|
||||||
|
.apexcharts-menu.apexcharts-menu-open {
|
||||||
|
opacity: 1;
|
||||||
|
pointer-events: all;
|
||||||
|
transition: .15s ease all
|
||||||
|
}
|
||||||
|
|
||||||
|
.apexcharts-menu-item {
|
||||||
|
padding: 6px 7px;
|
||||||
|
font-size: 12px;
|
||||||
|
cursor: pointer
|
||||||
|
}
|
||||||
|
|
||||||
|
.apexcharts-theme-light .apexcharts-menu-item:hover {
|
||||||
|
background: #eee
|
||||||
|
}
|
||||||
|
|
||||||
|
.apexcharts-theme-dark .apexcharts-menu {
|
||||||
|
background: rgba(0,0,0,.7);
|
||||||
|
color: #fff
|
||||||
|
}
|
||||||
|
|
||||||
|
@media screen and (min-width:768px) {
|
||||||
|
.apexcharts-canvas:hover .apexcharts-toolbar {
|
||||||
|
opacity: 1
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
.apexcharts-canvas .apexcharts-element-hidden,.apexcharts-datalabel.apexcharts-element-hidden,.apexcharts-hide .apexcharts-series-points {
|
||||||
|
opacity: 0
|
||||||
|
}
|
||||||
|
|
||||||
|
.apexcharts-datalabel,.apexcharts-datalabel-label,.apexcharts-datalabel-value,.apexcharts-datalabels,.apexcharts-pie-label {
|
||||||
|
cursor: default;
|
||||||
|
pointer-events: none
|
||||||
|
}
|
||||||
|
|
||||||
|
.apexcharts-pie-label-delay {
|
||||||
|
opacity: 0;
|
||||||
|
animation-name: opaque;
|
||||||
|
animation-duration: .3s;
|
||||||
|
animation-fill-mode: forwards;
|
||||||
|
animation-timing-function: ease
|
||||||
|
}
|
||||||
|
|
||||||
|
.apexcharts-annotation-rect,.apexcharts-area-series .apexcharts-area,.apexcharts-area-series .apexcharts-series-markers .apexcharts-marker.no-pointer-events,.apexcharts-gridline,.apexcharts-line,.apexcharts-line-series .apexcharts-series-markers .apexcharts-marker.no-pointer-events,.apexcharts-point-annotation-label,.apexcharts-radar-series path,.apexcharts-radar-series polygon,.apexcharts-toolbar svg,.apexcharts-tooltip .apexcharts-marker,.apexcharts-xaxis-annotation-label,.apexcharts-yaxis-annotation-label,.apexcharts-zoom-rect {
|
||||||
|
pointer-events: none
|
||||||
|
}
|
||||||
|
|
||||||
|
.apexcharts-marker {
|
||||||
|
transition: .15s ease all
|
||||||
|
}
|
||||||
|
|
||||||
|
.resize-triggers {
|
||||||
|
animation: 1ms resizeanim;
|
||||||
|
visibility: hidden;
|
||||||
|
opacity: 0;
|
||||||
|
height: 100%;
|
||||||
|
width: 100%;
|
||||||
|
overflow: hidden
|
||||||
|
}
|
||||||
|
|
||||||
|
.contract-trigger:before,.resize-triggers,.resize-triggers>div {
|
||||||
|
content: " ";
|
||||||
|
display: block;
|
||||||
|
position: absolute;
|
||||||
|
top: 0;
|
||||||
|
left: 0
|
||||||
|
}
|
||||||
|
|
||||||
|
.resize-triggers>div {
|
||||||
|
height: 100%;
|
||||||
|
width: 100%;
|
||||||
|
background: #eee;
|
||||||
|
overflow: auto
|
||||||
|
}
|
||||||
|
|
||||||
|
.contract-trigger:before {
|
||||||
|
overflow: hidden;
|
||||||
|
width: 200%;
|
||||||
|
height: 200%
|
||||||
|
}
|
|
@ -0,0 +1,63 @@
|
||||||
|
{
|
||||||
|
"name": "ar",
|
||||||
|
"options": {
|
||||||
|
"months": [
|
||||||
|
"يناير",
|
||||||
|
"فبراير",
|
||||||
|
"مارس",
|
||||||
|
"أبريل",
|
||||||
|
"مايو",
|
||||||
|
"يونيو",
|
||||||
|
"يوليو",
|
||||||
|
"أغسطس",
|
||||||
|
"سبتمبر",
|
||||||
|
"أكتوبر",
|
||||||
|
"نوفمبر",
|
||||||
|
"ديسمبر"
|
||||||
|
],
|
||||||
|
"shortMonths": [
|
||||||
|
"يناير",
|
||||||
|
"فبراير",
|
||||||
|
"مارس",
|
||||||
|
"أبريل",
|
||||||
|
"مايو",
|
||||||
|
"يونيو",
|
||||||
|
"يوليو",
|
||||||
|
"أغسطس",
|
||||||
|
"سبتمبر",
|
||||||
|
"أكتوبر",
|
||||||
|
"نوفمبر",
|
||||||
|
"ديسمبر"
|
||||||
|
],
|
||||||
|
"days": [
|
||||||
|
"الأحد",
|
||||||
|
"الإثنين",
|
||||||
|
"الثلاثاء",
|
||||||
|
"الأربعاء",
|
||||||
|
"الخميس",
|
||||||
|
"الجمعة",
|
||||||
|
"السبت"
|
||||||
|
],
|
||||||
|
"shortDays": [
|
||||||
|
"أحد",
|
||||||
|
"إثنين",
|
||||||
|
"ثلاثاء",
|
||||||
|
"أربعاء",
|
||||||
|
"خميس",
|
||||||
|
"جمعة",
|
||||||
|
"سبت"
|
||||||
|
],
|
||||||
|
"toolbar": {
|
||||||
|
"exportToSVG": "تحميل بصيغة SVG",
|
||||||
|
"exportToPNG": "تحميل بصيغة PNG",
|
||||||
|
"exportToCSV": "تحميل بصيغة CSV",
|
||||||
|
"menu": "القائمة",
|
||||||
|
"selection": "تحديد",
|
||||||
|
"selectionZoom": "تكبير التحديد",
|
||||||
|
"zoomIn": "تكبير",
|
||||||
|
"zoomOut": "تصغير",
|
||||||
|
"pan": "تحريك",
|
||||||
|
"reset": "إعادة التعيين"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
|
@ -0,0 +1,55 @@
|
||||||
|
{
|
||||||
|
"name": "ca",
|
||||||
|
"options": {
|
||||||
|
"months": [
|
||||||
|
"Gener",
|
||||||
|
"Febrer",
|
||||||
|
"Març",
|
||||||
|
"Abril",
|
||||||
|
"Maig",
|
||||||
|
"Juny",
|
||||||
|
"Juliol",
|
||||||
|
"Agost",
|
||||||
|
"Setembre",
|
||||||
|
"Octubre",
|
||||||
|
"Novembre",
|
||||||
|
"Desembre"
|
||||||
|
],
|
||||||
|
"shortMonths": [
|
||||||
|
"Gen.",
|
||||||
|
"Febr.",
|
||||||
|
"Març",
|
||||||
|
"Abr.",
|
||||||
|
"Maig",
|
||||||
|
"Juny",
|
||||||
|
"Jul.",
|
||||||
|
"Ag.",
|
||||||
|
"Set.",
|
||||||
|
"Oct.",
|
||||||
|
"Nov.",
|
||||||
|
"Des."
|
||||||
|
],
|
||||||
|
"days": [
|
||||||
|
"Diumenge",
|
||||||
|
"Dilluns",
|
||||||
|
"Dimarts",
|
||||||
|
"Dimecres",
|
||||||
|
"Dijous",
|
||||||
|
"Divendres",
|
||||||
|
"Dissabte"
|
||||||
|
],
|
||||||
|
"shortDays": ["Dg", "Dl", "Dt", "Dc", "Dj", "Dv", "Ds"],
|
||||||
|
"toolbar": {
|
||||||
|
"exportToSVG": "Descarregar SVG",
|
||||||
|
"exportToPNG": "Descarregar PNG",
|
||||||
|
"exportToCSV": "Descarregar CSV",
|
||||||
|
"menu": "Menú",
|
||||||
|
"selection": "Seleccionar",
|
||||||
|
"selectionZoom": "Seleccionar Zoom",
|
||||||
|
"zoomIn": "Augmentar",
|
||||||
|
"zoomOut": "Disminuir",
|
||||||
|
"pan": "Navegació",
|
||||||
|
"reset": "Reiniciar Zoom"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
|
@ -0,0 +1,55 @@
|
||||||
|
{
|
||||||
|
"name": "cs",
|
||||||
|
"options": {
|
||||||
|
"months": [
|
||||||
|
"Leden",
|
||||||
|
"Únor",
|
||||||
|
"Březen",
|
||||||
|
"Duben",
|
||||||
|
"Květen",
|
||||||
|
"Červen",
|
||||||
|
"Červenec",
|
||||||
|
"Srpen",
|
||||||
|
"Září",
|
||||||
|
"Říjen",
|
||||||
|
"Listopad",
|
||||||
|
"Prosinec"
|
||||||
|
],
|
||||||
|
"shortMonths": [
|
||||||
|
"Led",
|
||||||
|
"Úno",
|
||||||
|
"Bře",
|
||||||
|
"Dub",
|
||||||
|
"Kvě",
|
||||||
|
"Čvn",
|
||||||
|
"Čvc",
|
||||||
|
"Srp",
|
||||||
|
"Zář",
|
||||||
|
"Říj",
|
||||||
|
"Lis",
|
||||||
|
"Pro"
|
||||||
|
],
|
||||||
|
"days": [
|
||||||
|
"Neděle",
|
||||||
|
"Pondělí",
|
||||||
|
"Úterý",
|
||||||
|
"Středa",
|
||||||
|
"Čtvrtek",
|
||||||
|
"Pátek",
|
||||||
|
"Sobota"
|
||||||
|
],
|
||||||
|
"shortDays": ["Ne", "Po", "Út", "St", "Čt", "Pá", "So"],
|
||||||
|
"toolbar": {
|
||||||
|
"exportToSVG": "Stáhnout SVG",
|
||||||
|
"exportToPNG": "Stáhnout PNG",
|
||||||
|
"exportToCSV": "Stáhnout CSV",
|
||||||
|
"menu": "Menu",
|
||||||
|
"selection": "Vybrat",
|
||||||
|
"selectionZoom": "Zoom: Vybrat",
|
||||||
|
"zoomIn": "Zoom: Přiblížit",
|
||||||
|
"zoomOut": "Zoom: Oddálit",
|
||||||
|
"pan": "Přesouvat",
|
||||||
|
"reset": "Resetovat"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
|
@ -0,0 +1,55 @@
|
||||||
|
{
|
||||||
|
"name": "de",
|
||||||
|
"options": {
|
||||||
|
"months": [
|
||||||
|
"Januar",
|
||||||
|
"Februar",
|
||||||
|
"März",
|
||||||
|
"April",
|
||||||
|
"Mai",
|
||||||
|
"Juni",
|
||||||
|
"Juli",
|
||||||
|
"August",
|
||||||
|
"September",
|
||||||
|
"Oktober",
|
||||||
|
"November",
|
||||||
|
"Dezember"
|
||||||
|
],
|
||||||
|
"shortMonths": [
|
||||||
|
"Jan",
|
||||||
|
"Feb",
|
||||||
|
"Mär",
|
||||||
|
"Apr",
|
||||||
|
"Mai",
|
||||||
|
"Jun",
|
||||||
|
"Jul",
|
||||||
|
"Aug",
|
||||||
|
"Sep",
|
||||||
|
"Okt",
|
||||||
|
"Nov",
|
||||||
|
"Dez"
|
||||||
|
],
|
||||||
|
"days": [
|
||||||
|
"Sonntag",
|
||||||
|
"Montag",
|
||||||
|
"Dienstag",
|
||||||
|
"Mittwoch",
|
||||||
|
"Donnerstag",
|
||||||
|
"Freitag",
|
||||||
|
"Samstag"
|
||||||
|
],
|
||||||
|
"shortDays": ["So", "Mo", "Di", "Mi", "Do", "Fr", "Sa"],
|
||||||
|
"toolbar": {
|
||||||
|
"exportToSVG": "SVG speichern",
|
||||||
|
"exportToPNG": "PNG speichern",
|
||||||
|
"exportToCSV": "CSV speichern",
|
||||||
|
"menu": "Menü",
|
||||||
|
"selection": "Auswahl",
|
||||||
|
"selectionZoom": "Auswahl vergrößern",
|
||||||
|
"zoomIn": "Vergrößern",
|
||||||
|
"zoomOut": "Verkleinern",
|
||||||
|
"pan": "Verschieben",
|
||||||
|
"reset": "Zoom zurücksetzen"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
|
@ -0,0 +1,55 @@
|
||||||
|
{
|
||||||
|
"name": "el",
|
||||||
|
"options": {
|
||||||
|
"months": [
|
||||||
|
"Ιανουάριος",
|
||||||
|
"Φεβρουάριος",
|
||||||
|
"Μάρτιος",
|
||||||
|
"Απρίλιος",
|
||||||
|
"Μάιος",
|
||||||
|
"Ιούνιος",
|
||||||
|
"Ιούλιος",
|
||||||
|
"Αύγουστος",
|
||||||
|
"Σεπτέμβριος",
|
||||||
|
"Οκτώβριος",
|
||||||
|
"Νοέμβριος",
|
||||||
|
"Δεκέμβριος"
|
||||||
|
],
|
||||||
|
"shortMonths": [
|
||||||
|
"Ιαν",
|
||||||
|
"Φευ",
|
||||||
|
"Μαρ",
|
||||||
|
"Απρ",
|
||||||
|
"Μάι",
|
||||||
|
"Ιουν",
|
||||||
|
"Ιουλ",
|
||||||
|
"Αυγ",
|
||||||
|
"Σεπ",
|
||||||
|
"Οκτ",
|
||||||
|
"Νοε",
|
||||||
|
"Δεκ"
|
||||||
|
],
|
||||||
|
"days": [
|
||||||
|
"Κυριακή",
|
||||||
|
"Δευτέρα",
|
||||||
|
"Τρίτη",
|
||||||
|
"Τετάρτη",
|
||||||
|
"Πέμπτη",
|
||||||
|
"Παρασκευή",
|
||||||
|
"Σάββατο"
|
||||||
|
],
|
||||||
|
"shortDays": ["Κυρ", "Δευ", "Τρι", "Τετ", "Πεμ", "Παρ", "Σαβ"],
|
||||||
|
"toolbar": {
|
||||||
|
"exportToSVG": "Λήψη SVG",
|
||||||
|
"exportToPNG": "Λήψη PNG",
|
||||||
|
"exportToCSV": "Λήψη CSV",
|
||||||
|
"menu": "Menu",
|
||||||
|
"selection": "Επιλογή",
|
||||||
|
"selectionZoom": "Μεγένθυση βάση επιλογής",
|
||||||
|
"zoomIn": "Μεγένθυνση",
|
||||||
|
"zoomOut": "Σμίκρυνση",
|
||||||
|
"pan": "Μετατόπιση",
|
||||||
|
"reset": "Επαναφορά μεγένθυνσης"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
|
@ -0,0 +1,55 @@
|
||||||
|
{
|
||||||
|
"name": "en",
|
||||||
|
"options": {
|
||||||
|
"months": [
|
||||||
|
"January",
|
||||||
|
"February",
|
||||||
|
"March",
|
||||||
|
"April",
|
||||||
|
"May",
|
||||||
|
"June",
|
||||||
|
"July",
|
||||||
|
"August",
|
||||||
|
"September",
|
||||||
|
"October",
|
||||||
|
"November",
|
||||||
|
"December"
|
||||||
|
],
|
||||||
|
"shortMonths": [
|
||||||
|
"Jan",
|
||||||
|
"Feb",
|
||||||
|
"Mar",
|
||||||
|
"Apr",
|
||||||
|
"May",
|
||||||
|
"Jun",
|
||||||
|
"Jul",
|
||||||
|
"Aug",
|
||||||
|
"Sep",
|
||||||
|
"Oct",
|
||||||
|
"Nov",
|
||||||
|
"Dec"
|
||||||
|
],
|
||||||
|
"days": [
|
||||||
|
"Sunday",
|
||||||
|
"Monday",
|
||||||
|
"Tuesday",
|
||||||
|
"Wednesday",
|
||||||
|
"Thursday",
|
||||||
|
"Friday",
|
||||||
|
"Saturday"
|
||||||
|
],
|
||||||
|
"shortDays": ["Sun", "Mon", "Tue", "Wed", "Thu", "Fri", "Sat"],
|
||||||
|
"toolbar": {
|
||||||
|
"exportToSVG": "Download SVG",
|
||||||
|
"exportToPNG": "Download PNG",
|
||||||
|
"exportToCSV": "Download CSV",
|
||||||
|
"menu": "Menu",
|
||||||
|
"selection": "Selection",
|
||||||
|
"selectionZoom": "Selection Zoom",
|
||||||
|
"zoomIn": "Zoom In",
|
||||||
|
"zoomOut": "Zoom Out",
|
||||||
|
"pan": "Panning",
|
||||||
|
"reset": "Reset Zoom"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
|
@ -0,0 +1,55 @@
|
||||||
|
{
|
||||||
|
"name": "es",
|
||||||
|
"options": {
|
||||||
|
"months": [
|
||||||
|
"Enero",
|
||||||
|
"Febrero",
|
||||||
|
"Marzo",
|
||||||
|
"Abril",
|
||||||
|
"Mayo",
|
||||||
|
"Junio",
|
||||||
|
"Julio",
|
||||||
|
"Agosto",
|
||||||
|
"Septiembre",
|
||||||
|
"Octubre",
|
||||||
|
"Noviembre",
|
||||||
|
"Diciembre"
|
||||||
|
],
|
||||||
|
"shortMonths": [
|
||||||
|
"Ene",
|
||||||
|
"Feb",
|
||||||
|
"Mar",
|
||||||
|
"Abr",
|
||||||
|
"May",
|
||||||
|
"Jun",
|
||||||
|
"Jul",
|
||||||
|
"Ago",
|
||||||
|
"Sep",
|
||||||
|
"Oct",
|
||||||
|
"Nov",
|
||||||
|
"Dic"
|
||||||
|
],
|
||||||
|
"days": [
|
||||||
|
"Domingo",
|
||||||
|
"Lunes",
|
||||||
|
"Martes",
|
||||||
|
"Miércoles",
|
||||||
|
"Jueves",
|
||||||
|
"Viernes",
|
||||||
|
"Sábado"
|
||||||
|
],
|
||||||
|
"shortDays": ["Dom", "Lun", "Mar", "Mie", "Jue", "Vie", "Sab"],
|
||||||
|
"toolbar": {
|
||||||
|
"exportToSVG": "Descargar SVG",
|
||||||
|
"exportToPNG": "Descargar PNG",
|
||||||
|
"exportToCSV": "Descargar CSV",
|
||||||
|
"menu": "Menu",
|
||||||
|
"selection": "Seleccionar",
|
||||||
|
"selectionZoom": "Seleccionar Zoom",
|
||||||
|
"zoomIn": "Aumentar",
|
||||||
|
"zoomOut": "Disminuir",
|
||||||
|
"pan": "Navegación",
|
||||||
|
"reset": "Reiniciar Zoom"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
|
@ -0,0 +1,63 @@
|
||||||
|
{
|
||||||
|
"name": "et",
|
||||||
|
"options": {
|
||||||
|
"months": [
|
||||||
|
"jaanuar",
|
||||||
|
"veebruar",
|
||||||
|
"märts",
|
||||||
|
"aprill",
|
||||||
|
"mai",
|
||||||
|
"juuni",
|
||||||
|
"juuli",
|
||||||
|
"august",
|
||||||
|
"september",
|
||||||
|
"oktoober",
|
||||||
|
"november",
|
||||||
|
"detsember"
|
||||||
|
],
|
||||||
|
"shortMonths": [
|
||||||
|
"jaan",
|
||||||
|
"veebr",
|
||||||
|
"märts",
|
||||||
|
"apr",
|
||||||
|
"mai",
|
||||||
|
"juuni",
|
||||||
|
"juuli",
|
||||||
|
"aug",
|
||||||
|
"sept",
|
||||||
|
"okt",
|
||||||
|
"nov",
|
||||||
|
"dets"
|
||||||
|
],
|
||||||
|
"days": [
|
||||||
|
"pühapäev",
|
||||||
|
"esmaspäev",
|
||||||
|
"teisipäev",
|
||||||
|
"kolmapäev",
|
||||||
|
"neljapäev",
|
||||||
|
"reede",
|
||||||
|
"laupäev"
|
||||||
|
],
|
||||||
|
"shortDays": [
|
||||||
|
"P",
|
||||||
|
"E",
|
||||||
|
"T",
|
||||||
|
"K",
|
||||||
|
"N",
|
||||||
|
"R",
|
||||||
|
"L"
|
||||||
|
],
|
||||||
|
"toolbar": {
|
||||||
|
"exportToSVG": "Lae alla SVG",
|
||||||
|
"exportToPNG": "Lae alla PNG",
|
||||||
|
"exportToCSV": "Lae alla CSV",
|
||||||
|
"menu": "Menüü",
|
||||||
|
"selection": "Valik",
|
||||||
|
"selectionZoom": "Valiku suum",
|
||||||
|
"zoomIn": "Suurenda",
|
||||||
|
"zoomOut": "Vähenda",
|
||||||
|
"pan": "Panoraamimine",
|
||||||
|
"reset": "Lähtesta suum"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
|
@ -0,0 +1,55 @@
|
||||||
|
{
|
||||||
|
"name": "fa",
|
||||||
|
"options": {
|
||||||
|
"months": [
|
||||||
|
"فروردین",
|
||||||
|
"اردیبهشت",
|
||||||
|
"خرداد",
|
||||||
|
"تیر",
|
||||||
|
"مرداد",
|
||||||
|
"شهریور",
|
||||||
|
"مهر",
|
||||||
|
"آبان",
|
||||||
|
"آذر",
|
||||||
|
"دی",
|
||||||
|
"بهمن",
|
||||||
|
"اسفند"
|
||||||
|
],
|
||||||
|
"shortMonths": [
|
||||||
|
"فرو",
|
||||||
|
"ارد",
|
||||||
|
"خرد",
|
||||||
|
"تیر",
|
||||||
|
"مرد",
|
||||||
|
"شهر",
|
||||||
|
"مهر",
|
||||||
|
"آبا",
|
||||||
|
"آذر",
|
||||||
|
"دی",
|
||||||
|
"بهمـ",
|
||||||
|
"اسفـ"
|
||||||
|
],
|
||||||
|
"days": [
|
||||||
|
"یکشنبه",
|
||||||
|
"دوشنبه",
|
||||||
|
"سه شنبه",
|
||||||
|
"چهارشنبه",
|
||||||
|
"پنجشنبه",
|
||||||
|
"جمعه",
|
||||||
|
"شنبه"
|
||||||
|
],
|
||||||
|
"shortDays": ["ی", "د", "س", "چ", "پ", "ج", "ش"],
|
||||||
|
"toolbar": {
|
||||||
|
"exportToSVG": "دانلود SVG",
|
||||||
|
"exportToPNG": "دانلود PNG",
|
||||||
|
"exportToCSV": "دانلود CSV",
|
||||||
|
"menu": "منو",
|
||||||
|
"selection": "انتخاب",
|
||||||
|
"selectionZoom": "بزرگنمایی انتخابی",
|
||||||
|
"zoomIn": "بزرگنمایی",
|
||||||
|
"zoomOut": "کوچکنمایی",
|
||||||
|
"pan": "پیمایش",
|
||||||
|
"reset": "بازنشانی بزرگنمایی"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
|
@ -0,0 +1,55 @@
|
||||||
|
{
|
||||||
|
"name": "fi",
|
||||||
|
"options": {
|
||||||
|
"months": [
|
||||||
|
"Tammikuu",
|
||||||
|
"Helmikuu",
|
||||||
|
"Maaliskuu",
|
||||||
|
"Huhtikuu",
|
||||||
|
"Toukokuu",
|
||||||
|
"Kesäkuu",
|
||||||
|
"Heinäkuu",
|
||||||
|
"Elokuu",
|
||||||
|
"Syyskuu",
|
||||||
|
"Lokakuu",
|
||||||
|
"Marraskuu",
|
||||||
|
"Joulukuu"
|
||||||
|
],
|
||||||
|
"shortMonths": [
|
||||||
|
"Tammi",
|
||||||
|
"Helmi",
|
||||||
|
"Maalis",
|
||||||
|
"Huhti",
|
||||||
|
"Touko",
|
||||||
|
"Kesä",
|
||||||
|
"Heinä",
|
||||||
|
"Elo",
|
||||||
|
"Syys",
|
||||||
|
"Loka",
|
||||||
|
"Marras",
|
||||||
|
"Joulu"
|
||||||
|
],
|
||||||
|
"days": [
|
||||||
|
"Sunnuntai",
|
||||||
|
"Maanantai",
|
||||||
|
"Tiistai",
|
||||||
|
"Keskiviikko",
|
||||||
|
"Torstai",
|
||||||
|
"Perjantai",
|
||||||
|
"Lauantai"
|
||||||
|
],
|
||||||
|
"shortDays": ["Su", "Ma", "Ti", "Ke", "To", "Pe", "La"],
|
||||||
|
"toolbar": {
|
||||||
|
"exportToSVG": "Lataa SVG",
|
||||||
|
"exportToPNG": "Lataa PNG",
|
||||||
|
"exportToCSV": "Lataa CSV",
|
||||||
|
"menu": "Valikko",
|
||||||
|
"selection": "Valinta",
|
||||||
|
"selectionZoom": "Valinnan zoomaus",
|
||||||
|
"zoomIn": "Lähennä",
|
||||||
|
"zoomOut": "Loitonna",
|
||||||
|
"pan": "Panoroi",
|
||||||
|
"reset": "Nollaa zoomaus"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
|
@ -0,0 +1,55 @@
|
||||||
|
{
|
||||||
|
"name": "fr",
|
||||||
|
"options": {
|
||||||
|
"months": [
|
||||||
|
"janvier",
|
||||||
|
"février",
|
||||||
|
"mars",
|
||||||
|
"avril",
|
||||||
|
"mai",
|
||||||
|
"juin",
|
||||||
|
"juillet",
|
||||||
|
"août",
|
||||||
|
"septembre",
|
||||||
|
"octobre",
|
||||||
|
"novembre",
|
||||||
|
"décembre"
|
||||||
|
],
|
||||||
|
"shortMonths": [
|
||||||
|
"janv.",
|
||||||
|
"févr.",
|
||||||
|
"mars",
|
||||||
|
"avr.",
|
||||||
|
"mai",
|
||||||
|
"juin",
|
||||||
|
"juill.",
|
||||||
|
"août",
|
||||||
|
"sept.",
|
||||||
|
"oct.",
|
||||||
|
"nov.",
|
||||||
|
"déc."
|
||||||
|
],
|
||||||
|
"days": [
|
||||||
|
"dimanche",
|
||||||
|
"lundi",
|
||||||
|
"mardi",
|
||||||
|
"mercredi",
|
||||||
|
"jeudi",
|
||||||
|
"vendredi",
|
||||||
|
"samedi"
|
||||||
|
],
|
||||||
|
"shortDays": ["dim.", "lun.", "mar.", "mer.", "jeu.", "ven.", "sam."],
|
||||||
|
"toolbar": {
|
||||||
|
"exportToSVG": "Télécharger au format SVG",
|
||||||
|
"exportToPNG": "Télécharger au format PNG",
|
||||||
|
"exportToCSV": "Télécharger au format CSV",
|
||||||
|
"menu": "Menu",
|
||||||
|
"selection": "Sélection",
|
||||||
|
"selectionZoom": "Sélection et zoom",
|
||||||
|
"zoomIn": "Zoomer",
|
||||||
|
"zoomOut": "Dézoomer",
|
||||||
|
"pan": "Navigation",
|
||||||
|
"reset": "Réinitialiser le zoom"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
|
@ -0,0 +1,55 @@
|
||||||
|
{
|
||||||
|
"name": "he",
|
||||||
|
"options": {
|
||||||
|
"months": [
|
||||||
|
"ינואר",
|
||||||
|
"פברואר",
|
||||||
|
"מרץ",
|
||||||
|
"אפריל",
|
||||||
|
"מאי",
|
||||||
|
"יוני",
|
||||||
|
"יולי",
|
||||||
|
"אוגוסט",
|
||||||
|
"ספטמבר",
|
||||||
|
"אוקטובר",
|
||||||
|
"נובמבר",
|
||||||
|
"דצמבר"
|
||||||
|
],
|
||||||
|
"shortMonths": [
|
||||||
|
"ינו׳",
|
||||||
|
"פבר׳",
|
||||||
|
"מרץ",
|
||||||
|
"אפר׳",
|
||||||
|
"מאי",
|
||||||
|
"יוני",
|
||||||
|
"יולי",
|
||||||
|
"אוג׳",
|
||||||
|
"ספט׳",
|
||||||
|
"אוק׳",
|
||||||
|
"נוב׳",
|
||||||
|
"דצמ׳"
|
||||||
|
],
|
||||||
|
"days": [
|
||||||
|
"ראשון",
|
||||||
|
"שני",
|
||||||
|
"שלישי",
|
||||||
|
"רביעי",
|
||||||
|
"חמישי",
|
||||||
|
"שישי",
|
||||||
|
"שבת"
|
||||||
|
],
|
||||||
|
"shortDays": ["א׳", "ב׳", "ג׳", "ד׳", "ה׳", "ו׳", "ש׳"],
|
||||||
|
"toolbar": {
|
||||||
|
"exportToSVG": "הורד SVG",
|
||||||
|
"exportToPNG": "הורד PNG",
|
||||||
|
"exportToCSV": "הורד CSV",
|
||||||
|
"menu": "תפריט",
|
||||||
|
"selection": "בחירה",
|
||||||
|
"selectionZoom": "זום בחירה",
|
||||||
|
"zoomIn": "הגדלה",
|
||||||
|
"zoomOut": "הקטנה",
|
||||||
|
"pan": "הזזה",
|
||||||
|
"reset": "איפוס תצוגה"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
|
@ -0,0 +1,55 @@
|
||||||
|
{
|
||||||
|
"name": "hi",
|
||||||
|
"options": {
|
||||||
|
"months": [
|
||||||
|
"जनवरी",
|
||||||
|
"फ़रवरी",
|
||||||
|
"मार्च",
|
||||||
|
"अप्रैल",
|
||||||
|
"मई",
|
||||||
|
"जून",
|
||||||
|
"जुलाई",
|
||||||
|
"अगस्त",
|
||||||
|
"सितंबर",
|
||||||
|
"अक्टूबर",
|
||||||
|
"नवंबर",
|
||||||
|
"दिसंबर"
|
||||||
|
],
|
||||||
|
"shortMonths": [
|
||||||
|
"जनवरी",
|
||||||
|
"फ़रवरी",
|
||||||
|
"मार्च",
|
||||||
|
"अप्रैल",
|
||||||
|
"मई",
|
||||||
|
"जून",
|
||||||
|
"जुलाई",
|
||||||
|
"अगस्त",
|
||||||
|
"सितंबर",
|
||||||
|
"अक्टूबर",
|
||||||
|
"नवंबर",
|
||||||
|
"दिसंबर"
|
||||||
|
],
|
||||||
|
"days": [
|
||||||
|
"रविवार",
|
||||||
|
"सोमवार",
|
||||||
|
"मंगलवार",
|
||||||
|
"बुधवार",
|
||||||
|
"गुरुवार",
|
||||||
|
"शुक्रवार",
|
||||||
|
"शनिवार"
|
||||||
|
],
|
||||||
|
"shortDays": ["रवि", "सोम", "मंगल", "बुध", "गुरु", "शुक्र", "शनि"],
|
||||||
|
"toolbar": {
|
||||||
|
"exportToSVG": "निर्यात SVG",
|
||||||
|
"exportToPNG": "निर्यात PNG",
|
||||||
|
"exportToCSV": "निर्यात CSV",
|
||||||
|
"menu": "सूची",
|
||||||
|
"selection": "चयन",
|
||||||
|
"selectionZoom": "ज़ूम करना",
|
||||||
|
"zoomIn": "ज़ूम इन",
|
||||||
|
"zoomOut": "ज़ूम आउट",
|
||||||
|
"pan": "पैनिंग",
|
||||||
|
"reset": "फिर से कायम करना"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
|
@ -0,0 +1,55 @@
|
||||||
|
{
|
||||||
|
"name": "hr",
|
||||||
|
"options": {
|
||||||
|
"months": [
|
||||||
|
"Siječanj",
|
||||||
|
"Veljača",
|
||||||
|
"Ožujak",
|
||||||
|
"Travanj",
|
||||||
|
"Svibanj",
|
||||||
|
"Lipanj",
|
||||||
|
"Srpanj",
|
||||||
|
"Kolovoz",
|
||||||
|
"Rujan",
|
||||||
|
"Listopad",
|
||||||
|
"Studeni",
|
||||||
|
"Prosinac"
|
||||||
|
],
|
||||||
|
"shortMonths": [
|
||||||
|
"Sij",
|
||||||
|
"Velj",
|
||||||
|
"Ožu",
|
||||||
|
"Tra",
|
||||||
|
"Svi",
|
||||||
|
"Lip",
|
||||||
|
"Srp",
|
||||||
|
"Kol",
|
||||||
|
"Ruj",
|
||||||
|
"Lis",
|
||||||
|
"Stu",
|
||||||
|
"Pro"
|
||||||
|
],
|
||||||
|
"days": [
|
||||||
|
"Nedjelja",
|
||||||
|
"Ponedjeljak",
|
||||||
|
"Utorak",
|
||||||
|
"Srijeda",
|
||||||
|
"Četvrtak",
|
||||||
|
"Petak",
|
||||||
|
"Subota"
|
||||||
|
],
|
||||||
|
"shortDays": ["Ned", "Pon", "Uto", "Sri", "Čet", "Pet", "Sub"],
|
||||||
|
"toolbar": {
|
||||||
|
"exportToSVG": "Preuzmi SVG",
|
||||||
|
"exportToPNG": "Preuzmi PNG",
|
||||||
|
"exportToCSV": "Preuzmi CSV",
|
||||||
|
"menu": "Izbornik",
|
||||||
|
"selection": "Odabir",
|
||||||
|
"selectionZoom": "Odabirno povećanje",
|
||||||
|
"zoomIn": "Uvećajte prikaz",
|
||||||
|
"zoomOut": "Umanjite prikaz",
|
||||||
|
"pan": "Pomicanje",
|
||||||
|
"reset": "Povratak na zadani prikaz"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
|
@ -0,0 +1,64 @@
|
||||||
|
{
|
||||||
|
"name": "hu",
|
||||||
|
"options": {
|
||||||
|
"months": [
|
||||||
|
"január",
|
||||||
|
"február",
|
||||||
|
"március",
|
||||||
|
"április",
|
||||||
|
"május",
|
||||||
|
"június",
|
||||||
|
"július",
|
||||||
|
"augusztus",
|
||||||
|
"szeptember",
|
||||||
|
"október",
|
||||||
|
"november",
|
||||||
|
"december"
|
||||||
|
],
|
||||||
|
"shortMonths": [
|
||||||
|
"jan",
|
||||||
|
"feb",
|
||||||
|
"mar",
|
||||||
|
"ápr",
|
||||||
|
"máj",
|
||||||
|
"jún",
|
||||||
|
"júl",
|
||||||
|
"aug",
|
||||||
|
"szept",
|
||||||
|
"okt",
|
||||||
|
"nov",
|
||||||
|
"dec"
|
||||||
|
],
|
||||||
|
"days": [
|
||||||
|
"hétfő",
|
||||||
|
"kedd",
|
||||||
|
"szerda",
|
||||||
|
"csütörtök",
|
||||||
|
"péntek",
|
||||||
|
"szombat",
|
||||||
|
"vasárnap"
|
||||||
|
],
|
||||||
|
"shortDays": [
|
||||||
|
"H",
|
||||||
|
"K",
|
||||||
|
"Sze",
|
||||||
|
"Cs",
|
||||||
|
"P",
|
||||||
|
"Szo",
|
||||||
|
"V"
|
||||||
|
],
|
||||||
|
"toolbar": {
|
||||||
|
"exportToSVG": "Exportálás SVG-be",
|
||||||
|
"exportToPNG": "Exportálás PNG-be",
|
||||||
|
"exportToCSV": "Exportálás CSV-be",
|
||||||
|
"menu": "Fő ajánlat",
|
||||||
|
"download": "SVG letöltése",
|
||||||
|
"selection": "Kiválasztás",
|
||||||
|
"selectionZoom": "Nagyító kiválasztása",
|
||||||
|
"zoomIn": "Nagyítás",
|
||||||
|
"zoomOut": "Kicsinyítés",
|
||||||
|
"pan": "Képcsúsztatás",
|
||||||
|
"reset": "Nagyító visszaállítása"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
|
@ -0,0 +1,55 @@
|
||||||
|
{
|
||||||
|
"name": "hy",
|
||||||
|
"options": {
|
||||||
|
"months": [
|
||||||
|
"Հունվար",
|
||||||
|
"Փետրվար",
|
||||||
|
"Մարտ",
|
||||||
|
"Ապրիլ",
|
||||||
|
"Մայիս",
|
||||||
|
"Հունիս",
|
||||||
|
"Հուլիս",
|
||||||
|
"Օգոստոս",
|
||||||
|
"Սեպտեմբեր",
|
||||||
|
"Հոկտեմբեր",
|
||||||
|
"Նոյեմբեր",
|
||||||
|
"Դեկտեմբեր"
|
||||||
|
],
|
||||||
|
"shortMonths": [
|
||||||
|
"Հնվ",
|
||||||
|
"Փտվ",
|
||||||
|
"Մրտ",
|
||||||
|
"Ապր",
|
||||||
|
"Մյս",
|
||||||
|
"Հնս",
|
||||||
|
"Հլիս",
|
||||||
|
"Օգս",
|
||||||
|
"Սեպ",
|
||||||
|
"Հոկ",
|
||||||
|
"Նոյ",
|
||||||
|
"Դեկ"
|
||||||
|
],
|
||||||
|
"days": [
|
||||||
|
"Կիրակի",
|
||||||
|
"Երկուշաբթի",
|
||||||
|
"Երեքշաբթի",
|
||||||
|
"Չորեքշաբթի",
|
||||||
|
"Հինգշաբթի",
|
||||||
|
"Ուրբաթ",
|
||||||
|
"Շաբաթ"
|
||||||
|
],
|
||||||
|
"shortDays": ["Կիր", "Երկ", "Երք", "Չրք", "Հնգ", "Ուրբ", "Շբթ"],
|
||||||
|
"toolbar": {
|
||||||
|
"exportToSVG": "Բեռնել SVG",
|
||||||
|
"exportToPNG": "Բեռնել PNG",
|
||||||
|
"exportToCSV": "Բեռնել CSV",
|
||||||
|
"menu": "Մենյու",
|
||||||
|
"selection": "Ընտրված",
|
||||||
|
"selectionZoom": "Ընտրված հատվածի խոշորացում",
|
||||||
|
"zoomIn": "Խոշորացնել",
|
||||||
|
"zoomOut": "Մանրացնել",
|
||||||
|
"pan": "Տեղափոխում",
|
||||||
|
"reset": "Բերել սկզբնական վիճակի"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
|
@ -0,0 +1,47 @@
|
||||||
|
{
|
||||||
|
"name": "id",
|
||||||
|
"options": {
|
||||||
|
"months": [
|
||||||
|
"Januari",
|
||||||
|
"Februari",
|
||||||
|
"Maret",
|
||||||
|
"April",
|
||||||
|
"Mei",
|
||||||
|
"Juni",
|
||||||
|
"Juli",
|
||||||
|
"Agustus",
|
||||||
|
"September",
|
||||||
|
"Oktober",
|
||||||
|
"November",
|
||||||
|
"Desember"
|
||||||
|
],
|
||||||
|
"shortMonths": [
|
||||||
|
"Jan",
|
||||||
|
"Feb",
|
||||||
|
"Mar",
|
||||||
|
"Apr",
|
||||||
|
"Mei",
|
||||||
|
"Jun",
|
||||||
|
"Jul",
|
||||||
|
"Agu",
|
||||||
|
"Sep",
|
||||||
|
"Okt",
|
||||||
|
"Nov",
|
||||||
|
"Des"
|
||||||
|
],
|
||||||
|
"days": ["Minggu", "Senin", "Selasa", "Rabu", "kamis", "Jumat", "Sabtu"],
|
||||||
|
"shortDays": ["Min", "Sen", "Sel", "Rab", "Kam", "Jum", "Sab"],
|
||||||
|
"toolbar": {
|
||||||
|
"exportToSVG": "Unduh SVG",
|
||||||
|
"exportToPNG": "Unduh PNG",
|
||||||
|
"exportToCSV": "Unduh CSV",
|
||||||
|
"menu": "Menu",
|
||||||
|
"selection": "Pilihan",
|
||||||
|
"selectionZoom": "Perbesar Pilihan",
|
||||||
|
"zoomIn": "Perbesar",
|
||||||
|
"zoomOut": "Perkecil",
|
||||||
|
"pan": "Geser",
|
||||||
|
"reset": "Atur Ulang Zoom"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
|
@ -0,0 +1,55 @@
|
||||||
|
{
|
||||||
|
"name": "it",
|
||||||
|
"options": {
|
||||||
|
"months": [
|
||||||
|
"Gennaio",
|
||||||
|
"Febbraio",
|
||||||
|
"Marzo",
|
||||||
|
"Aprile",
|
||||||
|
"Maggio",
|
||||||
|
"Giugno",
|
||||||
|
"Luglio",
|
||||||
|
"Agosto",
|
||||||
|
"Settembre",
|
||||||
|
"Ottobre",
|
||||||
|
"Novembre",
|
||||||
|
"Dicembre"
|
||||||
|
],
|
||||||
|
"shortMonths": [
|
||||||
|
"Gen",
|
||||||
|
"Feb",
|
||||||
|
"Mar",
|
||||||
|
"Apr",
|
||||||
|
"Mag",
|
||||||
|
"Giu",
|
||||||
|
"Lug",
|
||||||
|
"Ago",
|
||||||
|
"Set",
|
||||||
|
"Ott",
|
||||||
|
"Nov",
|
||||||
|
"Dic"
|
||||||
|
],
|
||||||
|
"days": [
|
||||||
|
"Domenica",
|
||||||
|
"Lunedì",
|
||||||
|
"Martedì",
|
||||||
|
"Mercoledì",
|
||||||
|
"Giovedì",
|
||||||
|
"Venerdì",
|
||||||
|
"Sabato"
|
||||||
|
],
|
||||||
|
"shortDays": ["Dom", "Lun", "Mar", "Mer", "Gio", "Ven", "Sab"],
|
||||||
|
"toolbar": {
|
||||||
|
"exportToSVG": "Scarica SVG",
|
||||||
|
"exportToPNG": "Scarica PNG",
|
||||||
|
"exportToCSV": "Scarica CSV",
|
||||||
|
"menu": "Menu",
|
||||||
|
"selection": "Selezione",
|
||||||
|
"selectionZoom": "Seleziona Zoom",
|
||||||
|
"zoomIn": "Zoom In",
|
||||||
|
"zoomOut": "Zoom Out",
|
||||||
|
"pan": "Sposta",
|
||||||
|
"reset": "Reimposta Zoom"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
|
@ -0,0 +1,55 @@
|
||||||
|
{
|
||||||
|
"name": "ja",
|
||||||
|
"options": {
|
||||||
|
"months": [
|
||||||
|
"1月",
|
||||||
|
"2月",
|
||||||
|
"3月",
|
||||||
|
"4月",
|
||||||
|
"5月",
|
||||||
|
"6月",
|
||||||
|
"7月",
|
||||||
|
"8月",
|
||||||
|
"9月",
|
||||||
|
"10月",
|
||||||
|
"11月",
|
||||||
|
"12月"
|
||||||
|
],
|
||||||
|
"shortMonths": [
|
||||||
|
"1月",
|
||||||
|
"2月",
|
||||||
|
"3月",
|
||||||
|
"4月",
|
||||||
|
"5月",
|
||||||
|
"6月",
|
||||||
|
"7月",
|
||||||
|
"8月",
|
||||||
|
"9月",
|
||||||
|
"10月",
|
||||||
|
"11月",
|
||||||
|
"12月"
|
||||||
|
],
|
||||||
|
"days": [
|
||||||
|
"日曜日",
|
||||||
|
"月曜日",
|
||||||
|
"火曜日",
|
||||||
|
"水曜日",
|
||||||
|
"木曜日",
|
||||||
|
"金曜日",
|
||||||
|
"土曜日"
|
||||||
|
],
|
||||||
|
"shortDays": ["日", "月", "火", "水", "木", "金", "土"],
|
||||||
|
"toolbar": {
|
||||||
|
"exportToSVG": "SVGダウンロード",
|
||||||
|
"exportToPNG": "PNGダウンロード",
|
||||||
|
"exportToCSV": "CSVダウンロード",
|
||||||
|
"menu": "メニュー",
|
||||||
|
"selection": "選択",
|
||||||
|
"selectionZoom": "選択ズーム",
|
||||||
|
"zoomIn": "拡大",
|
||||||
|
"zoomOut": "縮小",
|
||||||
|
"pan": "パン",
|
||||||
|
"reset": "ズームリセット"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
|
@ -0,0 +1,55 @@
|
||||||
|
{
|
||||||
|
"name": "ka",
|
||||||
|
"options": {
|
||||||
|
"months": [
|
||||||
|
"იანვარი",
|
||||||
|
"თებერვალი",
|
||||||
|
"მარტი",
|
||||||
|
"აპრილი",
|
||||||
|
"მაისი",
|
||||||
|
"ივნისი",
|
||||||
|
"ივლისი",
|
||||||
|
"აგვისტო",
|
||||||
|
"სექტემბერი",
|
||||||
|
"ოქტომბერი",
|
||||||
|
"ნოემბერი",
|
||||||
|
"დეკემბერი"
|
||||||
|
],
|
||||||
|
"shortMonths": [
|
||||||
|
"იან",
|
||||||
|
"თებ",
|
||||||
|
"მარ",
|
||||||
|
"აპრ",
|
||||||
|
"მაი",
|
||||||
|
"ივნ",
|
||||||
|
"ივლ",
|
||||||
|
"აგვ",
|
||||||
|
"სექ",
|
||||||
|
"ოქტ",
|
||||||
|
"ნოე",
|
||||||
|
"დეკ"
|
||||||
|
],
|
||||||
|
"days": [
|
||||||
|
"კვირა",
|
||||||
|
"ორშაბათი",
|
||||||
|
"სამშაბათი",
|
||||||
|
"ოთხშაბათი",
|
||||||
|
"ხუთშაბათი",
|
||||||
|
"პარასკევი",
|
||||||
|
"შაბათი"
|
||||||
|
],
|
||||||
|
"shortDays": ["კვი", "ორშ", "სამ", "ოთხ", "ხუთ", "პარ", "შაბ"],
|
||||||
|
"toolbar": {
|
||||||
|
"exportToSVG": "გადმოქაჩე SVG",
|
||||||
|
"exportToPNG": "გადმოქაჩე PNG",
|
||||||
|
"exportToCSV": "გადმოქაჩე CSV",
|
||||||
|
"menu": "მენიუ",
|
||||||
|
"selection": "არჩევა",
|
||||||
|
"selectionZoom": "არჩეულის გადიდება",
|
||||||
|
"zoomIn": "გადიდება",
|
||||||
|
"zoomOut": "დაპატარაება",
|
||||||
|
"pan": "გადაჩოჩება",
|
||||||
|
"reset": "გადიდების გაუქმება"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
|
@ -0,0 +1,55 @@
|
||||||
|
{
|
||||||
|
"name": "ko",
|
||||||
|
"options": {
|
||||||
|
"months": [
|
||||||
|
"1월",
|
||||||
|
"2월",
|
||||||
|
"3월",
|
||||||
|
"4월",
|
||||||
|
"5월",
|
||||||
|
"6월",
|
||||||
|
"7월",
|
||||||
|
"8월",
|
||||||
|
"9월",
|
||||||
|
"10월",
|
||||||
|
"11월",
|
||||||
|
"12월"
|
||||||
|
],
|
||||||
|
"shortMonths": [
|
||||||
|
"1월",
|
||||||
|
"2월",
|
||||||
|
"3월",
|
||||||
|
"4월",
|
||||||
|
"5월",
|
||||||
|
"6월",
|
||||||
|
"7월",
|
||||||
|
"8월",
|
||||||
|
"9월",
|
||||||
|
"10월",
|
||||||
|
"11월",
|
||||||
|
"12월"
|
||||||
|
],
|
||||||
|
"days": [
|
||||||
|
"일요일",
|
||||||
|
"월요일",
|
||||||
|
"화요일",
|
||||||
|
"수요일",
|
||||||
|
"목요일",
|
||||||
|
"금요일",
|
||||||
|
"토요일"
|
||||||
|
],
|
||||||
|
"shortDays": ["일", "월", "화", "수", "목", "금", "토"],
|
||||||
|
"toolbar": {
|
||||||
|
"exportToSVG": "SVG 다운로드",
|
||||||
|
"exportToPNG": "PNG 다운로드",
|
||||||
|
"exportToCSV": "CSV 다운로드",
|
||||||
|
"menu": "메뉴",
|
||||||
|
"selection": "선택",
|
||||||
|
"selectionZoom": "선택영역 확대",
|
||||||
|
"zoomIn": "확대",
|
||||||
|
"zoomOut": "축소",
|
||||||
|
"pan": "패닝",
|
||||||
|
"reset": "원래대로"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
|
@ -0,0 +1,55 @@
|
||||||
|
{
|
||||||
|
"name": "lt",
|
||||||
|
"options": {
|
||||||
|
"months": [
|
||||||
|
"Sausis",
|
||||||
|
"Vasaris",
|
||||||
|
"Kovas",
|
||||||
|
"Balandis",
|
||||||
|
"Gegužė",
|
||||||
|
"Birželis",
|
||||||
|
"Liepa",
|
||||||
|
"Rugpjūtis",
|
||||||
|
"Rugsėjis",
|
||||||
|
"Spalis",
|
||||||
|
"Lapkritis",
|
||||||
|
"Gruodis"
|
||||||
|
],
|
||||||
|
"shortMonths": [
|
||||||
|
"Sau",
|
||||||
|
"Vas",
|
||||||
|
"Kov",
|
||||||
|
"Bal",
|
||||||
|
"Geg",
|
||||||
|
"Bir",
|
||||||
|
"Lie",
|
||||||
|
"Rgp",
|
||||||
|
"Rgs",
|
||||||
|
"Spl",
|
||||||
|
"Lap",
|
||||||
|
"Grd"
|
||||||
|
],
|
||||||
|
"days": [
|
||||||
|
"Sekmadienis",
|
||||||
|
"Pirmadienis",
|
||||||
|
"Antradienis",
|
||||||
|
"Trečiadienis",
|
||||||
|
"Ketvirtadienis",
|
||||||
|
"Penktadienis",
|
||||||
|
"Šeštadienis"
|
||||||
|
],
|
||||||
|
"shortDays": ["Sk", "Per", "An", "Tr", "Kt", "Pn", "Št"],
|
||||||
|
"toolbar": {
|
||||||
|
"exportToSVG": "Atsisiųsti SVG",
|
||||||
|
"exportToPNG": "Atsisiųsti PNG",
|
||||||
|
"exportToCSV": "Atsisiųsti CSV",
|
||||||
|
"menu": "Menu",
|
||||||
|
"selection": "Pasirinkimas",
|
||||||
|
"selectionZoom": "Zoom: Pasirinkimas",
|
||||||
|
"zoomIn": "Zoom: Priartinti",
|
||||||
|
"zoomOut": "Zoom: Atitolinti",
|
||||||
|
"pan": "Perkėlimas",
|
||||||
|
"reset": "Atstatyti"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
|
@ -0,0 +1,64 @@
|
||||||
|
{
|
||||||
|
"name": "lv",
|
||||||
|
"options": {
|
||||||
|
"months": [
|
||||||
|
"janvāris",
|
||||||
|
"februāris",
|
||||||
|
"marts",
|
||||||
|
"aprīlis",
|
||||||
|
"maijs",
|
||||||
|
"jūnijs",
|
||||||
|
"jūlijs",
|
||||||
|
"augusts",
|
||||||
|
"septembris",
|
||||||
|
"oktobris",
|
||||||
|
"novembris",
|
||||||
|
"decembris"
|
||||||
|
],
|
||||||
|
"shortMonths": [
|
||||||
|
"janv",
|
||||||
|
"febr",
|
||||||
|
"marts",
|
||||||
|
"apr",
|
||||||
|
"maijs",
|
||||||
|
"jūn",
|
||||||
|
"jūl",
|
||||||
|
"aug",
|
||||||
|
"sept",
|
||||||
|
"okt",
|
||||||
|
"nov",
|
||||||
|
"dec"
|
||||||
|
],
|
||||||
|
"days": [
|
||||||
|
"svētdiena",
|
||||||
|
"pirmdiena",
|
||||||
|
"otrdiena",
|
||||||
|
"trešdiena",
|
||||||
|
"ceturtdiena",
|
||||||
|
"piektdiena",
|
||||||
|
"sestdiena"
|
||||||
|
],
|
||||||
|
"shortDays": [
|
||||||
|
"Sv",
|
||||||
|
"P",
|
||||||
|
"O",
|
||||||
|
"T",
|
||||||
|
"C",
|
||||||
|
"P",
|
||||||
|
"S"
|
||||||
|
],
|
||||||
|
"toolbar": {
|
||||||
|
"exportToSVG": "Lejuplādēt SVG",
|
||||||
|
"exportToPNG": "Lejuplādēt PNG",
|
||||||
|
"exportToCSV": "Lejuplādēt CSV",
|
||||||
|
"menu": "Izvēlne",
|
||||||
|
"selection": "Atlase",
|
||||||
|
"selectionZoom": "Pietuvināt atlasi",
|
||||||
|
"zoomIn": "Pietuvināt",
|
||||||
|
"zoomOut": "Attālināt",
|
||||||
|
"pan": "Pārvietoties diagrammā",
|
||||||
|
"reset": "Atiestatīt pietuvinājumu"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
|
@ -0,0 +1,55 @@
|
||||||
|
{
|
||||||
|
"name": "nb",
|
||||||
|
"options": {
|
||||||
|
"months": [
|
||||||
|
"Januar",
|
||||||
|
"Februar",
|
||||||
|
"Mars",
|
||||||
|
"April",
|
||||||
|
"Mai",
|
||||||
|
"Juni",
|
||||||
|
"Juli",
|
||||||
|
"August",
|
||||||
|
"September",
|
||||||
|
"Oktober",
|
||||||
|
"November",
|
||||||
|
"Desember"
|
||||||
|
],
|
||||||
|
"shortMonths": [
|
||||||
|
"Jan",
|
||||||
|
"Feb",
|
||||||
|
"Mar",
|
||||||
|
"Apr",
|
||||||
|
"Mai",
|
||||||
|
"Jun",
|
||||||
|
"Jul",
|
||||||
|
"Aug",
|
||||||
|
"Sep",
|
||||||
|
"Okt",
|
||||||
|
"Nov",
|
||||||
|
"Des"
|
||||||
|
],
|
||||||
|
"days": [
|
||||||
|
"Søndag",
|
||||||
|
"Mandag",
|
||||||
|
"Tirsdag",
|
||||||
|
"Onsdag",
|
||||||
|
"Torsdag",
|
||||||
|
"Fredag",
|
||||||
|
"Lørdag"
|
||||||
|
],
|
||||||
|
"shortDays": ["Sø", "Ma", "Ti", "On", "To", "Fr", "Lø"],
|
||||||
|
"toolbar": {
|
||||||
|
"exportToSVG": "Last ned SVG",
|
||||||
|
"exportToPNG": "Last ned PNG",
|
||||||
|
"exportToCSV": "Last ned CSV",
|
||||||
|
"menu": "Menu",
|
||||||
|
"selection": "Velg",
|
||||||
|
"selectionZoom": "Zoom: Velg",
|
||||||
|
"zoomIn": "Zoome inn",
|
||||||
|
"zoomOut": "Zoome ut",
|
||||||
|
"pan": "Skyving",
|
||||||
|
"reset": "Start på nytt"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
|
@ -0,0 +1,55 @@
|
||||||
|
{
|
||||||
|
"name": "nl",
|
||||||
|
"options": {
|
||||||
|
"months": [
|
||||||
|
"Januari",
|
||||||
|
"Februari",
|
||||||
|
"Maart",
|
||||||
|
"April",
|
||||||
|
"Mei",
|
||||||
|
"Juni",
|
||||||
|
"Juli",
|
||||||
|
"Augustus",
|
||||||
|
"September",
|
||||||
|
"Oktober",
|
||||||
|
"November",
|
||||||
|
"December"
|
||||||
|
],
|
||||||
|
"shortMonths": [
|
||||||
|
"Jan",
|
||||||
|
"Feb",
|
||||||
|
"Mrt",
|
||||||
|
"Apr",
|
||||||
|
"Mei",
|
||||||
|
"Jun",
|
||||||
|
"Jul",
|
||||||
|
"Aug",
|
||||||
|
"Sep",
|
||||||
|
"Okt",
|
||||||
|
"Nov",
|
||||||
|
"Dec"
|
||||||
|
],
|
||||||
|
"days": [
|
||||||
|
"Zondag",
|
||||||
|
"Maandag",
|
||||||
|
"Dinsdag",
|
||||||
|
"Woensdag",
|
||||||
|
"Donderdag",
|
||||||
|
"Vrijdag",
|
||||||
|
"Zaterdag"
|
||||||
|
],
|
||||||
|
"shortDays": ["Zo", "Ma", "Di", "Wo", "Do", "Vr", "Za"],
|
||||||
|
"toolbar": {
|
||||||
|
"exportToSVG": "Download SVG",
|
||||||
|
"exportToPNG": "Download PNG",
|
||||||
|
"exportToCSV": "Download CSV",
|
||||||
|
"menu": "Menu",
|
||||||
|
"selection": "Selectie",
|
||||||
|
"selectionZoom": "Zoom selectie",
|
||||||
|
"zoomIn": "Zoom in",
|
||||||
|
"zoomOut": "Zoom out",
|
||||||
|
"pan": "Verplaatsen",
|
||||||
|
"reset": "Standaardwaarden"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
|
@ -0,0 +1,55 @@
|
||||||
|
{
|
||||||
|
"name": "pl",
|
||||||
|
"options": {
|
||||||
|
"months": [
|
||||||
|
"Styczeń",
|
||||||
|
"Luty",
|
||||||
|
"Marzec",
|
||||||
|
"Kwiecień",
|
||||||
|
"Maj",
|
||||||
|
"Czerwiec",
|
||||||
|
"Lipiec",
|
||||||
|
"Sierpień",
|
||||||
|
"Wrzesień",
|
||||||
|
"Październik",
|
||||||
|
"Listopad",
|
||||||
|
"Grudzień"
|
||||||
|
],
|
||||||
|
"shortMonths": [
|
||||||
|
"Sty",
|
||||||
|
"Lut",
|
||||||
|
"Mar",
|
||||||
|
"Kwi",
|
||||||
|
"Maj",
|
||||||
|
"Cze",
|
||||||
|
"Lip",
|
||||||
|
"Sie",
|
||||||
|
"Wrz",
|
||||||
|
"Paź",
|
||||||
|
"Lis",
|
||||||
|
"Gru"
|
||||||
|
],
|
||||||
|
"days": [
|
||||||
|
"Niedziela",
|
||||||
|
"Poniedziałek",
|
||||||
|
"Wtorek",
|
||||||
|
"Środa",
|
||||||
|
"Czwartek",
|
||||||
|
"Piątek",
|
||||||
|
"Sobota"
|
||||||
|
],
|
||||||
|
"shortDays": ["Nd", "Pn", "Wt", "Śr", "Cz", "Pt", "Sb"],
|
||||||
|
"toolbar": {
|
||||||
|
"exportToSVG": "Pobierz SVG",
|
||||||
|
"exportToPNG": "Pobierz PNG",
|
||||||
|
"exportToCSV": "Pobierz CSV",
|
||||||
|
"menu": "Menu",
|
||||||
|
"selection": "Wybieranie",
|
||||||
|
"selectionZoom": "Zoom: Wybieranie",
|
||||||
|
"zoomIn": "Zoom: Przybliż",
|
||||||
|
"zoomOut": "Zoom: Oddal",
|
||||||
|
"pan": "Przesuwanie",
|
||||||
|
"reset": "Resetuj"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
|
@ -0,0 +1,55 @@
|
||||||
|
{
|
||||||
|
"name": "pt-br",
|
||||||
|
"options": {
|
||||||
|
"months": [
|
||||||
|
"Janeiro",
|
||||||
|
"Fevereiro",
|
||||||
|
"Março",
|
||||||
|
"Abril",
|
||||||
|
"Maio",
|
||||||
|
"Junho",
|
||||||
|
"Julho",
|
||||||
|
"Agosto",
|
||||||
|
"Setembro",
|
||||||
|
"Outubro",
|
||||||
|
"Novembro",
|
||||||
|
"Dezembro"
|
||||||
|
],
|
||||||
|
"shortMonths": [
|
||||||
|
"Jan",
|
||||||
|
"Fev",
|
||||||
|
"Mar",
|
||||||
|
"Abr",
|
||||||
|
"Mai",
|
||||||
|
"Jun",
|
||||||
|
"Jul",
|
||||||
|
"Ago",
|
||||||
|
"Set",
|
||||||
|
"Out",
|
||||||
|
"Nov",
|
||||||
|
"Dez"
|
||||||
|
],
|
||||||
|
"days": [
|
||||||
|
"Domingo",
|
||||||
|
"Segunda",
|
||||||
|
"Terça",
|
||||||
|
"Quarta",
|
||||||
|
"Quinta",
|
||||||
|
"Sexta",
|
||||||
|
"Sábado"
|
||||||
|
],
|
||||||
|
"shortDays": ["Dom", "Seg", "Ter", "Qua", "Qui", "Sex", "Sab"],
|
||||||
|
"toolbar": {
|
||||||
|
"exportToSVG": "Baixar SVG",
|
||||||
|
"exportToPNG": "Baixar PNG",
|
||||||
|
"exportToCSV": "Baixar CSV",
|
||||||
|
"menu": "Menu",
|
||||||
|
"selection": "Selecionar",
|
||||||
|
"selectionZoom": "Selecionar Zoom",
|
||||||
|
"zoomIn": "Aumentar",
|
||||||
|
"zoomOut": "Diminuir",
|
||||||
|
"pan": "Navegação",
|
||||||
|
"reset": "Reiniciar Zoom"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
|
@ -0,0 +1,55 @@
|
||||||
|
{
|
||||||
|
"name": "pt",
|
||||||
|
"options": {
|
||||||
|
"months": [
|
||||||
|
"Janeiro",
|
||||||
|
"Fevereiro",
|
||||||
|
"Março",
|
||||||
|
"Abril",
|
||||||
|
"Maio",
|
||||||
|
"Junho",
|
||||||
|
"Julho",
|
||||||
|
"Agosto",
|
||||||
|
"Setembro",
|
||||||
|
"Outubro",
|
||||||
|
"Novembro",
|
||||||
|
"Dezembro"
|
||||||
|
],
|
||||||
|
"shortMonths": [
|
||||||
|
"Jan",
|
||||||
|
"Fev",
|
||||||
|
"Mar",
|
||||||
|
"Abr",
|
||||||
|
"Mai",
|
||||||
|
"Jun",
|
||||||
|
"Jul",
|
||||||
|
"Ag",
|
||||||
|
"Set",
|
||||||
|
"Out",
|
||||||
|
"Nov",
|
||||||
|
"Dez"
|
||||||
|
],
|
||||||
|
"days": [
|
||||||
|
"Domingo",
|
||||||
|
"Segunda-feira",
|
||||||
|
"Terça-feira",
|
||||||
|
"Quarta-feira",
|
||||||
|
"Quinta-feira",
|
||||||
|
"Sexta-feira",
|
||||||
|
"Sábado"
|
||||||
|
],
|
||||||
|
"shortDays": ["Do", "Se", "Te", "Qa", "Qi", "Sx", "Sa"],
|
||||||
|
"toolbar": {
|
||||||
|
"exportToSVG": "Baixar SVG",
|
||||||
|
"exportToPNG": "Baixar PNG",
|
||||||
|
"exportToCSV": "Baixar CSV",
|
||||||
|
"menu": "Menu",
|
||||||
|
"selection": "Selecionar",
|
||||||
|
"selectionZoom": "Zoom: Selecionar",
|
||||||
|
"zoomIn": "Zoom: Aumentar",
|
||||||
|
"zoomOut": "Zoom: Diminuir",
|
||||||
|
"pan": "Deslocamento",
|
||||||
|
"reset": "Redefinir"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
|
@ -0,0 +1,55 @@
|
||||||
|
{
|
||||||
|
"name": "rs",
|
||||||
|
"options": {
|
||||||
|
"months": [
|
||||||
|
"Januar",
|
||||||
|
"Februar",
|
||||||
|
"Mart",
|
||||||
|
"April",
|
||||||
|
"Maj",
|
||||||
|
"Jun",
|
||||||
|
"Jul",
|
||||||
|
"Avgust",
|
||||||
|
"Septembar",
|
||||||
|
"Oktobar",
|
||||||
|
"Novembar",
|
||||||
|
"Decembar"
|
||||||
|
],
|
||||||
|
"shortMonths": [
|
||||||
|
"Jan",
|
||||||
|
"Feb",
|
||||||
|
"Mar",
|
||||||
|
"Apr",
|
||||||
|
"Maj",
|
||||||
|
"Jun",
|
||||||
|
"Jul",
|
||||||
|
"Avg",
|
||||||
|
"Sep",
|
||||||
|
"Okt",
|
||||||
|
"Nov",
|
||||||
|
"Dec"
|
||||||
|
],
|
||||||
|
"days": [
|
||||||
|
"Nedelja",
|
||||||
|
"Ponedeljak",
|
||||||
|
"Utorak",
|
||||||
|
"Sreda",
|
||||||
|
"Četvrtak",
|
||||||
|
"Petak",
|
||||||
|
"Subota"
|
||||||
|
],
|
||||||
|
"shortDays": ["Ned", "Pon", "Uto", "Sre", "Čet", "Pet", "Sub"],
|
||||||
|
"toolbar": {
|
||||||
|
"exportToSVG": "Preuzmi SVG",
|
||||||
|
"exportToPNG": "Preuzmi PNG",
|
||||||
|
"exportToCSV": "Preuzmi CSV",
|
||||||
|
"menu": "Meni",
|
||||||
|
"selection": "Odabir",
|
||||||
|
"selectionZoom": "Odabirno povećanje",
|
||||||
|
"zoomIn": "Uvećajte prikaz",
|
||||||
|
"zoomOut": "Umanjite prikaz",
|
||||||
|
"pan": "Pomeranje",
|
||||||
|
"reset": "Resetuj prikaz"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
|
@ -0,0 +1,55 @@
|
||||||
|
{
|
||||||
|
"name": "ru",
|
||||||
|
"options": {
|
||||||
|
"months": [
|
||||||
|
"Январь",
|
||||||
|
"Февраль",
|
||||||
|
"Март",
|
||||||
|
"Апрель",
|
||||||
|
"Май",
|
||||||
|
"Июнь",
|
||||||
|
"Июль",
|
||||||
|
"Август",
|
||||||
|
"Сентябрь",
|
||||||
|
"Октябрь",
|
||||||
|
"Ноябрь",
|
||||||
|
"Декабрь"
|
||||||
|
],
|
||||||
|
"shortMonths": [
|
||||||
|
"Янв",
|
||||||
|
"Фев",
|
||||||
|
"Мар",
|
||||||
|
"Апр",
|
||||||
|
"Май",
|
||||||
|
"Июн",
|
||||||
|
"Июл",
|
||||||
|
"Авг",
|
||||||
|
"Сен",
|
||||||
|
"Окт",
|
||||||
|
"Ноя",
|
||||||
|
"Дек"
|
||||||
|
],
|
||||||
|
"days": [
|
||||||
|
"Воскресенье",
|
||||||
|
"Понедельник",
|
||||||
|
"Вторник",
|
||||||
|
"Среда",
|
||||||
|
"Четверг",
|
||||||
|
"Пятница",
|
||||||
|
"Суббота"
|
||||||
|
],
|
||||||
|
"shortDays": ["Вс", "Пн", "Вт", "Ср", "Чт", "Пт", "Сб"],
|
||||||
|
"toolbar": {
|
||||||
|
"exportToSVG": "Сохранить SVG",
|
||||||
|
"exportToPNG": "Сохранить PNG",
|
||||||
|
"exportToCSV": "Сохранить CSV",
|
||||||
|
"menu": "Меню",
|
||||||
|
"selection": "Выбор",
|
||||||
|
"selectionZoom": "Выбор с увеличением",
|
||||||
|
"zoomIn": "Увеличить",
|
||||||
|
"zoomOut": "Уменьшить",
|
||||||
|
"pan": "Перемещение",
|
||||||
|
"reset": "Сбросить увеличение"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
|
@ -0,0 +1,55 @@
|
||||||
|
{
|
||||||
|
"name": "se",
|
||||||
|
"options": {
|
||||||
|
"months": [
|
||||||
|
"Januari",
|
||||||
|
"Februari",
|
||||||
|
"Mars",
|
||||||
|
"April",
|
||||||
|
"Maj",
|
||||||
|
"Juni",
|
||||||
|
"Juli",
|
||||||
|
"Augusti",
|
||||||
|
"September",
|
||||||
|
"Oktober",
|
||||||
|
"November",
|
||||||
|
"December"
|
||||||
|
],
|
||||||
|
"shortMonths": [
|
||||||
|
"Jan",
|
||||||
|
"Feb",
|
||||||
|
"Mar",
|
||||||
|
"Apr",
|
||||||
|
"Maj",
|
||||||
|
"Juni",
|
||||||
|
"Juli",
|
||||||
|
"Aug",
|
||||||
|
"Sep",
|
||||||
|
"Okt",
|
||||||
|
"Nov",
|
||||||
|
"Dec"
|
||||||
|
],
|
||||||
|
"days": [
|
||||||
|
"Söndag",
|
||||||
|
"Måndag",
|
||||||
|
"Tisdag",
|
||||||
|
"Onsdag",
|
||||||
|
"Torsdag",
|
||||||
|
"Fredag",
|
||||||
|
"Lördag"
|
||||||
|
],
|
||||||
|
"shortDays": ["Sön", "Mån", "Tis", "Ons", "Tor", "Fre", "Lör"],
|
||||||
|
"toolbar": {
|
||||||
|
"exportToSVG": "Ladda SVG",
|
||||||
|
"exportToPNG": "Ladda PNG",
|
||||||
|
"exportToCSV": "Ladda CSV",
|
||||||
|
"menu": "Meny",
|
||||||
|
"selection": "Selektion",
|
||||||
|
"selectionZoom": "Val av zoom",
|
||||||
|
"zoomIn": "Zooma in",
|
||||||
|
"zoomOut": "Zooma ut",
|
||||||
|
"pan": "Panorering",
|
||||||
|
"reset": "Återställ zoomning"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
|
@ -0,0 +1,55 @@
|
||||||
|
{
|
||||||
|
"name": "sk",
|
||||||
|
"options": {
|
||||||
|
"months": [
|
||||||
|
"Január",
|
||||||
|
"Február",
|
||||||
|
"Marec",
|
||||||
|
"Apríl",
|
||||||
|
"Máj",
|
||||||
|
"Jún",
|
||||||
|
"Júl",
|
||||||
|
"August",
|
||||||
|
"September",
|
||||||
|
"Október",
|
||||||
|
"November",
|
||||||
|
"December"
|
||||||
|
],
|
||||||
|
"shortMonths": [
|
||||||
|
"Jan",
|
||||||
|
"Feb",
|
||||||
|
"Mar",
|
||||||
|
"Apr",
|
||||||
|
"Máj",
|
||||||
|
"Jún",
|
||||||
|
"Júl",
|
||||||
|
"Aug",
|
||||||
|
"Sep",
|
||||||
|
"Okt",
|
||||||
|
"Nov",
|
||||||
|
"Dec"
|
||||||
|
],
|
||||||
|
"days": [
|
||||||
|
"Nedeľa",
|
||||||
|
"Pondelok",
|
||||||
|
"Utorok",
|
||||||
|
"Streda",
|
||||||
|
"Štvrtok",
|
||||||
|
"Piatok",
|
||||||
|
"Sobota"
|
||||||
|
],
|
||||||
|
"shortDays": ["Ne", "Po", "Ut", "St", "Št", "Pi", "So"],
|
||||||
|
"toolbar": {
|
||||||
|
"exportToSVG": "Stiahnuť SVG",
|
||||||
|
"exportToPNG": "Stiahnuť PNG",
|
||||||
|
"exportToCSV": "Stiahnuť CSV",
|
||||||
|
"menu": "Menu",
|
||||||
|
"selection": "Vyberanie",
|
||||||
|
"selectionZoom": "Zoom: Vyberanie",
|
||||||
|
"zoomIn": "Zoom: Priblížiť",
|
||||||
|
"zoomOut": "Zoom: Vzdialiť",
|
||||||
|
"pan": "Presúvanie",
|
||||||
|
"reset": "Resetovať"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|