diff --git a/lib/extern/modules/ExternModuleTemplateLectures.class.php b/lib/extern/modules/ExternModuleTemplateLectures.class.php
index 74d2b9b3c172c64cba9175b2b46d9cccc9754682..a586489583593dddca571c7ac9adadfa6dccb1f1 100644
--- a/lib/extern/modules/ExternModuleTemplateLectures.class.php
+++ b/lib/extern/modules/ExternModuleTemplateLectures.class.php
@@ -468,7 +468,7 @@ class ExternSemBrowseTemplate extends SemBrowse {
                         $doz_titlerear = array_keys($sem_data[$seminar_id]['title_rear']);
                         $doz_uname = array_keys($sem_data[$seminar_id]['username']);
                         $doz_position = array_keys($sem_data[$seminar_id]['position']);
-                        if (sizeof($doz_position) < $doz_name) {
+                        if (sizeof($doz_position) < sizeof($doz_name)) {
                             $doz_position = array_fill(0, sizeof($doz_name), 0);
                         }
                         if (is_array($doz_name)){
diff --git a/lib/extern/modules/views/ExternSemBrowse.class.php b/lib/extern/modules/views/ExternSemBrowse.class.php
index d0e14e0ae3d47887cbb25bfc888b9f522a0e8341..9366e2f86d753c0ed3ecabcb87ba176e4213cbef 100644
--- a/lib/extern/modules/views/ExternSemBrowse.class.php
+++ b/lib/extern/modules/views/ExternSemBrowse.class.php
@@ -77,8 +77,14 @@ class ExternSemBrowse extends SemBrowse {
             }
         }
 
-        $switch_time = mktime(0, 0, 0, date("m"),
-                date("d") + 7 * $this->config->getValue("Main", "semswitch"), date("Y"));
+        // Is a semester switch defined?
+        $week_offset = $this->config->getValue('Main', 'semswitch');
+        if (ctype_digit($week_offset)) {
+            $switch_time = strtotime("+{$week_offset} weeks 0:00:00");
+        } else {
+            $switch_time = strtotime('0:00:00');
+        }
+
         // get current semester
         $current_sem = get_sem_num($switch_time) + 1;
 
diff --git a/lib/extern/modules/views/ExternSemBrowseTable.class.php b/lib/extern/modules/views/ExternSemBrowseTable.class.php
index 2acc9718660fc9fd76679fa43ad7009bd9318bf3..77709c178eac629ae5446a0f4c5b087f8e00b316 100644
--- a/lib/extern/modules/views/ExternSemBrowseTable.class.php
+++ b/lib/extern/modules/views/ExternSemBrowseTable.class.php
@@ -137,8 +137,7 @@ class ExternSemBrowseTable extends SemBrowse {
                 $the_tree->buildIndex();
                 $selected_ranges = array_merge([$stid], $the_tree->getKidsKids($stid));
             }
-            if (!$this->module->config->getValue('SelectSubjectAreas', 'selectallsubjectareas')
-                    && count($selected_ranges)) {
+            if (!$this->module->config->getValue('SelectSubjectAreas', 'selectallsubjectareas') && $selected_ranges) {
                 if ($this->module->config->getValue('SelectSubjectAreas', 'reverseselection')) {
                     $sem_range_query =  "AND seminar_sem_tree.sem_tree_id NOT IN ('".implode("','", $selected_ranges)."')";
                 } else {
@@ -154,7 +153,7 @@ class ExternSemBrowseTable extends SemBrowse {
                 $selected_semtypes = [Request::get('semstatus')];
             }
             $sem_types_array = [];
-            if (count($selected_semtypes)) {
+            if ($selected_semtypes) {
                 foreach ($selected_semtypes as $i => $active) {
                     if ($active == '1') {
                         $sem_types_array[] = $i + 1;