Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
T
twitter_syncer
Project
Project
Details
Activity
Releases
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
Odysseus
twitter_syncer
Commits
17221a8d
Commit
17221a8d
authored
Oct 14, 2024
by
vicotor
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
update docker file
parent
b6278435
Changes
2
Hide whitespace changes
Inline
Side-by-side
Showing
2 changed files
with
110 additions
and
1 deletion
+110
-1
Dockerfile
Dockerfile
+2
-1
acmanager.go
acmanager/acmanager.go
+108
-0
No files found.
Dockerfile
View file @
17221a8d
...
...
@@ -16,6 +16,7 @@ FROM alpine
WORKDIR
/root
COPY
--from=build /twitter_syncer /usr/bin/twitter_syncer
#COPY ./app.json /root/app.json
COPY
./public /root/public
COPY
./docs /root/docs
ENTRYPOINT
[ "twitter_syncer" ]
\ No newline at end of file
acmanager/acmanager.go
0 → 100644
View file @
17221a8d
package
acmanager
import
(
"encoding/json"
"github.com/supabase-community/supabase-go"
"net/http"
)
type
Account
struct
{
Username
string
`json:"username"`
Password
string
`json:"password"`
Email
string
`json:"email"`
// Cookies []byte `json:"cookies"`
F2A
string
`json:"two_fa_pk"`
Cookies
[]
*
http
.
Cookie
`json:"cookies"`
Available
bool
`json:"available"`
}
func
(
a
Account
)
Stop
()
{
// todo: stop the account.
}
type
Manager
struct
{
localUser
map
[
string
]
Account
}
func
NewManager
()
*
Manager
{
return
&
Manager
{
localUser
:
make
(
map
[
string
]
Account
),
}
}
func
(
m
*
Manager
)
Init
()
error
{
user
,
err
:=
GetAllAccounts
()
if
err
!=
nil
{
return
err
}
for
_
,
v
:=
range
user
{
m
.
localUser
[
v
.
Username
]
=
v
}
return
nil
}
func
(
m
*
Manager
)
AddUser
(
account
Account
)
{
if
account
.
Available
{
m
.
addAvailable
(
account
)
}
else
{
m
.
addInAvailable
(
account
)
}
}
func
(
m
*
Manager
)
addAvailable
(
account
Account
)
{
// todo: add to available
}
func
(
m
*
Manager
)
addInAvailable
(
account
Account
)
{
// todo: add to inavailable.
// do login to check if the account is available.
// if available, add to available.
//sc := twitterscraper.New()
}
func
(
m
*
Manager
)
UpdateUser
()
{
dbuser
:=
make
(
map
[
string
]
Account
)
accounts
,
err
:=
GetAllAccounts
()
if
err
!=
nil
{
return
}
for
_
,
v
:=
range
accounts
{
dbuser
[
v
.
Username
]
=
v
}
for
k
,
v
:=
range
m
.
localUser
{
if
_
,
ok
:=
dbuser
[
k
];
!
ok
{
delete
(
m
.
localUser
,
k
)
}
// delete the account, and stop the account.
v
.
Stop
()
}
for
k
,
v
:=
range
dbuser
{
if
_
,
ok
:=
m
.
localUser
[
k
];
!
ok
{
m
.
localUser
[
k
]
=
v
}
}
}
func
GetAllAccounts
()
([]
Account
,
error
)
{
// todo: get client from db.
var
client
*
supabase
.
Client
data
,
count
,
err
:=
client
.
From
(
"accounts"
)
.
Select
(
"*"
,
"exact"
,
false
)
.
Execute
()
//data, count, err := client.From("accounts").Select("*", "exact", false).Eq("available", "true").Execute()
if
err
!=
nil
{
return
nil
,
err
}
_
=
count
res
:=
make
([]
Account
,
0
,
count
)
if
err
:=
json
.
Unmarshal
(
data
,
&
res
);
err
!=
nil
{
return
nil
,
err
}
return
res
,
nil
}
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment