public void addSubject(Short week, String subject, String audience, String professor) {
        SchedulerSubjectPanel panel = new SchedulerSubjectPanel(subject, audience, professor);
        if (week == null) subjectsPanel.add(panel);
        else {
            SchedulerSubjectPanel empty = new SchedulerSubjectPanel("--", "--", "--");
            if (week.intValue() == 0) {
                upperWeek = panel;
            } else if (week.intValue() == 1) {
                bottomWeek = panel;
            }
            subjectsPanel.removeAll();
            subjectsPanel.add(upperWeek == null ? empty : upperWeek);
            subjectsPanel.add(bottomWeek == null ? empty : bottomWeek);
            // Добавление рамки для разделения верхней/нижней недели.
            JPanel p = (upperWeek == null ? empty : upperWeek);
            p.setBorder(BorderFactory.createMatteBorder(0, 0, 1, 0, Color.GRAY));
        }
    }