danielebarchiesi@0: t("User: ID"), danielebarchiesi@0: // keyword to use for %substitution danielebarchiesi@0: 'keyword' => 'user', danielebarchiesi@0: 'description' => t('Creates a user context from a user ID argument.'), danielebarchiesi@0: 'context' => 'ctools_argument_uid_context', danielebarchiesi@0: 'placeholder form' => array( danielebarchiesi@0: '#type' => 'textfield', danielebarchiesi@0: '#description' => t('Enter the user ID of a user for this argument'), danielebarchiesi@0: ), danielebarchiesi@0: 'default' => array('to_arg' => TRUE), danielebarchiesi@0: 'path placeholder' => '%pm_uid_arg', // This is in pagemanager. danielebarchiesi@0: 'path placeholder to_arg' => TRUE, danielebarchiesi@0: 'no ui' => TRUE, danielebarchiesi@0: ); danielebarchiesi@0: danielebarchiesi@0: /** danielebarchiesi@0: * Discover if this argument gives us the user we crave. danielebarchiesi@0: */ danielebarchiesi@0: function ctools_argument_uid_context($arg = NULL, $conf = NULL, $empty = FALSE) { danielebarchiesi@0: // If unset it wants a generic, unfilled context. danielebarchiesi@0: if ($empty) { danielebarchiesi@0: return ctools_context_create_empty('user'); danielebarchiesi@0: } danielebarchiesi@0: danielebarchiesi@0: // We can accept either a node object or a pure nid. danielebarchiesi@0: if (is_object($arg)) { danielebarchiesi@0: return ctools_context_create('user', $arg); danielebarchiesi@0: } danielebarchiesi@0: danielebarchiesi@0: if (!is_numeric($arg)) { danielebarchiesi@0: return NULL; danielebarchiesi@0: } danielebarchiesi@0: danielebarchiesi@0: $account = user_load($arg); danielebarchiesi@0: if (!$account) { danielebarchiesi@0: return NULL; danielebarchiesi@0: } danielebarchiesi@0: danielebarchiesi@0: return ctools_context_create('user', $account); danielebarchiesi@0: }