Completed
Push — master ( f00659...1f4cdd )
by Julien
05:36
created

Sessions   A

Complexity

Total Complexity 4

Size/Duplication

Total Lines 78
Duplicated Lines 0 %

Coupling/Cohesion

Components 0
Dependencies 1

Importance

Changes 1
Bugs 0 Features 1
Metric Value
wmc 4
c 1
b 0
f 1
lcom 0
cbo 1
dl 0
loc 78
rs 10

4 Methods

Rating   Name   Duplication   Size   Complexity  
A getAvgHourDate() 0 8 1
B getNextSession() 0 25 1
A movies() 0 4 1
A cinema() 0 4 1
1
<?php
2
3
namespace App\Http\Models;
4
5
use Illuminate\Database\Eloquent\Model;
6
use Illuminate\Support\Facades\DB;
7
8
9
/**
10
 * Classe qui va stocker mes requetes autoirs
11
 * de ma table movies
12
 * Hérite de ma super classe Model
13
 */
14
class Sessions extends Model{
15
16
17
    /**
18
     * Décrit le nom de la table
19
     * que classe fait référence
20
     */
21
    protected $table = 'sessions';
22
23
24
    /**
25
     * Retourne la moyenne des heure de sessions
26
     */
27
    public function getAvgHourDate(){
28
        $result = DB::table('sessions')
29
            ->select(DB::raw('ROUND(AVG(HOUR(date_session))) as avghour'))
30
            ->first();
31
            // first() retour le premiere résultat
32
            // get() retourn un tableau de résultat
33
        return $result;
34
    }
35
36
    /**
37
     * Recupérer mes 15 prochaines sessions
38
     * SELECT sessions.date_session AS DATE, movies.title AS mtitle, cinema.title AS ctitle
39
        FROM sessions
40
        INNER JOIN movies ON sessions.movies_id = movies.id
41
        INNER JOIN cinema ON sessions.cinema_id = cinema.id
42
        WHERE date_session > NOW( )
43
        LIMIT 0 , 15
44
     */
45
    public function getNextSession(){
46
47
        /* 1ere methode
0 ignored issues
show
Unused Code Comprehensibility introduced by
55% of this comment could be valid code. Did you maybe forget this after debugging?

Sometimes obsolete code just ends up commented out instead of removed. In this case it is better to remove the code once you have checked you do not need it.

The code might also have been commented out for debugging purposes. In this case it is vital that someone uncomments it again or your project may behave in very unexpected ways in production.

This check looks for comments that seem to be mostly valid code and reports them.

Loading history...
48
        $result = DB::select("SELECT sessions.date_session AS DATE, movies.title AS mtitle, cinema.title AS ctitle
49
                        FROM sessions
50
                        INNER JOIN movies ON sessions.movies_id = movies.id
51
                        INNER JOIN cinema ON sessions.cinema_id = cinema.id
52
                        WHERE date_session > NOW( )
53
                        LIMIT 0 , 15");
54
        */
55
56
        $result = DB::table('sessions')
57
                    ->select("sessions.date_session", "movies.title AS mtitle", "cinema.title AS mcinema")
58
                    ->join("movies", "sessions.movies_id",'=', "movies.id")
59
                    ->join("cinema", "sessions.cinema_id",'=', "cinema.id")
60
61
                    ->where("date_session",  ">", DB::raw("NOW()"))
62
                    ->orderBy('date_session', "ASC")
63
                    ->take(15)
64
                    ->get();
65
66
67
        return $result;
68
69
    }
70
71
72
    /**
73
     * @return \Illuminate\Database\Eloquent\Relations\BelongsTo
74
     */
75
    public function movies()
76
    {
77
        return $this->belongsTo('App\Http\Models\Movies');
78
    }
79
80
81
    /**
82
     * @return \Illuminate\Database\Eloquent\Relations\BelongsTo
83
     */
84
    public function cinema()
85
    {
86
        return $this->belongsTo('App\Http\Models\Cinema');
87
    }
88
89
90
91
}
92
93
94
95