Commit Graph

148 Commits

Author SHA1 Message Date
slhale
5b3f78287e [Search] Wrote controller tests
Completed tests for SearchController and
SearchItemController.
2015-07-31 10:40:16 -07:00
slhale
4bb000dd93 [Search] Writing tests
Created files for all the tests to write.
2015-07-31 09:38:45 -07:00
slhale
06d9b68406 [Search] Comments 2015-07-31 09:38:05 -07:00
slhale
3a3e98cc48 [Search] Update provider timeout
Added a timedOut property to the provider's
return object. Changed the generic search
worker to stop if it reaches timeout.
2015-07-30 16:35:26 -07:00
slhale
6e11941ae9 [Search] ES Provider error checks
The elasticsearch provider returns an empty
result when elasticsearch throws an error
(probably a bad request). This prevents the
aggregator from thinking that ES is loading
infinitely.
2015-07-30 15:47:09 -07:00
slhale
f8471bc944 [Search] Comments 2015-07-30 15:04:42 -07:00
slhale
15b7e3ac9b [Search] Aggregator returns result object
The aggregator now returns a result object similar
to that of the providers, but the hits array contains
domain objects rather than searchResult objects.
Also removed overly complicated filterRepeats
function from the aggregator and replaced it with a
simpler one.
2015-07-30 14:57:15 -07:00
slhale
51bc7c6a7f [Search] Generic tracks total hits
The generic search worker keeps track of the total
number of search hits before truncating to match
the max results.
2015-07-30 14:06:35 -07:00
slhale
60dad014cc [Search] Changed provider return type
The provider now returns an object that has
a hits property which contains what it
previously returned, and also a total property
which contains the total number of results.
2015-07-30 13:54:56 -07:00
slhale
a7cd6d8807 [Search] Removed name field form ES provider
Removed the name field from the ElasticSearch provider
search query string, so now it will check all of the
fields of the domain object (such as type).
2015-07-30 13:32:34 -07:00
slhale
bce56c53ed [Search] Clean up
Updated comments and documentation. Changed the generic
worker to return results as {id: score} key value pairs
rather than {id: {score: score}} format. Removed unused
getLatestResults and getLatestTimestamps functions from
the providers.
2015-07-30 13:27:45 -07:00
slhale
2c5da44e5e [Search] Clean up
Removed the timestamp as an optional parameter
of the search aggregator's query(), and now it
instead automattically generates one before
querying the providers.
Also attempted to fix loading, but did not
complete (commented out).
2015-07-30 12:38:03 -07:00
slhale
6b613f234b [Search] Clean up comments 2015-07-29 15:22:46 -07:00
slhale
1619f236cf [Search] Updated search service interface
The search service's interface now just consists
of the two functions query() and isLoading().
query() returns a promise for an array or results,
which eliminates the need for timeout polling like
was previously done. The search providers
have also been changed to reutrn promises.
2015-07-29 15:07:13 -07:00
slhale
5ee8dd239b [Search] Comments 2015-07-29 13:17:50 -07:00
slhale
f2cd55d6cd [Search] Cleaning up
Cleaning up code in generic serach provider. Removed
unnecissary return statements. Moved indexing via web
worker from getItems() loop to within itemsHelper().
Commented out timeout, becuase seems unnecissary.
Changed all date.getTime() to Date.now(). Indexing
has undefined checking.
2015-07-29 11:01:38 -07:00
slhale
639cf1cf59 [Search] Generic indexes once
Changed the generic search provider to index the
file tree only once when it is initially called.
This assumes that the contents of the file tree
will not change significantly within the course
of a use session (and some changes may be caught
by other search providers).
2015-07-29 10:28:07 -07:00
slhale
495d8c9830 [Search] Search term processing
The search term processor for ElasticSearch now
removes extra spaces from inside of the search
term (to avoid some ES errors).
2015-07-28 17:04:29 -07:00
slhale
1a9dd2f144 [Search] Comments
Updated documentation. Removed unnecissary dependency
fom generic provider.
2015-07-28 11:33:29 -07:00
slhale
d6a7dc9820 Merge branch 'search' of https://github.com/slhale/openmctweb into search 2015-07-28 10:17:15 -07:00
slhale
dc53cf60d1 [Search] Style
Made style compliance changes.
2015-07-28 10:15:05 -07:00
slhale
e0e5ad1347 [Search] Removed console output
Accidentally left in a console.log statement
2015-07-28 10:04:31 -07:00
slhale
a6b11354cd [Search] Removed console output
Accidentally left in a console.log statement
2015-07-28 10:03:22 -07:00
shale
84486f2086 [Search] Fixed empty search
Pressing enter on the searchbar before putting
any input would before hide the filtree when
it shouldn't. Now it does not.
2015-07-27 14:12:49 -07:00
shale
dc79f460e5 [Search] Fixing conflicts 2015-07-27 13:34:12 -07:00
shale
7cac858697 [Search] Cleanup
Updated documentation. Removed most unused funtions.
Removed references to the search service in the
search template -- necissary functions added to
the search controller.
(Search in a 'working' state again.)
2015-07-27 13:25:35 -07:00
shale
a3977a18f0 [Search] Results polling in aggregator
Moved the polling for most recent results
from the search controller to the search
aggregator.
Also changed ng-change back to ng-keyup
in the search template.
2015-07-27 12:59:32 -07:00
shale
5e858f73d5 [Search] Changed ng-keyup to ng-change
In the search template. Also small comment change.
2015-07-27 11:55:42 -07:00
shale
181fb32a2a [Search] Responsibility change (in progress)
Attempting to move some responsibility from
the search controller to the aggregator.
(Committing for save before possible revert.)
2015-07-27 10:04:09 -07:00
shale
d35a149108 [Search] Remove unused controll
Removed searchbar controll, as the control to
use would be the provided textfield control.
2015-07-24 16:52:55 -07:00
shale
dca0014862 [Search] Removed unused
Removed incorrect 'uses' statements from
bundle.json. Also removed unused controller
ToggleController. Edited some comments.
2015-07-24 15:08:43 -07:00
shale
05c43db6fe [Search] Search input using the model
Made the search bar text input go to ngModel.input,
rather than getting the text manually from the DOM
element. Additionally, removed the search service
from the search controller's scope.
2015-07-24 13:04:48 -07:00
shale
9143f5febd [Search] Comments and errors
Changed TreeNodeController slightly to do error
checking. Also updated some comments.
2015-07-24 13:03:18 -07:00
shale
300280e03e [Search] Moving responsibility
Moving the responsibility of polling for updates
from the search controller to the search aggregator.

In progress. Previously this prototype was what
could be called semi-stable, but now it is no longer.
2015-07-23 16:58:25 -07:00
shale
341218e8f6 [Search] Tree hide change
The tree is now hidden whenever there is
text in the search bar. (This allows for
the case when there are no search results,
but text in the search bar.)
2015-07-23 16:24:38 -07:00
shale
33e8084852 [Search] Getting input text
The controller now gets the input text from the
DOM element ID, then passes that string along
to the search service, instead of passing the
raw ID.
2015-07-23 16:13:26 -07:00
shale
7d495f6389 [Search] Hide tree
The tree is hidden when there are
search results.
2015-07-23 15:55:20 -07:00
shale
f4d34a2a9c [Search] mctControl for searchbar
Attempting to generalize the searchbar using
mct-control. In progress.
2015-07-23 15:29:19 -07:00
shale
0feab1965c [Search] Attempt at scroll bars
Attempted to make the search results scroll,
but failed for now. Created a div for the
search results, load icon, and load more
button, which are the elements desired to
be scrolled. Did not work because search
result labels have absolute position text.
2015-07-23 15:12:13 -07:00
shale
2680e466fa [Search] Tree selection syncs
Selecting something in the search results now
also makes it selected in the filetree. It
remains selected even when the search results
are cleared. (The filetree does not
automatically expand to that position though.)
2015-07-23 12:47:21 -07:00
shale
29d5535e7c [Search] Changed search load time
Changed how frequently the search controller
checks for updates. This makes the load icon
dissapear faster, and looks more natural. But,
may affect performance.
Also changed the point at which the loading
status becomes 'true'. Made it earlier, at
the beginning of the controller's update().
2015-07-23 11:48:19 -07:00
shale
ebb5474b34 [Search] Hover and loading
Added styling to result items when they are
hovered over.
Also added a loading icon.
2015-07-23 11:41:17 -07:00
shale
4759162bb7 [Search] Added right padding
Added padding to the right side of the
search holder to match the tree holder's
padding.
2015-07-23 11:08:31 -07:00
shale
deba184103 [Search] Selection remains across queries
The selected object in the search results now
remains selected even after a new search is made.
It also will remain selected if it is clicked
on the file tree, but the file tree version is
not yet selected if it is clicked on the search
results list.
2015-07-23 10:56:38 -07:00
shale
c65a278fcf [Search] Selecting results works
Can now click on search results. The view will
be updated, as well as the selected object
being higlighted.
2015-07-23 10:50:00 -07:00
shale
8c08f7b93e [Search] Less space above tree
Removed the awkward spacing between the filetree
and the search bar. Now 'My Items' appears just
below the search bar.
Also added .search-holder to the sass, but haven't
done anything with it yet.
2015-07-23 09:25:10 -07:00
shale
8f1f4eb177 [Search] Generic search gets all roots
Generic search now automatically finds all
the roots before searching.
2015-07-22 16:21:38 -07:00
shale
b0e7dca985 [Search] Empty search resets results
When there is no input into the search bar
no results are displayed/displayed results
are removed. This is because the search
providers were changed to return empty
arrays for empty search strings.
2015-07-22 16:09:14 -07:00
shale
b16af5fe3e [Search] Renaming search and searchbar
Changed what was previously just 'search' and
renamed to 'search view'. Then, took what was
previously 'searchbar' and renamed to
'search'.
2015-07-22 15:43:28 -07:00
shale
1dbe039be8 [Search] Load more button style
Styled the load more button to match
the general theme.
2015-07-22 15:17:27 -07:00