Seguro que más de una vez habeis tenido una web con su certificado SSL, y os ha dado el error de que hay elementos no seguros en ella.

Este error es muy sencillo de corregir y se da cuando en una página que va sobre HTTPS, tiene referencias a elementos HTTP.

Para no tener que revisar cada una de las líneas de nuestro código buscando las referencias erróneas, podemos ir a la web http://www.whynopadlock.com y darle la URL de la página que nos devuelve ese error de elementos no seguros, y nos dará un informe de cada elemento no seguro, incluidas imágenes de la hoja de estilo, enlaces no seguros, etc.

Instalas un Moodle 2.3.4, importas algunos cursos y los modificas ligeramente, adaptándolos a las nuevas necesidades. Y de repente, al borrar un elemento del curso (etiqueta, chat o cualquier recurso o actividad), nos devuelve el siguiente error:
Detectado un error de codificación, debe ser corregido por un programador: PHP catchable fatal error
Y no nos deja acceder al curso, ni ver nada de él. ¿Cómo lo arreglamos?.
Bueno, está la opción rápida que te saca del apuro: irte a la base de datos de Moodle y localizar la tabla _course. En ella vereis vuestros cursos. Localizais el que os da el error y editais el registro. Sólo tendreis que borrar el contenido del campo sectioncache y lo habreis arreglado.
La opción «para que no de más problemas» es irse al archivo lib/modinfolib.php y sobre la línea 1096, localizar el código


if ((!$this->visible or !$this->available) and
!has_capability('moodle/course:viewhiddenactivities', $modcontext, $userid)) {

$this->uservisible = false;

y sustituirlo por

if ($modcontext != "") {
if ((!$this->visible or !$this->available) and !has_capability('moodle/course:viewhiddenactivities', $modcontext, $userid))
{ $this->uservisible = false; }
}
else
{ $this->uservisible = false; }