Skip to content

Commit

Permalink
Merge branch 'pu/cw/searchsourceofsource' into '2024.11'
Browse files Browse the repository at this point in the history
fix(Tinebase): can't search source of source

See merge request tine20/tine20!6558
  • Loading branch information
corneliusweiss committed Feb 7, 2025
2 parents b903a4b + 5f26339 commit e0acd60
Show file tree
Hide file tree
Showing 7 changed files with 11 additions and 11 deletions.
4 changes: 2 additions & 2 deletions tests/tine20/Projects/JsonTest.php
Original file line number Diff line number Diff line change
Expand Up @@ -200,7 +200,7 @@ public function testAddProject()
$this->assertSame(0, $searchResult['totalcount']);

$searchResult = $tasksFE->searchTasks([
['field' => 'source:Projects_Model_Project', 'operator' => 'definedBy', 'value' => [
['field' => 'source~Projects_Model_Project', 'operator' => 'definedBy', 'value' => [
['field' => 'title', 'operator' => 'equals', 'value' => $projectData['title']],
]],
], null);
Expand All @@ -216,7 +216,7 @@ public function testAddProject()
]));

$searchResult = $tasksFE->searchTasks([
['field' => 'source:Projects_Model_Project', 'operator' => 'definedBy', 'value' => [
['field' => 'source~Projects_Model_Project', 'operator' => 'definedBy', 'value' => [
['field' => 'title', 'operator' => 'equals', 'value' => 'titleFOOO'],
]],
], null);
Expand Down
4 changes: 2 additions & 2 deletions tine20/Crm/Controller.php
Original file line number Diff line number Diff line change
Expand Up @@ -129,8 +129,8 @@ public static function tasksMCHookFun(array &$fields, Tinebase_ModelConfiguratio
$fields['source_model'][TMCC::CONFIG][TMCC::AVAILABLE_MODELS][] = Crm_Model_Lead::class;
}
$filterModels = $mc->filterModel;
if (!isset($filterModels['source:' . Crm_Model_Lead::class])) {
$filterModels['source:' . Crm_Model_Lead::class] = [
if (!isset($filterModels['source~' . Crm_Model_Lead::class])) {
$filterModels['source~' . Crm_Model_Lead::class] = [
TMCC::FILTER => Tinebase_Model_Filter_ForeignId::class,
TMCC::OPTIONS => [
TMCC::CONTROLLER => Crm_Controller_Lead::class,
Expand Down
4 changes: 2 additions & 2 deletions tine20/Projects/Controller.php
Original file line number Diff line number Diff line change
Expand Up @@ -118,8 +118,8 @@ public static function tasksMCHookFun(array &$fields, Tinebase_ModelConfiguratio
$fields['source_model'][TMCC::CONFIG][TMCC::AVAILABLE_MODELS][] = Projects_Model_Project::class;
}
$filterModels = $mc->filterModel;
if (!isset($filterModels['source:' . Projects_Model_Project::class])) {
$filterModels['source:' . Projects_Model_Project::class] = [
if (!isset($filterModels['source~' . Projects_Model_Project::class])) {
$filterModels['source~' . Projects_Model_Project::class] = [
TMCC::FILTER => Tinebase_Model_Filter_ForeignId::class,
TMCC::OPTIONS => [
TMCC::CONTROLLER => Projects_Controller_Project::class,
Expand Down
2 changes: 1 addition & 1 deletion tine20/Projects/js/ProjectEditDialog.js
Original file line number Diff line number Diff line change
Expand Up @@ -214,7 +214,7 @@ Tine.Projects.ProjectEditDialog = Ext.extend(Tine.widgets.dialog.EditDialog, {
editDialog: this,
filter: [
{ field: "tasksDue", operator: "equals", value: "currentContact" },
{ field: "source:Projects_Model_Project", operator: "definedBy?condition=and&setOperator=oneOf", value: [
{ field: "source~Projects_Model_Project", operator: "definedBy?condition=and&setOperator=oneOf", value: [
{ field: ":id", operator: "equals", value: new Stringable('...', () => {
return this.record.id;
}) }
Expand Down
4 changes: 2 additions & 2 deletions tine20/Tasks/Controller.php
Original file line number Diff line number Diff line change
Expand Up @@ -145,8 +145,8 @@ public static function timesheetMCHookFun(array &$fields, Tinebase_ModelConfigur
$fields['source_model'][TMCC::CONFIG][TMCC::AVAILABLE_MODELS][] = Tasks_Model_Task::class;
}
$filterModels = $mc->filterModel;
if (!isset($filterModels['source:' . Tasks_Model_Task::class])) {
$filterModels['source:' . Tasks_Model_Task::class] = [
if (!isset($filterModels['source~' . Tasks_Model_Task::class])) {
$filterModels['source~' . Tasks_Model_Task::class] = [
TMCC::FILTER => Tinebase_Model_Filter_ForeignId::class,
TMCC::OPTIONS => [
TMCC::CONTROLLER => Tasks_Controller_Task::class,
Expand Down
2 changes: 1 addition & 1 deletion tine20/Timetracker/js/Tasks/timeaccountingPanel.js
Original file line number Diff line number Diff line change
Expand Up @@ -70,7 +70,7 @@ Ext.ux.ItemRegistry.registerItem('Tasks-Task-EditDialog-TabPanel', Ext.extend(E
const filters = _.get(options.params.filter, '[0].filters[0].filters')

if (!_.find(filters, {field: 'timeaccount_id'})) {
filters.push({field: 'source:Tasks_Model_Task', operator: 'equals', value: this.record.id});
filters.push({field: 'source~Tasks_Model_Task', operator: 'equals', value: this.record.id});
}
},

Expand Down
2 changes: 1 addition & 1 deletion tine20/Tinebase/js/ApplicationStarter.js
Original file line number Diff line number Diff line change
Expand Up @@ -198,7 +198,7 @@ Ext.apply(Tine.Tinebase.ApplicationStarter,{
filter = availableModels.reduce((filter, model) => {
const [appName,,modelName] = model.split('_');
const filterDefinition = Object.assign({... base}, {
field: `${base.field}:${model}`,
field: `${base.field}~${model}`,
preserveFieldName: true,
baseLabel: base.label,
label: `${base.label} ${modelName}`,
Expand Down

0 comments on commit e0acd60

Please sign in to comment.