aboutsummaryrefslogtreecommitdiff
path: root/src/components/user_finder
diff options
context:
space:
mode:
Diffstat (limited to 'src/components/user_finder')
-rw-r--r--src/components/user_finder/user_finder.js22
-rw-r--r--src/components/user_finder/user_finder.vue23
2 files changed, 45 insertions, 0 deletions
diff --git a/src/components/user_finder/user_finder.js b/src/components/user_finder/user_finder.js
new file mode 100644
index 00000000..03205382
--- /dev/null
+++ b/src/components/user_finder/user_finder.js
@@ -0,0 +1,22 @@
+const UserFinder = {
+ data: () => ({
+ username: undefined,
+ hidden: true
+ }),
+ methods: {
+ findUser (username) {
+ this.$store.state.api.backendInteractor.externalProfile(username)
+ .then((user) => {
+ if (!user.error) {
+ this.$store.commit('addNewUsers', [user])
+ this.$router.push({name: 'user-profile', params: {id: user.id}})
+ }
+ })
+ },
+ toggleHidden () {
+ this.hidden = !this.hidden
+ }
+ }
+}
+
+export default UserFinder
diff --git a/src/components/user_finder/user_finder.vue b/src/components/user_finder/user_finder.vue
new file mode 100644
index 00000000..c23d8ee0
--- /dev/null
+++ b/src/components/user_finder/user_finder.vue
@@ -0,0 +1,23 @@
+<template>
+ <a href="#" v-if="hidden"><i class="icon-user-plus user-finder-icon" @click.prevent="toggleHidden"/></a>
+ <span v-else>
+ <input class="user-finder-input base03-border" @keyup.enter="findUser(username)" v-model="username" placeholder="Find user" id="user-finder-input" type="text"/>
+ <i class="icon-cancel user-finder-icon" @click="toggleHidden"/>
+ </span>
+</template>
+
+<script src="./user_finder.js"></script>
+
+<style lang="scss">
+ .user-finder-icon {
+ margin-right: 0.25em;
+ }
+
+ .user-finder-input {
+ border-width: 1px;
+ border-style: solid;
+ border-color: inherit;
+ border-radius: 5px;
+ padding: 0.1em 0.2em 0.2em 0.2em;
+ }
+</style>