Para la ventana la tienes que abrir ya con el lenguaje ejemplo 
 
link - modal.php?lang=$language , asi pasas el idioma en el que este el usuario y en base a el idioma mostrarle el texto correspondiente.  
 Cita:  entonces lo que pasa es que cuando le doy al botón de abrir la ventana, en vez de cargar el contenido de la ventana me carga index.php?lang=es. Me imagino que porque dentro de common.php le estamos diciendo que la location por defetco es index.php?lang=es, no?
    esto pasa por que esta detectando el common que no existe idioma, puedes usar el common pero tienes que hacer un cambio en el location    
Asi redireccionara a la misma pagina  
 Cita:  Pero si no escribo lo de
<?php
include_once 'common.php';
?>
entonces no me carga los textos
    no existira lang=idioma por eso no muestra nada 
para el asunto de strtolower     
Código PHP:
Ver original- var_dump($_GET['lang'],$_SESSION['lang'],$_COOKIE['lang'],$language); // y posteas aqui el resultado , haber que fallo puede ver segun el error $language esta vacio. 
-   
- { 
-     case 'en': 
-     $lang_file = 'lang.en.php'; 
-     break; 
-   
-     case 'es': 
-     $lang_file = 'lang.es.php'; 
-     break; 
-   
-     default: 
-     $lang_file = 'lang.es.php'; 
- }