You are here

function _subform in Subform 5

1 call to _subform()
theme_subform in ./subform.module

File

./subform.module, line 302

Code

function _subform($relation_class_id, $child_side, $parent_node_id, $selection_query = null, $allow_selection, $allow_hoisting, $mode = 'hide', $type_name, $field_name) {
  $subform_id = $parent_node_id;
  $relation_class = node_load($relation_class_id);
  $parent_side = $child_side == "left" ? "right" : "left";
  $child_side_cardinality = $child_side . "_node_cardinality";
  if (is_object($relation_class_id)) {
    $relation_class_node = $relation_class_id;
    $relation_class_id = $relation_class_node->nid;
  }
  else {
    $relation_class_node = node_load($relation_class_id);
  }
  drupal_add_css(drupal_get_path('module', 'subform') . '/subform.css');

  // drupal_add_js(drupal_get_path('module', 'subform') .'/subform.js');
  $relation_instance_results = db_query_range("SELECT id, " . $child_side . "_node as child_node FROM {relation_instance} WHERE relation_class = {$relation_class_node->nid} AND " . $parent_side . "_node = %d", $parent_node_id, 0, $relation_class->{$child_side_cardinality});
  $image_path = drupal_get_path('module', 'subform');
  $subform_name = "subform{$relation_class_id}";
  $subform_name = str_replace("-", "_", $subform_name);
  $table_name = "table{$subform_id}";
  $table_name = str_replace("-", "_", $table_name);
  $content = "\n<table id=\"{$tableName}\" class=\"table\" cellmargin=\"2\"></table>\n\n<script>\n  var {$subform_name} = new Subform( {$subform_id}, '" . substr(url("/", null, null, TRUE), 0, -1) . "', '{$child_side}', '{$mode}', {$relation_class_id}, {$parent_node_id}, " . ($allow_selection == "yes" ? "true" : "false") . ", " . $relation_class->{$child_side_cardinality} . ", '{$type_name}', '{$field_name}', '{$image_path}', " . ($allow_hoisting == 'yes' ? 'true' : 'false') . ");\n  {$subform_name}.renderLinks();\n  {$subform_name}.refresh();\n\n";
  while ($relation_instance_result = db_fetch_object($relation_instance_results)) {
    $content .= "  {$subform_name}.addChild( " . $relation_instance_result->id . " );\n";
  }
  $content .= "\n</script>";
  return $content;
}