--- sites/all/modules/TEXT/ckeditor_link/includes/ckeditor_link.node.inc	2016-01-25 14:17:14 +0000
+++ sites/all/modules/TEXT/ckeditor_link/includes/ckeditor_link.node.inc	2016-01-25 14:23:47 +0000
@@ -16,7 +16,7 @@
     $or = db_or();
     $or->condition('n.title', '%'. db_like($string) .'%', 'LIKE');
     $query = db_select('node', 'n')
-      ->fields('n', array('nid', 'title', 'language'))
+      ->fields('n', array('nid', 'title', 'language', 'type'))
       ->orderBy('n.title')
       ->orderBy('n.type')
       ->range(0, $limit)
@@ -25,7 +25,7 @@
       $query->condition('n.type', $node_types, 'IN');
     }
     if (module_exists('title')) {
-      $query->join('field_data_title_field', 't', 't.entity_id = n.nid');
+      $query->leftJoin('field_data_title_field', 't', 't.entity_id = n.nid');
       $or->condition('t.title_field_value', '%'. db_like($string) .'%', 'LIKE');
       $query->addField('t', 'entity_id', 'entity_id');
       $query->addField('t', 'title_field_value', 'title_field');
@@ -38,7 +38,10 @@
       $label = $node->title;
       $path = ckeditor_link_path_prefix_language('node/'. $node->nid, $langcode);
       $entity = node_load($node->nid);
-      if (module_exists('entity_translation') && entity_translation_enabled('node', $entity)) {
+      if (module_exists('entity_translation') 
+      && entity_translation_enabled('node', $entity)
+      && module_exists('title') 
+      && title_field_replacement_enabled('node', $node->type, 'title')) {
         $langcode = $node->title_field_language;
         $label = $node->title_field;
         $path = ckeditor_link_path_prefix_language('node/'. $node->entity_id, $langcode);
@@ -61,14 +64,13 @@
 
   $nid = $matches[1];
   $query = db_select('node', 'n')
-    ->fields('n', array('title', 'language'))
+    ->fields('n', array('title', 'language', 'type'))
     ->condition('n.nid', $nid)
     ->addTag('node_access');
   if (module_exists('title')) {
-    $query->join('field_data_title_field', 't', 't.entity_id = n.nid');
+    $query->leftJoin('field_data_title_field', 't', "t.entity_id = n.nid AND t.language = '$langcode'");
     $query->addField('t', 'title_field_value', 'title_field');
     $query->addField('t', 'language', 'title_field_language');
-    $query->condition('t.language', $langcode, '=');
   }
   if ($node = $query->execute()->fetchObject()) {
     if ($node->language != $langcode) {
@@ -76,7 +78,11 @@
     }
     $label = $node->title;
     $entity = node_load($nid);
-    if (module_exists('title') && module_exists('entity_translation') && entity_translation_enabled('node', $entity)) {
+    if (module_exists('title') 
+    && module_exists('entity_translation') 
+    && entity_translation_enabled('node', $entity)
+    && module_exists('title') 
+    && title_field_replacement_enabled('node', $node->type, 'title')) {
       $label = $node->title_field;
       $langcode = $node->title_field_language;
     }

