---
name: "Padre::Sync"
section: "3pm"
platform: "linux"
package: "padre"
version: "1.00+dfsg-3"
release: "Debian 8 (Jessie)"
platforms: ["linux"]
url: "https://new.carta.tech/Padre::Sync"
---

# Padre::Sync(3pm)

Utility functions for handling remote Configuration Syncing

## NAME

Padre::Sync - Utility functions for handling remote Configuration Syncing

## DESCRIPTION

The `"Padre::Sync"` class contains logic for communicating with a remote  Madre::Sync server. This class interacts with the Padre::Wx::Dialog::Sync class for user interface display.

## METHODS

### "new"

The constructor returns a new `"Padre::Sync"` object, but you should normally access it via the main Padre object:

```
  my $manager = Padre->ide->config_sync;
```

First argument should be a Padre object.

### "main"

A convenience method to get to the main window.

### "config"

A convenience method to get to the config object

### "ua"

A convenience method to get to the useragent object

### "register"

Attempts to register a user account with the information provided on the Sync server.

Parameters: a list of key value pairs to be interpreted as POST parameters

Returns error string if user state is already logged in or serverside error occurs.

### "login"

Will log in to remote Sync server using given credentials. State will  be updated if login successful.

### "logout"

If currently logged in, will log the Sync session out from the server. State will be updated.

### "server\_delete"

Given a logged in session, will attempt to delete the config currently stored on the Sync server (if one currently exists). Will fail if not logged in.

### "local\_to\_server"

Given a logged in session, will attempt to place the current local config to  the Sync server.

### "server\_to\_local"

Given a logged in session, will replace the local config with what is stored on the server.  TODO: is validation of config before replacement required?

### "english\_status"

Will return a string explaining current state of Sync dependent on `$self`-\>{state}

## SEE ALSO

Padre, Padre::Config

## COPYRIGHT & LICENSE

Copyright 2008-2013 The Padre development team as listed in Padre.pm.

This program is free software; you can redistribute it and/or modify it under the same terms as Perl 5 itself.
