Created
August 4, 2021 14:34
-
-
Save ao5357/3d514414ed194b82bc656f0b0078d1e1 to your computer and use it in GitHub Desktop.
Patch to 8.x-2.x tablefield module to allow cellspan in formatted cells
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
diff --git a/tablefield_cellspan/tablefield_cellspan.module b/tablefield_cellspan/tablefield_cellspan.module | |
index 8e343e1..d5b98ec 100644 | |
--- a/tablefield_cellspan/tablefield_cellspan.module | |
+++ b/tablefield_cellspan/tablefield_cellspan.module | |
@@ -21,10 +21,6 @@ function tablefield_cellspan_preprocess_table(&$variables) { | |
foreach ($row['cells'] as $col_key => $cell) { | |
- if (is_array($cell['content']) || is_object($cell['content'])) { | |
- break; | |
- } | |
- | |
if (!isset($spancol[$col_key])) { | |
$spancol[$col_key]['rowspan'] = 2; | |
$spancol[$col_key]['spancol'] = FALSE; | |
@@ -36,15 +32,14 @@ function tablefield_cellspan_preprocess_table(&$variables) { | |
$keys = array_keys($variables['rows'][$row_key]['cells']); | |
$search = array_search($col_key, $keys); | |
- $prev = $keys[intval($search) - 1]; | |
- | |
- $attributes = clone $variables['rows'][$row_key]['cells'][$prev]['attributes']; | |
- $attributes['colspan'] = $colspan; | |
+ if (isset($keys[intval($search) - 1])) { | |
+ $prev = $keys[intval($search) - 1]; | |
- $variables['rows'][$row_key]['cells'][$prev]['attributes'] = $attributes; | |
- unset($variables['rows'][$row_key]['cells'][$col_key]); | |
+ $variables['rows'][$row_key]['cells'][$prev]['attributes']['colspan'] = $colspan; | |
+ unset($variables['rows'][$row_key]['cells'][$col_key]); | |
- $colspan++; | |
+ $colspan++; | |
+ } | |
} | |
else { | |
$colspan = 2; | |
@@ -64,12 +59,7 @@ function tablefield_cellspan_preprocess_table(&$variables) { | |
while (TRUE) { | |
if (isset($variables['rows'][$prev_row]['cells'][$col])) { | |
- | |
- $attributes = clone $variables['rows'][$prev_row]['cells'][$col]['attributes']; | |
- $attributes['rowspan'] = $spancol[$col_key]['rowspan']; | |
- | |
- $variables['rows'][$prev_row]['cells'][$col]['attributes'] = $attributes; | |
- | |
+ $variables['rows'][$prev_row]['cells'][$col]['attributes']['rowspan'] = $spancol[$col_key]['rowspan']; | |
$spancol[$col_key]['rowspan']++; | |
$spancol[$col_key]['spancol'] = $col; | |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment